@polyester/sdk 0.3.1 → 0.4.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 (311) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/README.md +63 -17
  3. package/dist/_virtual/_rolldown/runtime.js +15 -1
  4. package/dist/account-signer/types.d.ts.map +1 -1
  5. package/dist/account-signer/types.js +6 -3
  6. package/dist/account-signer/types.js.map +1 -1
  7. package/dist/browser-client.d.ts +4 -2
  8. package/dist/browser-client.d.ts.map +1 -1
  9. package/dist/browser-client.js +3 -4
  10. package/dist/browser-client.js.map +1 -1
  11. package/dist/catalogs/client-catalog.d.ts.map +1 -1
  12. package/dist/catalogs/client-catalog.js +11 -4
  13. package/dist/catalogs/client-catalog.js.map +1 -1
  14. package/dist/catalogs/index.js +1 -1
  15. package/dist/catalogs/readers.d.ts.map +1 -1
  16. package/dist/catalogs/readers.js +3 -1
  17. package/dist/catalogs/readers.js.map +1 -1
  18. package/dist/catalogs/snapshot-validation.js +132 -0
  19. package/dist/catalogs/snapshot-validation.js.map +1 -0
  20. package/dist/catalogs/snapshot.d.ts.map +1 -1
  21. package/dist/catalogs/snapshot.js +16 -7
  22. package/dist/catalogs/snapshot.js.map +1 -1
  23. package/dist/catalogs/zipper-supply.d.ts.map +1 -1
  24. package/dist/catalogs/zipper-supply.js +10 -7
  25. package/dist/catalogs/zipper-supply.js.map +1 -1
  26. package/dist/core-client.d.ts +24 -17
  27. package/dist/core-client.d.ts.map +1 -1
  28. package/dist/core-client.js +21 -3
  29. package/dist/core-client.js.map +1 -1
  30. package/dist/environment.d.ts.map +1 -1
  31. package/dist/environment.js +32 -1
  32. package/dist/environment.js.map +1 -1
  33. package/dist/index.js +3 -3
  34. package/dist/realtime/client.js +13 -2
  35. package/dist/realtime/client.js.map +1 -1
  36. package/dist/realtime/snapshot-then-stream.js +1 -1
  37. package/dist/realtime/snapshot-then-stream.js.map +1 -1
  38. package/dist/realtime/types.d.ts +2 -0
  39. package/dist/realtime/types.d.ts.map +1 -1
  40. package/dist/server-client.d.ts +17 -8
  41. package/dist/server-client.d.ts.map +1 -1
  42. package/dist/server-client.js +8 -11
  43. package/dist/server-client.js.map +1 -1
  44. package/dist/services/accounts/accounts.js +3 -3
  45. package/dist/services/accounts/accounts.js.map +1 -1
  46. package/dist/services/accounts/accounts.schemas.d.ts +13 -13
  47. package/dist/services/accounts/accounts.schemas.d.ts.map +1 -1
  48. package/dist/services/accounts/accounts.schemas.js +11 -11
  49. package/dist/services/accounts/accounts.schemas.js.map +1 -1
  50. package/dist/services/address-book/address-book.js +28 -28
  51. package/dist/services/address-book/address-book.js.map +1 -1
  52. package/dist/services/address-book/address-book.schemas.d.ts +751 -751
  53. package/dist/services/address-book/address-book.schemas.d.ts.map +1 -1
  54. package/dist/services/address-book/address-book.schemas.js +160 -160
  55. package/dist/services/address-book/address-book.schemas.js.map +1 -1
  56. package/dist/services/api-keys/api-keys.d.ts +6 -6
  57. package/dist/services/api-keys/api-keys.d.ts.map +1 -1
  58. package/dist/services/api-keys/api-keys.js +12 -12
  59. package/dist/services/api-keys/api-keys.js.map +1 -1
  60. package/dist/services/api-keys/api-keys.schemas.d.ts +62 -62
  61. package/dist/services/api-keys/api-keys.schemas.d.ts.map +1 -1
  62. package/dist/services/api-keys/api-keys.schemas.js +34 -34
  63. package/dist/services/api-keys/api-keys.schemas.js.map +1 -1
  64. package/dist/services/auth/auth.d.ts +46 -40
  65. package/dist/services/auth/auth.d.ts.map +1 -1
  66. package/dist/services/auth/auth.js +28 -25
  67. package/dist/services/auth/auth.js.map +1 -1
  68. package/dist/services/auth/profile/profile.d.ts +2 -2
  69. package/dist/services/auth/profile/profile.d.ts.map +1 -1
  70. package/dist/services/auth/profile/profile.js +7 -7
  71. package/dist/services/auth/profile/profile.js.map +1 -1
  72. package/dist/services/auth/profile/profile.schemas.d.ts +41 -41
  73. package/dist/services/auth/profile/profile.schemas.d.ts.map +1 -1
  74. package/dist/services/auth/profile/profile.schemas.js +27 -27
  75. package/dist/services/auth/profile/profile.schemas.js.map +1 -1
  76. package/dist/services/auth/session.d.ts +1 -1
  77. package/dist/services/auth/session.d.ts.map +1 -1
  78. package/dist/services/auth/session.js +6 -2
  79. package/dist/services/auth/session.js.map +1 -1
  80. package/dist/services/auth/session.schemas.js +17 -17
  81. package/dist/services/auth/session.schemas.js.map +1 -1
  82. package/dist/services/auth/session.types.d.ts +3 -2
  83. package/dist/services/auth/session.types.d.ts.map +1 -1
  84. package/dist/services/balances/balances.d.ts +1 -1
  85. package/dist/services/balances/balances.js +9 -9
  86. package/dist/services/balances/balances.js.map +1 -1
  87. package/dist/services/balances/balances.schemas.d.ts +95 -95
  88. package/dist/services/balances/balances.schemas.d.ts.map +1 -1
  89. package/dist/services/balances/balances.schemas.js +61 -61
  90. package/dist/services/balances/balances.schemas.js.map +1 -1
  91. package/dist/services/candles/candles.js +12 -12
  92. package/dist/services/candles/candles.js.map +1 -1
  93. package/dist/services/candles/candles.schemas.d.ts +70 -70
  94. package/dist/services/candles/candles.schemas.d.ts.map +1 -1
  95. package/dist/services/candles/candles.schemas.js +47 -48
  96. package/dist/services/candles/candles.schemas.js.map +1 -1
  97. package/dist/services/chain-analytics/chain-analytics.js +7 -7
  98. package/dist/services/chain-analytics/chain-analytics.js.map +1 -1
  99. package/dist/services/chain-analytics/chain-analytics.schemas.d.ts +68 -68
  100. package/dist/services/chain-analytics/chain-analytics.schemas.d.ts.map +1 -1
  101. package/dist/services/chain-analytics/chain-analytics.schemas.js +29 -29
  102. package/dist/services/chain-analytics/chain-analytics.schemas.js.map +1 -1
  103. package/dist/services/deposit/deposit.js +5 -5
  104. package/dist/services/deposit/deposit.js.map +1 -1
  105. package/dist/services/deposit/deposit.schemas.d.ts +17 -17
  106. package/dist/services/deposit/deposit.schemas.d.ts.map +1 -1
  107. package/dist/services/deposit/deposit.schemas.js +11 -11
  108. package/dist/services/deposit/deposit.schemas.js.map +1 -1
  109. package/dist/services/guard-signer/guard-signer.js +13 -13
  110. package/dist/services/guard-signer/guard-signer.js.map +1 -1
  111. package/dist/services/guard-signer/guard-signer.schemas.d.ts +75 -75
  112. package/dist/services/guard-signer/guard-signer.schemas.d.ts.map +1 -1
  113. package/dist/services/guard-signer/guard-signer.schemas.js +42 -42
  114. package/dist/services/guard-signer/guard-signer.schemas.js.map +1 -1
  115. package/dist/services/heatmap/heatmap.js +9 -9
  116. package/dist/services/heatmap/heatmap.js.map +1 -1
  117. package/dist/services/heatmap/heatmap.schemas.d.ts +144 -144
  118. package/dist/services/heatmap/heatmap.schemas.d.ts.map +1 -1
  119. package/dist/services/heatmap/heatmap.schemas.js +47 -47
  120. package/dist/services/heatmap/heatmap.schemas.js.map +1 -1
  121. package/dist/services/internal-transfers/internal-transfers.js +3 -3
  122. package/dist/services/internal-transfers/internal-transfers.js.map +1 -1
  123. package/dist/services/internal-transfers/internal-transfers.schemas.d.ts +53 -53
  124. package/dist/services/internal-transfers/internal-transfers.schemas.d.ts.map +1 -1
  125. package/dist/services/internal-transfers/internal-transfers.schemas.js +27 -27
  126. package/dist/services/internal-transfers/internal-transfers.schemas.js.map +1 -1
  127. package/dist/services/lifecycle/lifecycle.js +10 -10
  128. package/dist/services/lifecycle/lifecycle.js.map +1 -1
  129. package/dist/services/lifecycle/lifecycle.schemas.d.ts +614 -614
  130. package/dist/services/lifecycle/lifecycle.schemas.d.ts.map +1 -1
  131. package/dist/services/lifecycle/lifecycle.schemas.js +146 -146
  132. package/dist/services/lifecycle/lifecycle.schemas.js.map +1 -1
  133. package/dist/services/market-data/market-data.js +6 -6
  134. package/dist/services/market-data/market-data.js.map +1 -1
  135. package/dist/services/market-data/market-data.schemas.d.ts +20 -20
  136. package/dist/services/market-data/market-data.schemas.d.ts.map +1 -1
  137. package/dist/services/market-data/market-data.schemas.js +51 -55
  138. package/dist/services/market-data/market-data.schemas.js.map +1 -1
  139. package/dist/services/market-overview/market-overview.js +4 -4
  140. package/dist/services/market-overview/market-overview.js.map +1 -1
  141. package/dist/services/market-overview/market-overview.schemas.d.ts +38 -38
  142. package/dist/services/market-overview/market-overview.schemas.d.ts.map +1 -1
  143. package/dist/services/market-overview/market-overview.schemas.js +33 -33
  144. package/dist/services/market-overview/market-overview.schemas.js.map +1 -1
  145. package/dist/services/mfa/mfa.js +27 -27
  146. package/dist/services/mfa/mfa.js.map +1 -1
  147. package/dist/services/mfa/mfa.schemas.d.ts +206 -206
  148. package/dist/services/mfa/mfa.schemas.d.ts.map +1 -1
  149. package/dist/services/mfa/mfa.schemas.js +83 -83
  150. package/dist/services/mfa/mfa.schemas.js.map +1 -1
  151. package/dist/services/orderbook/orderbook.d.ts +2 -2
  152. package/dist/services/orderbook/orderbook.d.ts.map +1 -1
  153. package/dist/services/orderbook/orderbook.js +5 -5
  154. package/dist/services/orderbook/orderbook.js.map +1 -1
  155. package/dist/services/orderbook/orderbook.schemas.d.ts +22 -22
  156. package/dist/services/orderbook/orderbook.schemas.d.ts.map +1 -1
  157. package/dist/services/orderbook/orderbook.schemas.js +15 -15
  158. package/dist/services/orderbook/orderbook.schemas.js.map +1 -1
  159. package/dist/services/orders/order-errors.schemas.d.ts +18 -18
  160. package/dist/services/orders/order-errors.schemas.d.ts.map +1 -1
  161. package/dist/services/orders/order-errors.schemas.js +8 -8
  162. package/dist/services/orders/order-errors.schemas.js.map +1 -1
  163. package/dist/services/orders/orders-batch.schemas.d.ts +492 -492
  164. package/dist/services/orders/orders-batch.schemas.d.ts.map +1 -1
  165. package/dist/services/orders/orders-batch.schemas.js +118 -118
  166. package/dist/services/orders/orders-batch.schemas.js.map +1 -1
  167. package/dist/services/orders/orders-identifiers.schemas.js +5 -5
  168. package/dist/services/orders/orders-identifiers.schemas.js.map +1 -1
  169. package/dist/services/orders/orders-input.schemas.d.ts +657 -648
  170. package/dist/services/orders/orders-input.schemas.d.ts.map +1 -1
  171. package/dist/services/orders/orders-input.schemas.js +100 -96
  172. package/dist/services/orders/orders-input.schemas.js.map +1 -1
  173. package/dist/services/orders/orders-modify.schemas.d.ts +370 -351
  174. package/dist/services/orders/orders-modify.schemas.d.ts.map +1 -1
  175. package/dist/services/orders/orders-modify.schemas.js +48 -44
  176. package/dist/services/orders/orders-modify.schemas.js.map +1 -1
  177. package/dist/services/orders/orders-output.schemas.d.ts +183 -183
  178. package/dist/services/orders/orders-output.schemas.d.ts.map +1 -1
  179. package/dist/services/orders/orders-output.schemas.js +49 -49
  180. package/dist/services/orders/orders-output.schemas.js.map +1 -1
  181. package/dist/services/orders/orders-risk.schemas.d.ts +226 -226
  182. package/dist/services/orders/orders-risk.schemas.d.ts.map +1 -1
  183. package/dist/services/orders/orders-risk.schemas.js +69 -69
  184. package/dist/services/orders/orders-risk.schemas.js.map +1 -1
  185. package/dist/services/orders/orders.d.ts +8 -8
  186. package/dist/services/orders/orders.d.ts.map +1 -1
  187. package/dist/services/orders/orders.js +44 -32
  188. package/dist/services/orders/orders.js.map +1 -1
  189. package/dist/services/policies/api-key-policies/api-key-policies.d.ts +6 -6
  190. package/dist/services/policies/api-key-policies/api-key-policies.d.ts.map +1 -1
  191. package/dist/services/policies/api-key-policies/api-key-policies.js +11 -11
  192. package/dist/services/policies/api-key-policies/api-key-policies.js.map +1 -1
  193. package/dist/services/policies/api-key-policies/api-key-policies.schemas.d.ts +105 -105
  194. package/dist/services/policies/api-key-policies/api-key-policies.schemas.d.ts.map +1 -1
  195. package/dist/services/policies/api-key-policies/api-key-policies.schemas.js +49 -49
  196. package/dist/services/policies/api-key-policies/api-key-policies.schemas.js.map +1 -1
  197. package/dist/services/policies/shared.d.ts +5 -5
  198. package/dist/services/policies/shared.d.ts.map +1 -1
  199. package/dist/services/policies/shared.js +10 -10
  200. package/dist/services/policies/shared.js.map +1 -1
  201. package/dist/services/policies/subaccount-policies/subaccount-policies.d.ts +6 -6
  202. package/dist/services/policies/subaccount-policies/subaccount-policies.d.ts.map +1 -1
  203. package/dist/services/policies/subaccount-policies/subaccount-policies.js +13 -13
  204. package/dist/services/policies/subaccount-policies/subaccount-policies.js.map +1 -1
  205. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.d.ts +124 -124
  206. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.d.ts.map +1 -1
  207. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.js +75 -75
  208. package/dist/services/policies/subaccount-policies/subaccount-policies.schemas.js.map +1 -1
  209. package/dist/services/shared.js +11 -11
  210. package/dist/services/shared.js.map +1 -1
  211. package/dist/services/social-verification/social-verification.d.ts +3 -3
  212. package/dist/services/social-verification/social-verification.d.ts.map +1 -1
  213. package/dist/services/social-verification/social-verification.js +7 -7
  214. package/dist/services/social-verification/social-verification.js.map +1 -1
  215. package/dist/services/social-verification/social-verification.schemas.d.ts +54 -54
  216. package/dist/services/social-verification/social-verification.schemas.d.ts.map +1 -1
  217. package/dist/services/social-verification/social-verification.schemas.js +28 -28
  218. package/dist/services/social-verification/social-verification.schemas.js.map +1 -1
  219. package/dist/services/subaccount-resolver.js +5 -3
  220. package/dist/services/subaccount-resolver.js.map +1 -1
  221. package/dist/services/subaccounts/subaccounts.d.ts +15 -15
  222. package/dist/services/subaccounts/subaccounts.d.ts.map +1 -1
  223. package/dist/services/subaccounts/subaccounts.js +35 -35
  224. package/dist/services/subaccounts/subaccounts.js.map +1 -1
  225. package/dist/services/subaccounts/subaccounts.schemas.d.ts +135 -135
  226. package/dist/services/subaccounts/subaccounts.schemas.d.ts.map +1 -1
  227. package/dist/services/subaccounts/subaccounts.schemas.js +72 -72
  228. package/dist/services/subaccounts/subaccounts.schemas.js.map +1 -1
  229. package/dist/services/trades/trades.d.ts +2 -2
  230. package/dist/services/trades/trades.d.ts.map +1 -1
  231. package/dist/services/trades/trades.js +5 -5
  232. package/dist/services/trades/trades.js.map +1 -1
  233. package/dist/services/trades/trades.schemas.d.ts +31 -31
  234. package/dist/services/trades/trades.schemas.d.ts.map +1 -1
  235. package/dist/services/trades/trades.schemas.js +24 -24
  236. package/dist/services/trades/trades.schemas.js.map +1 -1
  237. package/dist/services/trading-withdraws/trading-withdraws.js +8 -8
  238. package/dist/services/trading-withdraws/trading-withdraws.js.map +1 -1
  239. package/dist/services/trading-withdraws/trading-withdraws.schemas.d.ts +45 -45
  240. package/dist/services/trading-withdraws/trading-withdraws.schemas.d.ts.map +1 -1
  241. package/dist/services/trading-withdraws/trading-withdraws.schemas.js +36 -36
  242. package/dist/services/trading-withdraws/trading-withdraws.schemas.js.map +1 -1
  243. package/dist/services/transfers/transfers.d.ts +1 -1
  244. package/dist/services/transfers/transfers.d.ts.map +1 -1
  245. package/dist/services/transfers/transfers.js +5 -5
  246. package/dist/services/transfers/transfers.js.map +1 -1
  247. package/dist/services/transfers/transfers.schemas.d.ts +42 -42
  248. package/dist/services/transfers/transfers.schemas.d.ts.map +1 -1
  249. package/dist/services/transfers/transfers.schemas.js +30 -30
  250. package/dist/services/transfers/transfers.schemas.js.map +1 -1
  251. package/dist/services/triggers/trigger-child-order.schemas.js +23 -23
  252. package/dist/services/triggers/trigger-child-order.schemas.js.map +1 -1
  253. package/dist/services/triggers/trigger-input.schemas.d.ts +226 -226
  254. package/dist/services/triggers/trigger-input.schemas.d.ts.map +1 -1
  255. package/dist/services/triggers/trigger-input.schemas.js +53 -53
  256. package/dist/services/triggers/trigger-input.schemas.js.map +1 -1
  257. package/dist/services/triggers/triggers-output.schemas.d.ts +210 -210
  258. package/dist/services/triggers/triggers-output.schemas.d.ts.map +1 -1
  259. package/dist/services/triggers/triggers-output.schemas.js +152 -152
  260. package/dist/services/triggers/triggers-output.schemas.js.map +1 -1
  261. package/dist/services/triggers/triggers.js +21 -21
  262. package/dist/services/triggers/triggers.js.map +1 -1
  263. package/dist/services/whiteboard/whiteboard.js +15 -15
  264. package/dist/services/whiteboard/whiteboard.js.map +1 -1
  265. package/dist/services/whiteboard/whiteboard.schemas.d.ts +379 -379
  266. package/dist/services/whiteboard/whiteboard.schemas.d.ts.map +1 -1
  267. package/dist/services/whiteboard/whiteboard.schemas.js +71 -71
  268. package/dist/services/whiteboard/whiteboard.schemas.js.map +1 -1
  269. package/dist/services/zipper/zipper.js +3 -3
  270. package/dist/services/zipper/zipper.js.map +1 -1
  271. package/dist/services/zipper/zipper.schemas.d.ts +1 -1
  272. package/dist/services/zipper/zipper.schemas.js +54 -54
  273. package/dist/services/zipper/zipper.schemas.js.map +1 -1
  274. package/dist/shared/account-scope.d.ts +6 -6
  275. package/dist/shared/account-scope.d.ts.map +1 -1
  276. package/dist/shared/account-scope.js +3 -3
  277. package/dist/shared/account-scope.js.map +1 -1
  278. package/dist/shared/connect-error-mapping.d.ts +1 -1
  279. package/dist/shared/connect-error-mapping.js +29 -3
  280. package/dist/shared/connect-error-mapping.js.map +1 -1
  281. package/dist/shared/rate-limit.schemas.d.ts +12 -12
  282. package/dist/shared/rate-limit.schemas.d.ts.map +1 -1
  283. package/dist/shared/rate-limit.schemas.js +7 -7
  284. package/dist/shared/rate-limit.schemas.js.map +1 -1
  285. package/dist/shared/schemas.js +26 -26
  286. package/dist/shared/schemas.js.map +1 -1
  287. package/dist/shared/transports.js +7 -12
  288. package/dist/shared/transports.js.map +1 -1
  289. package/dist/shared/types.d.ts +12 -0
  290. package/dist/shared/types.d.ts.map +1 -1
  291. package/dist/shared/validation.d.ts +14 -0
  292. package/dist/shared/validation.d.ts.map +1 -0
  293. package/dist/shared/validation.js +24 -0
  294. package/dist/shared/validation.js.map +1 -0
  295. package/dist/utils/connect-order-errors.js +2 -2
  296. package/dist/utils/connect-order-errors.js.map +1 -1
  297. package/dist/utils/cookies.d.ts +8 -3
  298. package/dist/utils/cookies.d.ts.map +1 -1
  299. package/dist/utils/cookies.js +7 -1
  300. package/dist/utils/cookies.js.map +1 -1
  301. package/dist/utils/event-emitter.d.ts +1 -1
  302. package/dist/utils/event-emitter.d.ts.map +1 -1
  303. package/dist/utils/event-emitter.js +4 -2
  304. package/dist/utils/event-emitter.js.map +1 -1
  305. package/dist/utils/evm.js +2 -2
  306. package/dist/utils/evm.js.map +1 -1
  307. package/dist/utils/jwt.d.ts +2 -2
  308. package/dist/utils/jwt.d.ts.map +1 -1
  309. package/dist/utils/jwt.js +2 -2
  310. package/dist/utils/jwt.js.map +1 -1
  311. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"api-key-policies.schemas.d.ts","names":[],"sources":["../../../../src/services/policies/api-key-policies/api-key-policies.schemas.ts"],"mappings":";;;;cAiCa,+BAA6B,EAAA;;;cAM7B,4BAA0B,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;cAiB1B,oBAAkB,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA4CnB,eAAe,EAAE,mBAAmB;cAEnC,kCAAgC,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAOjC,6BAA6B,EAAE,mBAAmB;cAkCjD,+BAA6B,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAQ9B,0BAA0B,EAAE,kBAAkB;cAoD7C,+BAA6B,EAAA,yBAAA,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAyB9B,0BAA0B,EAAE,kBAAkB;cAE7C,8BAA4B,EAAA;;;;KAQ7B,yBAAyB,EAAE,kBAAkB"}
