project-cpu-mcp 0.7.1
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/LICENSE +21 -0
- package/README.md +162 -0
- package/dist/api/client.d.ts +38 -0
- package/dist/api/client.d.ts.map +1 -0
- package/dist/api/client.js +116 -0
- package/dist/api/client.js.map +1 -0
- package/dist/api/constants.d.ts +5 -0
- package/dist/api/constants.d.ts.map +1 -0
- package/dist/api/constants.js +8 -0
- package/dist/api/constants.js.map +1 -0
- package/dist/api/response.utils.d.ts +9 -0
- package/dist/api/response.utils.d.ts.map +1 -0
- package/dist/api/response.utils.js +30 -0
- package/dist/api/response.utils.js.map +1 -0
- package/dist/api/reveal-requests.client.d.ts +8 -0
- package/dist/api/reveal-requests.client.d.ts.map +1 -0
- package/dist/api/reveal-requests.client.js +38 -0
- package/dist/api/reveal-requests.client.js.map +1 -0
- package/dist/api/types.d.ts +1343 -0
- package/dist/api/types.d.ts.map +1 -0
- package/dist/api/types.js +233 -0
- package/dist/api/types.js.map +1 -0
- package/dist/config/constants.d.ts +8 -0
- package/dist/config/constants.d.ts.map +1 -0
- package/dist/config/constants.js +8 -0
- package/dist/config/constants.js.map +1 -0
- package/dist/config/env.d.ts +3 -0
- package/dist/config/env.d.ts.map +1 -0
- package/dist/config/env.js +17 -0
- package/dist/config/env.js.map +1 -0
- package/dist/config/network.utils.d.ts +3 -0
- package/dist/config/network.utils.d.ts.map +1 -0
- package/dist/config/network.utils.js +15 -0
- package/dist/config/network.utils.js.map +1 -0
- package/dist/config/types.d.ts +42 -0
- package/dist/config/types.d.ts.map +1 -0
- package/dist/config/types.js +29 -0
- package/dist/config/types.js.map +1 -0
- package/dist/contracts/cell.abi.d.ts +560 -0
- package/dist/contracts/cell.abi.d.ts.map +1 -0
- package/dist/contracts/cell.abi.js +281 -0
- package/dist/contracts/cell.abi.js.map +1 -0
- package/dist/contracts/cpu-hook.abi.d.ts +34 -0
- package/dist/contracts/cpu-hook.abi.d.ts.map +1 -0
- package/dist/contracts/cpu-hook.abi.js +6 -0
- package/dist/contracts/cpu-hook.abi.js.map +1 -0
- package/dist/contracts/erc20.abi.d.ts +56 -0
- package/dist/contracts/erc20.abi.d.ts.map +1 -0
- package/dist/contracts/erc20.abi.js +10 -0
- package/dist/contracts/erc20.abi.js.map +1 -0
- package/dist/contracts/permit2.abi.d.ts +44 -0
- package/dist/contracts/permit2.abi.d.ts.map +1 -0
- package/dist/contracts/permit2.abi.js +9 -0
- package/dist/contracts/permit2.abi.js.map +1 -0
- package/dist/contracts/randomness-adapter.abi.d.ts +112 -0
- package/dist/contracts/randomness-adapter.abi.d.ts.map +1 -0
- package/dist/contracts/randomness-adapter.abi.js +71 -0
- package/dist/contracts/randomness-adapter.abi.js.map +1 -0
- package/dist/contracts/randomness-source.abi.d.ts +12 -0
- package/dist/contracts/randomness-source.abi.d.ts.map +1 -0
- package/dist/contracts/randomness-source.abi.js +10 -0
- package/dist/contracts/randomness-source.abi.js.map +1 -0
- package/dist/contracts/seadrop.abi.d.ts +61 -0
- package/dist/contracts/seadrop.abi.d.ts.map +1 -0
- package/dist/contracts/seadrop.abi.js +11 -0
- package/dist/contracts/seadrop.abi.js.map +1 -0
- package/dist/contracts/syndicate.abi.d.ts +323 -0
- package/dist/contracts/syndicate.abi.d.ts.map +1 -0
- package/dist/contracts/syndicate.abi.js +171 -0
- package/dist/contracts/syndicate.abi.js.map +1 -0
- package/dist/contracts/trade.abi.d.ts +529 -0
- package/dist/contracts/trade.abi.d.ts.map +1 -0
- package/dist/contracts/trade.abi.js +220 -0
- package/dist/contracts/trade.abi.js.map +1 -0
- package/dist/contracts/transport.abi.d.ts +277 -0
- package/dist/contracts/transport.abi.d.ts.map +1 -0
- package/dist/contracts/transport.abi.js +109 -0
- package/dist/contracts/transport.abi.js.map +1 -0
- package/dist/contracts/universal-router.abi.d.ts +17 -0
- package/dist/contracts/universal-router.abi.d.ts.map +1 -0
- package/dist/contracts/universal-router.abi.js +8 -0
- package/dist/contracts/universal-router.abi.js.map +1 -0
- package/dist/contracts/v4-quoter.abi.d.ts +2 -0
- package/dist/contracts/v4-quoter.abi.d.ts.map +1 -0
- package/dist/contracts/v4-quoter.abi.js +10 -0
- package/dist/contracts/v4-quoter.abi.js.map +1 -0
- package/dist/geometry/adjacency.d.ts +3 -0
- package/dist/geometry/adjacency.d.ts.map +1 -0
- package/dist/geometry/adjacency.data.d.ts +3 -0
- package/dist/geometry/adjacency.data.d.ts.map +1 -0
- package/dist/geometry/adjacency.data.js +198 -0
- package/dist/geometry/adjacency.data.js.map +1 -0
- package/dist/geometry/adjacency.js +33 -0
- package/dist/geometry/adjacency.js.map +1 -0
- package/dist/geometry/cell.utils.d.ts +6 -0
- package/dist/geometry/cell.utils.d.ts.map +1 -0
- package/dist/geometry/cell.utils.js +28 -0
- package/dist/geometry/cell.utils.js.map +1 -0
- package/dist/geometry/constants.d.ts +9 -0
- package/dist/geometry/constants.d.ts.map +1 -0
- package/dist/geometry/constants.js +9 -0
- package/dist/geometry/constants.js.map +1 -0
- package/dist/geometry/graph.utils.d.ts +4 -0
- package/dist/geometry/graph.utils.d.ts.map +1 -0
- package/dist/geometry/graph.utils.js +181 -0
- package/dist/geometry/graph.utils.js.map +1 -0
- package/dist/geometry/sphere.utils.d.ts +3 -0
- package/dist/geometry/sphere.utils.d.ts.map +1 -0
- package/dist/geometry/sphere.utils.js +118 -0
- package/dist/geometry/sphere.utils.js.map +1 -0
- package/dist/geometry/token.utils.d.ts +7 -0
- package/dist/geometry/token.utils.d.ts.map +1 -0
- package/dist/geometry/token.utils.js +54 -0
- package/dist/geometry/token.utils.js.map +1 -0
- package/dist/geometry/types.d.ts +8 -0
- package/dist/geometry/types.d.ts.map +1 -0
- package/dist/geometry/types.js +4 -0
- package/dist/geometry/types.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +261 -0
- package/dist/index.js.map +1 -0
- package/dist/logger/constants.d.ts +17 -0
- package/dist/logger/constants.d.ts.map +1 -0
- package/dist/logger/constants.js +28 -0
- package/dist/logger/constants.js.map +1 -0
- package/dist/logger/index.d.ts +8 -0
- package/dist/logger/index.d.ts.map +1 -0
- package/dist/logger/index.js +13 -0
- package/dist/logger/index.js.map +1 -0
- package/dist/logger/logger.d.ts +13 -0
- package/dist/logger/logger.d.ts.map +1 -0
- package/dist/logger/logger.js +39 -0
- package/dist/logger/logger.js.map +1 -0
- package/dist/logger/noop.logger.d.ts +9 -0
- package/dist/logger/noop.logger.d.ts.map +1 -0
- package/dist/logger/noop.logger.js +11 -0
- package/dist/logger/noop.logger.js.map +1 -0
- package/dist/logger/redact.utils.d.ts +14 -0
- package/dist/logger/redact.utils.d.ts.map +1 -0
- package/dist/logger/redact.utils.js +43 -0
- package/dist/logger/redact.utils.js.map +1 -0
- package/dist/logger/types.d.ts +19 -0
- package/dist/logger/types.d.ts.map +1 -0
- package/dist/logger/types.js +8 -0
- package/dist/logger/types.js.map +1 -0
- package/dist/map/attention.utils.d.ts +18 -0
- package/dist/map/attention.utils.d.ts.map +1 -0
- package/dist/map/attention.utils.js +191 -0
- package/dist/map/attention.utils.js.map +1 -0
- package/dist/map/cell-view.utils.d.ts +3 -0
- package/dist/map/cell-view.utils.d.ts.map +1 -0
- package/dist/map/cell-view.utils.js +37 -0
- package/dist/map/cell-view.utils.js.map +1 -0
- package/dist/map/constants.d.ts +17 -0
- package/dist/map/constants.d.ts.map +1 -0
- package/dist/map/constants.js +29 -0
- package/dist/map/constants.js.map +1 -0
- package/dist/map/map.utils.d.ts +19 -0
- package/dist/map/map.utils.d.ts.map +1 -0
- package/dist/map/map.utils.js +140 -0
- package/dist/map/map.utils.js.map +1 -0
- package/dist/map/mode.utils.d.ts +9 -0
- package/dist/map/mode.utils.d.ts.map +1 -0
- package/dist/map/mode.utils.js +43 -0
- package/dist/map/mode.utils.js.map +1 -0
- package/dist/map/process.utils.d.ts +32 -0
- package/dist/map/process.utils.d.ts.map +1 -0
- package/dist/map/process.utils.js +30 -0
- package/dist/map/process.utils.js.map +1 -0
- package/dist/map/reader.d.ts +20 -0
- package/dist/map/reader.d.ts.map +1 -0
- package/dist/map/reader.js +126 -0
- package/dist/map/reader.js.map +1 -0
- package/dist/map/reader.utils.d.ts +10 -0
- package/dist/map/reader.utils.d.ts.map +1 -0
- package/dist/map/reader.utils.js +24 -0
- package/dist/map/reader.utils.js.map +1 -0
- package/dist/map/settle.utils.d.ts +20 -0
- package/dist/map/settle.utils.d.ts.map +1 -0
- package/dist/map/settle.utils.js +77 -0
- package/dist/map/settle.utils.js.map +1 -0
- package/dist/map/socket.d.ts +13 -0
- package/dist/map/socket.d.ts.map +1 -0
- package/dist/map/socket.js +54 -0
- package/dist/map/socket.js.map +1 -0
- package/dist/map/storage.utils.d.ts +7 -0
- package/dist/map/storage.utils.d.ts.map +1 -0
- package/dist/map/storage.utils.js +45 -0
- package/dist/map/storage.utils.js.map +1 -0
- package/dist/map/store.d.ts +26 -0
- package/dist/map/store.d.ts.map +1 -0
- package/dist/map/store.js +102 -0
- package/dist/map/store.js.map +1 -0
- package/dist/map/sync.d.ts +45 -0
- package/dist/map/sync.d.ts.map +1 -0
- package/dist/map/sync.js +242 -0
- package/dist/map/sync.js.map +1 -0
- package/dist/map/types.d.ts +978 -0
- package/dist/map/types.d.ts.map +1 -0
- package/dist/map/types.js +116 -0
- package/dist/map/types.js.map +1 -0
- package/dist/randomness/adapter-revert.utils.d.ts +4 -0
- package/dist/randomness/adapter-revert.utils.d.ts.map +1 -0
- package/dist/randomness/adapter-revert.utils.js +52 -0
- package/dist/randomness/adapter-revert.utils.js.map +1 -0
- package/dist/randomness/backoff.utils.d.ts +2 -0
- package/dist/randomness/backoff.utils.d.ts.map +1 -0
- package/dist/randomness/backoff.utils.js +9 -0
- package/dist/randomness/backoff.utils.js.map +1 -0
- package/dist/randomness/beacon.client.d.ts +10 -0
- package/dist/randomness/beacon.client.d.ts.map +1 -0
- package/dist/randomness/beacon.client.js +56 -0
- package/dist/randomness/beacon.client.js.map +1 -0
- package/dist/randomness/beacon.utils.d.ts +5 -0
- package/dist/randomness/beacon.utils.d.ts.map +1 -0
- package/dist/randomness/beacon.utils.js +13 -0
- package/dist/randomness/beacon.utils.js.map +1 -0
- package/dist/randomness/claims.d.ts +9 -0
- package/dist/randomness/claims.d.ts.map +1 -0
- package/dist/randomness/claims.js +19 -0
- package/dist/randomness/claims.js.map +1 -0
- package/dist/randomness/constants.d.ts +13 -0
- package/dist/randomness/constants.d.ts.map +1 -0
- package/dist/randomness/constants.js +14 -0
- package/dist/randomness/constants.js.map +1 -0
- package/dist/randomness/drand.strategy.d.ts +20 -0
- package/dist/randomness/drand.strategy.d.ts.map +1 -0
- package/dist/randomness/drand.strategy.js +140 -0
- package/dist/randomness/drand.strategy.js.map +1 -0
- package/dist/randomness/factory.d.ts +13 -0
- package/dist/randomness/factory.d.ts.map +1 -0
- package/dist/randomness/factory.js +66 -0
- package/dist/randomness/factory.js.map +1 -0
- package/dist/randomness/fulfiller.d.ts +19 -0
- package/dist/randomness/fulfiller.d.ts.map +1 -0
- package/dist/randomness/fulfiller.factory.d.ts +5 -0
- package/dist/randomness/fulfiller.factory.d.ts.map +1 -0
- package/dist/randomness/fulfiller.factory.js +58 -0
- package/dist/randomness/fulfiller.factory.js.map +1 -0
- package/dist/randomness/fulfiller.js +148 -0
- package/dist/randomness/fulfiller.js.map +1 -0
- package/dist/randomness/push.strategy.d.ts +12 -0
- package/dist/randomness/push.strategy.d.ts.map +1 -0
- package/dist/randomness/push.strategy.js +24 -0
- package/dist/randomness/push.strategy.js.map +1 -0
- package/dist/randomness/request.utils.d.ts +10 -0
- package/dist/randomness/request.utils.d.ts.map +1 -0
- package/dist/randomness/request.utils.js +52 -0
- package/dist/randomness/request.utils.js.map +1 -0
- package/dist/randomness/round.utils.d.ts +5 -0
- package/dist/randomness/round.utils.d.ts.map +1 -0
- package/dist/randomness/round.utils.js +17 -0
- package/dist/randomness/round.utils.js.map +1 -0
- package/dist/randomness/self-service.resolver.d.ts +9 -0
- package/dist/randomness/self-service.resolver.d.ts.map +1 -0
- package/dist/randomness/self-service.resolver.js +29 -0
- package/dist/randomness/self-service.resolver.js.map +1 -0
- package/dist/randomness/types.d.ts +181 -0
- package/dist/randomness/types.d.ts.map +1 -0
- package/dist/randomness/types.js +26 -0
- package/dist/randomness/types.js.map +1 -0
- package/dist/server.d.ts +3 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +185 -0
- package/dist/server.js.map +1 -0
- package/dist/services/allowance.constants.d.ts +2 -0
- package/dist/services/allowance.constants.d.ts.map +1 -0
- package/dist/services/allowance.constants.js +5 -0
- package/dist/services/allowance.constants.js.map +1 -0
- package/dist/services/allowance.service.d.ts +13 -0
- package/dist/services/allowance.service.d.ts.map +1 -0
- package/dist/services/allowance.service.js +48 -0
- package/dist/services/allowance.service.js.map +1 -0
- package/dist/services/app-config.constants.d.ts +2 -0
- package/dist/services/app-config.constants.d.ts.map +1 -0
- package/dist/services/app-config.constants.js +2 -0
- package/dist/services/app-config.constants.js.map +1 -0
- package/dist/services/app-config.service.d.ts +12 -0
- package/dist/services/app-config.service.d.ts.map +1 -0
- package/dist/services/app-config.service.js +78 -0
- package/dist/services/app-config.service.js.map +1 -0
- package/dist/services/app-config.utils.d.ts +6 -0
- package/dist/services/app-config.utils.d.ts.map +1 -0
- package/dist/services/app-config.utils.js +51 -0
- package/dist/services/app-config.utils.js.map +1 -0
- package/dist/services/auth.service.d.ts +19 -0
- package/dist/services/auth.service.d.ts.map +1 -0
- package/dist/services/auth.service.js +146 -0
- package/dist/services/auth.service.js.map +1 -0
- package/dist/services/balance.service.d.ts +14 -0
- package/dist/services/balance.service.d.ts.map +1 -0
- package/dist/services/balance.service.js +42 -0
- package/dist/services/balance.service.js.map +1 -0
- package/dist/services/build.service.d.ts +25 -0
- package/dist/services/build.service.d.ts.map +1 -0
- package/dist/services/build.service.js +183 -0
- package/dist/services/build.service.js.map +1 -0
- package/dist/services/burn.utils.d.ts +5 -0
- package/dist/services/burn.utils.d.ts.map +1 -0
- package/dist/services/burn.utils.js +15 -0
- package/dist/services/burn.utils.js.map +1 -0
- package/dist/services/cell.client.d.ts +16 -0
- package/dist/services/cell.client.d.ts.map +1 -0
- package/dist/services/cell.client.js +118 -0
- package/dist/services/cell.client.js.map +1 -0
- package/dist/services/cell.utils.d.ts +4 -0
- package/dist/services/cell.utils.d.ts.map +1 -0
- package/dist/services/cell.utils.js +15 -0
- package/dist/services/cell.utils.js.map +1 -0
- package/dist/services/craft.service.d.ts +23 -0
- package/dist/services/craft.service.d.ts.map +1 -0
- package/dist/services/craft.service.js +229 -0
- package/dist/services/craft.service.js.map +1 -0
- package/dist/services/delivery.helpers.d.ts +25 -0
- package/dist/services/delivery.helpers.d.ts.map +1 -0
- package/dist/services/delivery.helpers.js +43 -0
- package/dist/services/delivery.helpers.js.map +1 -0
- package/dist/services/mining.service.d.ts +22 -0
- package/dist/services/mining.service.d.ts.map +1 -0
- package/dist/services/mining.service.js +249 -0
- package/dist/services/mining.service.js.map +1 -0
- package/dist/services/mint.constants.d.ts +3 -0
- package/dist/services/mint.constants.d.ts.map +1 -0
- package/dist/services/mint.constants.js +4 -0
- package/dist/services/mint.constants.js.map +1 -0
- package/dist/services/mint.service.d.ts +14 -0
- package/dist/services/mint.service.d.ts.map +1 -0
- package/dist/services/mint.service.js +118 -0
- package/dist/services/mint.service.js.map +1 -0
- package/dist/services/reveal-fulfilment.service.d.ts +20 -0
- package/dist/services/reveal-fulfilment.service.d.ts.map +1 -0
- package/dist/services/reveal-fulfilment.service.js +184 -0
- package/dist/services/reveal-fulfilment.service.js.map +1 -0
- package/dist/services/reveal-revert.utils.d.ts +4 -0
- package/dist/services/reveal-revert.utils.d.ts.map +1 -0
- package/dist/services/reveal-revert.utils.js +68 -0
- package/dist/services/reveal-revert.utils.js.map +1 -0
- package/dist/services/reveal.constants.d.ts +6 -0
- package/dist/services/reveal.constants.d.ts.map +1 -0
- package/dist/services/reveal.constants.js +6 -0
- package/dist/services/reveal.constants.js.map +1 -0
- package/dist/services/reveal.service.d.ts +33 -0
- package/dist/services/reveal.service.d.ts.map +1 -0
- package/dist/services/reveal.service.js +462 -0
- package/dist/services/reveal.service.js.map +1 -0
- package/dist/services/reveal.utils.d.ts +10 -0
- package/dist/services/reveal.utils.d.ts.map +1 -0
- package/dist/services/reveal.utils.js +30 -0
- package/dist/services/reveal.utils.js.map +1 -0
- package/dist/services/route.constants.d.ts +4 -0
- package/dist/services/route.constants.d.ts.map +1 -0
- package/dist/services/route.constants.js +10 -0
- package/dist/services/route.constants.js.map +1 -0
- package/dist/services/route.service.d.ts +13 -0
- package/dist/services/route.service.d.ts.map +1 -0
- package/dist/services/route.service.js +171 -0
- package/dist/services/route.service.js.map +1 -0
- package/dist/services/route.utils.d.ts +23 -0
- package/dist/services/route.utils.d.ts.map +1 -0
- package/dist/services/route.utils.js +117 -0
- package/dist/services/route.utils.js.map +1 -0
- package/dist/services/siwe.utils.d.ts +16 -0
- package/dist/services/siwe.utils.d.ts.map +1 -0
- package/dist/services/siwe.utils.js +22 -0
- package/dist/services/siwe.utils.js.map +1 -0
- package/dist/services/swap.constants.d.ts +6 -0
- package/dist/services/swap.constants.d.ts.map +1 -0
- package/dist/services/swap.constants.js +8 -0
- package/dist/services/swap.constants.js.map +1 -0
- package/dist/services/swap.helpers.d.ts +5 -0
- package/dist/services/swap.helpers.d.ts.map +1 -0
- package/dist/services/swap.helpers.js +29 -0
- package/dist/services/swap.helpers.js.map +1 -0
- package/dist/services/swap.service.d.ts +19 -0
- package/dist/services/swap.service.d.ts.map +1 -0
- package/dist/services/swap.service.js +179 -0
- package/dist/services/swap.service.js.map +1 -0
- package/dist/services/syndicate.client.d.ts +15 -0
- package/dist/services/syndicate.client.d.ts.map +1 -0
- package/dist/services/syndicate.client.js +66 -0
- package/dist/services/syndicate.client.js.map +1 -0
- package/dist/services/syndicate.helpers.d.ts +10 -0
- package/dist/services/syndicate.helpers.d.ts.map +1 -0
- package/dist/services/syndicate.helpers.js +42 -0
- package/dist/services/syndicate.helpers.js.map +1 -0
- package/dist/services/syndicate.service.d.ts +42 -0
- package/dist/services/syndicate.service.d.ts.map +1 -0
- package/dist/services/syndicate.service.js +339 -0
- package/dist/services/syndicate.service.js.map +1 -0
- package/dist/services/trade.client.d.ts +15 -0
- package/dist/services/trade.client.d.ts.map +1 -0
- package/dist/services/trade.client.js +104 -0
- package/dist/services/trade.client.js.map +1 -0
- package/dist/services/trade.helpers.d.ts +8 -0
- package/dist/services/trade.helpers.d.ts.map +1 -0
- package/dist/services/trade.helpers.js +94 -0
- package/dist/services/trade.helpers.js.map +1 -0
- package/dist/services/trade.service.d.ts +44 -0
- package/dist/services/trade.service.d.ts.map +1 -0
- package/dist/services/trade.service.js +387 -0
- package/dist/services/trade.service.js.map +1 -0
- package/dist/services/transport.client.d.ts +11 -0
- package/dist/services/transport.client.d.ts.map +1 -0
- package/dist/services/transport.client.js +46 -0
- package/dist/services/transport.client.js.map +1 -0
- package/dist/services/transport.constants.d.ts +2 -0
- package/dist/services/transport.constants.d.ts.map +1 -0
- package/dist/services/transport.constants.js +2 -0
- package/dist/services/transport.constants.js.map +1 -0
- package/dist/services/transport.service.d.ts +25 -0
- package/dist/services/transport.service.d.ts.map +1 -0
- package/dist/services/transport.service.js +183 -0
- package/dist/services/transport.service.js.map +1 -0
- package/dist/services/types.d.ts +1191 -0
- package/dist/services/types.d.ts.map +1 -0
- package/dist/services/types.js +60 -0
- package/dist/services/types.js.map +1 -0
- package/dist/services/uniswap.utils.d.ts +10 -0
- package/dist/services/uniswap.utils.d.ts.map +1 -0
- package/dist/services/uniswap.utils.js +32 -0
- package/dist/services/uniswap.utils.js.map +1 -0
- package/dist/services/warehouse.utils.d.ts +5 -0
- package/dist/services/warehouse.utils.d.ts.map +1 -0
- package/dist/services/warehouse.utils.js +19 -0
- package/dist/services/warehouse.utils.js.map +1 -0
- package/dist/services/withdraw.service.d.ts +16 -0
- package/dist/services/withdraw.service.d.ts.map +1 -0
- package/dist/services/withdraw.service.js +76 -0
- package/dist/services/withdraw.service.js.map +1 -0
- package/dist/session/constants.d.ts +3 -0
- package/dist/session/constants.d.ts.map +1 -0
- package/dist/session/constants.js +3 -0
- package/dist/session/constants.js.map +1 -0
- package/dist/session/jwt.utils.d.ts +9 -0
- package/dist/session/jwt.utils.d.ts.map +1 -0
- package/dist/session/jwt.utils.js +17 -0
- package/dist/session/jwt.utils.js.map +1 -0
- package/dist/session/manager.d.ts +24 -0
- package/dist/session/manager.d.ts.map +1 -0
- package/dist/session/manager.js +76 -0
- package/dist/session/manager.js.map +1 -0
- package/dist/session/storage.d.ts +21 -0
- package/dist/session/storage.d.ts.map +1 -0
- package/dist/session/storage.js +120 -0
- package/dist/session/storage.js.map +1 -0
- package/dist/session/types.d.ts +138 -0
- package/dist/session/types.d.ts.map +1 -0
- package/dist/session/types.js +31 -0
- package/dist/session/types.js.map +1 -0
- package/dist/tools/account/get-balance/constants.d.ts +2 -0
- package/dist/tools/account/get-balance/constants.d.ts.map +1 -0
- package/dist/tools/account/get-balance/constants.js +6 -0
- package/dist/tools/account/get-balance/constants.js.map +1 -0
- package/dist/tools/account/get-balance/get-balance.d.ts +4 -0
- package/dist/tools/account/get-balance/get-balance.d.ts.map +1 -0
- package/dist/tools/account/get-balance/get-balance.js +15 -0
- package/dist/tools/account/get-balance/get-balance.js.map +1 -0
- package/dist/tools/authenticate.d.ts +4 -0
- package/dist/tools/authenticate.d.ts.map +1 -0
- package/dist/tools/authenticate.js +65 -0
- package/dist/tools/authenticate.js.map +1 -0
- package/dist/tools/build/build.d.ts +4 -0
- package/dist/tools/build/build.d.ts.map +1 -0
- package/dist/tools/build/build.js +51 -0
- package/dist/tools/build/build.js.map +1 -0
- package/dist/tools/build/constants.d.ts +3 -0
- package/dist/tools/build/constants.d.ts.map +1 -0
- package/dist/tools/build/constants.js +22 -0
- package/dist/tools/build/constants.js.map +1 -0
- package/dist/tools/build/demolish.d.ts +4 -0
- package/dist/tools/build/demolish.d.ts.map +1 -0
- package/dist/tools/build/demolish.js +24 -0
- package/dist/tools/build/demolish.js.map +1 -0
- package/dist/tools/build/types.d.ts +10 -0
- package/dist/tools/build/types.d.ts.map +1 -0
- package/dist/tools/build/types.js +15 -0
- package/dist/tools/build/types.js.map +1 -0
- package/dist/tools/config/get-game-config/constants.d.ts +5 -0
- package/dist/tools/config/get-game-config/constants.d.ts.map +1 -0
- package/dist/tools/config/get-game-config/constants.js +19 -0
- package/dist/tools/config/get-game-config/constants.js.map +1 -0
- package/dist/tools/config/get-game-config/get-game-config.d.ts +4 -0
- package/dist/tools/config/get-game-config/get-game-config.d.ts.map +1 -0
- package/dist/tools/config/get-game-config/get-game-config.js +48 -0
- package/dist/tools/config/get-game-config/get-game-config.js.map +1 -0
- package/dist/tools/config/get-game-config/get-game-config.utils.d.ts +3 -0
- package/dist/tools/config/get-game-config/get-game-config.utils.d.ts.map +1 -0
- package/dist/tools/config/get-game-config/get-game-config.utils.js +6 -0
- package/dist/tools/config/get-game-config/get-game-config.utils.js.map +1 -0
- package/dist/tools/craft/claim/claim-craft.d.ts +4 -0
- package/dist/tools/craft/claim/claim-craft.d.ts.map +1 -0
- package/dist/tools/craft/claim/claim-craft.js +16 -0
- package/dist/tools/craft/claim/claim-craft.js.map +1 -0
- package/dist/tools/craft/claim/constants.d.ts +2 -0
- package/dist/tools/craft/claim/constants.d.ts.map +1 -0
- package/dist/tools/craft/claim/constants.js +7 -0
- package/dist/tools/craft/claim/constants.js.map +1 -0
- package/dist/tools/craft/constants.d.ts +2 -0
- package/dist/tools/craft/constants.d.ts.map +1 -0
- package/dist/tools/craft/constants.js +13 -0
- package/dist/tools/craft/constants.js.map +1 -0
- package/dist/tools/craft/craft.d.ts +4 -0
- package/dist/tools/craft/craft.d.ts.map +1 -0
- package/dist/tools/craft/craft.js +19 -0
- package/dist/tools/craft/craft.js.map +1 -0
- package/dist/tools/craft/format.utils.d.ts +8 -0
- package/dist/tools/craft/format.utils.d.ts.map +1 -0
- package/dist/tools/craft/format.utils.js +55 -0
- package/dist/tools/craft/format.utils.js.map +1 -0
- package/dist/tools/craft/get-status/constants.d.ts +2 -0
- package/dist/tools/craft/get-status/constants.d.ts.map +1 -0
- package/dist/tools/craft/get-status/constants.js +11 -0
- package/dist/tools/craft/get-status/constants.js.map +1 -0
- package/dist/tools/craft/get-status/get-craft-status.d.ts +4 -0
- package/dist/tools/craft/get-status/get-craft-status.d.ts.map +1 -0
- package/dist/tools/craft/get-status/get-craft-status.js +15 -0
- package/dist/tools/craft/get-status/get-craft-status.js.map +1 -0
- package/dist/tools/craft/list-recipes/constants.d.ts +2 -0
- package/dist/tools/craft/list-recipes/constants.d.ts.map +1 -0
- package/dist/tools/craft/list-recipes/constants.js +6 -0
- package/dist/tools/craft/list-recipes/constants.js.map +1 -0
- package/dist/tools/craft/list-recipes/list-recipes.d.ts +4 -0
- package/dist/tools/craft/list-recipes/list-recipes.d.ts.map +1 -0
- package/dist/tools/craft/list-recipes/list-recipes.js +14 -0
- package/dist/tools/craft/list-recipes/list-recipes.js.map +1 -0
- package/dist/tools/craft/types.d.ts +11 -0
- package/dist/tools/craft/types.d.ts.map +1 -0
- package/dist/tools/craft/types.js +20 -0
- package/dist/tools/craft/types.js.map +1 -0
- package/dist/tools/map/attention/attention.d.ts +4 -0
- package/dist/tools/map/attention/attention.d.ts.map +1 -0
- package/dist/tools/map/attention/attention.js +114 -0
- package/dist/tools/map/attention/attention.js.map +1 -0
- package/dist/tools/map/attention/constants.d.ts +2 -0
- package/dist/tools/map/attention/constants.d.ts.map +1 -0
- package/dist/tools/map/attention/constants.js +21 -0
- package/dist/tools/map/attention/constants.js.map +1 -0
- package/dist/tools/map/attention/types.d.ts +7 -0
- package/dist/tools/map/attention/types.d.ts.map +1 -0
- package/dist/tools/map/attention/types.js +16 -0
- package/dist/tools/map/attention/types.js.map +1 -0
- package/dist/tools/map/get-cell/constants.d.ts +2 -0
- package/dist/tools/map/get-cell/constants.d.ts.map +1 -0
- package/dist/tools/map/get-cell/constants.js +9 -0
- package/dist/tools/map/get-cell/constants.js.map +1 -0
- package/dist/tools/map/get-cell/get-cell.d.ts +4 -0
- package/dist/tools/map/get-cell/get-cell.d.ts.map +1 -0
- package/dist/tools/map/get-cell/get-cell.js +33 -0
- package/dist/tools/map/get-cell/get-cell.js.map +1 -0
- package/dist/tools/map/get-cell/types.d.ts +4 -0
- package/dist/tools/map/get-cell/types.d.ts.map +1 -0
- package/dist/tools/map/get-cell/types.js +5 -0
- package/dist/tools/map/get-cell/types.js.map +1 -0
- package/dist/tools/map/get-changes/constants.d.ts +2 -0
- package/dist/tools/map/get-changes/constants.d.ts.map +1 -0
- package/dist/tools/map/get-changes/constants.js +9 -0
- package/dist/tools/map/get-changes/constants.js.map +1 -0
- package/dist/tools/map/get-changes/get-changes.d.ts +4 -0
- package/dist/tools/map/get-changes/get-changes.d.ts.map +1 -0
- package/dist/tools/map/get-changes/get-changes.js +26 -0
- package/dist/tools/map/get-changes/get-changes.js.map +1 -0
- package/dist/tools/map/get-changes/types.d.ts +5 -0
- package/dist/tools/map/get-changes/types.d.ts.map +1 -0
- package/dist/tools/map/get-changes/types.js +11 -0
- package/dist/tools/map/get-changes/types.js.map +1 -0
- package/dist/tools/map/get-map/constants.d.ts +2 -0
- package/dist/tools/map/get-map/constants.d.ts.map +1 -0
- package/dist/tools/map/get-map/constants.js +11 -0
- package/dist/tools/map/get-map/constants.js.map +1 -0
- package/dist/tools/map/get-map/get-map.d.ts +4 -0
- package/dist/tools/map/get-map/get-map.d.ts.map +1 -0
- package/dist/tools/map/get-map/get-map.js +34 -0
- package/dist/tools/map/get-map/get-map.js.map +1 -0
- package/dist/tools/map/get-map/get-map.utils.d.ts +5 -0
- package/dist/tools/map/get-map/get-map.utils.d.ts.map +1 -0
- package/dist/tools/map/get-map/get-map.utils.js +25 -0
- package/dist/tools/map/get-map/get-map.utils.js.map +1 -0
- package/dist/tools/map/get-map/types.d.ts +15 -0
- package/dist/tools/map/get-map/types.d.ts.map +1 -0
- package/dist/tools/map/get-map/types.js +26 -0
- package/dist/tools/map/get-map/types.js.map +1 -0
- package/dist/tools/map/label.utils.d.ts +23 -0
- package/dist/tools/map/label.utils.d.ts.map +1 -0
- package/dist/tools/map/label.utils.js +34 -0
- package/dist/tools/map/label.utils.js.map +1 -0
- package/dist/tools/map/wallet.utils.d.ts +3 -0
- package/dist/tools/map/wallet.utils.d.ts.map +1 -0
- package/dist/tools/map/wallet.utils.js +16 -0
- package/dist/tools/map/wallet.utils.js.map +1 -0
- package/dist/tools/mining/claim/claim-mining.d.ts +4 -0
- package/dist/tools/mining/claim/claim-mining.d.ts.map +1 -0
- package/dist/tools/mining/claim/claim-mining.js +16 -0
- package/dist/tools/mining/claim/claim-mining.js.map +1 -0
- package/dist/tools/mining/claim/constants.d.ts +2 -0
- package/dist/tools/mining/claim/constants.d.ts.map +1 -0
- package/dist/tools/mining/claim/constants.js +10 -0
- package/dist/tools/mining/claim/constants.js.map +1 -0
- package/dist/tools/mining/format.utils.d.ts +6 -0
- package/dist/tools/mining/format.utils.d.ts.map +1 -0
- package/dist/tools/mining/format.utils.js +45 -0
- package/dist/tools/mining/format.utils.js.map +1 -0
- package/dist/tools/mining/get-status/constants.d.ts +2 -0
- package/dist/tools/mining/get-status/constants.d.ts.map +1 -0
- package/dist/tools/mining/get-status/constants.js +14 -0
- package/dist/tools/mining/get-status/constants.js.map +1 -0
- package/dist/tools/mining/get-status/get-mining-status.d.ts +4 -0
- package/dist/tools/mining/get-status/get-mining-status.d.ts.map +1 -0
- package/dist/tools/mining/get-status/get-mining-status.js +16 -0
- package/dist/tools/mining/get-status/get-mining-status.js.map +1 -0
- package/dist/tools/mining/start/constants.d.ts +2 -0
- package/dist/tools/mining/start/constants.d.ts.map +1 -0
- package/dist/tools/mining/start/constants.js +18 -0
- package/dist/tools/mining/start/constants.js.map +1 -0
- package/dist/tools/mining/start/start-mining.d.ts +4 -0
- package/dist/tools/mining/start/start-mining.d.ts.map +1 -0
- package/dist/tools/mining/start/start-mining.js +20 -0
- package/dist/tools/mining/start/start-mining.js.map +1 -0
- package/dist/tools/mining/types.d.ts +13 -0
- package/dist/tools/mining/types.d.ts.map +1 -0
- package/dist/tools/mining/types.js +31 -0
- package/dist/tools/mining/types.js.map +1 -0
- package/dist/tools/mint/constants.d.ts +3 -0
- package/dist/tools/mint/constants.d.ts.map +1 -0
- package/dist/tools/mint/constants.js +15 -0
- package/dist/tools/mint/constants.js.map +1 -0
- package/dist/tools/mint/format.utils.d.ts +4 -0
- package/dist/tools/mint/format.utils.d.ts.map +1 -0
- package/dist/tools/mint/format.utils.js +9 -0
- package/dist/tools/mint/format.utils.js.map +1 -0
- package/dist/tools/mint/mint-cell.d.ts +4 -0
- package/dist/tools/mint/mint-cell.d.ts.map +1 -0
- package/dist/tools/mint/mint-cell.js +15 -0
- package/dist/tools/mint/mint-cell.js.map +1 -0
- package/dist/tools/mint/quote/quote-mint.d.ts +4 -0
- package/dist/tools/mint/quote/quote-mint.d.ts.map +1 -0
- package/dist/tools/mint/quote/quote-mint.js +15 -0
- package/dist/tools/mint/quote/quote-mint.js.map +1 -0
- package/dist/tools/mint/types.d.ts +8 -0
- package/dist/tools/mint/types.d.ts.map +1 -0
- package/dist/tools/mint/types.js +10 -0
- package/dist/tools/mint/types.js.map +1 -0
- package/dist/tools/reveal/constants.d.ts +3 -0
- package/dist/tools/reveal/constants.d.ts.map +1 -0
- package/dist/tools/reveal/constants.js +18 -0
- package/dist/tools/reveal/constants.js.map +1 -0
- package/dist/tools/reveal/fulfill-reveal.d.ts +4 -0
- package/dist/tools/reveal/fulfill-reveal.d.ts.map +1 -0
- package/dist/tools/reveal/fulfill-reveal.js +50 -0
- package/dist/tools/reveal/fulfill-reveal.js.map +1 -0
- package/dist/tools/reveal/reveal.d.ts +4 -0
- package/dist/tools/reveal/reveal.d.ts.map +1 -0
- package/dist/tools/reveal/reveal.js +59 -0
- package/dist/tools/reveal/reveal.js.map +1 -0
- package/dist/tools/reveal/types.d.ts +10 -0
- package/dist/tools/reveal/types.d.ts.map +1 -0
- package/dist/tools/reveal/types.js +24 -0
- package/dist/tools/reveal/types.js.map +1 -0
- package/dist/tools/swap/constants.d.ts +3 -0
- package/dist/tools/swap/constants.d.ts.map +1 -0
- package/dist/tools/swap/constants.js +15 -0
- package/dist/tools/swap/constants.js.map +1 -0
- package/dist/tools/swap/format.utils.d.ts +4 -0
- package/dist/tools/swap/format.utils.d.ts.map +1 -0
- package/dist/tools/swap/format.utils.js +17 -0
- package/dist/tools/swap/format.utils.js.map +1 -0
- package/dist/tools/swap/quote/quote-swap.d.ts +4 -0
- package/dist/tools/swap/quote/quote-swap.d.ts.map +1 -0
- package/dist/tools/swap/quote/quote-swap.js +19 -0
- package/dist/tools/swap/quote/quote-swap.js.map +1 -0
- package/dist/tools/swap/swap.d.ts +4 -0
- package/dist/tools/swap/swap.d.ts.map +1 -0
- package/dist/tools/swap/swap.js +19 -0
- package/dist/tools/swap/swap.js.map +1 -0
- package/dist/tools/swap/types.d.ts +13 -0
- package/dist/tools/swap/types.d.ts.map +1 -0
- package/dist/tools/swap/types.js +19 -0
- package/dist/tools/swap/types.js.map +1 -0
- package/dist/tools/syndicate/create/constants.d.ts +2 -0
- package/dist/tools/syndicate/create/constants.d.ts.map +1 -0
- package/dist/tools/syndicate/create/constants.js +11 -0
- package/dist/tools/syndicate/create/constants.js.map +1 -0
- package/dist/tools/syndicate/create/create-syndicate.d.ts +4 -0
- package/dist/tools/syndicate/create/create-syndicate.d.ts.map +1 -0
- package/dist/tools/syndicate/create/create-syndicate.js +15 -0
- package/dist/tools/syndicate/create/create-syndicate.js.map +1 -0
- package/dist/tools/syndicate/format.utils.d.ts +10 -0
- package/dist/tools/syndicate/format.utils.d.ts.map +1 -0
- package/dist/tools/syndicate/format.utils.js +64 -0
- package/dist/tools/syndicate/format.utils.js.map +1 -0
- package/dist/tools/syndicate/get/constants.d.ts +2 -0
- package/dist/tools/syndicate/get/constants.d.ts.map +1 -0
- package/dist/tools/syndicate/get/constants.js +7 -0
- package/dist/tools/syndicate/get/constants.js.map +1 -0
- package/dist/tools/syndicate/get/get-syndicate.d.ts +4 -0
- package/dist/tools/syndicate/get/get-syndicate.d.ts.map +1 -0
- package/dist/tools/syndicate/get/get-syndicate.js +15 -0
- package/dist/tools/syndicate/get/get-syndicate.js.map +1 -0
- package/dist/tools/syndicate/join/constants.d.ts +2 -0
- package/dist/tools/syndicate/join/constants.d.ts.map +1 -0
- package/dist/tools/syndicate/join/constants.js +10 -0
- package/dist/tools/syndicate/join/constants.js.map +1 -0
- package/dist/tools/syndicate/join/join-syndicate.d.ts +4 -0
- package/dist/tools/syndicate/join/join-syndicate.d.ts.map +1 -0
- package/dist/tools/syndicate/join/join-syndicate.js +15 -0
- package/dist/tools/syndicate/join/join-syndicate.js.map +1 -0
- package/dist/tools/syndicate/leave/constants.d.ts +2 -0
- package/dist/tools/syndicate/leave/constants.d.ts.map +1 -0
- package/dist/tools/syndicate/leave/constants.js +7 -0
- package/dist/tools/syndicate/leave/constants.js.map +1 -0
- package/dist/tools/syndicate/leave/leave-syndicate.d.ts +4 -0
- package/dist/tools/syndicate/leave/leave-syndicate.d.ts.map +1 -0
- package/dist/tools/syndicate/leave/leave-syndicate.js +15 -0
- package/dist/tools/syndicate/leave/leave-syndicate.js.map +1 -0
- package/dist/tools/syndicate/list/constants.d.ts +2 -0
- package/dist/tools/syndicate/list/constants.d.ts.map +1 -0
- package/dist/tools/syndicate/list/constants.js +7 -0
- package/dist/tools/syndicate/list/constants.js.map +1 -0
- package/dist/tools/syndicate/list/list-syndicates.d.ts +4 -0
- package/dist/tools/syndicate/list/list-syndicates.d.ts.map +1 -0
- package/dist/tools/syndicate/list/list-syndicates.js +15 -0
- package/dist/tools/syndicate/list/list-syndicates.js.map +1 -0
- package/dist/tools/syndicate/membership/constants.d.ts +2 -0
- package/dist/tools/syndicate/membership/constants.d.ts.map +1 -0
- package/dist/tools/syndicate/membership/constants.js +7 -0
- package/dist/tools/syndicate/membership/constants.js.map +1 -0
- package/dist/tools/syndicate/membership/get-membership.d.ts +4 -0
- package/dist/tools/syndicate/membership/get-membership.d.ts.map +1 -0
- package/dist/tools/syndicate/membership/get-membership.js +15 -0
- package/dist/tools/syndicate/membership/get-membership.js.map +1 -0
- package/dist/tools/syndicate/set-params/constants.d.ts +2 -0
- package/dist/tools/syndicate/set-params/constants.d.ts.map +1 -0
- package/dist/tools/syndicate/set-params/constants.js +10 -0
- package/dist/tools/syndicate/set-params/constants.js.map +1 -0
- package/dist/tools/syndicate/set-params/set-syndicate-params.d.ts +4 -0
- package/dist/tools/syndicate/set-params/set-syndicate-params.d.ts.map +1 -0
- package/dist/tools/syndicate/set-params/set-syndicate-params.js +15 -0
- package/dist/tools/syndicate/set-params/set-syndicate-params.js.map +1 -0
- package/dist/tools/syndicate/transfer-manager/constants.d.ts +2 -0
- package/dist/tools/syndicate/transfer-manager/constants.d.ts.map +1 -0
- package/dist/tools/syndicate/transfer-manager/constants.js +9 -0
- package/dist/tools/syndicate/transfer-manager/constants.js.map +1 -0
- package/dist/tools/syndicate/transfer-manager/transfer-syndicate-manager.d.ts +4 -0
- package/dist/tools/syndicate/transfer-manager/transfer-syndicate-manager.d.ts.map +1 -0
- package/dist/tools/syndicate/transfer-manager/transfer-syndicate-manager.js +15 -0
- package/dist/tools/syndicate/transfer-manager/transfer-syndicate-manager.js.map +1 -0
- package/dist/tools/syndicate/types.d.ts +69 -0
- package/dist/tools/syndicate/types.d.ts.map +1 -0
- package/dist/tools/syndicate/types.js +87 -0
- package/dist/tools/syndicate/types.js.map +1 -0
- package/dist/tools/trade/buy-lot/buy-lot.d.ts +4 -0
- package/dist/tools/trade/buy-lot/buy-lot.d.ts.map +1 -0
- package/dist/tools/trade/buy-lot/buy-lot.js +20 -0
- package/dist/tools/trade/buy-lot/buy-lot.js.map +1 -0
- package/dist/tools/trade/buy-lot/constants.d.ts +2 -0
- package/dist/tools/trade/buy-lot/constants.d.ts.map +1 -0
- package/dist/tools/trade/buy-lot/constants.js +14 -0
- package/dist/tools/trade/buy-lot/constants.js.map +1 -0
- package/dist/tools/trade/cancel-lot/cancel-lot.d.ts +4 -0
- package/dist/tools/trade/cancel-lot/cancel-lot.d.ts.map +1 -0
- package/dist/tools/trade/cancel-lot/cancel-lot.js +19 -0
- package/dist/tools/trade/cancel-lot/cancel-lot.js.map +1 -0
- package/dist/tools/trade/cancel-lot/constants.d.ts +2 -0
- package/dist/tools/trade/cancel-lot/constants.d.ts.map +1 -0
- package/dist/tools/trade/cancel-lot/constants.js +8 -0
- package/dist/tools/trade/cancel-lot/constants.js.map +1 -0
- package/dist/tools/trade/create-lot/constants.d.ts +2 -0
- package/dist/tools/trade/create-lot/constants.d.ts.map +1 -0
- package/dist/tools/trade/create-lot/constants.js +13 -0
- package/dist/tools/trade/create-lot/constants.js.map +1 -0
- package/dist/tools/trade/create-lot/create-lot.d.ts +4 -0
- package/dist/tools/trade/create-lot/create-lot.d.ts.map +1 -0
- package/dist/tools/trade/create-lot/create-lot.js +22 -0
- package/dist/tools/trade/create-lot/create-lot.js.map +1 -0
- package/dist/tools/trade/format.utils.d.ts +17 -0
- package/dist/tools/trade/format.utils.d.ts.map +1 -0
- package/dist/tools/trade/format.utils.js +99 -0
- package/dist/tools/trade/format.utils.js.map +1 -0
- package/dist/tools/trade/get-lot/constants.d.ts +2 -0
- package/dist/tools/trade/get-lot/constants.d.ts.map +1 -0
- package/dist/tools/trade/get-lot/constants.js +5 -0
- package/dist/tools/trade/get-lot/constants.js.map +1 -0
- package/dist/tools/trade/get-lot/get-lot.d.ts +4 -0
- package/dist/tools/trade/get-lot/get-lot.d.ts.map +1 -0
- package/dist/tools/trade/get-lot/get-lot.js +16 -0
- package/dist/tools/trade/get-lot/get-lot.js.map +1 -0
- package/dist/tools/trade/list-lots/constants.d.ts +2 -0
- package/dist/tools/trade/list-lots/constants.d.ts.map +1 -0
- package/dist/tools/trade/list-lots/constants.js +7 -0
- package/dist/tools/trade/list-lots/constants.js.map +1 -0
- package/dist/tools/trade/list-lots/list-lots.d.ts +4 -0
- package/dist/tools/trade/list-lots/list-lots.d.ts.map +1 -0
- package/dist/tools/trade/list-lots/list-lots.js +16 -0
- package/dist/tools/trade/list-lots/list-lots.js.map +1 -0
- package/dist/tools/trade/list-mine/constants.d.ts +2 -0
- package/dist/tools/trade/list-mine/constants.d.ts.map +1 -0
- package/dist/tools/trade/list-mine/constants.js +5 -0
- package/dist/tools/trade/list-mine/constants.js.map +1 -0
- package/dist/tools/trade/list-mine/list-my-lots.d.ts +4 -0
- package/dist/tools/trade/list-mine/list-my-lots.d.ts.map +1 -0
- package/dist/tools/trade/list-mine/list-my-lots.js +17 -0
- package/dist/tools/trade/list-mine/list-my-lots.js.map +1 -0
- package/dist/tools/trade/markets/constants.d.ts +2 -0
- package/dist/tools/trade/markets/constants.d.ts.map +1 -0
- package/dist/tools/trade/markets/constants.js +10 -0
- package/dist/tools/trade/markets/constants.js.map +1 -0
- package/dist/tools/trade/markets/get-markets.d.ts +4 -0
- package/dist/tools/trade/markets/get-markets.d.ts.map +1 -0
- package/dist/tools/trade/markets/get-markets.js +22 -0
- package/dist/tools/trade/markets/get-markets.js.map +1 -0
- package/dist/tools/trade/quote-buy/constants.d.ts +2 -0
- package/dist/tools/trade/quote-buy/constants.d.ts.map +1 -0
- package/dist/tools/trade/quote-buy/constants.js +14 -0
- package/dist/tools/trade/quote-buy/constants.js.map +1 -0
- package/dist/tools/trade/quote-buy/quote-buy.d.ts +4 -0
- package/dist/tools/trade/quote-buy/quote-buy.d.ts.map +1 -0
- package/dist/tools/trade/quote-buy/quote-buy.js +20 -0
- package/dist/tools/trade/quote-buy/quote-buy.js.map +1 -0
- package/dist/tools/trade/set-sale-fee/constants.d.ts +2 -0
- package/dist/tools/trade/set-sale-fee/constants.d.ts.map +1 -0
- package/dist/tools/trade/set-sale-fee/constants.js +10 -0
- package/dist/tools/trade/set-sale-fee/constants.js.map +1 -0
- package/dist/tools/trade/set-sale-fee/set-sale-fee.d.ts +4 -0
- package/dist/tools/trade/set-sale-fee/set-sale-fee.d.ts.map +1 -0
- package/dist/tools/trade/set-sale-fee/set-sale-fee.js +20 -0
- package/dist/tools/trade/set-sale-fee/set-sale-fee.js.map +1 -0
- package/dist/tools/trade/types.d.ts +57 -0
- package/dist/tools/trade/types.d.ts.map +1 -0
- package/dist/tools/trade/types.js +123 -0
- package/dist/tools/trade/types.js.map +1 -0
- package/dist/tools/transport/constants.d.ts +4 -0
- package/dist/tools/transport/constants.d.ts.map +1 -0
- package/dist/tools/transport/constants.js +47 -0
- package/dist/tools/transport/constants.js.map +1 -0
- package/dist/tools/transport/finalize/constants.d.ts +2 -0
- package/dist/tools/transport/finalize/constants.d.ts.map +1 -0
- package/dist/tools/transport/finalize/constants.js +6 -0
- package/dist/tools/transport/finalize/constants.js.map +1 -0
- package/dist/tools/transport/finalize/finalize-delivery.d.ts +4 -0
- package/dist/tools/transport/finalize/finalize-delivery.d.ts.map +1 -0
- package/dist/tools/transport/finalize/finalize-delivery.js +16 -0
- package/dist/tools/transport/finalize/finalize-delivery.js.map +1 -0
- package/dist/tools/transport/format.utils.d.ts +7 -0
- package/dist/tools/transport/format.utils.d.ts.map +1 -0
- package/dist/tools/transport/format.utils.js +28 -0
- package/dist/tools/transport/format.utils.js.map +1 -0
- package/dist/tools/transport/get-status/constants.d.ts +2 -0
- package/dist/tools/transport/get-status/constants.d.ts.map +1 -0
- package/dist/tools/transport/get-status/constants.js +5 -0
- package/dist/tools/transport/get-status/constants.js.map +1 -0
- package/dist/tools/transport/get-status/get-transport-status.d.ts +4 -0
- package/dist/tools/transport/get-status/get-transport-status.d.ts.map +1 -0
- package/dist/tools/transport/get-status/get-transport-status.js +16 -0
- package/dist/tools/transport/get-status/get-transport-status.js.map +1 -0
- package/dist/tools/transport/list-mine/constants.d.ts +2 -0
- package/dist/tools/transport/list-mine/constants.d.ts.map +1 -0
- package/dist/tools/transport/list-mine/constants.js +6 -0
- package/dist/tools/transport/list-mine/constants.js.map +1 -0
- package/dist/tools/transport/list-mine/list-my-transports.d.ts +4 -0
- package/dist/tools/transport/list-mine/list-my-transports.d.ts.map +1 -0
- package/dist/tools/transport/list-mine/list-my-transports.js +17 -0
- package/dist/tools/transport/list-mine/list-my-transports.js.map +1 -0
- package/dist/tools/transport/network/constants.d.ts +2 -0
- package/dist/tools/transport/network/constants.d.ts.map +1 -0
- package/dist/tools/transport/network/constants.js +2 -0
- package/dist/tools/transport/network/constants.js.map +1 -0
- package/dist/tools/transport/network/route-network.d.ts +4 -0
- package/dist/tools/transport/network/route-network.d.ts.map +1 -0
- package/dist/tools/transport/network/route-network.js +37 -0
- package/dist/tools/transport/network/route-network.js.map +1 -0
- package/dist/tools/transport/next-hops/constants.d.ts +2 -0
- package/dist/tools/transport/next-hops/constants.d.ts.map +1 -0
- package/dist/tools/transport/next-hops/constants.js +2 -0
- package/dist/tools/transport/next-hops/constants.js.map +1 -0
- package/dist/tools/transport/next-hops/next-hops.d.ts +4 -0
- package/dist/tools/transport/next-hops/next-hops.d.ts.map +1 -0
- package/dist/tools/transport/next-hops/next-hops.js +41 -0
- package/dist/tools/transport/next-hops/next-hops.js.map +1 -0
- package/dist/tools/transport/quote/constants.d.ts +2 -0
- package/dist/tools/transport/quote/constants.d.ts.map +1 -0
- package/dist/tools/transport/quote/constants.js +9 -0
- package/dist/tools/transport/quote/constants.js.map +1 -0
- package/dist/tools/transport/quote/quote-transport.d.ts +4 -0
- package/dist/tools/transport/quote/quote-transport.d.ts.map +1 -0
- package/dist/tools/transport/quote/quote-transport.js +19 -0
- package/dist/tools/transport/quote/quote-transport.js.map +1 -0
- package/dist/tools/transport/transport.d.ts +4 -0
- package/dist/tools/transport/transport.d.ts.map +1 -0
- package/dist/tools/transport/transport.js +20 -0
- package/dist/tools/transport/transport.js.map +1 -0
- package/dist/tools/transport/types.d.ts +27 -0
- package/dist/tools/transport/types.d.ts.map +1 -0
- package/dist/tools/transport/types.js +58 -0
- package/dist/tools/transport/types.js.map +1 -0
- package/dist/tools/types.d.ts +5 -0
- package/dist/tools/types.d.ts.map +1 -0
- package/dist/tools/types.js +2 -0
- package/dist/tools/types.js.map +1 -0
- package/dist/tools/withdraw/constants.d.ts +3 -0
- package/dist/tools/withdraw/constants.d.ts.map +1 -0
- package/dist/tools/withdraw/constants.js +11 -0
- package/dist/tools/withdraw/constants.js.map +1 -0
- package/dist/tools/withdraw/types.d.ts +6 -0
- package/dist/tools/withdraw/types.d.ts.map +1 -0
- package/dist/tools/withdraw/types.js +16 -0
- package/dist/tools/withdraw/types.js.map +1 -0
- package/dist/tools/withdraw/withdraw.d.ts +4 -0
- package/dist/tools/withdraw/withdraw.d.ts.map +1 -0
- package/dist/tools/withdraw/withdraw.js +21 -0
- package/dist/tools/withdraw/withdraw.js.map +1 -0
- package/dist/types.d.ts +54 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +6 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/async.utils.d.ts +2 -0
- package/dist/utils/async.utils.d.ts.map +1 -0
- package/dist/utils/async.utils.js +4 -0
- package/dist/utils/async.utils.js.map +1 -0
- package/dist/utils/error.utils.d.ts +2 -0
- package/dist/utils/error.utils.d.ts.map +1 -0
- package/dist/utils/error.utils.js +4 -0
- package/dist/utils/error.utils.js.map +1 -0
- package/dist/utils/format.utils.d.ts +20 -0
- package/dist/utils/format.utils.d.ts.map +1 -0
- package/dist/utils/format.utils.js +50 -0
- package/dist/utils/format.utils.js.map +1 -0
- package/dist/utils/query.utils.d.ts +2 -0
- package/dist/utils/query.utils.d.ts.map +1 -0
- package/dist/utils/query.utils.js +10 -0
- package/dist/utils/query.utils.js.map +1 -0
- package/dist/utils/retry.constants.d.ts +10 -0
- package/dist/utils/retry.constants.d.ts.map +1 -0
- package/dist/utils/retry.constants.js +32 -0
- package/dist/utils/retry.constants.js.map +1 -0
- package/dist/utils/retry.utils.d.ts +13 -0
- package/dist/utils/retry.utils.d.ts.map +1 -0
- package/dist/utils/retry.utils.js +55 -0
- package/dist/utils/retry.utils.js.map +1 -0
- package/dist/version/backend-version.d.ts +20 -0
- package/dist/version/backend-version.d.ts.map +1 -0
- package/dist/version/backend-version.js +92 -0
- package/dist/version/backend-version.js.map +1 -0
- package/dist/version/constants.d.ts +12 -0
- package/dist/version/constants.d.ts.map +1 -0
- package/dist/version/constants.js +26 -0
- package/dist/version/constants.js.map +1 -0
- package/dist/version/package-version.d.ts +17 -0
- package/dist/version/package-version.d.ts.map +1 -0
- package/dist/version/package-version.js +87 -0
- package/dist/version/package-version.js.map +1 -0
- package/dist/version/package-version.utils.d.ts +8 -0
- package/dist/version/package-version.utils.d.ts.map +1 -0
- package/dist/version/package-version.utils.js +60 -0
- package/dist/version/package-version.utils.js.map +1 -0
- package/dist/version/reset-coordinator.d.ts +11 -0
- package/dist/version/reset-coordinator.d.ts.map +1 -0
- package/dist/version/reset-coordinator.js +26 -0
- package/dist/version/reset-coordinator.js.map +1 -0
- package/dist/version/tool-guard.d.ts +7 -0
- package/dist/version/tool-guard.d.ts.map +1 -0
- package/dist/version/tool-guard.js +49 -0
- package/dist/version/tool-guard.js.map +1 -0
- package/dist/version/types.d.ts +87 -0
- package/dist/version/types.d.ts.map +1 -0
- package/dist/version/types.js +9 -0
- package/dist/version/types.js.map +1 -0
- package/dist/wallet/agw.manager.d.ts +20 -0
- package/dist/wallet/agw.manager.d.ts.map +1 -0
- package/dist/wallet/agw.manager.js +90 -0
- package/dist/wallet/agw.manager.js.map +1 -0
- package/dist/wallet/agw.provider.d.ts +14 -0
- package/dist/wallet/agw.provider.d.ts.map +1 -0
- package/dist/wallet/agw.provider.js +48 -0
- package/dist/wallet/agw.provider.js.map +1 -0
- package/dist/wallet/chain.utils.d.ts +3 -0
- package/dist/wallet/chain.utils.d.ts.map +1 -0
- package/dist/wallet/chain.utils.js +18 -0
- package/dist/wallet/chain.utils.js.map +1 -0
- package/dist/wallet/constants.d.ts +3 -0
- package/dist/wallet/constants.d.ts.map +1 -0
- package/dist/wallet/constants.js +3 -0
- package/dist/wallet/constants.js.map +1 -0
- package/dist/wallet/contract-client.d.ts +13 -0
- package/dist/wallet/contract-client.d.ts.map +1 -0
- package/dist/wallet/contract-client.js +57 -0
- package/dist/wallet/contract-client.js.map +1 -0
- package/dist/wallet/evm.manager.d.ts +21 -0
- package/dist/wallet/evm.manager.d.ts.map +1 -0
- package/dist/wallet/evm.manager.js +84 -0
- package/dist/wallet/evm.manager.js.map +1 -0
- package/dist/wallet/evm.provider.d.ts +10 -0
- package/dist/wallet/evm.provider.d.ts.map +1 -0
- package/dist/wallet/evm.provider.js +23 -0
- package/dist/wallet/evm.provider.js.map +1 -0
- package/dist/wallet/gas.utils.d.ts +2 -0
- package/dist/wallet/gas.utils.d.ts.map +1 -0
- package/dist/wallet/gas.utils.js +5 -0
- package/dist/wallet/gas.utils.js.map +1 -0
- package/dist/wallet/index.d.ts +4 -0
- package/dist/wallet/index.d.ts.map +1 -0
- package/dist/wallet/index.js +11 -0
- package/dist/wallet/index.js.map +1 -0
- package/dist/wallet/revert.utils.d.ts +6 -0
- package/dist/wallet/revert.utils.d.ts.map +1 -0
- package/dist/wallet/revert.utils.js +38 -0
- package/dist/wallet/revert.utils.js.map +1 -0
- package/dist/wallet/types.d.ts +86 -0
- package/dist/wallet/types.d.ts.map +1 -0
- package/dist/wallet/types.js +6 -0
- package/dist/wallet/types.js.map +1 -0
- package/package.json +73 -0
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { type BuyLotInput, type BuyLotResult, type CancelLotInput, type CancelLotResult, type CreateLotInput, type CreateLotResult, type ListLotsQuery, type MarketsQuery, type QuoteBuyInput, type SetSaleFeeInput, type SetSaleFeeResult, type TradeQuote, type TradeServiceOptions } from './types.js';
|
|
2
|
+
import { type LotState, type LotView, type MarketResourceSummary } from '../api/types.js';
|
|
3
|
+
/**
|
|
4
|
+
* The lot marketplace. The three writes (create / buy / cancel) go straight to the Trade contract;
|
|
5
|
+
* each routes goods through Transport, so the client quotes the transit fee on-chain
|
|
6
|
+
* (`Transport.quoteRoute`), approves the $CPU it will spend, sends the call, and reads the lifecycle
|
|
7
|
+
* event plus the `DeliveryScheduled` from the receipt. A write lands the lot in `DELIVERING` / ships
|
|
8
|
+
* the goods; the escrow opens (or the goods arrive) only after a `finalize_delivery` on the returned
|
|
9
|
+
* `deliveryId`. Discovery reads stay on the game API, which indexes the same events. Lot pricing is
|
|
10
|
+
* read from that projection — `pricePerUnit` is immutable on-chain, so it is authoritative.
|
|
11
|
+
*/
|
|
12
|
+
export declare class TradeService {
|
|
13
|
+
private readonly api;
|
|
14
|
+
private readonly wallet;
|
|
15
|
+
private readonly appConfig;
|
|
16
|
+
private readonly allowance;
|
|
17
|
+
private readonly contracts;
|
|
18
|
+
private readonly tradeClient;
|
|
19
|
+
private readonly transportClient;
|
|
20
|
+
private readonly logger;
|
|
21
|
+
constructor(options: TradeServiceOptions);
|
|
22
|
+
createLot(input: CreateLotInput): Promise<CreateLotResult>;
|
|
23
|
+
setSaleFee(input: SetSaleFeeInput): Promise<SetSaleFeeResult>;
|
|
24
|
+
buyLot(input: BuyLotInput): Promise<BuyLotResult>;
|
|
25
|
+
cancelLot(input: CancelLotInput): Promise<CancelLotResult>;
|
|
26
|
+
quoteBuy(input: QuoteBuyInput): Promise<TradeQuote>;
|
|
27
|
+
private toTradeQuote;
|
|
28
|
+
/** Compact per-`(hub, resource)` scout aggregate — the recommended starting overview. */
|
|
29
|
+
getMarkets(query: MarketsQuery): Promise<Array<MarketResourceSummary>>;
|
|
30
|
+
/** Paginated lot browse with filter / sort / zone. */
|
|
31
|
+
listLots(query: ListLotsQuery): Promise<Array<LotView>>;
|
|
32
|
+
/** Public single-lot read. */
|
|
33
|
+
getLot(lotId: string): Promise<LotView>;
|
|
34
|
+
/** The caller's lots across all lifecycle states (optionally filtered). */
|
|
35
|
+
listMyLots(state: LotState | null): Promise<Array<LotView>>;
|
|
36
|
+
private quoteTransit;
|
|
37
|
+
private approveTransit;
|
|
38
|
+
private firstFrom;
|
|
39
|
+
private resolveTrade;
|
|
40
|
+
private resolveTransport;
|
|
41
|
+
private resolveCpuToken;
|
|
42
|
+
private ready;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=trade.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trade.service.d.ts","sourceRoot":"","sources":["../../src/services/trade.service.ts"],"names":[],"mappings":"AAYA,OAAO,EAEH,KAAK,WAAW,EAChB,KAAK,YAAY,EAEjB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,eAAe,EAKpB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,aAAa,EAGlB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,mBAAmB,EAC3B,MAAM,YAAY,CAAC;AAGpB,OAAO,EAOH,KAAK,QAAQ,EACb,KAAK,OAAO,EACZ,KAAK,qBAAqB,EAC7B,MAAM,iBAAiB,CAAC;AAOzB;;;;;;;;GAQG;AACH,qBAAa,YAAY;IACrB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAY;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAa;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAC5C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAC3C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAmB;IACnD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;gBAErB,OAAO,EAAE,mBAAmB;IAalC,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IAkF1D,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAqC7D,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;IA2EjD,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IAgD1D,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC;IA0BzD,OAAO,CAAC,YAAY;IA4BpB,yFAAyF;IACnF,UAAU,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAe5E,sDAAsD;IAChD,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAwB7D,8BAA8B;IACxB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS7C,2EAA2E;IACrE,UAAU,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAYnD,YAAY;YAMZ,cAAc;IAO5B,OAAO,CAAC,SAAS;IAQjB,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,eAAe;YAQT,KAAK;CAWtB"}
|
|
@@ -0,0 +1,387 @@
|
|
|
1
|
+
import { isAddress, parseEther, parseEventLogs } from 'viem';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { decodeDeliveryScheduled, settleTransitFees } from './delivery.helpers.js';
|
|
4
|
+
import { enrichBuyQuoteRevert, enrichFrozenBuyError, enrichSaleFeeToleranceError, withDecimalMinPrice, withDecimalPrice, } from './trade.helpers.js';
|
|
5
|
+
import { TRANSPORT_MAX_FEE_BUFFER_PERCENT } from './transport.constants.js';
|
|
6
|
+
import { describeApiError } from '../api/response.utils.js';
|
|
7
|
+
import { apiLotViewSchema, apiMarketResourceSummarySchema, HttpStatus, LotAvailability, } from '../api/types.js';
|
|
8
|
+
import { TRADE_ABI } from '../contracts/trade.abi.js';
|
|
9
|
+
import { bpToPercent, cpuFromWei, percentToBp } from '../utils/format.utils.js';
|
|
10
|
+
import { buildQuery } from '../utils/query.utils.js';
|
|
11
|
+
/**
|
|
12
|
+
* The lot marketplace. The three writes (create / buy / cancel) go straight to the Trade contract;
|
|
13
|
+
* each routes goods through Transport, so the client quotes the transit fee on-chain
|
|
14
|
+
* (`Transport.quoteRoute`), approves the $CPU it will spend, sends the call, and reads the lifecycle
|
|
15
|
+
* event plus the `DeliveryScheduled` from the receipt. A write lands the lot in `DELIVERING` / ships
|
|
16
|
+
* the goods; the escrow opens (or the goods arrive) only after a `finalize_delivery` on the returned
|
|
17
|
+
* `deliveryId`. Discovery reads stay on the game API, which indexes the same events. Lot pricing is
|
|
18
|
+
* read from that projection — `pricePerUnit` is immutable on-chain, so it is authoritative.
|
|
19
|
+
*/
|
|
20
|
+
export class TradeService {
|
|
21
|
+
api;
|
|
22
|
+
wallet;
|
|
23
|
+
appConfig;
|
|
24
|
+
allowance;
|
|
25
|
+
contracts;
|
|
26
|
+
tradeClient;
|
|
27
|
+
transportClient;
|
|
28
|
+
logger;
|
|
29
|
+
constructor(options) {
|
|
30
|
+
this.api = options.api;
|
|
31
|
+
this.wallet = options.wallet;
|
|
32
|
+
this.appConfig = options.appConfig;
|
|
33
|
+
this.allowance = options.allowance;
|
|
34
|
+
this.contracts = options.contracts;
|
|
35
|
+
this.tradeClient = options.tradeClient;
|
|
36
|
+
this.transportClient = options.transportClient;
|
|
37
|
+
this.logger = options.logger;
|
|
38
|
+
}
|
|
39
|
+
// ---- Writes ----
|
|
40
|
+
async createLot(input) {
|
|
41
|
+
const { config, wallet } = await this.ready();
|
|
42
|
+
const trade = this.resolveTrade(config);
|
|
43
|
+
const transport = this.resolveTransport(config);
|
|
44
|
+
const tokenIds = input.chain.map((tokenId) => BigInt(tokenId));
|
|
45
|
+
const hub = tokenIds[tokenIds.length - 1];
|
|
46
|
+
const value = BigInt(input.value);
|
|
47
|
+
const price = parseEther(input.pricePerUnit);
|
|
48
|
+
const maxSaleFeeBp = input.maxSaleFeePercent !== null
|
|
49
|
+
? percentToBp(input.maxSaleFeePercent)
|
|
50
|
+
: await this.tradeClient.getSaleFee({ trade, hub, res: input.resourceId });
|
|
51
|
+
this.logger.info('creating lot', {
|
|
52
|
+
resourceId: input.resourceId,
|
|
53
|
+
value: input.value,
|
|
54
|
+
pricePerUnit: input.pricePerUnit,
|
|
55
|
+
maxSaleFeeBp,
|
|
56
|
+
network: config.network,
|
|
57
|
+
});
|
|
58
|
+
const { feeWei, maxFee } = await this.quoteTransit({
|
|
59
|
+
transport,
|
|
60
|
+
from: wallet.getAddress(),
|
|
61
|
+
tokenIds,
|
|
62
|
+
res: input.resourceId,
|
|
63
|
+
amount: value,
|
|
64
|
+
});
|
|
65
|
+
const approveTxHash = await this.approveTransit(config, transport, maxFee);
|
|
66
|
+
let txHash;
|
|
67
|
+
try {
|
|
68
|
+
txHash = await this.tradeClient.createLot({
|
|
69
|
+
trade,
|
|
70
|
+
tokenIds,
|
|
71
|
+
res: input.resourceId,
|
|
72
|
+
value,
|
|
73
|
+
price,
|
|
74
|
+
maxSaleFeeBp,
|
|
75
|
+
maxFee,
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
throw enrichSaleFeeToleranceError(error);
|
|
80
|
+
}
|
|
81
|
+
const confirmed = await this.contracts.confirm(txHash, 'Create lot');
|
|
82
|
+
const created = this.firstFrom(parseEventLogs({ abi: TRADE_ABI, eventName: 'LotCreated', logs: confirmed.logs }), trade, 'LotCreated');
|
|
83
|
+
const scheduled = decodeDeliveryScheduled(confirmed.logs, transport);
|
|
84
|
+
const transit = settleTransitFees(confirmed.logs, transport, feeWei);
|
|
85
|
+
this.logger.info('lot created', {
|
|
86
|
+
lotId: created.args.lotId.toString(),
|
|
87
|
+
deliveryId: scheduled.deliveryId.toString(),
|
|
88
|
+
txHash: confirmed.txHash,
|
|
89
|
+
block: confirmed.blockNumber,
|
|
90
|
+
});
|
|
91
|
+
return {
|
|
92
|
+
lotId: created.args.lotId.toString(),
|
|
93
|
+
hubTokenId: created.args.hub.toString(),
|
|
94
|
+
resourceId: input.resourceId,
|
|
95
|
+
value: input.value,
|
|
96
|
+
pricePerUnit: input.pricePerUnit,
|
|
97
|
+
maxSaleFeePercent: bpToPercent(created.args.maxSaleFeeBp),
|
|
98
|
+
deliveryId: scheduled.deliveryId.toString(),
|
|
99
|
+
arrivalAt: Number(scheduled.arrivalAt),
|
|
100
|
+
fee: cpuFromWei(feeWei.toString()),
|
|
101
|
+
transitPaid: cpuFromWei(transit.transitPaid.toString()),
|
|
102
|
+
transitDiscount: cpuFromWei(transit.transitDiscount.toString()),
|
|
103
|
+
txHash: confirmed.txHash,
|
|
104
|
+
approveTxHash,
|
|
105
|
+
status: confirmed.status,
|
|
106
|
+
blockNumber: confirmed.blockNumber,
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
async setSaleFee(input) {
|
|
110
|
+
const { config } = await this.ready();
|
|
111
|
+
const trade = this.resolveTrade(config);
|
|
112
|
+
const feeBp = percentToBp(input.feePercent);
|
|
113
|
+
this.logger.info('setting sale fee', {
|
|
114
|
+
hubTokenId: input.hubTokenId,
|
|
115
|
+
resourceId: input.resourceId,
|
|
116
|
+
feeBp,
|
|
117
|
+
network: config.network,
|
|
118
|
+
});
|
|
119
|
+
const txHash = await this.tradeClient.setSaleFee({
|
|
120
|
+
trade,
|
|
121
|
+
hub: BigInt(input.hubTokenId),
|
|
122
|
+
res: input.resourceId,
|
|
123
|
+
feeBp,
|
|
124
|
+
});
|
|
125
|
+
const confirmed = await this.contracts.confirm(txHash, 'Set sale fee');
|
|
126
|
+
const changed = this.firstFrom(parseEventLogs({ abi: TRADE_ABI, eventName: 'SaleFeeChanged', logs: confirmed.logs }), trade, 'SaleFeeChanged');
|
|
127
|
+
return {
|
|
128
|
+
hubTokenId: changed.args.hubTokenId.toString(),
|
|
129
|
+
resourceId: Number(changed.args.resource),
|
|
130
|
+
feePercent: bpToPercent(changed.args.feeBp),
|
|
131
|
+
txHash: confirmed.txHash,
|
|
132
|
+
status: confirmed.status,
|
|
133
|
+
blockNumber: confirmed.blockNumber,
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
async buyLot(input) {
|
|
137
|
+
const { config, wallet } = await this.ready();
|
|
138
|
+
const trade = this.resolveTrade(config);
|
|
139
|
+
const transport = this.resolveTransport(config);
|
|
140
|
+
const cpuToken = this.resolveCpuToken(config);
|
|
141
|
+
const lot = await this.getLot(input.lotId);
|
|
142
|
+
const value = BigInt(input.value);
|
|
143
|
+
const saleWei = value * parseEther(lot.pricePerUnit);
|
|
144
|
+
const destTokenIds = input.chain.map((tokenId) => BigInt(tokenId));
|
|
145
|
+
this.logger.info('buying lot', { lotId: input.lotId, value: input.value, network: config.network });
|
|
146
|
+
const { feeWei, maxFee } = await this.quoteTransit({
|
|
147
|
+
transport,
|
|
148
|
+
from: wallet.getAddress(),
|
|
149
|
+
tokenIds: destTokenIds,
|
|
150
|
+
res: lot.resourceId,
|
|
151
|
+
amount: value,
|
|
152
|
+
});
|
|
153
|
+
// Two spenders: Trade pulls the sale ($CPU → seller + burn), Transport pulls the transit fee.
|
|
154
|
+
const approveSaleTxHash = await this.allowance.ensureAllowance(cpuToken, trade, saleWei);
|
|
155
|
+
const approveTransitTxHash = maxFee === 0n ? null : await this.allowance.ensureAllowance(cpuToken, transport, maxFee);
|
|
156
|
+
let txHash;
|
|
157
|
+
try {
|
|
158
|
+
txHash = await this.tradeClient.buy({ trade, lotId: BigInt(input.lotId), value, destTokenIds, maxFee });
|
|
159
|
+
}
|
|
160
|
+
catch (error) {
|
|
161
|
+
throw enrichFrozenBuyError(error);
|
|
162
|
+
}
|
|
163
|
+
const confirmed = await this.contracts.confirm(txHash, `Buy lot ${input.lotId}`);
|
|
164
|
+
const bought = this.firstFrom(parseEventLogs({ abi: TRADE_ABI, eventName: 'LotBought', logs: confirmed.logs }), trade, 'LotBought');
|
|
165
|
+
const scheduled = decodeDeliveryScheduled(confirmed.logs, transport);
|
|
166
|
+
const transit = settleTransitFees(confirmed.logs, transport, feeWei);
|
|
167
|
+
this.logger.info('lot bought', {
|
|
168
|
+
lotId: input.lotId,
|
|
169
|
+
deliveryId: scheduled.deliveryId.toString(),
|
|
170
|
+
txHash: confirmed.txHash,
|
|
171
|
+
block: confirmed.blockNumber,
|
|
172
|
+
});
|
|
173
|
+
return {
|
|
174
|
+
lotId: input.lotId,
|
|
175
|
+
resourceId: lot.resourceId,
|
|
176
|
+
value: input.value,
|
|
177
|
+
sale: cpuFromWei(bought.args.sale.toString()),
|
|
178
|
+
discount: cpuFromWei(bought.args.discount.toString()),
|
|
179
|
+
paid: cpuFromWei((bought.args.sale - bought.args.discount).toString()),
|
|
180
|
+
hubFee: cpuFromWei(bought.args.hubFee.toString()),
|
|
181
|
+
tax: cpuFromWei(bought.args.tax.toString()),
|
|
182
|
+
ownerNet: cpuFromWei(bought.args.ownerNet.toString()),
|
|
183
|
+
burn: cpuFromWei(bought.args.burn.toString()),
|
|
184
|
+
remaining: bought.args.remaining.toString(),
|
|
185
|
+
fee: cpuFromWei(feeWei.toString()),
|
|
186
|
+
transitPaid: cpuFromWei(transit.transitPaid.toString()),
|
|
187
|
+
transitDiscount: cpuFromWei(transit.transitDiscount.toString()),
|
|
188
|
+
deliveryId: scheduled.deliveryId.toString(),
|
|
189
|
+
arrivalAt: Number(scheduled.arrivalAt),
|
|
190
|
+
txHash: confirmed.txHash,
|
|
191
|
+
approveSaleTxHash,
|
|
192
|
+
approveTransitTxHash,
|
|
193
|
+
status: confirmed.status,
|
|
194
|
+
blockNumber: confirmed.blockNumber,
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
async cancelLot(input) {
|
|
198
|
+
const { config, wallet } = await this.ready();
|
|
199
|
+
const trade = this.resolveTrade(config);
|
|
200
|
+
const transport = this.resolveTransport(config);
|
|
201
|
+
const lot = await this.getLot(input.lotId);
|
|
202
|
+
const remaining = BigInt(lot.remaining);
|
|
203
|
+
const returnTokenIds = input.chain.map((tokenId) => BigInt(tokenId));
|
|
204
|
+
this.logger.info('cancelling lot', { lotId: input.lotId, network: config.network });
|
|
205
|
+
const { feeWei, maxFee } = await this.quoteTransit({
|
|
206
|
+
transport,
|
|
207
|
+
from: wallet.getAddress(),
|
|
208
|
+
tokenIds: returnTokenIds,
|
|
209
|
+
res: lot.resourceId,
|
|
210
|
+
amount: remaining,
|
|
211
|
+
});
|
|
212
|
+
const approveTxHash = await this.approveTransit(config, transport, maxFee);
|
|
213
|
+
const txHash = await this.tradeClient.cancel({ trade, lotId: BigInt(input.lotId), returnTokenIds, maxFee });
|
|
214
|
+
const confirmed = await this.contracts.confirm(txHash, `Cancel lot ${input.lotId}`);
|
|
215
|
+
const cancelled = this.firstFrom(parseEventLogs({ abi: TRADE_ABI, eventName: 'LotCancelled', logs: confirmed.logs }), trade, 'LotCancelled');
|
|
216
|
+
const scheduled = decodeDeliveryScheduled(confirmed.logs, transport);
|
|
217
|
+
const transit = settleTransitFees(confirmed.logs, transport, feeWei);
|
|
218
|
+
return {
|
|
219
|
+
lotId: input.lotId,
|
|
220
|
+
resourceId: lot.resourceId,
|
|
221
|
+
returned: cancelled.args.returned.toString(),
|
|
222
|
+
fee: cpuFromWei(feeWei.toString()),
|
|
223
|
+
transitPaid: cpuFromWei(transit.transitPaid.toString()),
|
|
224
|
+
transitDiscount: cpuFromWei(transit.transitDiscount.toString()),
|
|
225
|
+
deliveryId: scheduled.deliveryId.toString(),
|
|
226
|
+
arrivalAt: Number(scheduled.arrivalAt),
|
|
227
|
+
txHash: confirmed.txHash,
|
|
228
|
+
approveTxHash,
|
|
229
|
+
status: confirmed.status,
|
|
230
|
+
blockNumber: confirmed.blockNumber,
|
|
231
|
+
};
|
|
232
|
+
}
|
|
233
|
+
async quoteBuy(input) {
|
|
234
|
+
const { config, wallet } = await this.ready();
|
|
235
|
+
const trade = this.resolveTrade(config);
|
|
236
|
+
const lot = await this.getLot(input.lotId);
|
|
237
|
+
const lotId = BigInt(input.lotId);
|
|
238
|
+
const value = BigInt(input.value);
|
|
239
|
+
const buyer = wallet.getAddress();
|
|
240
|
+
try {
|
|
241
|
+
if (input.chain === null) {
|
|
242
|
+
const sale = await this.tradeClient.quoteSale({ trade, lotId, value, buyer });
|
|
243
|
+
return this.toTradeQuote(input, lot, sale, null);
|
|
244
|
+
}
|
|
245
|
+
const buy = await this.tradeClient.quoteBuy({
|
|
246
|
+
trade,
|
|
247
|
+
lotId,
|
|
248
|
+
value,
|
|
249
|
+
destTokenIds: input.chain.map((tokenId) => BigInt(tokenId)),
|
|
250
|
+
buyer,
|
|
251
|
+
});
|
|
252
|
+
return this.toTradeQuote(input, lot, buy.sale, buy);
|
|
253
|
+
}
|
|
254
|
+
catch (error) {
|
|
255
|
+
throw enrichBuyQuoteRevert(error);
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
toTradeQuote(input, lot, sale, buy) {
|
|
259
|
+
return {
|
|
260
|
+
lotId: input.lotId,
|
|
261
|
+
resourceId: lot.resourceId,
|
|
262
|
+
pricePerUnit: lot.pricePerUnit,
|
|
263
|
+
value: input.value,
|
|
264
|
+
remaining: lot.remaining,
|
|
265
|
+
routed: buy !== null,
|
|
266
|
+
sale: cpuFromWei(sale.sale.toString()),
|
|
267
|
+
saleFeePercent: bpToPercent(sale.feeBp),
|
|
268
|
+
discount: cpuFromWei(sale.discount.toString()),
|
|
269
|
+
salePaid: cpuFromWei(sale.buyerTotal.toString()),
|
|
270
|
+
tax: cpuFromWei(sale.tax.toString()),
|
|
271
|
+
ownerNet: cpuFromWei(sale.ownerNet.toString()),
|
|
272
|
+
transitFee: buy === null ? null : cpuFromWei(buy.transitFee.toString()),
|
|
273
|
+
transitDiscount: buy === null ? null : cpuFromWei(buy.transitDiscount.toString()),
|
|
274
|
+
arrivalAt: buy === null ? null : Number(buy.arrivalAt),
|
|
275
|
+
total: cpuFromWei((buy === null ? sale.buyerTotal : buy.totalCost).toString()),
|
|
276
|
+
};
|
|
277
|
+
}
|
|
278
|
+
// ---- Reads (discovery) ----
|
|
279
|
+
/** Compact per-`(hub, resource)` scout aggregate — the recommended starting overview. */
|
|
280
|
+
async getMarkets(query) {
|
|
281
|
+
const qs = buildQuery({
|
|
282
|
+
hub: query.hub,
|
|
283
|
+
resourceId: query.resourceId,
|
|
284
|
+
aroundTokenId: query.aroundTokenId,
|
|
285
|
+
radius: query.radius,
|
|
286
|
+
});
|
|
287
|
+
const response = await this.api.request(`/api/v1/trade/markets${qs}`);
|
|
288
|
+
if (response.status !== HttpStatus.Ok) {
|
|
289
|
+
throw new Error(`Failed to load markets (HTTP ${response.status}): ${describeApiError(response.data)}`);
|
|
290
|
+
}
|
|
291
|
+
z.array(apiMarketResourceSummarySchema).parse(response.data);
|
|
292
|
+
return response.data.map(withDecimalMinPrice);
|
|
293
|
+
}
|
|
294
|
+
/** Paginated lot browse with filter / sort / zone. */
|
|
295
|
+
async listLots(query) {
|
|
296
|
+
const qs = buildQuery({
|
|
297
|
+
hub: query.hub,
|
|
298
|
+
resourceId: query.resourceId,
|
|
299
|
+
seller: query.seller,
|
|
300
|
+
minPrice: query.minPrice,
|
|
301
|
+
maxPrice: query.maxPrice,
|
|
302
|
+
availability: query.availability,
|
|
303
|
+
sort: query.sort,
|
|
304
|
+
limit: query.limit,
|
|
305
|
+
offset: query.offset,
|
|
306
|
+
aroundTokenId: query.aroundTokenId,
|
|
307
|
+
radius: query.radius,
|
|
308
|
+
});
|
|
309
|
+
const response = await this.api.request(`/api/v1/trade/lots${qs}`);
|
|
310
|
+
if (response.status !== HttpStatus.Ok) {
|
|
311
|
+
throw new Error(`Failed to list lots (HTTP ${response.status}): ${describeApiError(response.data)}`);
|
|
312
|
+
}
|
|
313
|
+
z.array(apiLotViewSchema).parse(response.data);
|
|
314
|
+
const lots = response.data.map(withDecimalPrice);
|
|
315
|
+
const hidesFrozen = query.availability === null || query.availability === LotAvailability.Open;
|
|
316
|
+
return hidesFrozen ? lots.filter((lot) => !lot.frozen) : lots;
|
|
317
|
+
}
|
|
318
|
+
/** Public single-lot read. */
|
|
319
|
+
async getLot(lotId) {
|
|
320
|
+
const response = await this.api.request(`/api/v1/trade/lots/${lotId}`);
|
|
321
|
+
if (response.status !== HttpStatus.Ok) {
|
|
322
|
+
throw new Error(`Failed to get lot ${lotId} (HTTP ${response.status}): ${describeApiError(response.data)}`);
|
|
323
|
+
}
|
|
324
|
+
apiLotViewSchema.parse(response.data);
|
|
325
|
+
return withDecimalPrice(response.data);
|
|
326
|
+
}
|
|
327
|
+
/** The caller's lots across all lifecycle states (optionally filtered). */
|
|
328
|
+
async listMyLots(state) {
|
|
329
|
+
const qs = state === null ? '' : `?state=${state}`;
|
|
330
|
+
const response = await this.api.authenticatedRequest(`/api/v1/trade/lots/mine${qs}`);
|
|
331
|
+
if (response.status !== HttpStatus.Ok) {
|
|
332
|
+
throw new Error(`Failed to list your lots (HTTP ${response.status}): ${describeApiError(response.data)}`);
|
|
333
|
+
}
|
|
334
|
+
z.array(apiLotViewSchema).parse(response.data);
|
|
335
|
+
return response.data.map(withDecimalPrice);
|
|
336
|
+
}
|
|
337
|
+
// ---- Internal ----
|
|
338
|
+
async quoteTransit(route) {
|
|
339
|
+
const quote = await this.transportClient.quoteRoute(route);
|
|
340
|
+
const maxFee = quote.totalFee + (quote.totalFee * BigInt(TRANSPORT_MAX_FEE_BUFFER_PERCENT)) / 100n;
|
|
341
|
+
return { feeWei: quote.totalFee, maxFee };
|
|
342
|
+
}
|
|
343
|
+
async approveTransit(config, transport, maxFee) {
|
|
344
|
+
if (maxFee === 0n) {
|
|
345
|
+
return null;
|
|
346
|
+
}
|
|
347
|
+
return this.allowance.ensureAllowance(this.resolveCpuToken(config), transport, maxFee);
|
|
348
|
+
}
|
|
349
|
+
firstFrom(events, trade, label) {
|
|
350
|
+
const event = events.find((e) => e.address.toLowerCase() === trade.toLowerCase());
|
|
351
|
+
if (event === undefined) {
|
|
352
|
+
throw new Error(`Trade write confirmed but Trade emitted no ${label} event.`);
|
|
353
|
+
}
|
|
354
|
+
return event;
|
|
355
|
+
}
|
|
356
|
+
resolveTrade(config) {
|
|
357
|
+
const trade = config.contracts.trade;
|
|
358
|
+
if (!isAddress(trade, { strict: false })) {
|
|
359
|
+
throw new Error(`Trade contract is not configured for network ${config.network}; cannot trade.`);
|
|
360
|
+
}
|
|
361
|
+
return trade;
|
|
362
|
+
}
|
|
363
|
+
resolveTransport(config) {
|
|
364
|
+
const transport = config.contracts.transport;
|
|
365
|
+
if (!isAddress(transport, { strict: false })) {
|
|
366
|
+
throw new Error(`Transport contract is not configured for network ${config.network}; cannot route goods.`);
|
|
367
|
+
}
|
|
368
|
+
return transport;
|
|
369
|
+
}
|
|
370
|
+
resolveCpuToken(config) {
|
|
371
|
+
const cpuToken = config.contracts.cpuToken;
|
|
372
|
+
if (!isAddress(cpuToken, { strict: false })) {
|
|
373
|
+
throw new Error(`$CPU token is not configured for network ${config.network}; cannot pay for trade.`);
|
|
374
|
+
}
|
|
375
|
+
return cpuToken;
|
|
376
|
+
}
|
|
377
|
+
async ready() {
|
|
378
|
+
const config = await this.appConfig.load();
|
|
379
|
+
const wallet = this.wallet.get();
|
|
380
|
+
if (config.chainId !== wallet.getChainId()) {
|
|
381
|
+
throw new Error(`Chain mismatch: the chain config is chainId ${config.chainId} but the wallet is on ` +
|
|
382
|
+
`${wallet.getChainId()}. Check NETWORK.`);
|
|
383
|
+
}
|
|
384
|
+
return { config, wallet };
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
//# sourceMappingURL=trade.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trade.service.js","sourceRoot":"","sources":["../../src/services/trade.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type Hash } from 'viem';
|
|
2
|
+
import type { FinalizeParams, ITransportClient, MoveParams, QuoteRouteParams, RouteQuote, TransportClientOptions } from './types.js';
|
|
3
|
+
export declare class TransportClient implements ITransportClient {
|
|
4
|
+
private readonly contracts;
|
|
5
|
+
private readonly logger;
|
|
6
|
+
constructor(options: TransportClientOptions);
|
|
7
|
+
quoteRoute(params: QuoteRouteParams): Promise<RouteQuote>;
|
|
8
|
+
move(params: MoveParams): Promise<Hash>;
|
|
9
|
+
finalize(params: FinalizeParams): Promise<Hash>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=transport.client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transport.client.d.ts","sourceRoot":"","sources":["../../src/services/transport.client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,IAAI,EAAE,MAAM,MAAM,CAAC;AAErD,OAAO,KAAK,EACR,cAAc,EACd,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,UAAU,EACV,sBAAsB,EACzB,MAAM,YAAY,CAAC;AAKpB,qBAAa,eAAgB,YAAW,gBAAgB;IACpD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAC5C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;gBAErB,OAAO,EAAE,sBAAsB;IAKrC,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAYzD,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAevC,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;CAYxD"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { encodeFunctionData } from 'viem';
|
|
2
|
+
import { TRANSPORT_ABI } from '../contracts/transport.abi.js';
|
|
3
|
+
export class TransportClient {
|
|
4
|
+
contracts;
|
|
5
|
+
logger;
|
|
6
|
+
constructor(options) {
|
|
7
|
+
this.contracts = options.contracts;
|
|
8
|
+
this.logger = options.logger;
|
|
9
|
+
}
|
|
10
|
+
async quoteRoute(params) {
|
|
11
|
+
const [totalFee, discount, totalDistance, arrivalAt] = await this.contracts.read({
|
|
12
|
+
address: params.transport,
|
|
13
|
+
abi: TRANSPORT_ABI,
|
|
14
|
+
functionName: 'quoteRoute',
|
|
15
|
+
args: [params.from, params.tokenIds, params.res, params.amount],
|
|
16
|
+
});
|
|
17
|
+
return { totalFee, discount, totalDistance, arrivalAt };
|
|
18
|
+
}
|
|
19
|
+
async move(params) {
|
|
20
|
+
const data = encodeFunctionData({
|
|
21
|
+
abi: TRANSPORT_ABI,
|
|
22
|
+
functionName: 'move',
|
|
23
|
+
args: [params.tokenIds, params.res, params.amount, params.maxFee],
|
|
24
|
+
});
|
|
25
|
+
this.logger.info('submitting transport move', {
|
|
26
|
+
transport: params.transport,
|
|
27
|
+
res: params.res,
|
|
28
|
+
amount: params.amount.toString(),
|
|
29
|
+
maxFeeWei: params.maxFee.toString(),
|
|
30
|
+
});
|
|
31
|
+
return this.contracts.send({ to: params.transport, data, value: null, gas: null }, TRANSPORT_ABI);
|
|
32
|
+
}
|
|
33
|
+
async finalize(params) {
|
|
34
|
+
const data = encodeFunctionData({
|
|
35
|
+
abi: TRANSPORT_ABI,
|
|
36
|
+
functionName: 'finalizeMany',
|
|
37
|
+
args: [params.ids],
|
|
38
|
+
});
|
|
39
|
+
this.logger.info('finalizing deliveries', {
|
|
40
|
+
transport: params.transport,
|
|
41
|
+
ids: params.ids.map((id) => id.toString()),
|
|
42
|
+
});
|
|
43
|
+
return this.contracts.send({ to: params.transport, data, value: null, gas: null }, TRANSPORT_ABI);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=transport.client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transport.client.js","sourceRoot":"","sources":["../../src/services/transport.client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAa,MAAM,MAAM,CAAC;AAUrD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAI9D,MAAM,OAAO,eAAe;IACP,SAAS,CAAkB;IAC3B,MAAM,CAAU;IAEjC,YAAY,OAA+B;QACvC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAwB;QACrC,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,CAAC,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAE9E;YACE,OAAO,EAAE,MAAM,CAAC,SAAS;YACzB,GAAG,EAAE,aAAa;YAClB,YAAY,EAAE,YAAY;YAC1B,IAAI,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC;SAClE,CAAC,CAAC;QACH,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAkB;QACzB,MAAM,IAAI,GAAG,kBAAkB,CAAC;YAC5B,GAAG,EAAE,aAAa;YAClB,YAAY,EAAE,MAAM;YACpB,IAAI,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;SACpE,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;YAC1C,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;YAChC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;SACtC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,aAAa,CAAC,CAAC;IACtG,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,MAAsB;QACjC,MAAM,IAAI,GAAG,kBAAkB,CAAC;YAC5B,GAAG,EAAE,aAAa;YAClB,YAAY,EAAE,cAAc;YAC5B,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;SACrB,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE;YACtC,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;SAC7C,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,aAAa,CAAC,CAAC;IACtG,CAAC;CACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transport.constants.d.ts","sourceRoot":"","sources":["../../src/services/transport.constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gCAAgC,KAAK,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transport.constants.js","sourceRoot":"","sources":["../../src/services/transport.constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gCAAgC,GAAG,EAAE,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { DeliveryFilter, type DeliveryView, type FinalizeResult, type TransportInput, type TransportQuote, type TransportResult, type TransportServiceOptions } from './types.js';
|
|
2
|
+
export declare class TransportService {
|
|
3
|
+
private readonly api;
|
|
4
|
+
private readonly wallet;
|
|
5
|
+
private readonly appConfig;
|
|
6
|
+
private readonly allowance;
|
|
7
|
+
private readonly contracts;
|
|
8
|
+
private readonly transportClient;
|
|
9
|
+
private readonly logger;
|
|
10
|
+
constructor(options: TransportServiceOptions);
|
|
11
|
+
transport(input: TransportInput): Promise<TransportResult>;
|
|
12
|
+
quote(input: TransportInput): Promise<TransportQuote>;
|
|
13
|
+
listMine(filter: DeliveryFilter): Promise<Array<DeliveryView>>;
|
|
14
|
+
listReadyToFinalizeForOwner(owner: string): Promise<Array<DeliveryView>>;
|
|
15
|
+
getStatus(deliveryId: string): Promise<DeliveryView>;
|
|
16
|
+
finalize(ids: Array<string>): Promise<FinalizeResult>;
|
|
17
|
+
private buildRoute;
|
|
18
|
+
private resolveTransport;
|
|
19
|
+
private approveFee;
|
|
20
|
+
private fetchDeliveries;
|
|
21
|
+
private toView;
|
|
22
|
+
private matchesFilter;
|
|
23
|
+
private assertChain;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=transport.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transport.service.d.ts","sourceRoot":"","sources":["../../src/services/transport.service.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,cAAc,EAEd,KAAK,YAAY,EACjB,KAAK,cAAc,EAInB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,uBAAuB,EAC/B,MAAM,YAAY,CAAC;AAgBpB,qBAAa,gBAAgB;IACzB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAY;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAa;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAC5C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAmB;IACnD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;gBAErB,OAAO,EAAE,uBAAuB;IAUtC,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC;IA4C1D,KAAK,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAoBrD,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAU9D,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAMxE,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IASpD,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;IAiB3D,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,gBAAgB;YAQV,UAAU;YAWV,eAAe;IAQ7B,OAAO,CAAC,MAAM;IAed,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,WAAW;CAOtB"}
|