@haneullabs/deepbook-v3 0.1.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.
- package/CHANGELOG.md +984 -0
- package/README.md +1 -0
- package/dist/cjs/client.d.ts +861 -0
- package/dist/cjs/client.js +1982 -0
- package/dist/cjs/client.js.map +7 -0
- package/dist/cjs/contracts/deepbook/account.d.ts +105 -0
- package/dist/cjs/contracts/deepbook/account.js +163 -0
- package/dist/cjs/contracts/deepbook/account.js.map +7 -0
- package/dist/cjs/contracts/deepbook/balance_manager.d.ts +268 -0
- package/dist/cjs/contracts/deepbook/balance_manager.js +361 -0
- package/dist/cjs/contracts/deepbook/balance_manager.js.map +7 -0
- package/dist/cjs/contracts/deepbook/balances.d.ts +10 -0
- package/dist/cjs/contracts/deepbook/balances.js +35 -0
- package/dist/cjs/contracts/deepbook/balances.js.map +7 -0
- package/dist/cjs/contracts/deepbook/big_vector.d.ts +62 -0
- package/dist/cjs/contracts/deepbook/big_vector.js +80 -0
- package/dist/cjs/contracts/deepbook/big_vector.js.map +7 -0
- package/dist/cjs/contracts/deepbook/book.d.ts +34 -0
- package/dist/cjs/contracts/deepbook/book.js +50 -0
- package/dist/cjs/contracts/deepbook/book.js.map +7 -0
- package/dist/cjs/contracts/deepbook/constants.d.ts +176 -0
- package/dist/cjs/contracts/deepbook/constants.js +338 -0
- package/dist/cjs/contracts/deepbook/constants.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deep_price.d.ts +60 -0
- package/dist/cjs/contracts/deepbook/deep_price.js +87 -0
- package/dist/cjs/contracts/deepbook/deep_price.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/std/type_name.d.ts +14 -0
- package/dist/cjs/contracts/deepbook/deps/std/type_name.js +42 -0
- package/dist/cjs/contracts/deepbook/deps/std/type_name.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/bag.d.ts +33 -0
- package/dist/cjs/contracts/deepbook/deps/sui/bag.js +47 -0
- package/dist/cjs/contracts/deepbook/deps/sui/bag.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/balance.d.ts +9 -0
- package/dist/cjs/contracts/deepbook/deps/sui/balance.js +33 -0
- package/dist/cjs/contracts/deepbook/deps/sui/balance.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/object.d.ts +5 -0
- package/dist/cjs/contracts/deepbook/deps/sui/object.js +33 -0
- package/dist/cjs/contracts/deepbook/deps/sui/object.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/table.d.ts +28 -0
- package/dist/cjs/contracts/deepbook/deps/sui/table.js +47 -0
- package/dist/cjs/contracts/deepbook/deps/sui/table.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/vec_map.d.ts +27 -0
- package/dist/cjs/contracts/deepbook/deps/sui/vec_map.js +45 -0
- package/dist/cjs/contracts/deepbook/deps/sui/vec_map.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/vec_set.d.ts +15 -0
- package/dist/cjs/contracts/deepbook/deps/sui/vec_set.js +35 -0
- package/dist/cjs/contracts/deepbook/deps/sui/vec_set.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/versioned.d.ts +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/versioned.js +45 -0
- package/dist/cjs/contracts/deepbook/deps/sui/versioned.js.map +7 -0
- package/dist/cjs/contracts/deepbook/ewma.d.ts +17 -0
- package/dist/cjs/contracts/deepbook/ewma.js +39 -0
- package/dist/cjs/contracts/deepbook/ewma.js.map +7 -0
- package/dist/cjs/contracts/deepbook/fill.d.ts +153 -0
- package/dist/cjs/contracts/deepbook/fill.js +251 -0
- package/dist/cjs/contracts/deepbook/fill.js.map +7 -0
- package/dist/cjs/contracts/deepbook/governance.d.ts +63 -0
- package/dist/cjs/contracts/deepbook/governance.js +79 -0
- package/dist/cjs/contracts/deepbook/governance.js.map +7 -0
- package/dist/cjs/contracts/deepbook/history.d.ts +60 -0
- package/dist/cjs/contracts/deepbook/history.js +78 -0
- package/dist/cjs/contracts/deepbook/history.js.map +7 -0
- package/dist/cjs/contracts/deepbook/math.d.ts +94 -0
- package/dist/cjs/contracts/deepbook/math.js +132 -0
- package/dist/cjs/contracts/deepbook/math.js.map +7 -0
- package/dist/cjs/contracts/deepbook/order.d.ts +135 -0
- package/dist/cjs/contracts/deepbook/order.js +218 -0
- package/dist/cjs/contracts/deepbook/order.js.map +7 -0
- package/dist/cjs/contracts/deepbook/order_info.d.ts +296 -0
- package/dist/cjs/contracts/deepbook/order_info.js +386 -0
- package/dist/cjs/contracts/deepbook/order_info.js.map +7 -0
- package/dist/cjs/contracts/deepbook/order_query.d.ts +85 -0
- package/dist/cjs/contracts/deepbook/order_query.js +96 -0
- package/dist/cjs/contracts/deepbook/order_query.js.map +7 -0
- package/dist/cjs/contracts/deepbook/pool.d.ts +1218 -0
- package/dist/cjs/contracts/deepbook/pool.js +1236 -0
- package/dist/cjs/contracts/deepbook/pool.js.map +7 -0
- package/dist/cjs/contracts/deepbook/registry.d.ts +134 -0
- package/dist/cjs/contracts/deepbook/registry.js +182 -0
- package/dist/cjs/contracts/deepbook/registry.js.map +7 -0
- package/dist/cjs/contracts/deepbook/state.d.ts +117 -0
- package/dist/cjs/contracts/deepbook/state.js +104 -0
- package/dist/cjs/contracts/deepbook/state.js.map +7 -0
- package/dist/cjs/contracts/deepbook/trade_params.d.ts +7 -0
- package/dist/cjs/contracts/deepbook/trade_params.js +35 -0
- package/dist/cjs/contracts/deepbook/trade_params.js.map +7 -0
- package/dist/cjs/contracts/deepbook/vault.d.ts +30 -0
- package/dist/cjs/contracts/deepbook/vault.js +65 -0
- package/dist/cjs/contracts/deepbook/vault.js.map +7 -0
- package/dist/cjs/contracts/utils/index.d.ts +25 -0
- package/dist/cjs/contracts/utils/index.js +148 -0
- package/dist/cjs/contracts/utils/index.js.map +7 -0
- package/dist/cjs/index.d.ts +23 -0
- package/dist/cjs/index.js +81 -0
- package/dist/cjs/index.js.map +7 -0
- package/dist/cjs/package.json +4 -0
- package/dist/cjs/pyth/PriceServiceConnection.d.ts +26 -0
- package/dist/cjs/pyth/PriceServiceConnection.js +68 -0
- package/dist/cjs/pyth/PriceServiceConnection.js.map +7 -0
- package/dist/cjs/pyth/pyth-helpers.d.ts +7 -0
- package/dist/cjs/pyth/pyth-helpers.js +36 -0
- package/dist/cjs/pyth/pyth-helpers.js.map +7 -0
- package/dist/cjs/pyth/pyth.d.ts +65 -0
- package/dist/cjs/pyth/pyth.js +269 -0
- package/dist/cjs/pyth/pyth.js.map +7 -0
- package/dist/cjs/transactions/balanceManager.d.ts +168 -0
- package/dist/cjs/transactions/balanceManager.js +384 -0
- package/dist/cjs/transactions/balanceManager.js.map +7 -0
- package/dist/cjs/transactions/deepbook.d.ts +477 -0
- package/dist/cjs/transactions/deepbook.js +1335 -0
- package/dist/cjs/transactions/deepbook.js.map +7 -0
- package/dist/cjs/transactions/deepbookAdmin.d.ts +105 -0
- package/dist/cjs/transactions/deepbookAdmin.js +334 -0
- package/dist/cjs/transactions/deepbookAdmin.js.map +7 -0
- package/dist/cjs/transactions/flashLoans.d.ts +56 -0
- package/dist/cjs/transactions/flashLoans.js +124 -0
- package/dist/cjs/transactions/flashLoans.js.map +7 -0
- package/dist/cjs/transactions/governance.d.ts +42 -0
- package/dist/cjs/transactions/governance.js +135 -0
- package/dist/cjs/transactions/governance.js.map +7 -0
- package/dist/cjs/transactions/marginAdmin.d.ts +133 -0
- package/dist/cjs/transactions/marginAdmin.js +393 -0
- package/dist/cjs/transactions/marginAdmin.js.map +7 -0
- package/dist/cjs/transactions/marginLiquidations.d.ts +61 -0
- package/dist/cjs/transactions/marginLiquidations.js +173 -0
- package/dist/cjs/transactions/marginLiquidations.js.map +7 -0
- package/dist/cjs/transactions/marginMaintainer.d.ts +80 -0
- package/dist/cjs/transactions/marginMaintainer.js +251 -0
- package/dist/cjs/transactions/marginMaintainer.js.map +7 -0
- package/dist/cjs/transactions/marginManager.d.ts +236 -0
- package/dist/cjs/transactions/marginManager.js +688 -0
- package/dist/cjs/transactions/marginManager.js.map +7 -0
- package/dist/cjs/transactions/marginPool.d.ts +134 -0
- package/dist/cjs/transactions/marginPool.js +330 -0
- package/dist/cjs/transactions/marginPool.js.map +7 -0
- package/dist/cjs/transactions/marginRegistry.d.ts +94 -0
- package/dist/cjs/transactions/marginRegistry.js +221 -0
- package/dist/cjs/transactions/marginRegistry.js.map +7 -0
- package/dist/cjs/transactions/marginTPSL.d.ts +93 -0
- package/dist/cjs/transactions/marginTPSL.js +286 -0
- package/dist/cjs/transactions/marginTPSL.js.map +7 -0
- package/dist/cjs/transactions/poolProxy.d.ts +104 -0
- package/dist/cjs/transactions/poolProxy.js +435 -0
- package/dist/cjs/transactions/poolProxy.js.map +7 -0
- package/dist/cjs/types/bcs.d.ts +5 -0
- package/dist/cjs/types/bcs.js +33 -0
- package/dist/cjs/types/bcs.js.map +7 -0
- package/dist/cjs/types/index.d.ts +218 -0
- package/dist/cjs/types/index.js +38 -0
- package/dist/cjs/types/index.js.map +7 -0
- package/dist/cjs/utils/config.d.ts +65 -0
- package/dist/cjs/utils/config.js +144 -0
- package/dist/cjs/utils/config.js.map +7 -0
- package/dist/cjs/utils/constants.d.ts +76 -0
- package/dist/cjs/utils/constants.js +382 -0
- package/dist/cjs/utils/constants.js.map +7 -0
- package/dist/cjs/utils/errors.d.ts +42 -0
- package/dist/cjs/utils/errors.js +70 -0
- package/dist/cjs/utils/errors.js.map +7 -0
- package/dist/cjs/utils/validation.d.ts +50 -0
- package/dist/cjs/utils/validation.js +67 -0
- package/dist/cjs/utils/validation.js.map +7 -0
- package/dist/esm/client.d.ts +861 -0
- package/dist/esm/client.js +1967 -0
- package/dist/esm/client.js.map +7 -0
- package/dist/esm/contracts/deepbook/account.d.ts +105 -0
- package/dist/esm/contracts/deepbook/account.js +133 -0
- package/dist/esm/contracts/deepbook/account.js.map +7 -0
- package/dist/esm/contracts/deepbook/balance_manager.d.ts +268 -0
- package/dist/esm/contracts/deepbook/balance_manager.js +331 -0
- package/dist/esm/contracts/deepbook/balance_manager.js.map +7 -0
- package/dist/esm/contracts/deepbook/balances.d.ts +10 -0
- package/dist/esm/contracts/deepbook/balances.js +15 -0
- package/dist/esm/contracts/deepbook/balances.js.map +7 -0
- package/dist/esm/contracts/deepbook/big_vector.d.ts +62 -0
- package/dist/esm/contracts/deepbook/big_vector.js +50 -0
- package/dist/esm/contracts/deepbook/big_vector.js.map +7 -0
- package/dist/esm/contracts/deepbook/book.d.ts +34 -0
- package/dist/esm/contracts/deepbook/book.js +20 -0
- package/dist/esm/contracts/deepbook/book.js.map +7 -0
- package/dist/esm/contracts/deepbook/constants.d.ts +176 -0
- package/dist/esm/contracts/deepbook/constants.js +318 -0
- package/dist/esm/contracts/deepbook/constants.js.map +7 -0
- package/dist/esm/contracts/deepbook/deep_price.d.ts +60 -0
- package/dist/esm/contracts/deepbook/deep_price.js +67 -0
- package/dist/esm/contracts/deepbook/deep_price.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/std/type_name.d.ts +14 -0
- package/dist/esm/contracts/deepbook/deps/std/type_name.js +22 -0
- package/dist/esm/contracts/deepbook/deps/std/type_name.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/bag.d.ts +33 -0
- package/dist/esm/contracts/deepbook/deps/sui/bag.js +17 -0
- package/dist/esm/contracts/deepbook/deps/sui/bag.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/balance.d.ts +9 -0
- package/dist/esm/contracts/deepbook/deps/sui/balance.js +13 -0
- package/dist/esm/contracts/deepbook/deps/sui/balance.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/object.d.ts +5 -0
- package/dist/esm/contracts/deepbook/deps/sui/object.js +13 -0
- package/dist/esm/contracts/deepbook/deps/sui/object.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/table.d.ts +28 -0
- package/dist/esm/contracts/deepbook/deps/sui/table.js +17 -0
- package/dist/esm/contracts/deepbook/deps/sui/table.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/vec_map.d.ts +27 -0
- package/dist/esm/contracts/deepbook/deps/sui/vec_map.js +25 -0
- package/dist/esm/contracts/deepbook/deps/sui/vec_map.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/vec_set.d.ts +15 -0
- package/dist/esm/contracts/deepbook/deps/sui/vec_set.js +15 -0
- package/dist/esm/contracts/deepbook/deps/sui/vec_set.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/versioned.d.ts +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/versioned.js +15 -0
- package/dist/esm/contracts/deepbook/deps/sui/versioned.js.map +7 -0
- package/dist/esm/contracts/deepbook/ewma.d.ts +17 -0
- package/dist/esm/contracts/deepbook/ewma.js +19 -0
- package/dist/esm/contracts/deepbook/ewma.js.map +7 -0
- package/dist/esm/contracts/deepbook/fill.d.ts +153 -0
- package/dist/esm/contracts/deepbook/fill.js +221 -0
- package/dist/esm/contracts/deepbook/fill.js.map +7 -0
- package/dist/esm/contracts/deepbook/governance.d.ts +63 -0
- package/dist/esm/contracts/deepbook/governance.js +49 -0
- package/dist/esm/contracts/deepbook/governance.js.map +7 -0
- package/dist/esm/contracts/deepbook/history.d.ts +60 -0
- package/dist/esm/contracts/deepbook/history.js +48 -0
- package/dist/esm/contracts/deepbook/history.js.map +7 -0
- package/dist/esm/contracts/deepbook/math.d.ts +94 -0
- package/dist/esm/contracts/deepbook/math.js +112 -0
- package/dist/esm/contracts/deepbook/math.js.map +7 -0
- package/dist/esm/contracts/deepbook/order.d.ts +135 -0
- package/dist/esm/contracts/deepbook/order.js +188 -0
- package/dist/esm/contracts/deepbook/order.js.map +7 -0
- package/dist/esm/contracts/deepbook/order_info.d.ts +296 -0
- package/dist/esm/contracts/deepbook/order_info.js +356 -0
- package/dist/esm/contracts/deepbook/order_info.js.map +7 -0
- package/dist/esm/contracts/deepbook/order_query.d.ts +85 -0
- package/dist/esm/contracts/deepbook/order_query.js +66 -0
- package/dist/esm/contracts/deepbook/order_query.js.map +7 -0
- package/dist/esm/contracts/deepbook/pool.d.ts +1218 -0
- package/dist/esm/contracts/deepbook/pool.js +1206 -0
- package/dist/esm/contracts/deepbook/pool.js.map +7 -0
- package/dist/esm/contracts/deepbook/registry.d.ts +134 -0
- package/dist/esm/contracts/deepbook/registry.js +152 -0
- package/dist/esm/contracts/deepbook/registry.js.map +7 -0
- package/dist/esm/contracts/deepbook/state.d.ts +117 -0
- package/dist/esm/contracts/deepbook/state.js +74 -0
- package/dist/esm/contracts/deepbook/state.js.map +7 -0
- package/dist/esm/contracts/deepbook/trade_params.d.ts +7 -0
- package/dist/esm/contracts/deepbook/trade_params.js +15 -0
- package/dist/esm/contracts/deepbook/trade_params.js.map +7 -0
- package/dist/esm/contracts/deepbook/vault.d.ts +30 -0
- package/dist/esm/contracts/deepbook/vault.js +35 -0
- package/dist/esm/contracts/deepbook/vault.js.map +7 -0
- package/dist/esm/contracts/utils/index.d.ts +25 -0
- package/dist/esm/contracts/utils/index.js +128 -0
- package/dist/esm/contracts/utils/index.js.map +7 -0
- package/dist/esm/index.d.ts +23 -0
- package/dist/esm/index.js +81 -0
- package/dist/esm/index.js.map +7 -0
- package/dist/esm/package.json +4 -0
- package/dist/esm/pyth/PriceServiceConnection.d.ts +26 -0
- package/dist/esm/pyth/PriceServiceConnection.js +38 -0
- package/dist/esm/pyth/PriceServiceConnection.js.map +7 -0
- package/dist/esm/pyth/pyth-helpers.d.ts +7 -0
- package/dist/esm/pyth/pyth-helpers.js +16 -0
- package/dist/esm/pyth/pyth-helpers.js.map +7 -0
- package/dist/esm/pyth/pyth.d.ts +65 -0
- package/dist/esm/pyth/pyth.js +249 -0
- package/dist/esm/pyth/pyth.js.map +7 -0
- package/dist/esm/transactions/balanceManager.d.ts +168 -0
- package/dist/esm/transactions/balanceManager.js +364 -0
- package/dist/esm/transactions/balanceManager.js.map +7 -0
- package/dist/esm/transactions/deepbook.d.ts +477 -0
- package/dist/esm/transactions/deepbook.js +1321 -0
- package/dist/esm/transactions/deepbook.js.map +7 -0
- package/dist/esm/transactions/deepbookAdmin.d.ts +105 -0
- package/dist/esm/transactions/deepbookAdmin.js +314 -0
- package/dist/esm/transactions/deepbookAdmin.js.map +7 -0
- package/dist/esm/transactions/flashLoans.d.ts +56 -0
- package/dist/esm/transactions/flashLoans.js +104 -0
- package/dist/esm/transactions/flashLoans.js.map +7 -0
- package/dist/esm/transactions/governance.d.ts +42 -0
- package/dist/esm/transactions/governance.js +115 -0
- package/dist/esm/transactions/governance.js.map +7 -0
- package/dist/esm/transactions/marginAdmin.d.ts +133 -0
- package/dist/esm/transactions/marginAdmin.js +373 -0
- package/dist/esm/transactions/marginAdmin.js.map +7 -0
- package/dist/esm/transactions/marginLiquidations.d.ts +61 -0
- package/dist/esm/transactions/marginLiquidations.js +153 -0
- package/dist/esm/transactions/marginLiquidations.js.map +7 -0
- package/dist/esm/transactions/marginMaintainer.d.ts +80 -0
- package/dist/esm/transactions/marginMaintainer.js +231 -0
- package/dist/esm/transactions/marginMaintainer.js.map +7 -0
- package/dist/esm/transactions/marginManager.d.ts +236 -0
- package/dist/esm/transactions/marginManager.js +668 -0
- package/dist/esm/transactions/marginManager.js.map +7 -0
- package/dist/esm/transactions/marginPool.d.ts +134 -0
- package/dist/esm/transactions/marginPool.js +310 -0
- package/dist/esm/transactions/marginPool.js.map +7 -0
- package/dist/esm/transactions/marginRegistry.d.ts +94 -0
- package/dist/esm/transactions/marginRegistry.js +201 -0
- package/dist/esm/transactions/marginRegistry.js.map +7 -0
- package/dist/esm/transactions/marginTPSL.d.ts +93 -0
- package/dist/esm/transactions/marginTPSL.js +266 -0
- package/dist/esm/transactions/marginTPSL.js.map +7 -0
- package/dist/esm/transactions/poolProxy.d.ts +104 -0
- package/dist/esm/transactions/poolProxy.js +415 -0
- package/dist/esm/transactions/poolProxy.js.map +7 -0
- package/dist/esm/types/bcs.d.ts +5 -0
- package/dist/esm/types/bcs.js +13 -0
- package/dist/esm/types/bcs.js.map +7 -0
- package/dist/esm/types/index.d.ts +218 -0
- package/dist/esm/types/index.js +18 -0
- package/dist/esm/types/index.js.map +7 -0
- package/dist/esm/utils/config.d.ts +65 -0
- package/dist/esm/utils/config.js +135 -0
- package/dist/esm/utils/config.js.map +7 -0
- package/dist/esm/utils/constants.d.ts +76 -0
- package/dist/esm/utils/constants.js +362 -0
- package/dist/esm/utils/constants.js.map +7 -0
- package/dist/esm/utils/errors.d.ts +42 -0
- package/dist/esm/utils/errors.js +50 -0
- package/dist/esm/utils/errors.js.map +7 -0
- package/dist/esm/utils/validation.d.ts +50 -0
- package/dist/esm/utils/validation.js +47 -0
- package/dist/esm/utils/validation.js.map +7 -0
- package/dist/tsconfig.esm.tsbuildinfo +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +63 -0
- package/src/client.ts +2451 -0
- package/src/contracts/deepbook/account.ts +199 -0
- package/src/contracts/deepbook/balance_manager.ts +532 -0
- package/src/contracts/deepbook/balances.ts +19 -0
- package/src/contracts/deepbook/big_vector.ts +74 -0
- package/src/contracts/deepbook/book.ts +24 -0
- package/src/contracts/deepbook/constants.ts +458 -0
- package/src/contracts/deepbook/deep_price.ts +84 -0
- package/src/contracts/deepbook/deps/std/type_name.ts +23 -0
- package/src/contracts/deepbook/deps/sui/bag.ts +41 -0
- package/src/contracts/deepbook/deps/sui/balance.ts +18 -0
- package/src/contracts/deepbook/deps/sui/object.ts +14 -0
- package/src/contracts/deepbook/deps/sui/table.ts +36 -0
- package/src/contracts/deepbook/deps/sui/vec_map.ts +33 -0
- package/src/contracts/deepbook/deps/sui/vec_set.ts +22 -0
- package/src/contracts/deepbook/deps/sui/versioned.ts +13 -0
- package/src/contracts/deepbook/ewma.ts +26 -0
- package/src/contracts/deepbook/fill.ts +336 -0
- package/src/contracts/deepbook/governance.ts +52 -0
- package/src/contracts/deepbook/history.ts +51 -0
- package/src/contracts/deepbook/math.ts +210 -0
- package/src/contracts/deepbook/order.ts +269 -0
- package/src/contracts/deepbook/order_info.ts +513 -0
- package/src/contracts/deepbook/order_query.ts +115 -0
- package/src/contracts/deepbook/pool.ts +2269 -0
- package/src/contracts/deepbook/registry.ts +242 -0
- package/src/contracts/deepbook/state.ts +74 -0
- package/src/contracts/deepbook/trade_params.ts +16 -0
- package/src/contracts/deepbook/vault.ts +37 -0
- package/src/contracts/utils/index.ts +184 -0
- package/src/index.ts +95 -0
- package/src/pyth/PriceServiceConnection.ts +48 -0
- package/src/pyth/pyth-helpers.ts +23 -0
- package/src/pyth/pyth.ts +305 -0
- package/src/transactions/balanceManager.ts +399 -0
- package/src/transactions/deepbook.ts +1519 -0
- package/src/transactions/deepbookAdmin.ts +332 -0
- package/src/transactions/flashLoans.ts +123 -0
- package/src/transactions/governance.ts +123 -0
- package/src/transactions/marginAdmin.ts +396 -0
- package/src/transactions/marginLiquidations.ts +175 -0
- package/src/transactions/marginMaintainer.ts +280 -0
- package/src/transactions/marginManager.ts +708 -0
- package/src/transactions/marginPool.ts +339 -0
- package/src/transactions/marginRegistry.ts +212 -0
- package/src/transactions/marginTPSL.ts +296 -0
- package/src/transactions/poolProxy.ts +438 -0
- package/src/types/bcs.ts +8 -0
- package/src/types/index.ts +255 -0
- package/src/utils/config.ts +177 -0
- package/src/utils/constants.ts +374 -0
- package/src/utils/errors.ts +67 -0
- package/src/utils/validation.ts +91 -0
|
@@ -0,0 +1,435 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __typeError = (msg) => {
|
|
7
|
+
throw TypeError(msg);
|
|
8
|
+
};
|
|
9
|
+
var __export = (target, all) => {
|
|
10
|
+
for (var name in all)
|
|
11
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from))
|
|
16
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
17
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
18
|
+
}
|
|
19
|
+
return to;
|
|
20
|
+
};
|
|
21
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
22
|
+
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
|
|
23
|
+
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
|
|
24
|
+
var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
|
|
25
|
+
var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
|
|
26
|
+
var poolProxy_exports = {};
|
|
27
|
+
__export(poolProxy_exports, {
|
|
28
|
+
PoolProxyContract: () => PoolProxyContract
|
|
29
|
+
});
|
|
30
|
+
module.exports = __toCommonJS(poolProxy_exports);
|
|
31
|
+
var import_types = require("../types/index.js");
|
|
32
|
+
var import_config = require("../utils/config.js");
|
|
33
|
+
var _config;
|
|
34
|
+
class PoolProxyContract {
|
|
35
|
+
/**
|
|
36
|
+
* @param {DeepBookConfig} config Configuration for PoolProxyContract
|
|
37
|
+
*/
|
|
38
|
+
constructor(config) {
|
|
39
|
+
__privateAdd(this, _config);
|
|
40
|
+
/**
|
|
41
|
+
* @description Place a limit order
|
|
42
|
+
* @param {PlaceMarginLimitOrderParams} params Parameters for placing a limit order
|
|
43
|
+
* @returns A function that takes a Transaction object
|
|
44
|
+
*/
|
|
45
|
+
this.placeLimitOrder = (params) => (tx) => {
|
|
46
|
+
const {
|
|
47
|
+
poolKey,
|
|
48
|
+
marginManagerKey,
|
|
49
|
+
clientOrderId,
|
|
50
|
+
price,
|
|
51
|
+
quantity,
|
|
52
|
+
isBid,
|
|
53
|
+
expiration = import_config.MAX_TIMESTAMP,
|
|
54
|
+
orderType = import_types.OrderType.NO_RESTRICTION,
|
|
55
|
+
selfMatchingOption = import_types.SelfMatchingOptions.SELF_MATCHING_ALLOWED,
|
|
56
|
+
payWithDeep = true
|
|
57
|
+
} = params;
|
|
58
|
+
const pool = __privateGet(this, _config).getPool(poolKey);
|
|
59
|
+
const manager = __privateGet(this, _config).getMarginManager(marginManagerKey);
|
|
60
|
+
const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
|
|
61
|
+
const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
|
|
62
|
+
const inputPrice = Math.round(price * import_config.FLOAT_SCALAR * quoteCoin.scalar / baseCoin.scalar);
|
|
63
|
+
const inputQuantity = Math.round(quantity * baseCoin.scalar);
|
|
64
|
+
return tx.moveCall({
|
|
65
|
+
target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::pool_proxy::place_limit_order`,
|
|
66
|
+
arguments: [
|
|
67
|
+
tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
|
|
68
|
+
tx.object(manager.address),
|
|
69
|
+
tx.object(pool.address),
|
|
70
|
+
tx.pure.u64(clientOrderId),
|
|
71
|
+
tx.pure.u8(orderType),
|
|
72
|
+
tx.pure.u8(selfMatchingOption),
|
|
73
|
+
tx.pure.u64(inputPrice),
|
|
74
|
+
tx.pure.u64(inputQuantity),
|
|
75
|
+
tx.pure.bool(isBid),
|
|
76
|
+
tx.pure.bool(payWithDeep),
|
|
77
|
+
tx.pure.u64(expiration),
|
|
78
|
+
tx.object.clock()
|
|
79
|
+
],
|
|
80
|
+
typeArguments: [baseCoin.type, quoteCoin.type]
|
|
81
|
+
});
|
|
82
|
+
};
|
|
83
|
+
/**
|
|
84
|
+
* @description Place a market order
|
|
85
|
+
* @param {PlaceMarginMarketOrderParams} params Parameters for placing a market order
|
|
86
|
+
* @returns A function that takes a Transaction object
|
|
87
|
+
*/
|
|
88
|
+
this.placeMarketOrder = (params) => (tx) => {
|
|
89
|
+
const {
|
|
90
|
+
poolKey,
|
|
91
|
+
marginManagerKey,
|
|
92
|
+
clientOrderId,
|
|
93
|
+
quantity,
|
|
94
|
+
isBid,
|
|
95
|
+
selfMatchingOption = import_types.SelfMatchingOptions.SELF_MATCHING_ALLOWED,
|
|
96
|
+
payWithDeep = true
|
|
97
|
+
} = params;
|
|
98
|
+
const pool = __privateGet(this, _config).getPool(poolKey);
|
|
99
|
+
const manager = __privateGet(this, _config).getMarginManager(marginManagerKey);
|
|
100
|
+
const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
|
|
101
|
+
const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
|
|
102
|
+
const inputQuantity = Math.round(quantity * baseCoin.scalar);
|
|
103
|
+
return tx.moveCall({
|
|
104
|
+
target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::pool_proxy::place_market_order`,
|
|
105
|
+
arguments: [
|
|
106
|
+
tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
|
|
107
|
+
tx.object(manager.address),
|
|
108
|
+
tx.object(pool.address),
|
|
109
|
+
tx.pure.u64(clientOrderId),
|
|
110
|
+
tx.pure.u8(selfMatchingOption),
|
|
111
|
+
tx.pure.u64(inputQuantity),
|
|
112
|
+
tx.pure.bool(isBid),
|
|
113
|
+
tx.pure.bool(payWithDeep),
|
|
114
|
+
tx.object.clock()
|
|
115
|
+
],
|
|
116
|
+
typeArguments: [baseCoin.type, quoteCoin.type]
|
|
117
|
+
});
|
|
118
|
+
};
|
|
119
|
+
/**
|
|
120
|
+
* @description Place a reduce only limit order
|
|
121
|
+
* @param {PlaceMarginLimitOrderParams} params Parameters for placing a reduce only limit order
|
|
122
|
+
* @returns A function that takes a Transaction object
|
|
123
|
+
*/
|
|
124
|
+
this.placeReduceOnlyLimitOrder = (params) => (tx) => {
|
|
125
|
+
const {
|
|
126
|
+
poolKey,
|
|
127
|
+
marginManagerKey,
|
|
128
|
+
clientOrderId,
|
|
129
|
+
price,
|
|
130
|
+
quantity,
|
|
131
|
+
isBid,
|
|
132
|
+
expiration = import_config.MAX_TIMESTAMP,
|
|
133
|
+
orderType = import_types.OrderType.NO_RESTRICTION,
|
|
134
|
+
selfMatchingOption = import_types.SelfMatchingOptions.SELF_MATCHING_ALLOWED,
|
|
135
|
+
payWithDeep = true
|
|
136
|
+
} = params;
|
|
137
|
+
const pool = __privateGet(this, _config).getPool(poolKey);
|
|
138
|
+
const manager = __privateGet(this, _config).getMarginManager(marginManagerKey);
|
|
139
|
+
const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
|
|
140
|
+
const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
|
|
141
|
+
const inputPrice = Math.round(price * import_config.FLOAT_SCALAR * quoteCoin.scalar / baseCoin.scalar);
|
|
142
|
+
const inputQuantity = Math.round(quantity * baseCoin.scalar);
|
|
143
|
+
const marginPool = isBid ? __privateGet(this, _config).getMarginPool(pool.baseCoin) : __privateGet(this, _config).getMarginPool(pool.quoteCoin);
|
|
144
|
+
const debtType = isBid ? baseCoin.type : quoteCoin.type;
|
|
145
|
+
return tx.moveCall({
|
|
146
|
+
target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::pool_proxy::place_reduce_only_limit_order`,
|
|
147
|
+
arguments: [
|
|
148
|
+
tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
|
|
149
|
+
tx.object(manager.address),
|
|
150
|
+
tx.object(pool.address),
|
|
151
|
+
tx.object(marginPool.address),
|
|
152
|
+
tx.pure.u64(clientOrderId),
|
|
153
|
+
tx.pure.u8(orderType),
|
|
154
|
+
tx.pure.u8(selfMatchingOption),
|
|
155
|
+
tx.pure.u64(inputPrice),
|
|
156
|
+
tx.pure.u64(inputQuantity),
|
|
157
|
+
tx.pure.bool(isBid),
|
|
158
|
+
tx.pure.bool(payWithDeep),
|
|
159
|
+
tx.pure.u64(expiration),
|
|
160
|
+
tx.object.clock()
|
|
161
|
+
],
|
|
162
|
+
typeArguments: [baseCoin.type, quoteCoin.type, debtType]
|
|
163
|
+
});
|
|
164
|
+
};
|
|
165
|
+
/**
|
|
166
|
+
* @description Place a reduce only market order
|
|
167
|
+
* @param {PlaceMarginMarketOrderParams} params Parameters for placing a reduce only market order
|
|
168
|
+
* @returns A function that takes a Transaction object
|
|
169
|
+
*/
|
|
170
|
+
this.placeReduceOnlyMarketOrder = (params) => (tx) => {
|
|
171
|
+
const {
|
|
172
|
+
poolKey,
|
|
173
|
+
marginManagerKey,
|
|
174
|
+
clientOrderId,
|
|
175
|
+
quantity,
|
|
176
|
+
isBid,
|
|
177
|
+
selfMatchingOption = import_types.SelfMatchingOptions.SELF_MATCHING_ALLOWED,
|
|
178
|
+
payWithDeep = true
|
|
179
|
+
} = params;
|
|
180
|
+
const pool = __privateGet(this, _config).getPool(poolKey);
|
|
181
|
+
const manager = __privateGet(this, _config).getMarginManager(marginManagerKey);
|
|
182
|
+
const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
|
|
183
|
+
const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
|
|
184
|
+
const inputQuantity = Math.round(quantity * baseCoin.scalar);
|
|
185
|
+
const marginPool = isBid ? __privateGet(this, _config).getMarginPool(pool.baseCoin) : __privateGet(this, _config).getMarginPool(pool.quoteCoin);
|
|
186
|
+
const debtType = isBid ? baseCoin.type : quoteCoin.type;
|
|
187
|
+
return tx.moveCall({
|
|
188
|
+
target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::pool_proxy::place_reduce_only_market_order`,
|
|
189
|
+
arguments: [
|
|
190
|
+
tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
|
|
191
|
+
tx.object(manager.address),
|
|
192
|
+
tx.object(pool.address),
|
|
193
|
+
tx.object(marginPool.address),
|
|
194
|
+
tx.pure.u64(clientOrderId),
|
|
195
|
+
tx.pure.u8(selfMatchingOption),
|
|
196
|
+
tx.pure.u64(inputQuantity),
|
|
197
|
+
tx.pure.bool(isBid),
|
|
198
|
+
tx.pure.bool(payWithDeep),
|
|
199
|
+
tx.object.clock()
|
|
200
|
+
],
|
|
201
|
+
typeArguments: [baseCoin.type, quoteCoin.type, debtType]
|
|
202
|
+
});
|
|
203
|
+
};
|
|
204
|
+
/**
|
|
205
|
+
* @description Modify an existing order
|
|
206
|
+
* @param {string} marginManagerKey The key to identify the MarginManager
|
|
207
|
+
* @param {string} orderId Order ID to modify
|
|
208
|
+
* @param {number} newQuantity New quantity for the order
|
|
209
|
+
* @returns A function that takes a Transaction object
|
|
210
|
+
*/
|
|
211
|
+
this.modifyOrder = (marginManagerKey, orderId, newQuantity) => (tx) => {
|
|
212
|
+
const marginManager = __privateGet(this, _config).getMarginManager(marginManagerKey);
|
|
213
|
+
const pool = __privateGet(this, _config).getPool(marginManager.poolKey);
|
|
214
|
+
const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
|
|
215
|
+
const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
|
|
216
|
+
const inputQuantity = Math.round(newQuantity * baseCoin.scalar);
|
|
217
|
+
tx.moveCall({
|
|
218
|
+
target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::pool_proxy::modify_order`,
|
|
219
|
+
arguments: [
|
|
220
|
+
tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
|
|
221
|
+
tx.object(marginManager.address),
|
|
222
|
+
tx.object(pool.address),
|
|
223
|
+
tx.pure.u128(orderId),
|
|
224
|
+
tx.pure.u64(inputQuantity),
|
|
225
|
+
tx.object.clock()
|
|
226
|
+
],
|
|
227
|
+
typeArguments: [baseCoin.type, quoteCoin.type]
|
|
228
|
+
});
|
|
229
|
+
};
|
|
230
|
+
/**
|
|
231
|
+
* @description Cancel an existing order
|
|
232
|
+
* @param {string} marginManagerKey The key to identify the MarginManager
|
|
233
|
+
* @param {string} orderId Order ID to cancel
|
|
234
|
+
* @returns A function that takes a Transaction object
|
|
235
|
+
*/
|
|
236
|
+
this.cancelOrder = (marginManagerKey, orderId) => (tx) => {
|
|
237
|
+
const marginManager = __privateGet(this, _config).getMarginManager(marginManagerKey);
|
|
238
|
+
const pool = __privateGet(this, _config).getPool(marginManager.poolKey);
|
|
239
|
+
const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
|
|
240
|
+
const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
|
|
241
|
+
tx.moveCall({
|
|
242
|
+
target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::pool_proxy::cancel_order`,
|
|
243
|
+
arguments: [
|
|
244
|
+
tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
|
|
245
|
+
tx.object(marginManager.address),
|
|
246
|
+
tx.object(pool.address),
|
|
247
|
+
tx.pure.u128(orderId),
|
|
248
|
+
tx.object.clock()
|
|
249
|
+
],
|
|
250
|
+
typeArguments: [baseCoin.type, quoteCoin.type]
|
|
251
|
+
});
|
|
252
|
+
};
|
|
253
|
+
/**
|
|
254
|
+
* @description Cancel multiple existing orders
|
|
255
|
+
* @param {string} marginManagerKey The key to identify the MarginManager
|
|
256
|
+
* @param {string[]} orderIds Order IDs to cancel
|
|
257
|
+
* @returns A function that takes a Transaction object
|
|
258
|
+
*/
|
|
259
|
+
this.cancelOrders = (marginManagerKey, orderIds) => (tx) => {
|
|
260
|
+
const marginManager = __privateGet(this, _config).getMarginManager(marginManagerKey);
|
|
261
|
+
const pool = __privateGet(this, _config).getPool(marginManager.poolKey);
|
|
262
|
+
const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
|
|
263
|
+
const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
|
|
264
|
+
tx.moveCall({
|
|
265
|
+
target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::pool_proxy::cancel_orders`,
|
|
266
|
+
arguments: [
|
|
267
|
+
tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
|
|
268
|
+
tx.object(marginManager.address),
|
|
269
|
+
tx.object(pool.address),
|
|
270
|
+
tx.pure.vector("u128", orderIds),
|
|
271
|
+
tx.object.clock()
|
|
272
|
+
],
|
|
273
|
+
typeArguments: [baseCoin.type, quoteCoin.type]
|
|
274
|
+
});
|
|
275
|
+
};
|
|
276
|
+
/**
|
|
277
|
+
* @description Cancel all existing orders
|
|
278
|
+
* @param {string} marginManagerKey The key to identify the MarginManager
|
|
279
|
+
* @returns A function that takes a Transaction object
|
|
280
|
+
*/
|
|
281
|
+
this.cancelAllOrders = (marginManagerKey) => (tx) => {
|
|
282
|
+
const marginManager = __privateGet(this, _config).getMarginManager(marginManagerKey);
|
|
283
|
+
const pool = __privateGet(this, _config).getPool(marginManager.poolKey);
|
|
284
|
+
const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
|
|
285
|
+
const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
|
|
286
|
+
tx.moveCall({
|
|
287
|
+
target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::pool_proxy::cancel_all_orders`,
|
|
288
|
+
arguments: [
|
|
289
|
+
tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
|
|
290
|
+
tx.object(marginManager.address),
|
|
291
|
+
tx.object(pool.address),
|
|
292
|
+
tx.object.clock()
|
|
293
|
+
],
|
|
294
|
+
typeArguments: [baseCoin.type, quoteCoin.type]
|
|
295
|
+
});
|
|
296
|
+
};
|
|
297
|
+
/**
|
|
298
|
+
* @description Withdraw settled amounts
|
|
299
|
+
* @param {string} marginManagerKey The key to identify the MarginManager
|
|
300
|
+
* @returns A function that takes a Transaction object
|
|
301
|
+
*/
|
|
302
|
+
this.withdrawSettledAmounts = (marginManagerKey) => (tx) => {
|
|
303
|
+
const marginManager = __privateGet(this, _config).getMarginManager(marginManagerKey);
|
|
304
|
+
const pool = __privateGet(this, _config).getPool(marginManager.poolKey);
|
|
305
|
+
const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
|
|
306
|
+
const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
|
|
307
|
+
tx.moveCall({
|
|
308
|
+
target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::pool_proxy::withdraw_settled_amounts`,
|
|
309
|
+
arguments: [
|
|
310
|
+
tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
|
|
311
|
+
tx.object(marginManager.address),
|
|
312
|
+
tx.object(pool.address)
|
|
313
|
+
],
|
|
314
|
+
typeArguments: [baseCoin.type, quoteCoin.type]
|
|
315
|
+
});
|
|
316
|
+
};
|
|
317
|
+
/**
|
|
318
|
+
* @description Stake in the pool
|
|
319
|
+
* @param {string} marginManagerKey The key to identify the MarginManager
|
|
320
|
+
* @param {number} stakeAmount The amount to stake
|
|
321
|
+
* @returns A function that takes a Transaction object
|
|
322
|
+
*/
|
|
323
|
+
this.stake = (marginManagerKey, stakeAmount) => (tx) => {
|
|
324
|
+
const marginManager = __privateGet(this, _config).getMarginManager(marginManagerKey);
|
|
325
|
+
const pool = __privateGet(this, _config).getPool(marginManager.poolKey);
|
|
326
|
+
const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
|
|
327
|
+
const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
|
|
328
|
+
const deepCoin = __privateGet(this, _config).getCoin("DEEP");
|
|
329
|
+
const stakeInput = Math.round(stakeAmount * deepCoin.scalar);
|
|
330
|
+
tx.moveCall({
|
|
331
|
+
target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::pool_proxy::stake`,
|
|
332
|
+
arguments: [
|
|
333
|
+
tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
|
|
334
|
+
tx.object(marginManager.address),
|
|
335
|
+
tx.object(pool.address),
|
|
336
|
+
tx.pure.u64(stakeInput)
|
|
337
|
+
],
|
|
338
|
+
typeArguments: [baseCoin.type, quoteCoin.type]
|
|
339
|
+
});
|
|
340
|
+
};
|
|
341
|
+
/**
|
|
342
|
+
* @description Unstake from the pool
|
|
343
|
+
* @param {string} marginManagerKey The key to identify the MarginManager
|
|
344
|
+
* @returns A function that takes a Transaction object
|
|
345
|
+
*/
|
|
346
|
+
this.unstake = (marginManagerKey) => (tx) => {
|
|
347
|
+
const marginManager = __privateGet(this, _config).getMarginManager(marginManagerKey);
|
|
348
|
+
const pool = __privateGet(this, _config).getPool(marginManager.poolKey);
|
|
349
|
+
const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
|
|
350
|
+
const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
|
|
351
|
+
tx.moveCall({
|
|
352
|
+
target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::pool_proxy::unstake`,
|
|
353
|
+
arguments: [
|
|
354
|
+
tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
|
|
355
|
+
tx.object(marginManager.address),
|
|
356
|
+
tx.object(pool.address)
|
|
357
|
+
],
|
|
358
|
+
typeArguments: [baseCoin.type, quoteCoin.type]
|
|
359
|
+
});
|
|
360
|
+
};
|
|
361
|
+
/**
|
|
362
|
+
* @description Submit a proposal
|
|
363
|
+
* @param {string} marginManagerKey The key to identify the MarginManager
|
|
364
|
+
* @param {MarginProposalParams} params Parameters for the proposal
|
|
365
|
+
* @returns A function that takes a Transaction object
|
|
366
|
+
*/
|
|
367
|
+
this.submitProposal = (marginManagerKey, params) => (tx) => {
|
|
368
|
+
const { takerFee, makerFee, stakeRequired } = params;
|
|
369
|
+
const marginManager = __privateGet(this, _config).getMarginManager(marginManagerKey);
|
|
370
|
+
const pool = __privateGet(this, _config).getPool(marginManager.poolKey);
|
|
371
|
+
const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
|
|
372
|
+
const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
|
|
373
|
+
const stakeInput = Math.round(stakeRequired * import_config.FLOAT_SCALAR);
|
|
374
|
+
const takerFeeInput = Math.round(takerFee * import_config.FLOAT_SCALAR);
|
|
375
|
+
const makerFeeInput = Math.round(makerFee * import_config.FLOAT_SCALAR);
|
|
376
|
+
tx.moveCall({
|
|
377
|
+
target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::pool_proxy::submit_proposal`,
|
|
378
|
+
arguments: [
|
|
379
|
+
tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
|
|
380
|
+
tx.object(marginManager.address),
|
|
381
|
+
tx.object(pool.address),
|
|
382
|
+
tx.pure.u64(takerFeeInput),
|
|
383
|
+
tx.pure.u64(makerFeeInput),
|
|
384
|
+
tx.pure.u64(stakeInput)
|
|
385
|
+
],
|
|
386
|
+
typeArguments: [baseCoin.type, quoteCoin.type]
|
|
387
|
+
});
|
|
388
|
+
};
|
|
389
|
+
/**
|
|
390
|
+
* @description Vote on a proposal
|
|
391
|
+
* @param {string} marginManagerKey The key to identify the MarginManager
|
|
392
|
+
* @param {string} proposalId The ID of the proposal to vote on
|
|
393
|
+
* @returns A function that takes a Transaction object
|
|
394
|
+
*/
|
|
395
|
+
this.vote = (marginManagerKey, proposalId) => (tx) => {
|
|
396
|
+
const marginManager = __privateGet(this, _config).getMarginManager(marginManagerKey);
|
|
397
|
+
const pool = __privateGet(this, _config).getPool(marginManager.poolKey);
|
|
398
|
+
const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
|
|
399
|
+
const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
|
|
400
|
+
tx.moveCall({
|
|
401
|
+
target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::pool_proxy::vote`,
|
|
402
|
+
arguments: [
|
|
403
|
+
tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
|
|
404
|
+
tx.object(marginManager.address),
|
|
405
|
+
tx.object(pool.address),
|
|
406
|
+
tx.pure.id(proposalId)
|
|
407
|
+
],
|
|
408
|
+
typeArguments: [baseCoin.type, quoteCoin.type]
|
|
409
|
+
});
|
|
410
|
+
};
|
|
411
|
+
/**
|
|
412
|
+
* @description Claim a rebate from a pool
|
|
413
|
+
* @param {string} marginManagerKey The key to identify the MarginManager
|
|
414
|
+
* @returns A function that takes a Transaction object
|
|
415
|
+
*/
|
|
416
|
+
this.claimRebate = (marginManagerKey) => (tx) => {
|
|
417
|
+
const marginManager = __privateGet(this, _config).getMarginManager(marginManagerKey);
|
|
418
|
+
const pool = __privateGet(this, _config).getPool(marginManager.poolKey);
|
|
419
|
+
const baseCoin = __privateGet(this, _config).getCoin(pool.baseCoin);
|
|
420
|
+
const quoteCoin = __privateGet(this, _config).getCoin(pool.quoteCoin);
|
|
421
|
+
tx.moveCall({
|
|
422
|
+
target: `${__privateGet(this, _config).MARGIN_PACKAGE_ID}::pool_proxy::claim_rebate`,
|
|
423
|
+
arguments: [
|
|
424
|
+
tx.object(__privateGet(this, _config).MARGIN_REGISTRY_ID),
|
|
425
|
+
tx.object(marginManager.address),
|
|
426
|
+
tx.object(pool.address)
|
|
427
|
+
],
|
|
428
|
+
typeArguments: [baseCoin.type, quoteCoin.type]
|
|
429
|
+
});
|
|
430
|
+
};
|
|
431
|
+
__privateSet(this, _config, config);
|
|
432
|
+
}
|
|
433
|
+
}
|
|
434
|
+
_config = new WeakMap();
|
|
435
|
+
//# sourceMappingURL=poolProxy.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/transactions/poolProxy.ts"],
|
|
4
|
+
"sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\nimport type { Transaction } from '@haneullabs/haneul/transactions';\nimport type {\n\tPlaceMarginLimitOrderParams,\n\tPlaceMarginMarketOrderParams,\n\tMarginProposalParams,\n} from '../types/index.js';\n\nimport type { DeepBookConfig } from '../utils/config.js';\nimport { OrderType, SelfMatchingOptions } from '../types/index.js';\nimport { MAX_TIMESTAMP, FLOAT_SCALAR } from '../utils/config.js';\n\n/**\n * PoolProxyContract class for managing PoolProxy operations.\n */\nexport class PoolProxyContract {\n\t#config: DeepBookConfig;\n\n\t/**\n\t * @param {DeepBookConfig} config Configuration for PoolProxyContract\n\t */\n\tconstructor(config: DeepBookConfig) {\n\t\tthis.#config = config;\n\t}\n\n\t/**\n\t * @description Place a limit order\n\t * @param {PlaceMarginLimitOrderParams} params Parameters for placing a limit order\n\t * @returns A function that takes a Transaction object\n\t */\n\tplaceLimitOrder = (params: PlaceMarginLimitOrderParams) => (tx: Transaction) => {\n\t\tconst {\n\t\t\tpoolKey,\n\t\t\tmarginManagerKey,\n\t\t\tclientOrderId,\n\t\t\tprice,\n\t\t\tquantity,\n\t\t\tisBid,\n\t\t\texpiration = MAX_TIMESTAMP,\n\t\t\torderType = OrderType.NO_RESTRICTION,\n\t\t\tselfMatchingOption = SelfMatchingOptions.SELF_MATCHING_ALLOWED,\n\t\t\tpayWithDeep = true,\n\t\t} = params;\n\t\tconst pool = this.#config.getPool(poolKey);\n\t\tconst manager = this.#config.getMarginManager(marginManagerKey);\n\t\tconst baseCoin = this.#config.getCoin(pool.baseCoin);\n\t\tconst quoteCoin = this.#config.getCoin(pool.quoteCoin);\n\t\tconst inputPrice = Math.round((price * FLOAT_SCALAR * quoteCoin.scalar) / baseCoin.scalar);\n\t\tconst inputQuantity = Math.round(quantity * baseCoin.scalar);\n\t\treturn tx.moveCall({\n\t\t\ttarget: `${this.#config.MARGIN_PACKAGE_ID}::pool_proxy::place_limit_order`,\n\t\t\targuments: [\n\t\t\t\ttx.object(this.#config.MARGIN_REGISTRY_ID),\n\t\t\t\ttx.object(manager.address),\n\t\t\t\ttx.object(pool.address),\n\t\t\t\ttx.pure.u64(clientOrderId),\n\t\t\t\ttx.pure.u8(orderType),\n\t\t\t\ttx.pure.u8(selfMatchingOption),\n\t\t\t\ttx.pure.u64(inputPrice),\n\t\t\t\ttx.pure.u64(inputQuantity),\n\t\t\t\ttx.pure.bool(isBid),\n\t\t\t\ttx.pure.bool(payWithDeep),\n\t\t\t\ttx.pure.u64(expiration),\n\t\t\t\ttx.object.clock(),\n\t\t\t],\n\t\t\ttypeArguments: [baseCoin.type, quoteCoin.type],\n\t\t});\n\t};\n\n\t/**\n\t * @description Place a market order\n\t * @param {PlaceMarginMarketOrderParams} params Parameters for placing a market order\n\t * @returns A function that takes a Transaction object\n\t */\n\tplaceMarketOrder = (params: PlaceMarginMarketOrderParams) => (tx: Transaction) => {\n\t\tconst {\n\t\t\tpoolKey,\n\t\t\tmarginManagerKey,\n\t\t\tclientOrderId,\n\t\t\tquantity,\n\t\t\tisBid,\n\t\t\tselfMatchingOption = SelfMatchingOptions.SELF_MATCHING_ALLOWED,\n\t\t\tpayWithDeep = true,\n\t\t} = params;\n\t\tconst pool = this.#config.getPool(poolKey);\n\t\tconst manager = this.#config.getMarginManager(marginManagerKey);\n\t\tconst baseCoin = this.#config.getCoin(pool.baseCoin);\n\t\tconst quoteCoin = this.#config.getCoin(pool.quoteCoin);\n\t\tconst inputQuantity = Math.round(quantity * baseCoin.scalar);\n\t\treturn tx.moveCall({\n\t\t\ttarget: `${this.#config.MARGIN_PACKAGE_ID}::pool_proxy::place_market_order`,\n\t\t\targuments: [\n\t\t\t\ttx.object(this.#config.MARGIN_REGISTRY_ID),\n\t\t\t\ttx.object(manager.address),\n\t\t\t\ttx.object(pool.address),\n\t\t\t\ttx.pure.u64(clientOrderId),\n\t\t\t\ttx.pure.u8(selfMatchingOption),\n\t\t\t\ttx.pure.u64(inputQuantity),\n\t\t\t\ttx.pure.bool(isBid),\n\t\t\t\ttx.pure.bool(payWithDeep),\n\t\t\t\ttx.object.clock(),\n\t\t\t],\n\t\t\ttypeArguments: [baseCoin.type, quoteCoin.type],\n\t\t});\n\t};\n\n\t/**\n\t * @description Place a reduce only limit order\n\t * @param {PlaceMarginLimitOrderParams} params Parameters for placing a reduce only limit order\n\t * @returns A function that takes a Transaction object\n\t */\n\tplaceReduceOnlyLimitOrder = (params: PlaceMarginLimitOrderParams) => (tx: Transaction) => {\n\t\tconst {\n\t\t\tpoolKey,\n\t\t\tmarginManagerKey,\n\t\t\tclientOrderId,\n\t\t\tprice,\n\t\t\tquantity,\n\t\t\tisBid,\n\t\t\texpiration = MAX_TIMESTAMP,\n\t\t\torderType = OrderType.NO_RESTRICTION,\n\t\t\tselfMatchingOption = SelfMatchingOptions.SELF_MATCHING_ALLOWED,\n\t\t\tpayWithDeep = true,\n\t\t} = params;\n\t\tconst pool = this.#config.getPool(poolKey);\n\t\tconst manager = this.#config.getMarginManager(marginManagerKey);\n\t\tconst baseCoin = this.#config.getCoin(pool.baseCoin);\n\t\tconst quoteCoin = this.#config.getCoin(pool.quoteCoin);\n\t\tconst inputPrice = Math.round((price * FLOAT_SCALAR * quoteCoin.scalar) / baseCoin.scalar);\n\t\tconst inputQuantity = Math.round(quantity * baseCoin.scalar);\n\t\tconst marginPool = isBid\n\t\t\t? this.#config.getMarginPool(pool.baseCoin)\n\t\t\t: this.#config.getMarginPool(pool.quoteCoin);\n\t\tconst debtType = isBid ? baseCoin.type : quoteCoin.type;\n\t\treturn tx.moveCall({\n\t\t\ttarget: `${this.#config.MARGIN_PACKAGE_ID}::pool_proxy::place_reduce_only_limit_order`,\n\t\t\targuments: [\n\t\t\t\ttx.object(this.#config.MARGIN_REGISTRY_ID),\n\t\t\t\ttx.object(manager.address),\n\t\t\t\ttx.object(pool.address),\n\t\t\t\ttx.object(marginPool.address),\n\t\t\t\ttx.pure.u64(clientOrderId),\n\t\t\t\ttx.pure.u8(orderType),\n\t\t\t\ttx.pure.u8(selfMatchingOption),\n\t\t\t\ttx.pure.u64(inputPrice),\n\t\t\t\ttx.pure.u64(inputQuantity),\n\t\t\t\ttx.pure.bool(isBid),\n\t\t\t\ttx.pure.bool(payWithDeep),\n\t\t\t\ttx.pure.u64(expiration),\n\t\t\t\ttx.object.clock(),\n\t\t\t],\n\t\t\ttypeArguments: [baseCoin.type, quoteCoin.type, debtType],\n\t\t});\n\t};\n\n\t/**\n\t * @description Place a reduce only market order\n\t * @param {PlaceMarginMarketOrderParams} params Parameters for placing a reduce only market order\n\t * @returns A function that takes a Transaction object\n\t */\n\tplaceReduceOnlyMarketOrder = (params: PlaceMarginMarketOrderParams) => (tx: Transaction) => {\n\t\tconst {\n\t\t\tpoolKey,\n\t\t\tmarginManagerKey,\n\t\t\tclientOrderId,\n\t\t\tquantity,\n\t\t\tisBid,\n\t\t\tselfMatchingOption = SelfMatchingOptions.SELF_MATCHING_ALLOWED,\n\t\t\tpayWithDeep = true,\n\t\t} = params;\n\t\tconst pool = this.#config.getPool(poolKey);\n\t\tconst manager = this.#config.getMarginManager(marginManagerKey);\n\t\tconst baseCoin = this.#config.getCoin(pool.baseCoin);\n\t\tconst quoteCoin = this.#config.getCoin(pool.quoteCoin);\n\t\tconst inputQuantity = Math.round(quantity * baseCoin.scalar);\n\t\tconst marginPool = isBid\n\t\t\t? this.#config.getMarginPool(pool.baseCoin)\n\t\t\t: this.#config.getMarginPool(pool.quoteCoin);\n\t\tconst debtType = isBid ? baseCoin.type : quoteCoin.type;\n\t\treturn tx.moveCall({\n\t\t\ttarget: `${this.#config.MARGIN_PACKAGE_ID}::pool_proxy::place_reduce_only_market_order`,\n\t\t\targuments: [\n\t\t\t\ttx.object(this.#config.MARGIN_REGISTRY_ID),\n\t\t\t\ttx.object(manager.address),\n\t\t\t\ttx.object(pool.address),\n\t\t\t\ttx.object(marginPool.address),\n\t\t\t\ttx.pure.u64(clientOrderId),\n\t\t\t\ttx.pure.u8(selfMatchingOption),\n\t\t\t\ttx.pure.u64(inputQuantity),\n\t\t\t\ttx.pure.bool(isBid),\n\t\t\t\ttx.pure.bool(payWithDeep),\n\t\t\t\ttx.object.clock(),\n\t\t\t],\n\t\t\ttypeArguments: [baseCoin.type, quoteCoin.type, debtType],\n\t\t});\n\t};\n\n\t/**\n\t * @description Modify an existing order\n\t * @param {string} marginManagerKey The key to identify the MarginManager\n\t * @param {string} orderId Order ID to modify\n\t * @param {number} newQuantity New quantity for the order\n\t * @returns A function that takes a Transaction object\n\t */\n\tmodifyOrder =\n\t\t(marginManagerKey: string, orderId: string, newQuantity: number) => (tx: Transaction) => {\n\t\t\tconst marginManager = this.#config.getMarginManager(marginManagerKey);\n\t\t\tconst pool = this.#config.getPool(marginManager.poolKey);\n\t\t\tconst baseCoin = this.#config.getCoin(pool.baseCoin);\n\t\t\tconst quoteCoin = this.#config.getCoin(pool.quoteCoin);\n\t\t\tconst inputQuantity = Math.round(newQuantity * baseCoin.scalar);\n\n\t\t\ttx.moveCall({\n\t\t\t\ttarget: `${this.#config.MARGIN_PACKAGE_ID}::pool_proxy::modify_order`,\n\t\t\t\targuments: [\n\t\t\t\t\ttx.object(this.#config.MARGIN_REGISTRY_ID),\n\t\t\t\t\ttx.object(marginManager.address),\n\t\t\t\t\ttx.object(pool.address),\n\t\t\t\t\ttx.pure.u128(orderId),\n\t\t\t\t\ttx.pure.u64(inputQuantity),\n\t\t\t\t\ttx.object.clock(),\n\t\t\t\t],\n\t\t\t\ttypeArguments: [baseCoin.type, quoteCoin.type],\n\t\t\t});\n\t\t};\n\n\t/**\n\t * @description Cancel an existing order\n\t * @param {string} marginManagerKey The key to identify the MarginManager\n\t * @param {string} orderId Order ID to cancel\n\t * @returns A function that takes a Transaction object\n\t */\n\tcancelOrder = (marginManagerKey: string, orderId: string) => (tx: Transaction) => {\n\t\tconst marginManager = this.#config.getMarginManager(marginManagerKey);\n\t\tconst pool = this.#config.getPool(marginManager.poolKey);\n\t\tconst baseCoin = this.#config.getCoin(pool.baseCoin);\n\t\tconst quoteCoin = this.#config.getCoin(pool.quoteCoin);\n\t\ttx.moveCall({\n\t\t\ttarget: `${this.#config.MARGIN_PACKAGE_ID}::pool_proxy::cancel_order`,\n\t\t\targuments: [\n\t\t\t\ttx.object(this.#config.MARGIN_REGISTRY_ID),\n\t\t\t\ttx.object(marginManager.address),\n\t\t\t\ttx.object(pool.address),\n\t\t\t\ttx.pure.u128(orderId),\n\t\t\t\ttx.object.clock(),\n\t\t\t],\n\t\t\ttypeArguments: [baseCoin.type, quoteCoin.type],\n\t\t});\n\t};\n\n\t/**\n\t * @description Cancel multiple existing orders\n\t * @param {string} marginManagerKey The key to identify the MarginManager\n\t * @param {string[]} orderIds Order IDs to cancel\n\t * @returns A function that takes a Transaction object\n\t */\n\tcancelOrders = (marginManagerKey: string, orderIds: string[]) => (tx: Transaction) => {\n\t\tconst marginManager = this.#config.getMarginManager(marginManagerKey);\n\t\tconst pool = this.#config.getPool(marginManager.poolKey);\n\t\tconst baseCoin = this.#config.getCoin(pool.baseCoin);\n\t\tconst quoteCoin = this.#config.getCoin(pool.quoteCoin);\n\t\ttx.moveCall({\n\t\t\ttarget: `${this.#config.MARGIN_PACKAGE_ID}::pool_proxy::cancel_orders`,\n\t\t\targuments: [\n\t\t\t\ttx.object(this.#config.MARGIN_REGISTRY_ID),\n\t\t\t\ttx.object(marginManager.address),\n\t\t\t\ttx.object(pool.address),\n\t\t\t\ttx.pure.vector('u128', orderIds),\n\t\t\t\ttx.object.clock(),\n\t\t\t],\n\t\t\ttypeArguments: [baseCoin.type, quoteCoin.type],\n\t\t});\n\t};\n\n\t/**\n\t * @description Cancel all existing orders\n\t * @param {string} marginManagerKey The key to identify the MarginManager\n\t * @returns A function that takes a Transaction object\n\t */\n\tcancelAllOrders = (marginManagerKey: string) => (tx: Transaction) => {\n\t\tconst marginManager = this.#config.getMarginManager(marginManagerKey);\n\t\tconst pool = this.#config.getPool(marginManager.poolKey);\n\t\tconst baseCoin = this.#config.getCoin(pool.baseCoin);\n\t\tconst quoteCoin = this.#config.getCoin(pool.quoteCoin);\n\t\ttx.moveCall({\n\t\t\ttarget: `${this.#config.MARGIN_PACKAGE_ID}::pool_proxy::cancel_all_orders`,\n\t\t\targuments: [\n\t\t\t\ttx.object(this.#config.MARGIN_REGISTRY_ID),\n\t\t\t\ttx.object(marginManager.address),\n\t\t\t\ttx.object(pool.address),\n\t\t\t\ttx.object.clock(),\n\t\t\t],\n\t\t\ttypeArguments: [baseCoin.type, quoteCoin.type],\n\t\t});\n\t};\n\n\t/**\n\t * @description Withdraw settled amounts\n\t * @param {string} marginManagerKey The key to identify the MarginManager\n\t * @returns A function that takes a Transaction object\n\t */\n\twithdrawSettledAmounts = (marginManagerKey: string) => (tx: Transaction) => {\n\t\tconst marginManager = this.#config.getMarginManager(marginManagerKey);\n\t\tconst pool = this.#config.getPool(marginManager.poolKey);\n\t\tconst baseCoin = this.#config.getCoin(pool.baseCoin);\n\t\tconst quoteCoin = this.#config.getCoin(pool.quoteCoin);\n\t\ttx.moveCall({\n\t\t\ttarget: `${this.#config.MARGIN_PACKAGE_ID}::pool_proxy::withdraw_settled_amounts`,\n\t\t\targuments: [\n\t\t\t\ttx.object(this.#config.MARGIN_REGISTRY_ID),\n\t\t\t\ttx.object(marginManager.address),\n\t\t\t\ttx.object(pool.address),\n\t\t\t],\n\t\t\ttypeArguments: [baseCoin.type, quoteCoin.type],\n\t\t});\n\t};\n\n\t/**\n\t * @description Stake in the pool\n\t * @param {string} marginManagerKey The key to identify the MarginManager\n\t * @param {number} stakeAmount The amount to stake\n\t * @returns A function that takes a Transaction object\n\t */\n\tstake = (marginManagerKey: string, stakeAmount: number) => (tx: Transaction) => {\n\t\tconst marginManager = this.#config.getMarginManager(marginManagerKey);\n\t\tconst pool = this.#config.getPool(marginManager.poolKey);\n\t\tconst baseCoin = this.#config.getCoin(pool.baseCoin);\n\t\tconst quoteCoin = this.#config.getCoin(pool.quoteCoin);\n\t\tconst deepCoin = this.#config.getCoin('DEEP');\n\t\tconst stakeInput = Math.round(stakeAmount * deepCoin.scalar);\n\t\ttx.moveCall({\n\t\t\ttarget: `${this.#config.MARGIN_PACKAGE_ID}::pool_proxy::stake`,\n\t\t\targuments: [\n\t\t\t\ttx.object(this.#config.MARGIN_REGISTRY_ID),\n\t\t\t\ttx.object(marginManager.address),\n\t\t\t\ttx.object(pool.address),\n\t\t\t\ttx.pure.u64(stakeInput),\n\t\t\t],\n\t\t\ttypeArguments: [baseCoin.type, quoteCoin.type],\n\t\t});\n\t};\n\n\t/**\n\t * @description Unstake from the pool\n\t * @param {string} marginManagerKey The key to identify the MarginManager\n\t * @returns A function that takes a Transaction object\n\t */\n\tunstake = (marginManagerKey: string) => (tx: Transaction) => {\n\t\tconst marginManager = this.#config.getMarginManager(marginManagerKey);\n\t\tconst pool = this.#config.getPool(marginManager.poolKey);\n\t\tconst baseCoin = this.#config.getCoin(pool.baseCoin);\n\t\tconst quoteCoin = this.#config.getCoin(pool.quoteCoin);\n\t\ttx.moveCall({\n\t\t\ttarget: `${this.#config.MARGIN_PACKAGE_ID}::pool_proxy::unstake`,\n\t\t\targuments: [\n\t\t\t\ttx.object(this.#config.MARGIN_REGISTRY_ID),\n\t\t\t\ttx.object(marginManager.address),\n\t\t\t\ttx.object(pool.address),\n\t\t\t],\n\t\t\ttypeArguments: [baseCoin.type, quoteCoin.type],\n\t\t});\n\t};\n\n\t/**\n\t * @description Submit a proposal\n\t * @param {string} marginManagerKey The key to identify the MarginManager\n\t * @param {MarginProposalParams} params Parameters for the proposal\n\t * @returns A function that takes a Transaction object\n\t */\n\tsubmitProposal =\n\t\t(marginManagerKey: string, params: MarginProposalParams) => (tx: Transaction) => {\n\t\t\tconst { takerFee, makerFee, stakeRequired } = params;\n\t\t\tconst marginManager = this.#config.getMarginManager(marginManagerKey);\n\t\t\tconst pool = this.#config.getPool(marginManager.poolKey);\n\t\t\tconst baseCoin = this.#config.getCoin(pool.baseCoin);\n\t\t\tconst quoteCoin = this.#config.getCoin(pool.quoteCoin);\n\t\t\tconst stakeInput = Math.round(stakeRequired * FLOAT_SCALAR);\n\t\t\tconst takerFeeInput = Math.round(takerFee * FLOAT_SCALAR);\n\t\t\tconst makerFeeInput = Math.round(makerFee * FLOAT_SCALAR);\n\t\t\ttx.moveCall({\n\t\t\t\ttarget: `${this.#config.MARGIN_PACKAGE_ID}::pool_proxy::submit_proposal`,\n\t\t\t\targuments: [\n\t\t\t\t\ttx.object(this.#config.MARGIN_REGISTRY_ID),\n\t\t\t\t\ttx.object(marginManager.address),\n\t\t\t\t\ttx.object(pool.address),\n\t\t\t\t\ttx.pure.u64(takerFeeInput),\n\t\t\t\t\ttx.pure.u64(makerFeeInput),\n\t\t\t\t\ttx.pure.u64(stakeInput),\n\t\t\t\t],\n\t\t\t\ttypeArguments: [baseCoin.type, quoteCoin.type],\n\t\t\t});\n\t\t};\n\n\t/**\n\t * @description Vote on a proposal\n\t * @param {string} marginManagerKey The key to identify the MarginManager\n\t * @param {string} proposalId The ID of the proposal to vote on\n\t * @returns A function that takes a Transaction object\n\t */\n\tvote = (marginManagerKey: string, proposalId: string) => (tx: Transaction) => {\n\t\tconst marginManager = this.#config.getMarginManager(marginManagerKey);\n\t\tconst pool = this.#config.getPool(marginManager.poolKey);\n\t\tconst baseCoin = this.#config.getCoin(pool.baseCoin);\n\t\tconst quoteCoin = this.#config.getCoin(pool.quoteCoin);\n\t\ttx.moveCall({\n\t\t\ttarget: `${this.#config.MARGIN_PACKAGE_ID}::pool_proxy::vote`,\n\t\t\targuments: [\n\t\t\t\ttx.object(this.#config.MARGIN_REGISTRY_ID),\n\t\t\t\ttx.object(marginManager.address),\n\t\t\t\ttx.object(pool.address),\n\t\t\t\ttx.pure.id(proposalId),\n\t\t\t],\n\t\t\ttypeArguments: [baseCoin.type, quoteCoin.type],\n\t\t});\n\t};\n\n\t/**\n\t * @description Claim a rebate from a pool\n\t * @param {string} marginManagerKey The key to identify the MarginManager\n\t * @returns A function that takes a Transaction object\n\t */\n\tclaimRebate = (marginManagerKey: string) => (tx: Transaction) => {\n\t\tconst marginManager = this.#config.getMarginManager(marginManagerKey);\n\t\tconst pool = this.#config.getPool(marginManager.poolKey);\n\t\tconst baseCoin = this.#config.getCoin(pool.baseCoin);\n\t\tconst quoteCoin = this.#config.getCoin(pool.quoteCoin);\n\t\ttx.moveCall({\n\t\t\ttarget: `${this.#config.MARGIN_PACKAGE_ID}::pool_proxy::claim_rebate`,\n\t\t\targuments: [\n\t\t\t\ttx.object(this.#config.MARGIN_REGISTRY_ID),\n\t\t\t\ttx.object(marginManager.address),\n\t\t\t\ttx.object(pool.address),\n\t\t\t],\n\t\t\ttypeArguments: [baseCoin.type, quoteCoin.type],\n\t\t});\n\t};\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { Account } from '../contracts/deepbook/account.js';
|
|
2
|
+
export { Balances } from '../contracts/deepbook/balances.js';
|
|
3
|
+
export { OrderDeepPrice } from '../contracts/deepbook/deep_price.js';
|
|
4
|
+
export { Order } from '../contracts/deepbook/order.js';
|
|
5
|
+
export { VecSet } from '../contracts/deepbook/deps/sui/vec_set.js';
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var bcs_exports = {};
|
|
20
|
+
__export(bcs_exports, {
|
|
21
|
+
Account: () => import_account.Account,
|
|
22
|
+
Balances: () => import_balances.Balances,
|
|
23
|
+
Order: () => import_order.Order,
|
|
24
|
+
OrderDeepPrice: () => import_deep_price.OrderDeepPrice,
|
|
25
|
+
VecSet: () => import_vec_set.VecSet
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(bcs_exports);
|
|
28
|
+
var import_account = require("../contracts/deepbook/account.js");
|
|
29
|
+
var import_balances = require("../contracts/deepbook/balances.js");
|
|
30
|
+
var import_deep_price = require("../contracts/deepbook/deep_price.js");
|
|
31
|
+
var import_order = require("../contracts/deepbook/order.js");
|
|
32
|
+
var import_vec_set = require("../contracts/deepbook/deps/sui/vec_set.js");
|
|
33
|
+
//# sourceMappingURL=bcs.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/types/bcs.ts"],
|
|
4
|
+
"sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nexport { Account } from '../contracts/deepbook/account.js';\nexport { Balances } from '../contracts/deepbook/balances.js';\nexport { OrderDeepPrice } from '../contracts/deepbook/deep_price.js';\nexport { Order } from '../contracts/deepbook/order.js';\nexport { VecSet } from '../contracts/deepbook/deps/sui/vec_set.js';\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,qBAAwB;AACxB,sBAAyB;AACzB,wBAA+B;AAC/B,mBAAsB;AACtB,qBAAuB;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|