1
+ {"version":3,"file":"api-key-policies.schemas.d.ts","names":[],"sources":["../../../../src/services/policies/api-key-policies/api-key-policies.schemas.ts"],"mappings":";;;;cAiCa,+BAA6B,qBAAA;;;cAM7B,4BAA0B,qBAAA,yBAAA,qBAAA;;;;;;;;;;;;;;cAiB1B,oBAAkB,qBAAA,yBAAA,qBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA4CnB,eAAe,qBAAE,mBAAmB;cAEnC,kCAAgC,qBAAA,yBAAA,qBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAOjC,6BAA6B,qBAAE,mBAAmB;cAkCjD,+BAA6B,qBAAA,yBAAA,qBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAQ9B,0BAA0B,qBAAE,kBAAkB;cAoD7C,+BAA6B,qBAAA,yBAAA,qBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAyB9B,0BAA0B,qBAAE,kBAAkB;cAE7C,8BAA4B,qBAAA;;;;KAQ7B,yBAAyB,qBAAE,kBAAkB"}
@@ -1,3 +1,4 @@
1
+ import { validation_exports } from "../../../shared/validation.js";
1
2
  import { idToBigInt } from "../../../utils/base58-id.js";
2
3
  import { toBigIntOrZero } from "../../../utils/numbers.js";
3
4
  import { tsObjToMs, tsObjToNsString } from "../../../utils/time.js";
@@ -5,14 +6,13 @@ import { BigIntStringSchema, OptionalNumberToBigIntOrZeroSchema, OptionalPublicI
5
6
  import { PerpMarketRuleSchema, PolicyActionEnumSchema, PolicyMarketScopeEnumSchema, ProtoPolicyActionEnumSchema, ProtoPolicyMarketScopeEnumSchema, SpotMarketRuleSchema } from "../shared.js";
6
7
  import { PolicyActionCodec, PolicyMarketScopeCodec, policyActionLabelFor, policyMarketScopeLabelFor } from "../shared.codecs.js";
7
8
  import { buildProtoPatch, defineProtoPatchFields } from "../../../utils/proto-patch.js";
8
- import * as v from "valibot";
9
9
  //#region src/services/policies/api-key-policies/api-key-policies.schemas.ts
10
- const OptionalApiKeyContextSchema = v.optional(v.pipe(v.string(), v.trim(), v.minLength(1, "keyId is required")));
11
- const ListApiKeyPoliciesInputSchema = v.strictObject({ keyId: OptionalApiKeyContextSchema });
12
- const GetApiKeyPolicyInputSchema = v.pipe(v.strictObject({
13
- policyId: v.optional(v.pipe(v.string(), v.trim(), v.minLength(1))),
10
+ const OptionalApiKeyContextSchema = validation_exports.optional(validation_exports.pipe(validation_exports.string(), validation_exports.trim(), validation_exports.minLength(1, "keyId is required")));
11
+ const ListApiKeyPoliciesInputSchema = validation_exports.strictObject({ keyId: OptionalApiKeyContextSchema });
12
+ const GetApiKeyPolicyInputSchema = validation_exports.pipe(validation_exports.strictObject({
13
+ policyId: validation_exports.optional(validation_exports.pipe(validation_exports.string(), validation_exports.trim(), validation_exports.minLength(1))),
14
14
  keyId: OptionalApiKeyContextSchema
15
- }), v.transform(({ policyId, keyId }) => ({
15
+ }), validation_exports.transform(({ policyId, keyId }) => ({
16
16
  policyId: policyId ? idToBigInt(policyId, "policyId") : void 0,
17
17
  keyId
18
18
  })));
@@ -20,42 +20,42 @@ const GetApiKeyPolicyInputSchema = v.pipe(v.strictObject({
20
20
  * From the backend format to a usable frontend/UI format, so big ints to numbers, etc.
21
21
  * Shape matches auth.v1.ApiPolicyView.
22
22
  */
23
- const ApiKeyPolicySchema = v.pipe(v.object({
23
+ const ApiKeyPolicySchema = validation_exports.pipe(validation_exports.object({
24
24
  id: PublicIdSchema,
25
- name: v.string(),
26
- description: v.string(),
27
- spotMarkets: v.optional(v.array(SpotMarketRuleSchema), []),
28
- spotMarketScope: v.pipe(ProtoPolicyMarketScopeEnumSchema, v.transform((v) => policyMarketScopeLabelFor(v))),
29
- perpMarketScope: v.pipe(ProtoPolicyMarketScopeEnumSchema, v.transform((v) => policyMarketScopeLabelFor(v))),
30
- perpMarkets: v.optional(v.array(PerpMarketRuleSchema), []),
31
- actions: v.pipe(v.optional(v.array(ProtoPolicyActionEnumSchema), []), v.transform((v) => v.map((action) => policyActionLabelFor(action)))),
32
- isTemplate: v.optional(v.boolean(), false),
25
+ name: validation_exports.string(),
26
+ description: validation_exports.string(),
27
+ spotMarkets: validation_exports.optional(validation_exports.array(SpotMarketRuleSchema), []),
28
+ spotMarketScope: validation_exports.pipe(ProtoPolicyMarketScopeEnumSchema, validation_exports.transform((v) => policyMarketScopeLabelFor(v))),
29
+ perpMarketScope: validation_exports.pipe(ProtoPolicyMarketScopeEnumSchema, validation_exports.transform((v) => policyMarketScopeLabelFor(v))),
30
+ perpMarkets: validation_exports.optional(validation_exports.array(PerpMarketRuleSchema), []),
31
+ actions: validation_exports.pipe(validation_exports.optional(validation_exports.array(ProtoPolicyActionEnumSchema), []), validation_exports.transform((v) => v.map((action) => policyActionLabelFor(action)))),
32
+ isTemplate: validation_exports.optional(validation_exports.boolean(), false),
33
33
  sourceTemplateId: OptionalPublicIdSchema,
34
- maxOrderNotional: v.pipe(v.optional(v.bigint()), v.transform((v) => v === void 0 ? void 0 : Number(v))),
35
- dailyInternalTransferOutLimit: v.pipe(v.bigint(), v.transform((v) => Number(v))),
36
- dailyWithdrawLimit: v.pipe(v.bigint(), v.transform((v) => Number(v))),
34
+ maxOrderNotional: validation_exports.pipe(validation_exports.optional(validation_exports.bigint()), validation_exports.transform((v) => v === void 0 ? void 0 : Number(v))),
35
+ dailyInternalTransferOutLimit: validation_exports.pipe(validation_exports.bigint(), validation_exports.transform((v) => Number(v))),
36
+ dailyWithdrawLimit: validation_exports.pipe(validation_exports.bigint(), validation_exports.transform((v) => Number(v))),
37
37
  createdAt: TimestampMsSchema,
38
38
  updatedAt: TimestampSchema,
39
39
  revision: BigIntStringSchema
40
- }), v.transform(({ updatedAt, ...policy }) => ({
40
+ }), validation_exports.transform(({ updatedAt, ...policy }) => ({
41
41
  ...policy,
42
42
  updatedAt: tsObjToMs(updatedAt),
43
43
  updatedAtNs: tsObjToNsString(updatedAt)
44
44
  })));
45
- const ListApiKeyPoliciesResponseSchema = v.pipe(v.object({ policies: v.optional(v.array(ApiKeyPolicySchema), []) }), v.transform((value) => value.policies));
46
- const ApiKeyPolicyInputBaseSchema = v.strictObject({
47
- name: v.string(),
48
- description: v.optional(v.string(), ""),
49
- spotMarkets: v.optional(v.array(SpotMarketRuleSchema), []),
50
- perpMarkets: v.optional(v.array(PerpMarketRuleSchema), []),
51
- spotMarketScope: v.pipe(PolicyMarketScopeEnumSchema, v.transform((v) => PolicyMarketScopeCodec.inputToProto[v])),
52
- perpMarketScope: v.pipe(PolicyMarketScopeEnumSchema, v.transform((v) => PolicyMarketScopeCodec.inputToProto[v])),
53
- actions: v.pipe(v.optional(v.array(PolicyActionEnumSchema), []), v.transform((v) => (v ?? []).map((action) => PolicyActionCodec.inputToProto[action]))),
45
+ const ListApiKeyPoliciesResponseSchema = validation_exports.pipe(validation_exports.object({ policies: validation_exports.optional(validation_exports.array(ApiKeyPolicySchema), []) }), validation_exports.transform((value) => value.policies));
46
+ const ApiKeyPolicyInputBaseSchema = validation_exports.strictObject({
47
+ name: validation_exports.string(),
48
+ description: validation_exports.optional(validation_exports.string(), ""),
49
+ spotMarkets: validation_exports.optional(validation_exports.array(SpotMarketRuleSchema), []),
50
+ perpMarkets: validation_exports.optional(validation_exports.array(PerpMarketRuleSchema), []),
51
+ spotMarketScope: validation_exports.pipe(PolicyMarketScopeEnumSchema, validation_exports.transform((v) => PolicyMarketScopeCodec.inputToProto[v])),
52
+ perpMarketScope: validation_exports.pipe(PolicyMarketScopeEnumSchema, validation_exports.transform((v) => PolicyMarketScopeCodec.inputToProto[v])),
53
+ actions: validation_exports.pipe(validation_exports.optional(validation_exports.array(PolicyActionEnumSchema), []), validation_exports.transform((v) => (v ?? []).map((action) => PolicyActionCodec.inputToProto[action]))),
54
54
  maxOrderNotional: OptionalNumberToBigIntOrZeroSchema,
55
55
  dailyInternalTransferLimit: OptionalNumberToBigIntOrZeroSchema,
56
56
  dailyWithdrawLimit: OptionalNumberToBigIntOrZeroSchema,
57
- isTemplate: v.optional(v.boolean(), false),
58
- assignToKeyId: v.optional(v.pipe(v.string(), v.trim()))
57
+ isTemplate: validation_exports.optional(validation_exports.boolean(), false),
58
+ assignToKeyId: validation_exports.optional(validation_exports.pipe(validation_exports.string(), validation_exports.trim()))
59
59
  });
60
60
  function createApiKeyPolicyBaseTransform(input) {
61
61
  const { dailyInternalTransferLimit, assignToKeyId: _assignToKeyId, ...rest } = input;
@@ -64,22 +64,22 @@ function createApiKeyPolicyBaseTransform(input) {
64
64
  dailyInternalTransferOutLimit: dailyInternalTransferLimit
65
65
  };
66
66
  }
67
- const CreateApiKeyPolicyInputSchema = v.pipe(ApiKeyPolicyInputBaseSchema, v.transform((input) => ({
67
+ const CreateApiKeyPolicyInputSchema = validation_exports.pipe(ApiKeyPolicyInputBaseSchema, validation_exports.transform((input) => ({
68
68
  policy: createApiKeyPolicyBaseTransform(input),
69
69
  assignToKeyId: input.assignToKeyId
70
70
  })));
71
- const ApiKeyPolicyPatchSchema = v.strictObject({
72
- name: v.optional(v.string()),
73
- description: v.optional(v.string()),
74
- spotMarkets: v.optional(v.array(SpotMarketRuleSchema)),
75
- perpMarkets: v.optional(v.array(PerpMarketRuleSchema)),
76
- spotMarketScope: v.optional(PolicyMarketScopeEnumSchema),
77
- perpMarketScope: v.optional(PolicyMarketScopeEnumSchema),
78
- actions: v.optional(v.array(PolicyActionEnumSchema)),
79
- maxOrderNotional: v.optional(v.nullable(v.number())),
80
- dailyInternalTransferLimit: v.optional(v.nullable(v.number())),
81
- dailyWithdrawLimit: v.optional(v.nullable(v.number())),
82
- isTemplate: v.optional(v.boolean())
71
+ const ApiKeyPolicyPatchSchema = validation_exports.strictObject({
72
+ name: validation_exports.optional(validation_exports.string()),
73
+ description: validation_exports.optional(validation_exports.string()),
74
+ spotMarkets: validation_exports.optional(validation_exports.array(SpotMarketRuleSchema)),
75
+ perpMarkets: validation_exports.optional(validation_exports.array(PerpMarketRuleSchema)),
76
+ spotMarketScope: validation_exports.optional(PolicyMarketScopeEnumSchema),
77
+ perpMarketScope: validation_exports.optional(PolicyMarketScopeEnumSchema),
78
+ actions: validation_exports.optional(validation_exports.array(PolicyActionEnumSchema)),
79
+ maxOrderNotional: validation_exports.optional(validation_exports.nullable(validation_exports.number())),
80
+ dailyInternalTransferLimit: validation_exports.optional(validation_exports.nullable(validation_exports.number())),
81
+ dailyWithdrawLimit: validation_exports.optional(validation_exports.nullable(validation_exports.number())),
82
+ isTemplate: validation_exports.optional(validation_exports.boolean())
83
83
  });
84
84
  const API_KEY_POLICY_PATCH_FIELDS = defineProtoPatchFields()({
85
85
  name: {
@@ -127,11 +127,11 @@ const API_KEY_POLICY_PATCH_FIELDS = defineProtoPatchFields()({
127
127
  encode: (isTemplate) => ({ isTemplate })
128
128
  }
129
129
  });
130
- const UpdateApiKeyPolicyInputSchema = v.pipe(v.strictObject({
130
+ const UpdateApiKeyPolicyInputSchema = validation_exports.pipe(validation_exports.strictObject({
131
131
  ...ApiKeyPolicyPatchSchema.entries,
132
- policyId: v.pipe(v.string(), v.transform((v) => idToBigInt(v, "policyId"))),
132
+ policyId: validation_exports.pipe(validation_exports.string(), validation_exports.transform((v) => idToBigInt(v, "policyId"))),
133
133
  expectedRevision: positiveBigintStringInputSchema("expectedRevision")
134
- }), v.check(({ policyId: _policyId, expectedRevision: _expectedRevision, ...patch }) => Object.values(patch).some((value) => value !== void 0), "At least one API key policy field must be provided"), v.transform(({ policyId, expectedRevision, ...patch }) => {
134
+ }), validation_exports.check(({ policyId: _policyId, expectedRevision: _expectedRevision, ...patch }) => Object.values(patch).some((value) => value !== void 0), "At least one API key policy field must be provided"), validation_exports.transform(({ policyId, expectedRevision, ...patch }) => {
135
135
  const { patch: policy, updateMask } = buildProtoPatch(patch, API_KEY_POLICY_PATCH_FIELDS);
136
136
  return {
137
137
  policyId,
@@ -140,9 +140,9 @@ const UpdateApiKeyPolicyInputSchema = v.pipe(v.strictObject({
140
140
  expectedRevision
141
141
  };
142
142
  }));
143
- const ApplyApiKeyPolicyInputSchema = v.strictObject({
144
- keyId: v.pipe(v.string(), v.trim(), v.minLength(1)),
145
- policyId: v.pipe(v.nullable(v.pipe(v.string(), v.trim())), v.transform((value) => value ? idToBigInt(value, "policyId") : void 0))
143
+ const ApplyApiKeyPolicyInputSchema = validation_exports.strictObject({
144
+ keyId: validation_exports.pipe(validation_exports.string(), validation_exports.trim(), validation_exports.minLength(1)),
145
+ policyId: validation_exports.pipe(validation_exports.nullable(validation_exports.pipe(validation_exports.string(), validation_exports.trim())), validation_exports.transform((value) => value ? idToBigInt(value, "policyId") : void 0))
146
146
  });
147
147
  const DEFAULT_API_KEY_POLICY = {
148
148
  id: "",
@@ -1 +1 @@
1
- {"version":3,"file":"api-key-policies.schemas.js","names":[],"sources":["../../../../src/services/policies/api-key-policies/api-key-policies.schemas.ts"],"sourcesContent":["import * as v from \"valibot\";\nimport {\n PerpMarketRuleSchema,\n PolicyActionEnumSchema,\n PolicyMarketScopeEnumSchema,\n ProtoPolicyActionEnumSchema,\n ProtoPolicyMarketScopeEnumSchema,\n SpotMarketRuleSchema,\n} from \"../shared.js\";\nimport {\n PolicyMarketScopeCodec,\n PolicyActionCodec,\n policyMarketScopeLabelFor,\n policyActionLabelFor,\n} from \"../shared.codecs.js\";\nimport { idToBigInt } from \"../../../utils/base58-id.js\";\nimport {\n OptionalNumberToBigIntOrZeroSchema,\n OptionalPublicIdSchema,\n BigIntStringSchema,\n PublicIdSchema,\n TimestampMsSchema,\n TimestampSchema,\n positiveBigintStringInputSchema,\n} from \"../../../shared/schemas.js\";\nimport { tsObjToMs, tsObjToNsString } from \"../../../utils/time.js\";\nimport { toBigIntOrZero } from \"../../../utils/numbers.js\";\nimport { buildProtoPatch, defineProtoPatchFields } from \"../../../utils/proto-patch.js\";\n\nconst OptionalApiKeyContextSchema = v.optional(\n v.pipe(v.string(), v.trim(), v.minLength(1, \"keyId is required\")),\n);\n\nexport const ListApiKeyPoliciesInputSchema = v.strictObject({\n keyId: OptionalApiKeyContextSchema,\n});\n\nexport type ListApiKeyPoliciesInput = v.InferInput<typeof ListApiKeyPoliciesInputSchema>;\n\nexport const GetApiKeyPolicyInputSchema = v.pipe(\n v.strictObject({\n policyId: v.optional(v.pipe(v.string(), v.trim(), v.minLength(1))),\n keyId: OptionalApiKeyContextSchema,\n }),\n v.transform(({ policyId, keyId }) => ({\n policyId: policyId ? idToBigInt(policyId, \"policyId\") : undefined,\n keyId,\n })),\n);\n\nexport type GetApiKeyPolicyInput = v.InferInput<typeof GetApiKeyPolicyInputSchema>;\n\n/**\n * From the backend format to a usable frontend/UI format, so big ints to numbers, etc.\n * Shape matches auth.v1.ApiPolicyView.\n */\nexport const ApiKeyPolicySchema = v.pipe(\n v.object({\n id: PublicIdSchema,\n name: v.string(),\n description: v.string(),\n spotMarkets: v.optional(v.array(SpotMarketRuleSchema), []),\n spotMarketScope: v.pipe(\n ProtoPolicyMarketScopeEnumSchema,\n v.transform((v) => policyMarketScopeLabelFor(v)),\n ),\n perpMarketScope: v.pipe(\n ProtoPolicyMarketScopeEnumSchema,\n v.transform((v) => policyMarketScopeLabelFor(v)),\n ),\n perpMarkets: v.optional(v.array(PerpMarketRuleSchema), []),\n actions: v.pipe(\n v.optional(v.array(ProtoPolicyActionEnumSchema), []),\n v.transform((v) => v.map((action) => policyActionLabelFor(action))),\n ),\n isTemplate: v.optional(v.boolean(), false),\n sourceTemplateId: OptionalPublicIdSchema,\n maxOrderNotional: v.pipe(\n v.optional(v.bigint()),\n v.transform((v) => (v === undefined ? undefined : Number(v))),\n ),\n dailyInternalTransferOutLimit: v.pipe(\n v.bigint(),\n v.transform((v) => Number(v)),\n ),\n dailyWithdrawLimit: v.pipe(\n v.bigint(),\n v.transform((v) => Number(v)),\n ),\n createdAt: TimestampMsSchema,\n updatedAt: TimestampSchema,\n revision: BigIntStringSchema,\n }),\n v.transform(({ updatedAt, ...policy }) => ({\n ...policy,\n updatedAt: tsObjToMs(updatedAt),\n updatedAtNs: tsObjToNsString(updatedAt),\n })),\n);\n\nexport type ApiKeyPolicy = v.InferOutput<typeof ApiKeyPolicySchema>;\n\nexport const ListApiKeyPoliciesResponseSchema = v.pipe(\n v.object({\n policies: v.optional(v.array(ApiKeyPolicySchema), []),\n }),\n v.transform((value) => value.policies),\n);\n\nexport type ListApiKeyPoliciesResponse = v.InferOutput<typeof ListApiKeyPoliciesResponseSchema>;\n\nconst ApiKeyPolicyInputBaseSchema = v.strictObject({\n name: v.string(),\n description: v.optional(v.string(), \"\"),\n spotMarkets: v.optional(v.array(SpotMarketRuleSchema), []),\n perpMarkets: v.optional(v.array(PerpMarketRuleSchema), []),\n spotMarketScope: v.pipe(\n PolicyMarketScopeEnumSchema,\n v.transform((v) => PolicyMarketScopeCodec.inputToProto[v]),\n ),\n perpMarketScope: v.pipe(\n PolicyMarketScopeEnumSchema,\n v.transform((v) => PolicyMarketScopeCodec.inputToProto[v]),\n ),\n actions: v.pipe(\n v.optional(v.array(PolicyActionEnumSchema), []),\n v.transform((v) => (v ?? []).map((action) => PolicyActionCodec.inputToProto[action])),\n ),\n maxOrderNotional: OptionalNumberToBigIntOrZeroSchema,\n dailyInternalTransferLimit: OptionalNumberToBigIntOrZeroSchema,\n dailyWithdrawLimit: OptionalNumberToBigIntOrZeroSchema,\n isTemplate: v.optional(v.boolean(), false),\n assignToKeyId: v.optional(v.pipe(v.string(), v.trim())),\n});\n\nfunction createApiKeyPolicyBaseTransform(input: v.InferOutput<typeof ApiKeyPolicyInputBaseSchema>) {\n const { dailyInternalTransferLimit, assignToKeyId: _assignToKeyId, ...rest } = input;\n return {\n ...rest,\n dailyInternalTransferOutLimit: dailyInternalTransferLimit,\n };\n}\n\nexport const CreateApiKeyPolicyInputSchema = v.pipe(\n ApiKeyPolicyInputBaseSchema,\n v.transform((input) => ({\n policy: createApiKeyPolicyBaseTransform(input),\n assignToKeyId: input.assignToKeyId,\n })),\n);\n\nexport type ApiKeyPolicyCreateInput = v.InferInput<typeof CreateApiKeyPolicyInputSchema>;\n\nconst ApiKeyPolicyPatchSchema = v.strictObject({\n name: v.optional(v.string()),\n description: v.optional(v.string()),\n spotMarkets: v.optional(v.array(SpotMarketRuleSchema)),\n perpMarkets: v.optional(v.array(PerpMarketRuleSchema)),\n spotMarketScope: v.optional(PolicyMarketScopeEnumSchema),\n perpMarketScope: v.optional(PolicyMarketScopeEnumSchema),\n actions: v.optional(v.array(PolicyActionEnumSchema)),\n maxOrderNotional: v.optional(v.nullable(v.number())),\n dailyInternalTransferLimit: v.optional(v.nullable(v.number())),\n dailyWithdrawLimit: v.optional(v.nullable(v.number())),\n isTemplate: v.optional(v.boolean()),\n});\n\ntype ApiKeyPolicyPatch = v.InferOutput<typeof ApiKeyPolicyPatchSchema>;\n\nconst API_KEY_POLICY_PATCH_FIELDS = defineProtoPatchFields<ApiKeyPolicyPatch>()({\n name: { path: \"name\", encode: (name) => ({ name }) },\n description: { path: \"description\", encode: (description) => ({ description }) },\n spotMarkets: { path: \"spot_markets\", encode: (spotMarkets) => ({ spotMarkets }) },\n perpMarkets: { path: \"perp_markets\", encode: (perpMarkets) => ({ perpMarkets }) },\n spotMarketScope: {\n path: \"spot_market_scope\",\n encode: (scope) => ({ spotMarketScope: PolicyMarketScopeCodec.inputToProto[scope] }),\n },\n perpMarketScope: {\n path: \"perp_market_scope\",\n encode: (scope) => ({ perpMarketScope: PolicyMarketScopeCodec.inputToProto[scope] }),\n },\n actions: {\n path: \"actions\",\n encode: (actions) => ({\n actions: actions.map((action) => PolicyActionCodec.inputToProto[action]),\n }),\n },\n maxOrderNotional: {\n path: \"max_order_notional\",\n encode: (value) => ({ maxOrderNotional: toBigIntOrZero(value) }),\n },\n dailyInternalTransferLimit: {\n path: \"daily_internal_transfer_out_limit\",\n encode: (value) => ({ dailyInternalTransferOutLimit: toBigIntOrZero(value) }),\n },\n dailyWithdrawLimit: {\n path: \"daily_withdraw_limit\",\n encode: (value) => ({ dailyWithdrawLimit: toBigIntOrZero(value) }),\n },\n isTemplate: { path: \"is_template\", encode: (isTemplate) => ({ isTemplate }) },\n});\n\nexport const UpdateApiKeyPolicyInputSchema = v.pipe(\n v.strictObject({\n ...ApiKeyPolicyPatchSchema.entries,\n policyId: v.pipe(\n v.string(),\n v.transform((v) => idToBigInt(v, \"policyId\")),\n ),\n expectedRevision: positiveBigintStringInputSchema(\"expectedRevision\"),\n }),\n v.check(\n ({ policyId: _policyId, expectedRevision: _expectedRevision, ...patch }) =>\n Object.values(patch).some((value) => value !== undefined),\n \"At least one API key policy field must be provided\",\n ),\n v.transform(({ policyId, expectedRevision, ...patch }) => {\n const { patch: policy, updateMask } = buildProtoPatch(patch, API_KEY_POLICY_PATCH_FIELDS);\n return {\n policyId,\n policy,\n updateMask,\n expectedRevision,\n };\n }),\n);\n\nexport type ApiKeyPolicyUpdateInput = v.InferInput<typeof UpdateApiKeyPolicyInputSchema>;\n\nexport const ApplyApiKeyPolicyInputSchema = v.strictObject({\n keyId: v.pipe(v.string(), v.trim(), v.minLength(1)),\n policyId: v.pipe(\n v.nullable(v.pipe(v.string(), v.trim())),\n v.transform((value) => (value ? idToBigInt(value, \"policyId\") : undefined)),\n ),\n});\n\nexport type ApiKeyPolicyApplyInput = v.InferInput<typeof ApplyApiKeyPolicyInputSchema>;\n\nexport const DEFAULT_API_KEY_POLICY: ApiKeyPolicy = {\n id: \"\",\n name: \"API Key Policy\",\n description: \"Default API key policy with no permissions\",\n spotMarkets: [],\n spotMarketScope: \"all\",\n perpMarketScope: \"all\",\n perpMarkets: [],\n actions: [],\n maxOrderNotional: 0,\n dailyInternalTransferOutLimit: 0,\n dailyWithdrawLimit: 0,\n isTemplate: false,\n sourceTemplateId: \"\",\n createdAt: 0,\n updatedAt: 0,\n updatedAtNs: \"0\",\n revision: \"0\",\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"api-key-policies.schemas.js","names":["v"],"sources":["../../../../src/services/policies/api-key-policies/api-key-policies.schemas.ts"],"sourcesContent":["import * as v from \"../../../shared/validation.js\";\nimport {\n PerpMarketRuleSchema,\n PolicyActionEnumSchema,\n PolicyMarketScopeEnumSchema,\n ProtoPolicyActionEnumSchema,\n ProtoPolicyMarketScopeEnumSchema,\n SpotMarketRuleSchema,\n} from \"../shared.js\";\nimport {\n PolicyMarketScopeCodec,\n PolicyActionCodec,\n policyMarketScopeLabelFor,\n policyActionLabelFor,\n} from \"../shared.codecs.js\";\nimport { idToBigInt } from \"../../../utils/base58-id.js\";\nimport {\n OptionalNumberToBigIntOrZeroSchema,\n OptionalPublicIdSchema,\n BigIntStringSchema,\n PublicIdSchema,\n TimestampMsSchema,\n TimestampSchema,\n positiveBigintStringInputSchema,\n} from \"../../../shared/schemas.js\";\nimport { tsObjToMs, tsObjToNsString } from \"../../../utils/time.js\";\nimport { toBigIntOrZero } from \"../../../utils/numbers.js\";\nimport { buildProtoPatch, defineProtoPatchFields } from \"../../../utils/proto-patch.js\";\n\nconst OptionalApiKeyContextSchema = v.optional(\n v.pipe(v.string(), v.trim(), v.minLength(1, \"keyId is required\")),\n);\n\nexport const ListApiKeyPoliciesInputSchema = v.strictObject({\n keyId: OptionalApiKeyContextSchema,\n});\n\nexport type ListApiKeyPoliciesInput = v.InferInput<typeof ListApiKeyPoliciesInputSchema>;\n\nexport const GetApiKeyPolicyInputSchema = v.pipe(\n v.strictObject({\n policyId: v.optional(v.pipe(v.string(), v.trim(), v.minLength(1))),\n keyId: OptionalApiKeyContextSchema,\n }),\n v.transform(({ policyId, keyId }) => ({\n policyId: policyId ? idToBigInt(policyId, \"policyId\") : undefined,\n keyId,\n })),\n);\n\nexport type GetApiKeyPolicyInput = v.InferInput<typeof GetApiKeyPolicyInputSchema>;\n\n/**\n * From the backend format to a usable frontend/UI format, so big ints to numbers, etc.\n * Shape matches auth.v1.ApiPolicyView.\n */\nexport const ApiKeyPolicySchema = v.pipe(\n v.object({\n id: PublicIdSchema,\n name: v.string(),\n description: v.string(),\n spotMarkets: v.optional(v.array(SpotMarketRuleSchema), []),\n spotMarketScope: v.pipe(\n ProtoPolicyMarketScopeEnumSchema,\n v.transform((v) => policyMarketScopeLabelFor(v)),\n ),\n perpMarketScope: v.pipe(\n ProtoPolicyMarketScopeEnumSchema,\n v.transform((v) => policyMarketScopeLabelFor(v)),\n ),\n perpMarkets: v.optional(v.array(PerpMarketRuleSchema), []),\n actions: v.pipe(\n v.optional(v.array(ProtoPolicyActionEnumSchema), []),\n v.transform((v) => v.map((action) => policyActionLabelFor(action))),\n ),\n isTemplate: v.optional(v.boolean(), false),\n sourceTemplateId: OptionalPublicIdSchema,\n maxOrderNotional: v.pipe(\n v.optional(v.bigint()),\n v.transform((v) => (v === undefined ? undefined : Number(v))),\n ),\n dailyInternalTransferOutLimit: v.pipe(\n v.bigint(),\n v.transform((v) => Number(v)),\n ),\n dailyWithdrawLimit: v.pipe(\n v.bigint(),\n v.transform((v) => Number(v)),\n ),\n createdAt: TimestampMsSchema,\n updatedAt: TimestampSchema,\n revision: BigIntStringSchema,\n }),\n v.transform(({ updatedAt, ...policy }) => ({\n ...policy,\n updatedAt: tsObjToMs(updatedAt),\n updatedAtNs: tsObjToNsString(updatedAt),\n })),\n);\n\nexport type ApiKeyPolicy = v.InferOutput<typeof ApiKeyPolicySchema>;\n\nexport const ListApiKeyPoliciesResponseSchema = v.pipe(\n v.object({\n policies: v.optional(v.array(ApiKeyPolicySchema), []),\n }),\n v.transform((value) => value.policies),\n);\n\nexport type ListApiKeyPoliciesResponse = v.InferOutput<typeof ListApiKeyPoliciesResponseSchema>;\n\nconst ApiKeyPolicyInputBaseSchema = v.strictObject({\n name: v.string(),\n description: v.optional(v.string(), \"\"),\n spotMarkets: v.optional(v.array(SpotMarketRuleSchema), []),\n perpMarkets: v.optional(v.array(PerpMarketRuleSchema), []),\n spotMarketScope: v.pipe(\n PolicyMarketScopeEnumSchema,\n v.transform((v) => PolicyMarketScopeCodec.inputToProto[v]),\n ),\n perpMarketScope: v.pipe(\n PolicyMarketScopeEnumSchema,\n v.transform((v) => PolicyMarketScopeCodec.inputToProto[v]),\n ),\n actions: v.pipe(\n v.optional(v.array(PolicyActionEnumSchema), []),\n v.transform((v) => (v ?? []).map((action) => PolicyActionCodec.inputToProto[action])),\n ),\n maxOrderNotional: OptionalNumberToBigIntOrZeroSchema,\n dailyInternalTransferLimit: OptionalNumberToBigIntOrZeroSchema,\n dailyWithdrawLimit: OptionalNumberToBigIntOrZeroSchema,\n isTemplate: v.optional(v.boolean(), false),\n assignToKeyId: v.optional(v.pipe(v.string(), v.trim())),\n});\n\nfunction createApiKeyPolicyBaseTransform(input: v.InferOutput<typeof ApiKeyPolicyInputBaseSchema>) {\n const { dailyInternalTransferLimit, assignToKeyId: _assignToKeyId, ...rest } = input;\n return {\n ...rest,\n dailyInternalTransferOutLimit: dailyInternalTransferLimit,\n };\n}\n\nexport const CreateApiKeyPolicyInputSchema = v.pipe(\n ApiKeyPolicyInputBaseSchema,\n v.transform((input) => ({\n policy: createApiKeyPolicyBaseTransform(input),\n assignToKeyId: input.assignToKeyId,\n })),\n);\n\nexport type ApiKeyPolicyCreateInput = v.InferInput<typeof CreateApiKeyPolicyInputSchema>;\n\nconst ApiKeyPolicyPatchSchema = v.strictObject({\n name: v.optional(v.string()),\n description: v.optional(v.string()),\n spotMarkets: v.optional(v.array(SpotMarketRuleSchema)),\n perpMarkets: v.optional(v.array(PerpMarketRuleSchema)),\n spotMarketScope: v.optional(PolicyMarketScopeEnumSchema),\n perpMarketScope: v.optional(PolicyMarketScopeEnumSchema),\n actions: v.optional(v.array(PolicyActionEnumSchema)),\n maxOrderNotional: v.optional(v.nullable(v.number())),\n dailyInternalTransferLimit: v.optional(v.nullable(v.number())),\n dailyWithdrawLimit: v.optional(v.nullable(v.number())),\n isTemplate: v.optional(v.boolean()),\n});\n\ntype ApiKeyPolicyPatch = v.InferOutput<typeof ApiKeyPolicyPatchSchema>;\n\nconst API_KEY_POLICY_PATCH_FIELDS = defineProtoPatchFields<ApiKeyPolicyPatch>()({\n name: { path: \"name\", encode: (name) => ({ name }) },\n description: { path: \"description\", encode: (description) => ({ description }) },\n spotMarkets: { path: \"spot_markets\", encode: (spotMarkets) => ({ spotMarkets }) },\n perpMarkets: { path: \"perp_markets\", encode: (perpMarkets) => ({ perpMarkets }) },\n spotMarketScope: {\n path: \"spot_market_scope\",\n encode: (scope) => ({ spotMarketScope: PolicyMarketScopeCodec.inputToProto[scope] }),\n },\n perpMarketScope: {\n path: \"perp_market_scope\",\n encode: (scope) => ({ perpMarketScope: PolicyMarketScopeCodec.inputToProto[scope] }),\n },\n actions: {\n path: \"actions\",\n encode: (actions) => ({\n actions: actions.map((action) => PolicyActionCodec.inputToProto[action]),\n }),\n },\n maxOrderNotional: {\n path: \"max_order_notional\",\n encode: (value) => ({ maxOrderNotional: toBigIntOrZero(value) }),\n },\n dailyInternalTransferLimit: {\n path: \"daily_internal_transfer_out_limit\",\n encode: (value) => ({ dailyInternalTransferOutLimit: toBigIntOrZero(value) }),\n },\n dailyWithdrawLimit: {\n path: \"daily_withdraw_limit\",\n encode: (value) => ({ dailyWithdrawLimit: toBigIntOrZero(value) }),\n },\n isTemplate: { path: \"is_template\", encode: (isTemplate) => ({ isTemplate }) },\n});\n\nexport const UpdateApiKeyPolicyInputSchema = v.pipe(\n v.strictObject({\n ...ApiKeyPolicyPatchSchema.entries,\n policyId: v.pipe(\n v.string(),\n v.transform((v) => idToBigInt(v, \"policyId\")),\n ),\n expectedRevision: positiveBigintStringInputSchema(\"expectedRevision\"),\n }),\n v.check(\n ({ policyId: _policyId, expectedRevision: _expectedRevision, ...patch }) =>\n Object.values(patch).some((value) => value !== undefined),\n \"At least one API key policy field must be provided\",\n ),\n v.transform(({ policyId, expectedRevision, ...patch }) => {\n const { patch: policy, updateMask } = buildProtoPatch(patch, API_KEY_POLICY_PATCH_FIELDS);\n return {\n policyId,\n policy,\n updateMask,\n expectedRevision,\n };\n }),\n);\n\nexport type ApiKeyPolicyUpdateInput = v.InferInput<typeof UpdateApiKeyPolicyInputSchema>;\n\nexport const ApplyApiKeyPolicyInputSchema = v.strictObject({\n keyId: v.pipe(v.string(), v.trim(), v.minLength(1)),\n policyId: v.pipe(\n v.nullable(v.pipe(v.string(), v.trim())),\n v.transform((value) => (value ? idToBigInt(value, \"policyId\") : undefined)),\n ),\n});\n\nexport type ApiKeyPolicyApplyInput = v.InferInput<typeof ApplyApiKeyPolicyInputSchema>;\n\nexport const DEFAULT_API_KEY_POLICY: ApiKeyPolicy = {\n id: \"\",\n name: \"API Key Policy\",\n description: \"Default API key policy with no permissions\",\n spotMarkets: [],\n spotMarketScope: \"all\",\n perpMarketScope: \"all\",\n perpMarkets: [],\n actions: [],\n maxOrderNotional: 0,\n dailyInternalTransferOutLimit: 0,\n dailyWithdrawLimit: 0,\n isTemplate: false,\n sourceTemplateId: \"\",\n createdAt: 0,\n updatedAt: 0,\n updatedAtNs: \"0\",\n revision: \"0\",\n};\n"],"mappings":";;;;;;;;;AA6BA,MAAM,8BAA8BA,mBAAE,SAClCA,mBAAE,KAAKA,mBAAE,OAAO,GAAGA,mBAAE,KAAK,GAAGA,mBAAE,UAAU,GAAG,mBAAmB,CAAC,CACpE;AAEA,MAAa,gCAAgCA,mBAAE,aAAa,EACxD,OAAO,4BACX,CAAC;AAID,MAAa,6BAA6BA,mBAAE,KACxCA,mBAAE,aAAa;CACX,UAAUA,mBAAE,SAASA,mBAAE,KAAKA,mBAAE,OAAO,GAAGA,mBAAE,KAAK,GAAGA,mBAAE,UAAU,CAAC,CAAC,CAAC;CACjE,OAAO;AACX,CAAC,GACDA,mBAAE,WAAW,EAAE,UAAU,aAAa;CAClC,UAAU,WAAW,WAAW,UAAU,UAAU,IAAI,KAAA;CACxD;AACJ,EAAE,CACN;;;;;AAQA,MAAa,qBAAqBA,mBAAE,KAChCA,mBAAE,OAAO;CACL,IAAI;CACJ,MAAMA,mBAAE,OAAO;CACf,aAAaA,mBAAE,OAAO;CACtB,aAAaA,mBAAE,SAASA,mBAAE,MAAM,oBAAoB,GAAG,CAAC,CAAC;CACzD,iBAAiBA,mBAAE,KACf,kCACAA,mBAAE,WAAW,MAAM,0BAA0B,CAAC,CAAC,CACnD;CACA,iBAAiBA,mBAAE,KACf,kCACAA,mBAAE,WAAW,MAAM,0BAA0B,CAAC,CAAC,CACnD;CACA,aAAaA,mBAAE,SAASA,mBAAE,MAAM,oBAAoB,GAAG,CAAC,CAAC;CACzD,SAASA,mBAAE,KACPA,mBAAE,SAASA,mBAAE,MAAM,2BAA2B,GAAG,CAAC,CAAC,GACnDA,mBAAE,WAAW,MAAM,EAAE,KAAK,WAAW,qBAAqB,MAAM,CAAC,CAAC,CACtE;CACA,YAAYA,mBAAE,SAASA,mBAAE,QAAQ,GAAG,KAAK;CACzC,kBAAkB;CAClB,kBAAkBA,mBAAE,KAChBA,mBAAE,SAASA,mBAAE,OAAO,CAAC,GACrBA,mBAAE,WAAW,MAAO,MAAM,KAAA,IAAY,KAAA,IAAY,OAAO,CAAC,CAAE,CAChE;CACA,+BAA+BA,mBAAE,KAC7BA,mBAAE,OAAO,GACTA,mBAAE,WAAW,MAAM,OAAO,CAAC,CAAC,CAChC;CACA,oBAAoBA,mBAAE,KAClBA,mBAAE,OAAO,GACTA,mBAAE,WAAW,MAAM,OAAO,CAAC,CAAC,CAChC;CACA,WAAW;CACX,WAAW;CACX,UAAU;AACd,CAAC,GACDA,mBAAE,WAAW,EAAE,WAAW,GAAG,cAAc;CACvC,GAAG;CACH,WAAW,UAAU,SAAS;CAC9B,aAAa,gBAAgB,SAAS;AAC1C,EAAE,CACN;AAIA,MAAa,mCAAmCA,mBAAE,KAC9CA,mBAAE,OAAO,EACL,UAAUA,mBAAE,SAASA,mBAAE,MAAM,kBAAkB,GAAG,CAAC,CAAC,EACxD,CAAC,GACDA,mBAAE,WAAW,UAAU,MAAM,QAAQ,CACzC;AAIA,MAAM,8BAA8BA,mBAAE,aAAa;CAC/C,MAAMA,mBAAE,OAAO;CACf,aAAaA,mBAAE,SAASA,mBAAE,OAAO,GAAG,EAAE;CACtC,aAAaA,mBAAE,SAASA,mBAAE,MAAM,oBAAoB,GAAG,CAAC,CAAC;CACzD,aAAaA,mBAAE,SAASA,mBAAE,MAAM,oBAAoB,GAAG,CAAC,CAAC;CACzD,iBAAiBA,mBAAE,KACf,6BACAA,mBAAE,WAAW,MAAM,uBAAuB,aAAa,EAAE,CAC7D;CACA,iBAAiBA,mBAAE,KACf,6BACAA,mBAAE,WAAW,MAAM,uBAAuB,aAAa,EAAE,CAC7D;CACA,SAASA,mBAAE,KACPA,mBAAE,SAASA,mBAAE,MAAM,sBAAsB,GAAG,CAAC,CAAC,GAC9CA,mBAAE,WAAW,OAAO,KAAK,CAAC,EAAA,CAAG,KAAK,WAAW,kBAAkB,aAAa,OAAO,CAAC,CACxF;CACA,kBAAkB;CAClB,4BAA4B;CAC5B,oBAAoB;CACpB,YAAYA,mBAAE,SAASA,mBAAE,QAAQ,GAAG,KAAK;CACzC,eAAeA,mBAAE,SAASA,mBAAE,KAAKA,mBAAE,OAAO,GAAGA,mBAAE,KAAK,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,gCAAgC,OAA0D;CAC/F,MAAM,EAAE,4BAA4B,eAAe,gBAAgB,GAAG,SAAS;CAC/E,OAAO;EACH,GAAG;EACH,+BAA+B;CACnC;AACJ;AAEA,MAAa,gCAAgCA,mBAAE,KAC3C,6BACAA,mBAAE,WAAW,WAAW;CACpB,QAAQ,gCAAgC,KAAK;CAC7C,eAAe,MAAM;AACzB,EAAE,CACN;AAIA,MAAM,0BAA0BA,mBAAE,aAAa;CAC3C,MAAMA,mBAAE,SAASA,mBAAE,OAAO,CAAC;CAC3B,aAAaA,mBAAE,SAASA,mBAAE,OAAO,CAAC;CAClC,aAAaA,mBAAE,SAASA,mBAAE,MAAM,oBAAoB,CAAC;CACrD,aAAaA,mBAAE,SAASA,mBAAE,MAAM,oBAAoB,CAAC;CACrD,iBAAiBA,mBAAE,SAAS,2BAA2B;CACvD,iBAAiBA,mBAAE,SAAS,2BAA2B;CACvD,SAASA,mBAAE,SAASA,mBAAE,MAAM,sBAAsB,CAAC;CACnD,kBAAkBA,mBAAE,SAASA,mBAAE,SAASA,mBAAE,OAAO,CAAC,CAAC;CACnD,4BAA4BA,mBAAE,SAASA,mBAAE,SAASA,mBAAE,OAAO,CAAC,CAAC;CAC7D,oBAAoBA,mBAAE,SAASA,mBAAE,SAASA,mBAAE,OAAO,CAAC,CAAC;CACrD,YAAYA,mBAAE,SAASA,mBAAE,QAAQ,CAAC;AACtC,CAAC;AAID,MAAM,8BAA8B,uBAA0C,CAAC,CAAC;CAC5E,MAAM;EAAE,MAAM;EAAQ,SAAS,UAAU,EAAE,KAAK;CAAG;CACnD,aAAa;EAAE,MAAM;EAAe,SAAS,iBAAiB,EAAE,YAAY;CAAG;CAC/E,aAAa;EAAE,MAAM;EAAgB,SAAS,iBAAiB,EAAE,YAAY;CAAG;CAChF,aAAa;EAAE,MAAM;EAAgB,SAAS,iBAAiB,EAAE,YAAY;CAAG;CAChF,iBAAiB;EACb,MAAM;EACN,SAAS,WAAW,EAAE,iBAAiB,uBAAuB,aAAa,OAAO;CACtF;CACA,iBAAiB;EACb,MAAM;EACN,SAAS,WAAW,EAAE,iBAAiB,uBAAuB,aAAa,OAAO;CACtF;CACA,SAAS;EACL,MAAM;EACN,SAAS,aAAa,EAClB,SAAS,QAAQ,KAAK,WAAW,kBAAkB,aAAa,OAAO,EAC3E;CACJ;CACA,kBAAkB;EACd,MAAM;EACN,SAAS,WAAW,EAAE,kBAAkB,eAAe,KAAK,EAAE;CAClE;CACA,4BAA4B;EACxB,MAAM;EACN,SAAS,WAAW,EAAE,+BAA+B,eAAe,KAAK,EAAE;CAC/E;CACA,oBAAoB;EAChB,MAAM;EACN,SAAS,WAAW,EAAE,oBAAoB,eAAe,KAAK,EAAE;CACpE;CACA,YAAY;EAAE,MAAM;EAAe,SAAS,gBAAgB,EAAE,WAAW;CAAG;AAChF,CAAC;AAED,MAAa,gCAAgCA,mBAAE,KAC3CA,mBAAE,aAAa;CACX,GAAG,wBAAwB;CAC3B,UAAUA,mBAAE,KACRA,mBAAE,OAAO,GACTA,mBAAE,WAAW,MAAM,WAAW,GAAG,UAAU,CAAC,CAChD;CACA,kBAAkB,gCAAgC,kBAAkB;AACxE,CAAC,GACDA,mBAAE,OACG,EAAE,UAAU,WAAW,kBAAkB,mBAAmB,GAAG,YAC5D,OAAO,OAAO,KAAK,CAAC,CAAC,MAAM,UAAU,UAAU,KAAA,CAAS,GAC5D,oDACJ,GACAA,mBAAE,WAAW,EAAE,UAAU,kBAAkB,GAAG,YAAY;CACtD,MAAM,EAAE,OAAO,QAAQ,eAAe,gBAAgB,OAAO,2BAA2B;CACxF,OAAO;EACH;EACA;EACA;EACA;CACJ;AACJ,CAAC,CACL;AAIA,MAAa,+BAA+BA,mBAAE,aAAa;CACvD,OAAOA,mBAAE,KAAKA,mBAAE,OAAO,GAAGA,mBAAE,KAAK,GAAGA,mBAAE,UAAU,CAAC,CAAC;CAClD,UAAUA,mBAAE,KACRA,mBAAE,SAASA,mBAAE,KAAKA,mBAAE,OAAO,GAAGA,mBAAE,KAAK,CAAC,CAAC,GACvCA,mBAAE,WAAW,UAAW,QAAQ,WAAW,OAAO,UAAU,IAAI,KAAA,CAAU,CAC9E;AACJ,CAAC;AAID,MAAa,yBAAuC;CAChD,IAAI;CACJ,MAAM;CACN,aAAa;CACb,aAAa,CAAC;CACd,iBAAiB;CACjB,iBAAiB;CACjB,aAAa,CAAC;CACd,SAAS,CAAC;CACV,kBAAkB;CAClB,+BAA+B;CAC/B,oBAAoB;CACpB,YAAY;CACZ,kBAAkB;CAClB,WAAW;CACX,WAAW;CACX,aAAa;CACb,UAAU;AACd"}
@@ -1,10 +1,10 @@
1
+ import { validation_d_exports } from "../../shared/validation.js";
1
2
  import "../../gen/auth/v1/policies_pb.js";
2
- import * as v from "valibot";
3
3
  //#region src/services/policies/shared.d.ts
4
- declare const PolicyActionEnumSchema: v.PicklistSchema<readonly ["trade-spot", "trade-perp", "internal-transfer", "external-withdraw", "read-balances", "read-spot", "read-perp", "read-internal-transfers", "read-external-withdrawals", "read-transfer-controls", "manage-address-book", "manage-transfer-whitelists"], undefined>;
5
- declare const PolicyMarketScopeEnumSchema: v.PicklistSchema<readonly ["all", "allowlist"], undefined>;
6
- type PolicyMarketScope = v.InferOutput<typeof PolicyMarketScopeEnumSchema>;
7
- type PolicyAction = v.InferOutput<typeof PolicyActionEnumSchema>;
4
+ declare const PolicyActionEnumSchema: validation_d_exports.PicklistSchema<readonly ["trade-spot", "trade-perp", "internal-transfer", "external-withdraw", "read-balances", "read-spot", "read-perp", "read-internal-transfers", "read-external-withdrawals", "read-transfer-controls", "manage-address-book", "manage-transfer-whitelists"], undefined>;
5
+ declare const PolicyMarketScopeEnumSchema: validation_d_exports.PicklistSchema<readonly ["all", "allowlist"], undefined>;
6
+ type PolicyMarketScope = validation_d_exports.InferOutput<typeof PolicyMarketScopeEnumSchema>;
7
+ type PolicyAction = validation_d_exports.InferOutput<typeof PolicyActionEnumSchema>;
8
8
  //#endregion
9
9
  export { PolicyAction, PolicyActionEnumSchema, PolicyMarketScope, PolicyMarketScopeEnumSchema };
10
10
  //# sourceMappingURL=shared.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","names":[],"sources":["../../../src/services/policies/shared.ts"],"mappings":";;;cA+Ba,wBAAsB,EAAA;cAEtB,6BAA2B,EAAA;KAC5B,oBAAoB,EAAE,mBAAmB;KAEzC,eAAe,EAAE,mBAAmB"}
1
+ {"version":3,"file":"shared.d.ts","names":[],"sources":["../../../src/services/policies/shared.ts"],"mappings":";;;cA+Ba,wBAAsB,qBAAA;cAEtB,6BAA2B,qBAAA;KAC5B,oBAAoB,qBAAE,mBAAmB;KAEzC,eAAe,qBAAE,mBAAmB"}
@@ -1,11 +1,11 @@
1
+ import { validation_exports } from "../../shared/validation.js";
1
2
  import { idToBigInt } from "../../utils/base58-id.js";
2
3
  import { MarketScope_Value, PolicyAction } from "../../gen/auth/v1/policies_pb.js";
3
- import * as v from "valibot";
4
4
  //#region src/services/policies/shared.ts
5
- const SpotMarketRuleSchema = v.object({ symbol: v.string() });
6
- const PerpMarketRuleSchema = v.object({
7
- symbol: v.string(),
8
- maxLeverageX: v.number()
5
+ const SpotMarketRuleSchema = validation_exports.object({ symbol: validation_exports.string() });
6
+ const PerpMarketRuleSchema = validation_exports.object({
7
+ symbol: validation_exports.string(),
8
+ maxLeverageX: validation_exports.number()
9
9
  });
10
10
  const POLICY_ACTIONS = [
11
11
  "trade-spot",
@@ -22,11 +22,11 @@ const POLICY_ACTIONS = [
22
22
  "manage-transfer-whitelists"
23
23
  ];
24
24
  const POLICY_MARKET_SCOPES = ["all", "allowlist"];
25
- const ProtoPolicyActionEnumSchema = v.enum(PolicyAction);
26
- const PolicyActionEnumSchema = v.picklist(POLICY_ACTIONS);
27
- const ProtoPolicyMarketScopeEnumSchema = v.enum(MarketScope_Value);
28
- const PolicyMarketScopeEnumSchema = v.picklist(POLICY_MARKET_SCOPES);
29
- const PolicyIdSchema = v.pipe(v.string(), v.trim(), v.minLength(1), v.transform((v) => idToBigInt(v, "policyId")));
25
+ const ProtoPolicyActionEnumSchema = validation_exports.enum(PolicyAction);
26
+ const PolicyActionEnumSchema = validation_exports.picklist(POLICY_ACTIONS);
27
+ const ProtoPolicyMarketScopeEnumSchema = validation_exports.enum(MarketScope_Value);
28
+ const PolicyMarketScopeEnumSchema = validation_exports.picklist(POLICY_MARKET_SCOPES);
29
+ const PolicyIdSchema = validation_exports.pipe(validation_exports.string(), validation_exports.trim(), validation_exports.minLength(1), validation_exports.transform((v) => idToBigInt(v, "policyId")));
30
30
  //#endregion
31
31
  export { POLICY_ACTIONS, POLICY_MARKET_SCOPES, PerpMarketRuleSchema, PolicyActionEnumSchema, PolicyIdSchema, PolicyMarketScopeEnumSchema, ProtoPolicyActionEnumSchema, ProtoPolicyMarketScopeEnumSchema, SpotMarketRuleSchema };
32
32
 
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","names":["Proto.PolicyAction","Proto.MarketScope_Value"],"sources":["../../../src/services/policies/shared.ts"],"sourcesContent":["import * as v from \"valibot\";\nimport * as Proto from \"../../gen/auth/v1/policies_pb.js\";\nimport { idToBigInt } from \"../../utils/base58-id.js\";\n\nexport const SpotMarketRuleSchema = v.object({\n symbol: v.string(),\n});\n\nexport const PerpMarketRuleSchema = v.object({\n symbol: v.string(),\n maxLeverageX: v.number(),\n});\n\nexport const POLICY_ACTIONS = [\n \"trade-spot\",\n \"trade-perp\",\n \"internal-transfer\",\n \"external-withdraw\",\n \"read-balances\",\n \"read-spot\",\n \"read-perp\",\n \"read-internal-transfers\",\n \"read-external-withdrawals\",\n \"read-transfer-controls\",\n \"manage-address-book\",\n \"manage-transfer-whitelists\",\n] as const;\n\nexport const POLICY_MARKET_SCOPES = [\"all\", \"allowlist\"] as const;\n\nexport const ProtoPolicyActionEnumSchema = v.enum(Proto.PolicyAction);\nexport const PolicyActionEnumSchema = v.picklist(POLICY_ACTIONS);\nexport const ProtoPolicyMarketScopeEnumSchema = v.enum(Proto.MarketScope_Value);\nexport const PolicyMarketScopeEnumSchema = v.picklist(POLICY_MARKET_SCOPES);\nexport type PolicyMarketScope = v.InferOutput<typeof PolicyMarketScopeEnumSchema>;\n\nexport type PolicyAction = v.InferOutput<typeof PolicyActionEnumSchema>;\n\nexport const PolicyIdSchema = v.pipe(\n v.string(),\n v.trim(),\n v.minLength(1),\n v.transform((v) => idToBigInt(v, \"policyId\")),\n);\n"],"mappings":";;;;AAIA,MAAa,uBAAuB,EAAE,OAAO,EACzC,QAAQ,EAAE,OAAO,EACrB,CAAC;AAED,MAAa,uBAAuB,EAAE,OAAO;CACzC,QAAQ,EAAE,OAAO;CACjB,cAAc,EAAE,OAAO;AAC3B,CAAC;AAED,MAAa,iBAAiB;CAC1B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACJ;AAEA,MAAa,uBAAuB,CAAC,OAAO,WAAW;AAEvD,MAAa,8BAA8B,EAAE,KAAKA,YAAkB;AACpE,MAAa,yBAAyB,EAAE,SAAS,cAAc;AAC/D,MAAa,mCAAmC,EAAE,KAAKC,iBAAuB;AAC9E,MAAa,8BAA8B,EAAE,SAAS,oBAAoB;AAK1E,MAAa,iBAAiB,EAAE,KAC5B,EAAE,OAAO,GACT,EAAE,KAAK,GACP,EAAE,UAAU,CAAC,GACb,EAAE,WAAW,MAAM,WAAW,GAAG,UAAU,CAAC,CAChD"}
1
+ {"version":3,"file":"shared.js","names":["v","Proto.PolicyAction","Proto.MarketScope_Value"],"sources":["../../../src/services/policies/shared.ts"],"sourcesContent":["import * as v from \"../../shared/validation.js\";\nimport * as Proto from \"../../gen/auth/v1/policies_pb.js\";\nimport { idToBigInt } from \"../../utils/base58-id.js\";\n\nexport const SpotMarketRuleSchema = v.object({\n symbol: v.string(),\n});\n\nexport const PerpMarketRuleSchema = v.object({\n symbol: v.string(),\n maxLeverageX: v.number(),\n});\n\nexport const POLICY_ACTIONS = [\n \"trade-spot\",\n \"trade-perp\",\n \"internal-transfer\",\n \"external-withdraw\",\n \"read-balances\",\n \"read-spot\",\n \"read-perp\",\n \"read-internal-transfers\",\n \"read-external-withdrawals\",\n \"read-transfer-controls\",\n \"manage-address-book\",\n \"manage-transfer-whitelists\",\n] as const;\n\nexport const POLICY_MARKET_SCOPES = [\"all\", \"allowlist\"] as const;\n\nexport const ProtoPolicyActionEnumSchema = v.enum(Proto.PolicyAction);\nexport const PolicyActionEnumSchema = v.picklist(POLICY_ACTIONS);\nexport const ProtoPolicyMarketScopeEnumSchema = v.enum(Proto.MarketScope_Value);\nexport const PolicyMarketScopeEnumSchema = v.picklist(POLICY_MARKET_SCOPES);\nexport type PolicyMarketScope = v.InferOutput<typeof PolicyMarketScopeEnumSchema>;\n\nexport type PolicyAction = v.InferOutput<typeof PolicyActionEnumSchema>;\n\nexport const PolicyIdSchema = v.pipe(\n v.string(),\n v.trim(),\n v.minLength(1),\n v.transform((v) => idToBigInt(v, \"policyId\")),\n);\n"],"mappings":";;;;AAIA,MAAa,uBAAuBA,mBAAE,OAAO,EACzC,QAAQA,mBAAE,OAAO,EACrB,CAAC;AAED,MAAa,uBAAuBA,mBAAE,OAAO;CACzC,QAAQA,mBAAE,OAAO;CACjB,cAAcA,mBAAE,OAAO;AAC3B,CAAC;AAED,MAAa,iBAAiB;CAC1B;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACJ;AAEA,MAAa,uBAAuB,CAAC,OAAO,WAAW;AAEvD,MAAa,8BAA8BA,mBAAE,KAAKC,YAAkB;AACpE,MAAa,yBAAyBD,mBAAE,SAAS,cAAc;AAC/D,MAAa,mCAAmCA,mBAAE,KAAKE,iBAAuB;AAC9E,MAAa,8BAA8BF,mBAAE,SAAS,oBAAoB;AAK1E,MAAa,iBAAiBA,mBAAE,KAC5BA,mBAAE,OAAO,GACTA,mBAAE,KAAK,GACPA,mBAAE,UAAU,CAAC,GACbA,mBAAE,WAAW,MAAM,WAAW,GAAG,UAAU,CAAC,CAChD"}
@@ -1,3 +1,4 @@
1
+ import { validation_d_exports } from "../../../shared/validation.js";
1
2
  import { PolyesterMutationOptions, PolyesterRequestOptions } from "../../../shared/request-options.js";
2
3
  import { SubaccountResolver } from "../../subaccount-resolver.js";
3
4
  import { PolyesterRealtime } from "../../../realtime/types.js";
@@ -5,7 +6,6 @@ import "../../../realtime/index.js";
5
6
  import { BaseSubscribeInput } from "../../../shared/types.js";
6
7
  import { ApplySubaccountPolicyInputSchema, CreateSubaccountPolicyInputSchema, GetSubaccountPolicyInputSchema, ListSubaccountPoliciesInputSchema, SubaccountPolicy, UpdateSubaccountPolicyInputSchema } from "./subaccount-policies.schemas.js";
7
8
  import { Transport } from "@connectrpc/connect";
8
- import * as v from "valibot";
9
9
  //#region src/services/policies/subaccount-policies/subaccount-policies.d.ts
10
10
  interface SubscribePoliciesInput extends BaseSubscribeInput<SubaccountPolicy> {
11
11
  accountId: string;
@@ -19,19 +19,19 @@ declare class SubaccountPoliciesService {
19
19
  /**
20
20
  * Returns subaccount policy templates visible to the caller, sorted by ascending policy ID.
21
21
  */
22
- list(input?: v.InferInput<typeof ListSubaccountPoliciesInputSchema>, options?: PolyesterRequestOptions): Promise<SubaccountPolicy[]>;
22
+ list(input?: validation_d_exports.InferInput<typeof ListSubaccountPoliciesInputSchema>, options?: PolyesterRequestOptions): Promise<SubaccountPolicy[]>;
23
23
  /**
24
24
  * Fetches one subaccount policy template by base58 policy ID and returns null when no policy is returned.
25
25
  */
26
- get(input: v.InferInput<typeof GetSubaccountPolicyInputSchema>, options?: PolyesterRequestOptions): Promise<SubaccountPolicy | null>;
26
+ get(input: validation_d_exports.InferInput<typeof GetSubaccountPolicyInputSchema>, options?: PolyesterRequestOptions): Promise<SubaccountPolicy | null>;
27
27
  /**
28
28
  * Creates a subaccount policy template, optionally attaching it to a target subaccount in the same request.
29
29
  */
30
- create(input: v.InferInput<typeof CreateSubaccountPolicyInputSchema>, options?: PolyesterMutationOptions): Promise<SubaccountPolicy>;
30
+ create(input: validation_d_exports.InferInput<typeof CreateSubaccountPolicyInputSchema>, options?: PolyesterMutationOptions): Promise<SubaccountPolicy>;
31
31
  /**
32
32
  * Updates selected subaccount policy fields using optimistic concurrency.
33
33
  */
34
- update(input: v.InferInput<typeof UpdateSubaccountPolicyInputSchema>, options?: PolyesterMutationOptions): Promise<SubaccountPolicy>;
34
+ update(input: validation_d_exports.InferInput<typeof UpdateSubaccountPolicyInputSchema>, options?: PolyesterMutationOptions): Promise<SubaccountPolicy>;
35
35
  /**
36
36
  * Deletes a subaccount policy template when it is not in use.
37
37
  */
@@ -39,7 +39,7 @@ declare class SubaccountPoliciesService {
39
39
  /**
40
40
  * Attaches a policy to a subaccount, or clears the subaccount-specific policy when policyId is null.
41
41
  */
42
- apply(input: v.InferInput<typeof ApplySubaccountPolicyInputSchema>, options?: PolyesterMutationOptions): Promise<void>;
42
+ apply(input: validation_d_exports.InferInput<typeof ApplySubaccountPolicyInputSchema>, options?: PolyesterMutationOptions): Promise<void>;
43
43
  /**
44
44
  * Subscribes to private subaccount policy updates for an account and emits normalized policy views.
45
45
  */
@@ -1 +1 @@
1
- {"version":3,"file":"subaccount-policies.d.ts","names":[],"sources":["../../../../src/services/policies/subaccount-policies/subaccount-policies.ts"],"mappings":";;;;;;;;;UAuBU,+BAA+B,mBAAmB;EACxD;;;;;cAMS;;EAKG,YAAA,WAAW,WAAW,UAAU,mBAAmB,WAAW;;;;EASpE,KACF,QAAO,EAAE,kBAAkB,oCAC3B,UAAU,0BACX,QAAQ;;;;EAaL,IACF,OAAO,EAAE,kBAAkB,iCAC3B,UAAU,0BACX,QAAQ;;;;EAcL,OACF,OAAO,EAAE,kBAAkB,oCAC3B,UAAU,2BACX,QAAQ;;;;EAaL,OACF,OAAO,EAAE,kBAAkB,oCAC3B,UAAU,2BACX,QAAQ;;;;EAaL,OAAO,kBAAkB,UAAU,2BAA2B;;;;EAW9D,MACF,OAAO,EAAE,kBAAkB,mCAC3B,UAAU,2BACX;;;;EAWH,kBAAkB,OAAO"}
1
+ {"version":3,"file":"subaccount-policies.d.ts","names":[],"sources":["../../../../src/services/policies/subaccount-policies/subaccount-policies.ts"],"mappings":";;;;;;;;;UAuBU,+BAA+B,mBAAmB;EACxD;;;;;cAMS;;EAKG,YAAA,WAAW,WAAW,UAAU,mBAAmB,WAAW;;;;EASpE,KACF,QAAO,qBAAE,kBAAkB,oCAC3B,UAAU,0BACX,QAAQ;;;;EAaL,IACF,OAAO,qBAAE,kBAAkB,iCAC3B,UAAU,0BACX,QAAQ;;;;EAcL,OACF,OAAO,qBAAE,kBAAkB,oCAC3B,UAAU,2BACX,QAAQ;;;;EAaL,OACF,OAAO,qBAAE,kBAAkB,oCAC3B,UAAU,2BACX,QAAQ;;;;EAaL,OAAO,kBAAkB,UAAU,2BAA2B;;;;EAW9D,MACF,OAAO,qBAAE,kBAAkB,mCAC3B,UAAU,2BACX;;;;EAWH,kBAAkB,OAAO"}
@@ -1,10 +1,10 @@
1
+ import { parse, validation_exports } from "../../../shared/validation.js";
1
2
  import { toConnectCallOptions } from "../../../shared/request-options.js";
2
3
  import { removeUndefined } from "../../../utils/remove-undefined.js";
3
4
  import { resolveAccountScopedInput } from "../../subaccount-resolver.js";
4
5
  import { PolicyService, SubaccountPolicyViewSchema } from "../../../gen/auth/v1/policies_pb.js";
5
6
  import { ApplySubaccountPolicyInputSchema, CreateSubaccountPolicyInputSchema, GetSubaccountPolicyInputSchema, ListSubaccountPoliciesInputSchema, PolicyIdSchema, SubaccountPolicySchema, UpdateSubaccountPolicyInputSchema } from "./subaccount-policies.schemas.js";
6
7
  import { createClient } from "@connectrpc/connect";
7
- import * as v from "valibot";
8
8
  //#region src/services/policies/subaccount-policies/subaccount-policies.ts
9
9
  /**
10
10
  * Manages reusable subaccount policy templates, assignments, and realtime policy updates.
@@ -23,50 +23,50 @@ var SubaccountPoliciesService = class {
23
23
  */
24
24
  async list(input = {}, options) {
25
25
  const resolved = resolveAccountScopedInput(input, this.#resolver);
26
- const request = v.parse(ListSubaccountPoliciesInputSchema, resolved);
26
+ const request = parse(ListSubaccountPoliciesInputSchema, resolved);
27
27
  const result = await this.#client.listSubaccountPolicies(removeUndefined(request), toConnectCallOptions(options));
28
- return v.parse(v.array(SubaccountPolicySchema), result.policies);
28
+ return parse(validation_exports.array(SubaccountPolicySchema), result.policies);
29
29
  }
30
30
  /**
31
31
  * Fetches one subaccount policy template by base58 policy ID and returns null when no policy is returned.
32
32
  */
33
33
  async get(input, options) {
34
34
  const resolved = resolveAccountScopedInput(input, this.#resolver);
35
- const request = v.parse(GetSubaccountPolicyInputSchema, resolved);
35
+ const request = parse(GetSubaccountPolicyInputSchema, resolved);
36
36
  const result = await this.#client.getSubaccountPolicy(removeUndefined(request), toConnectCallOptions(options));
37
37
  if (!result.policy) return null;
38
- return v.parse(SubaccountPolicySchema, result.policy);
38
+ return parse(SubaccountPolicySchema, result.policy);
39
39
  }
40
40
  /**
41
41
  * Creates a subaccount policy template, optionally attaching it to a target subaccount in the same request.
42
42
  */
43
43
  async create(input, options) {
44
- const validatedInput = v.parse(CreateSubaccountPolicyInputSchema, input);
44
+ const validatedInput = parse(CreateSubaccountPolicyInputSchema, input);
45
45
  const result = await this.#client.createSubaccountPolicy(removeUndefined(validatedInput), toConnectCallOptions(options));
46
46
  if (!result.policy) throw new Error("Failed to create subaccount policy");
47
- return v.parse(SubaccountPolicySchema, result.policy);
47
+ return parse(SubaccountPolicySchema, result.policy);
48
48
  }
49
49
  /**
50
50
  * Updates selected subaccount policy fields using optimistic concurrency.
51
51
  */
52
52
  async update(input, options) {
53
- const validatedInput = v.parse(UpdateSubaccountPolicyInputSchema, input);
53
+ const validatedInput = parse(UpdateSubaccountPolicyInputSchema, input);
54
54
  const result = await this.#client.updateSubaccountPolicy(removeUndefined(validatedInput), toConnectCallOptions(options));
55
55
  if (!result.policy) throw new Error("Failed to update subaccount policy");
56
- return v.parse(SubaccountPolicySchema, result.policy);
56
+ return parse(SubaccountPolicySchema, result.policy);
57
57
  }
58
58
  /**
59
59
  * Deletes a subaccount policy template when it is not in use.
60
60
  */
61
61
  async delete(policyId, options) {
62
- const validatedPolicyId = v.parse(PolicyIdSchema, policyId);
62
+ const validatedPolicyId = parse(PolicyIdSchema, policyId);
63
63
  await this.#client.deleteSubaccountPolicy({ policyId: validatedPolicyId }, toConnectCallOptions(options));
64
64
  }
65
65
  /**
66
66
  * Attaches a policy to a subaccount, or clears the subaccount-specific policy when policyId is null.
67
67
  */
68
68
  async apply(input, options) {
69
- const validatedInput = v.parse(ApplySubaccountPolicyInputSchema, input);
69
+ const validatedInput = parse(ApplySubaccountPolicyInputSchema, input);
70
70
  await this.#client.setSubaccountPolicy(removeUndefined(validatedInput), toConnectCallOptions(options));
71
71
  }
72
72
  /**
@@ -78,12 +78,12 @@ var SubaccountPoliciesService = class {
78
78
  channel,
79
79
  schema: SubaccountPolicyViewSchema,
80
80
  onPublication: (data) => {
81
- const policy = v.parse(SubaccountPolicySchema, data);
81
+ const policy = parse(SubaccountPolicySchema, data);
82
82
  input.onEvent(policy);
83
83
  },
84
84
  onConnected: () => input.onOpen?.(),
85
85
  onDisconnected: () => input.onClose?.(),
86
- onError: (ctx) => input.onError?.(ctx)
86
+ onError: input.onError
87
87
  });
88
88
  }
89
89
  };
@@ -1 +1 @@
1
- {"version":3,"file":"subaccount-policies.js","names":["#client","Proto.PolicyService","#realtime","#resolver","Proto.SubaccountPolicyViewSchema"],"sources":["../../../../src/services/policies/subaccount-policies/subaccount-policies.ts"],"sourcesContent":["import * as Proto from \"../../../gen/auth/v1/policies_pb.js\";\nimport { createClient, type Client, type Transport } from \"@connectrpc/connect\";\nimport * as v from \"valibot\";\nimport { removeUndefined } from \"../../../utils/remove-undefined.js\";\nimport {\n toConnectCallOptions,\n type PolyesterMutationOptions,\n type PolyesterRequestOptions,\n} from \"../../../shared/request-options.js\";\nimport type { BaseSubscribeInput } from \"../../../shared/types.js\";\nimport type { PolyesterRealtime } from \"../../../realtime/index.js\";\nimport { type SubaccountResolver, resolveAccountScopedInput } from \"../../subaccount-resolver.js\";\nimport {\n SubaccountPolicySchema,\n CreateSubaccountPolicyInputSchema,\n UpdateSubaccountPolicyInputSchema,\n PolicyIdSchema,\n ApplySubaccountPolicyInputSchema,\n type SubaccountPolicy,\n ListSubaccountPoliciesInputSchema,\n GetSubaccountPolicyInputSchema,\n} from \"./subaccount-policies.schemas.js\";\n\ninterface SubscribePoliciesInput extends BaseSubscribeInput<SubaccountPolicy> {\n accountId: string;\n}\n\n/**\n * Manages reusable subaccount policy templates, assignments, and realtime policy updates.\n */\nexport class SubaccountPoliciesService {\n #client: Client<typeof Proto.PolicyService>;\n #realtime: PolyesterRealtime;\n #resolver?: SubaccountResolver;\n\n constructor(transport: Transport, realtime: PolyesterRealtime, resolver?: SubaccountResolver) {\n this.#client = createClient(Proto.PolicyService, transport);\n this.#realtime = realtime;\n this.#resolver = resolver;\n }\n\n /**\n * Returns subaccount policy templates visible to the caller, sorted by ascending policy ID.\n */\n async list(\n input: v.InferInput<typeof ListSubaccountPoliciesInputSchema> = {},\n options?: PolyesterRequestOptions,\n ): Promise<SubaccountPolicy[]> {\n const resolved = resolveAccountScopedInput(input, this.#resolver);\n const request = v.parse(ListSubaccountPoliciesInputSchema, resolved);\n const result = await this.#client.listSubaccountPolicies(\n removeUndefined(request),\n toConnectCallOptions(options),\n );\n return v.parse(v.array(SubaccountPolicySchema), result.policies);\n }\n\n /**\n * Fetches one subaccount policy template by base58 policy ID and returns null when no policy is returned.\n */\n async get(\n input: v.InferInput<typeof GetSubaccountPolicyInputSchema>,\n options?: PolyesterRequestOptions,\n ): Promise<SubaccountPolicy | null> {\n const resolved = resolveAccountScopedInput(input, this.#resolver);\n const request = v.parse(GetSubaccountPolicyInputSchema, resolved);\n const result = await this.#client.getSubaccountPolicy(\n removeUndefined(request),\n toConnectCallOptions(options),\n );\n if (!result.policy) return null;\n return v.parse(SubaccountPolicySchema, result.policy);\n }\n\n /**\n * Creates a subaccount policy template, optionally attaching it to a target subaccount in the same request.\n */\n async create(\n input: v.InferInput<typeof CreateSubaccountPolicyInputSchema>,\n options?: PolyesterMutationOptions,\n ): Promise<SubaccountPolicy> {\n const validatedInput = v.parse(CreateSubaccountPolicyInputSchema, input);\n const result = await this.#client.createSubaccountPolicy(\n removeUndefined(validatedInput),\n toConnectCallOptions(options),\n );\n if (!result.policy) throw new Error(\"Failed to create subaccount policy\");\n return v.parse(SubaccountPolicySchema, result.policy);\n }\n\n /**\n * Updates selected subaccount policy fields using optimistic concurrency.\n */\n async update(\n input: v.InferInput<typeof UpdateSubaccountPolicyInputSchema>,\n options?: PolyesterMutationOptions,\n ): Promise<SubaccountPolicy> {\n const validatedInput = v.parse(UpdateSubaccountPolicyInputSchema, input);\n const result = await this.#client.updateSubaccountPolicy(\n removeUndefined(validatedInput),\n toConnectCallOptions(options),\n );\n if (!result.policy) throw new Error(\"Failed to update subaccount policy\");\n return v.parse(SubaccountPolicySchema, result.policy);\n }\n\n /**\n * Deletes a subaccount policy template when it is not in use.\n */\n async delete(policyId: string, options?: PolyesterMutationOptions): Promise<void> {\n const validatedPolicyId = v.parse(PolicyIdSchema, policyId);\n await this.#client.deleteSubaccountPolicy(\n { policyId: validatedPolicyId },\n toConnectCallOptions(options),\n );\n }\n\n /**\n * Attaches a policy to a subaccount, or clears the subaccount-specific policy when policyId is null.\n */\n async apply(\n input: v.InferInput<typeof ApplySubaccountPolicyInputSchema>,\n options?: PolyesterMutationOptions,\n ): Promise<void> {\n const validatedInput = v.parse(ApplySubaccountPolicyInputSchema, input);\n await this.#client.setSubaccountPolicy(\n removeUndefined(validatedInput),\n toConnectCallOptions(options),\n );\n }\n\n /**\n * Subscribes to private subaccount policy updates for an account and emits normalized policy views.\n */\n subscribePolicies(input: SubscribePoliciesInput) {\n const channel = `private:auth:subaccount-policies:${input.accountId}:proto`;\n\n return this.#realtime.connectProtoChannel({\n channel,\n schema: Proto.SubaccountPolicyViewSchema,\n onPublication: (data) => {\n const policy = v.parse(SubaccountPolicySchema, data);\n input.onEvent(policy);\n },\n onConnected: () => input.onOpen?.(),\n onDisconnected: () => input.onClose?.(),\n onError: (ctx) => input.onError?.(ctx),\n });\n }\n}\n"],"mappings":";;;;;;;;;;;AA8BA,IAAa,4BAAb,MAAuC;CACnC;CACA;CACA;CAEA,YAAY,WAAsB,UAA6B,UAA+B;EAC1F,KAAKA,UAAU,aAAaC,eAAqB,SAAS;EAC1D,KAAKC,YAAY;EACjB,KAAKC,YAAY;CACrB;;;;CAKA,MAAM,KACF,QAAgE,CAAC,GACjE,SAC2B;EAC3B,MAAM,WAAW,0BAA0B,OAAO,KAAKA,SAAS;EAChE,MAAM,UAAU,EAAE,MAAM,mCAAmC,QAAQ;EACnE,MAAM,SAAS,MAAM,KAAKH,QAAQ,uBAC9B,gBAAgB,OAAO,GACvB,qBAAqB,OAAO,CAChC;EACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,GAAG,OAAO,QAAQ;CACnE;;;;CAKA,MAAM,IACF,OACA,SACgC;EAChC,MAAM,WAAW,0BAA0B,OAAO,KAAKG,SAAS;EAChE,MAAM,UAAU,EAAE,MAAM,gCAAgC,QAAQ;EAChE,MAAM,SAAS,MAAM,KAAKH,QAAQ,oBAC9B,gBAAgB,OAAO,GACvB,qBAAqB,OAAO,CAChC;EACA,IAAI,CAAC,OAAO,QAAQ,OAAO;EAC3B,OAAO,EAAE,MAAM,wBAAwB,OAAO,MAAM;CACxD;;;;CAKA,MAAM,OACF,OACA,SACyB;EACzB,MAAM,iBAAiB,EAAE,MAAM,mCAAmC,KAAK;EACvE,MAAM,SAAS,MAAM,KAAKA,QAAQ,uBAC9B,gBAAgB,cAAc,GAC9B,qBAAqB,OAAO,CAChC;EACA,IAAI,CAAC,OAAO,QAAQ,MAAM,IAAI,MAAM,oCAAoC;EACxE,OAAO,EAAE,MAAM,wBAAwB,OAAO,MAAM;CACxD;;;;CAKA,MAAM,OACF,OACA,SACyB;EACzB,MAAM,iBAAiB,EAAE,MAAM,mCAAmC,KAAK;EACvE,MAAM,SAAS,MAAM,KAAKA,QAAQ,uBAC9B,gBAAgB,cAAc,GAC9B,qBAAqB,OAAO,CAChC;EACA,IAAI,CAAC,OAAO,QAAQ,MAAM,IAAI,MAAM,oCAAoC;EACxE,OAAO,EAAE,MAAM,wBAAwB,OAAO,MAAM;CACxD;;;;CAKA,MAAM,OAAO,UAAkB,SAAmD;EAC9E,MAAM,oBAAoB,EAAE,MAAM,gBAAgB,QAAQ;EAC1D,MAAM,KAAKA,QAAQ,uBACf,EAAE,UAAU,kBAAkB,GAC9B,qBAAqB,OAAO,CAChC;CACJ;;;;CAKA,MAAM,MACF,OACA,SACa;EACb,MAAM,iBAAiB,EAAE,MAAM,kCAAkC,KAAK;EACtE,MAAM,KAAKA,QAAQ,oBACf,gBAAgB,cAAc,GAC9B,qBAAqB,OAAO,CAChC;CACJ;;;;CAKA,kBAAkB,OAA+B;EAC7C,MAAM,UAAU,oCAAoC,MAAM,UAAU;EAEpE,OAAO,KAAKE,UAAU,oBAAoB;GACtC;GACA,QAAQE;GACR,gBAAgB,SAAS;IACrB,MAAM,SAAS,EAAE,MAAM,wBAAwB,IAAI;IACnD,MAAM,QAAQ,MAAM;GACxB;GACA,mBAAmB,MAAM,SAAS;GAClC,sBAAsB,MAAM,UAAU;GACtC,UAAU,QAAQ,MAAM,UAAU,GAAG;EACzC,CAAC;CACL;AACJ"}
1
+ {"version":3,"file":"subaccount-policies.js","names":["#client","Proto.PolicyService","#realtime","#resolver","v.parse","v","Proto.SubaccountPolicyViewSchema"],"sources":["../../../../src/services/policies/subaccount-policies/subaccount-policies.ts"],"sourcesContent":["import * as Proto from \"../../../gen/auth/v1/policies_pb.js\";\nimport { createClient, type Client, type Transport } from \"@connectrpc/connect\";\nimport * as v from \"../../../shared/validation.js\";\nimport { removeUndefined } from \"../../../utils/remove-undefined.js\";\nimport {\n toConnectCallOptions,\n type PolyesterMutationOptions,\n type PolyesterRequestOptions,\n} from \"../../../shared/request-options.js\";\nimport type { BaseSubscribeInput } from \"../../../shared/types.js\";\nimport type { PolyesterRealtime } from \"../../../realtime/index.js\";\nimport { type SubaccountResolver, resolveAccountScopedInput } from \"../../subaccount-resolver.js\";\nimport {\n SubaccountPolicySchema,\n CreateSubaccountPolicyInputSchema,\n UpdateSubaccountPolicyInputSchema,\n PolicyIdSchema,\n ApplySubaccountPolicyInputSchema,\n type SubaccountPolicy,\n ListSubaccountPoliciesInputSchema,\n GetSubaccountPolicyInputSchema,\n} from \"./subaccount-policies.schemas.js\";\n\ninterface SubscribePoliciesInput extends BaseSubscribeInput<SubaccountPolicy> {\n accountId: string;\n}\n\n/**\n * Manages reusable subaccount policy templates, assignments, and realtime policy updates.\n */\nexport class SubaccountPoliciesService {\n #client: Client<typeof Proto.PolicyService>;\n #realtime: PolyesterRealtime;\n #resolver?: SubaccountResolver;\n\n constructor(transport: Transport, realtime: PolyesterRealtime, resolver?: SubaccountResolver) {\n this.#client = createClient(Proto.PolicyService, transport);\n this.#realtime = realtime;\n this.#resolver = resolver;\n }\n\n /**\n * Returns subaccount policy templates visible to the caller, sorted by ascending policy ID.\n */\n async list(\n input: v.InferInput<typeof ListSubaccountPoliciesInputSchema> = {},\n options?: PolyesterRequestOptions,\n ): Promise<SubaccountPolicy[]> {\n const resolved = resolveAccountScopedInput(input, this.#resolver);\n const request = v.parse(ListSubaccountPoliciesInputSchema, resolved);\n const result = await this.#client.listSubaccountPolicies(\n removeUndefined(request),\n toConnectCallOptions(options),\n );\n return v.parse(v.array(SubaccountPolicySchema), result.policies);\n }\n\n /**\n * Fetches one subaccount policy template by base58 policy ID and returns null when no policy is returned.\n */\n async get(\n input: v.InferInput<typeof GetSubaccountPolicyInputSchema>,\n options?: PolyesterRequestOptions,\n ): Promise<SubaccountPolicy | null> {\n const resolved = resolveAccountScopedInput(input, this.#resolver);\n const request = v.parse(GetSubaccountPolicyInputSchema, resolved);\n const result = await this.#client.getSubaccountPolicy(\n removeUndefined(request),\n toConnectCallOptions(options),\n );\n if (!result.policy) return null;\n return v.parse(SubaccountPolicySchema, result.policy);\n }\n\n /**\n * Creates a subaccount policy template, optionally attaching it to a target subaccount in the same request.\n */\n async create(\n input: v.InferInput<typeof CreateSubaccountPolicyInputSchema>,\n options?: PolyesterMutationOptions,\n ): Promise<SubaccountPolicy> {\n const validatedInput = v.parse(CreateSubaccountPolicyInputSchema, input);\n const result = await this.#client.createSubaccountPolicy(\n removeUndefined(validatedInput),\n toConnectCallOptions(options),\n );\n if (!result.policy) throw new Error(\"Failed to create subaccount policy\");\n return v.parse(SubaccountPolicySchema, result.policy);\n }\n\n /**\n * Updates selected subaccount policy fields using optimistic concurrency.\n */\n async update(\n input: v.InferInput<typeof UpdateSubaccountPolicyInputSchema>,\n options?: PolyesterMutationOptions,\n ): Promise<SubaccountPolicy> {\n const validatedInput = v.parse(UpdateSubaccountPolicyInputSchema, input);\n const result = await this.#client.updateSubaccountPolicy(\n removeUndefined(validatedInput),\n toConnectCallOptions(options),\n );\n if (!result.policy) throw new Error(\"Failed to update subaccount policy\");\n return v.parse(SubaccountPolicySchema, result.policy);\n }\n\n /**\n * Deletes a subaccount policy template when it is not in use.\n */\n async delete(policyId: string, options?: PolyesterMutationOptions): Promise<void> {\n const validatedPolicyId = v.parse(PolicyIdSchema, policyId);\n await this.#client.deleteSubaccountPolicy(\n { policyId: validatedPolicyId },\n toConnectCallOptions(options),\n );\n }\n\n /**\n * Attaches a policy to a subaccount, or clears the subaccount-specific policy when policyId is null.\n */\n async apply(\n input: v.InferInput<typeof ApplySubaccountPolicyInputSchema>,\n options?: PolyesterMutationOptions,\n ): Promise<void> {\n const validatedInput = v.parse(ApplySubaccountPolicyInputSchema, input);\n await this.#client.setSubaccountPolicy(\n removeUndefined(validatedInput),\n toConnectCallOptions(options),\n );\n }\n\n /**\n * Subscribes to private subaccount policy updates for an account and emits normalized policy views.\n */\n subscribePolicies(input: SubscribePoliciesInput) {\n const channel = `private:auth:subaccount-policies:${input.accountId}:proto`;\n\n return this.#realtime.connectProtoChannel({\n channel,\n schema: Proto.SubaccountPolicyViewSchema,\n onPublication: (data) => {\n const policy = v.parse(SubaccountPolicySchema, data);\n input.onEvent(policy);\n },\n onConnected: () => input.onOpen?.(),\n onDisconnected: () => input.onClose?.(),\n onError: input.onError,\n });\n }\n}\n"],"mappings":";;;;;;;;;;;AA8BA,IAAa,4BAAb,MAAuC;CACnC;CACA;CACA;CAEA,YAAY,WAAsB,UAA6B,UAA+B;EAC1F,KAAKA,UAAU,aAAaC,eAAqB,SAAS;EAC1D,KAAKC,YAAY;EACjB,KAAKC,YAAY;CACrB;;;;CAKA,MAAM,KACF,QAAgE,CAAC,GACjE,SAC2B;EAC3B,MAAM,WAAW,0BAA0B,OAAO,KAAKA,SAAS;EAChE,MAAM,UAAUC,MAAQ,mCAAmC,QAAQ;EACnE,MAAM,SAAS,MAAM,KAAKJ,QAAQ,uBAC9B,gBAAgB,OAAO,GACvB,qBAAqB,OAAO,CAChC;EACA,OAAOI,MAAQC,mBAAE,MAAM,sBAAsB,GAAG,OAAO,QAAQ;CACnE;;;;CAKA,MAAM,IACF,OACA,SACgC;EAChC,MAAM,WAAW,0BAA0B,OAAO,KAAKF,SAAS;EAChE,MAAM,UAAUC,MAAQ,gCAAgC,QAAQ;EAChE,MAAM,SAAS,MAAM,KAAKJ,QAAQ,oBAC9B,gBAAgB,OAAO,GACvB,qBAAqB,OAAO,CAChC;EACA,IAAI,CAAC,OAAO,QAAQ,OAAO;EAC3B,OAAOI,MAAQ,wBAAwB,OAAO,MAAM;CACxD;;;;CAKA,MAAM,OACF,OACA,SACyB;EACzB,MAAM,iBAAiBA,MAAQ,mCAAmC,KAAK;EACvE,MAAM,SAAS,MAAM,KAAKJ,QAAQ,uBAC9B,gBAAgB,cAAc,GAC9B,qBAAqB,OAAO,CAChC;EACA,IAAI,CAAC,OAAO,QAAQ,MAAM,IAAI,MAAM,oCAAoC;EACxE,OAAOI,MAAQ,wBAAwB,OAAO,MAAM;CACxD;;;;CAKA,MAAM,OACF,OACA,SACyB;EACzB,MAAM,iBAAiBA,MAAQ,mCAAmC,KAAK;EACvE,MAAM,SAAS,MAAM,KAAKJ,QAAQ,uBAC9B,gBAAgB,cAAc,GAC9B,qBAAqB,OAAO,CAChC;EACA,IAAI,CAAC,OAAO,QAAQ,MAAM,IAAI,MAAM,oCAAoC;EACxE,OAAOI,MAAQ,wBAAwB,OAAO,MAAM;CACxD;;;;CAKA,MAAM,OAAO,UAAkB,SAAmD;EAC9E,MAAM,oBAAoBA,MAAQ,gBAAgB,QAAQ;EAC1D,MAAM,KAAKJ,QAAQ,uBACf,EAAE,UAAU,kBAAkB,GAC9B,qBAAqB,OAAO,CAChC;CACJ;;;;CAKA,MAAM,MACF,OACA,SACa;EACb,MAAM,iBAAiBI,MAAQ,kCAAkC,KAAK;EACtE,MAAM,KAAKJ,QAAQ,oBACf,gBAAgB,cAAc,GAC9B,qBAAqB,OAAO,CAChC;CACJ;;;;CAKA,kBAAkB,OAA+B;EAC7C,MAAM,UAAU,oCAAoC,MAAM,UAAU;EAEpE,OAAO,KAAKE,UAAU,oBAAoB;GACtC;GACA,QAAQI;GACR,gBAAgB,SAAS;IACrB,MAAM,SAASF,MAAQ,wBAAwB,IAAI;IACnD,MAAM,QAAQ,MAAM;GACxB;GACA,mBAAmB,MAAM,SAAS;GAClC,sBAAsB,MAAM,UAAU;GACtC,SAAS,MAAM;EACnB,CAAC;CACL;AACJ"}