@indigo-labs/indigo-sdk 0.2.42 → 0.3.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/.github/workflows/ci.yml +4 -2
- package/README.md +88 -15
- package/dist/index.d.mts +3012 -2194
- package/dist/index.d.ts +3012 -2194
- package/dist/index.js +9849 -6198
- package/dist/index.mjs +8733 -4933
- package/package.json +14 -3
- package/src/contracts/cdp/helpers.ts +68 -72
- package/src/contracts/cdp/scripts.ts +50 -13
- package/src/contracts/cdp/transactions.ts +841 -546
- package/src/contracts/cdp/types-new.ts +256 -0
- package/src/contracts/cdp/types.ts +26 -144
- package/src/contracts/cdp-creator/scripts.ts +15 -9
- package/src/contracts/cdp-creator/types-new.ts +50 -0
- package/src/contracts/cdp-creator/types.ts +5 -31
- package/src/contracts/collector/scripts.ts +1 -1
- package/src/contracts/collector/transactions.ts +23 -13
- package/src/contracts/collector/types-new.ts +17 -0
- package/src/contracts/execute/scripts.ts +19 -10
- package/src/contracts/execute/types-new.ts +44 -0
- package/src/contracts/execute/types.ts +5 -38
- package/src/contracts/gov/helpers.ts +187 -51
- package/src/contracts/gov/scripts.ts +17 -10
- package/src/contracts/gov/transactions.ts +599 -271
- package/src/contracts/gov/types-new.ts +253 -100
- package/src/contracts/gov/types.ts +4 -71
- package/src/contracts/iasset/helpers.ts +172 -0
- package/src/contracts/iasset/scripts.ts +38 -0
- package/src/contracts/iasset/types.ts +154 -0
- package/src/contracts/initialize/actions.ts +768 -0
- package/src/contracts/initialize/helpers.ts +611 -36
- package/src/contracts/initialize/types.ts +102 -28
- package/src/contracts/interest-collection/helpers.ts +19 -0
- package/src/contracts/interest-collection/scripts.ts +44 -0
- package/src/contracts/interest-collection/transactions.ts +436 -0
- package/src/contracts/interest-collection/types-new.ts +50 -0
- package/src/contracts/interest-collection/types.ts +26 -0
- package/src/contracts/interest-oracle/helpers.ts +2 -30
- package/src/contracts/interest-oracle/scripts.ts +1 -1
- package/src/contracts/interest-oracle/transactions.ts +21 -16
- package/src/contracts/interest-oracle/types-new.ts +32 -0
- package/src/contracts/interest-oracle/types.ts +1 -40
- package/src/contracts/one-shot/transactions.ts +1 -2
- package/src/contracts/poll/helpers.ts +5 -23
- package/src/contracts/poll/scripts.ts +12 -13
- package/src/contracts/poll/types-poll-manager.ts +1 -19
- package/src/contracts/poll/types-poll-new.ts +170 -0
- package/src/contracts/poll/types-poll-shard.ts +2 -24
- package/src/contracts/price-oracle/helpers.ts +1 -4
- package/src/contracts/price-oracle/scripts.ts +3 -8
- package/src/contracts/price-oracle/transactions.ts +32 -25
- package/src/contracts/price-oracle/types-new.ts +50 -0
- package/src/contracts/price-oracle/types.ts +2 -36
- package/src/contracts/pyth-feed/helpers.ts +58 -0
- package/src/contracts/pyth-feed/scripts.ts +15 -0
- package/src/contracts/pyth-feed/types.ts +181 -0
- package/src/contracts/rob/helpers.ts +405 -0
- package/src/contracts/rob/scripts.ts +35 -0
- package/src/contracts/rob/transactions.ts +410 -0
- package/src/contracts/rob/types-new.ts +128 -0
- package/src/contracts/rob/types.ts +16 -0
- package/src/contracts/rob-leverage/helpers.ts +424 -0
- package/src/contracts/{leverage → rob-leverage}/transactions.ts +68 -48
- package/src/contracts/stability-pool/helpers.ts +714 -230
- package/src/contracts/stability-pool/scripts.ts +20 -15
- package/src/contracts/stability-pool/transactions.ts +628 -496
- package/src/contracts/stability-pool/types-new.ts +247 -100
- package/src/contracts/stability-pool/types.ts +5 -22
- package/src/contracts/stableswap/helpers.ts +22 -0
- package/src/contracts/stableswap/scripts.ts +37 -0
- package/src/contracts/stableswap/transactions.ts +647 -0
- package/src/contracts/stableswap/types-new.ts +131 -0
- package/src/contracts/stableswap/types.ts +17 -0
- package/src/contracts/staking/helpers.ts +49 -34
- package/src/contracts/staking/scripts.ts +1 -1
- package/src/contracts/staking/transactions.ts +85 -130
- package/src/contracts/staking/types-new.ts +60 -28
- package/src/contracts/staking/types.ts +1 -28
- package/src/contracts/treasury/helpers.ts +21 -0
- package/src/contracts/treasury/scripts.ts +16 -26
- package/src/contracts/treasury/transactions.ts +256 -27
- package/src/contracts/treasury/types-new.ts +69 -0
- package/src/contracts/treasury/types.ts +2 -43
- package/src/contracts/version-registry/scripts.ts +2 -2
- package/src/contracts/version-registry/types-new.ts +6 -7
- package/src/index.ts +37 -20
- package/src/scripts/auth-token-policy.ts +3 -2
- package/src/scripts/iasset-policy.ts +3 -2
- package/src/types/evolution-schema-options.ts +3 -3
- package/src/types/generic.ts +17 -89
- package/src/types/multisig.ts +48 -0
- package/src/types/on-chain-decimal.ts +14 -7
- package/src/types/rational.ts +61 -0
- package/src/types/system-params.ts +237 -41
- package/src/utils/array-utils.ts +70 -1
- package/src/utils/bigint-utils.ts +12 -0
- package/src/utils/indigo-helpers.ts +8 -10
- package/src/utils/lucid-utils.ts +47 -40
- package/src/utils/oracle-helpers.ts +62 -0
- package/src/utils/pyth/decode.ts +223 -0
- package/src/utils/pyth/encode.ts +262 -0
- package/src/utils/pyth/index.ts +14 -0
- package/src/utils/pyth/types.ts +87 -0
- package/src/validators/always-succeed-validator.ts +6 -0
- package/src/validators/cdp-creator-validator.ts +2 -2
- package/src/validators/cdp-redeem-validator.ts +7 -0
- package/src/validators/cdp-validator.ts +2 -2
- package/src/validators/collector-validator.ts +2 -2
- package/src/validators/execute-validator.ts +2 -2
- package/src/validators/governance-validator.ts +2 -2
- package/src/validators/iasset-validator.ts +7 -0
- package/src/validators/interest-collection-validator.ts +7 -0
- package/src/validators/interest-oracle-validator.ts +2 -2
- package/src/validators/poll-manager-validator.ts +2 -2
- package/src/validators/poll-shard-validator.ts +2 -2
- package/src/validators/price-oracle-validator.ts +7 -0
- package/src/validators/pyth-feed-validator.ts +7 -0
- package/src/validators/rob-validator.ts +7 -0
- package/src/validators/stability-pool-validator.ts +2 -2
- package/src/validators/stableswap-validator.ts +7 -0
- package/src/validators/staking-validator.ts +2 -2
- package/src/validators/treasury-validator.ts +2 -2
- package/src/validators/version-record-policy.ts +2 -2
- package/src/validators/version-registry-validator.ts +2 -2
- package/tests/always-succeed/script.ts +7 -0
- package/tests/bigint-utils.test.ts +41 -0
- package/tests/cdp/actions.ts +610 -0
- package/tests/cdp/cdp-helpers.ts +55 -0
- package/tests/cdp/cdp-queries.ts +440 -0
- package/tests/cdp/cdp.test.ts +6087 -0
- package/tests/cdp/transactions-mutated.ts +1729 -0
- package/tests/data/system-params.json +177 -34
- package/tests/datums.test.ts +209 -210
- package/tests/endpoints/initialize.ts +68 -0
- package/tests/endpoints/interest-collector.ts +37 -0
- package/tests/endpoints/treasury.ts +70 -0
- package/tests/gov/actions.ts +406 -0
- package/tests/gov/gov.test.ts +4450 -0
- package/tests/{queries → gov}/governance-queries.ts +6 -3
- package/tests/hash-checks.test.ts +38 -11
- package/tests/indigo-test-helpers.ts +100 -0
- package/tests/initialize.test.ts +61 -9
- package/tests/interest-collection/interest-collection.test.ts +892 -0
- package/tests/interest-collection/interest-collector-queries.ts +49 -0
- package/tests/interest-collection/transactions-mutated.ts +260 -0
- package/tests/interest-oracle.test.ts +43 -35
- package/tests/mock/assets-mock.ts +234 -23
- package/tests/mock/protocol-params-mock.ts +21 -0
- package/tests/price-oracle/actions.ts +163 -0
- package/tests/price-oracle/price-oracle-queries.ts +12 -0
- package/tests/price-oracle/price-oracle.test.ts +240 -0
- package/tests/price-oracle/transactions-mutated.ts +62 -0
- package/tests/pyth/endpoints.ts +96 -0
- package/tests/pyth/helpers.ts +37 -0
- package/tests/pyth/pyth-encoding.test.ts +376 -0
- package/tests/pyth/pyth-indigo.test.ts +509 -0
- package/tests/pyth/pyth.test.ts +300 -0
- package/tests/queries/execute-queries.ts +6 -5
- package/tests/queries/iasset-queries.ts +175 -5
- package/tests/queries/interest-oracle-queries.ts +4 -2
- package/tests/queries/poll-queries.ts +8 -9
- package/tests/queries/stability-pool-queries.ts +95 -48
- package/tests/queries/staking-queries.ts +4 -2
- package/tests/queries/treasury-queries.ts +80 -5
- package/tests/rob/actions.ts +58 -0
- package/tests/{lrp-leverage.test.ts → rob/rob-leverage.test.ts} +393 -296
- package/tests/rob/rob-queries.ts +95 -0
- package/tests/rob/rob.test.ts +3762 -0
- package/tests/rob/transactions-mutated.ts +853 -0
- package/tests/script-size.test.ts +240 -0
- package/tests/setup.ts +135 -0
- package/tests/stability-pool/actions.ts +220 -0
- package/tests/stability-pool.test.ts +6121 -667
- package/tests/stableswap/stableswap-actions.ts +84 -0
- package/tests/stableswap/stableswap-queries.ts +89 -0
- package/tests/stableswap/stableswap.test.ts +3891 -0
- package/tests/stableswap/transactions-mutated.ts +348 -0
- package/tests/staking.test.ts +82 -99
- package/tests/test-helpers.ts +58 -11
- package/tests/treasury.test.ts +242 -0
- package/tests/utils/asserts.ts +74 -0
- package/tests/utils/benchmark-utils.ts +81 -0
- package/tests/utils/index.ts +122 -4
- package/tsconfig.json +9 -1
- package/vitest.config.ts +3 -1
- package/src/contracts/collector/types.ts +0 -16
- package/src/contracts/initialize/transactions.ts +0 -891
- package/src/contracts/leverage/helpers.ts +0 -424
- package/src/contracts/lrp/helpers.ts +0 -294
- package/src/contracts/lrp/scripts.ts +0 -27
- package/src/contracts/lrp/transactions.ts +0 -250
- package/src/contracts/lrp/types.ts +0 -131
- package/src/contracts/poll/types-poll.ts +0 -88
- package/src/contracts/vesting/helpers.ts +0 -218
- package/src/utils/value-helpers.ts +0 -37
- package/src/validators/lrp-validator.ts +0 -7
- package/tests/cdp.test.ts +0 -1528
- package/tests/gov.test.ts +0 -2011
- package/tests/lrp.test.ts +0 -673
- package/tests/queries/cdp-queries.ts +0 -220
- package/tests/queries/lrp-queries.ts +0 -76
- package/tests/queries/price-oracle-queries.ts +0 -10
package/.github/workflows/ci.yml
CHANGED
package/README.md
CHANGED
|
@@ -49,18 +49,91 @@ Instructions:
|
|
|
49
49
|
2. Run `pnpm install`
|
|
50
50
|
3. Run `pnpm run test`
|
|
51
51
|
|
|
52
|
-
##
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
52
|
+
## Transaction endpoints
|
|
53
|
+
|
|
54
|
+
The SDK exposes **transaction builders** (mostly async functions that return a Lucid `TxBuilder`, or attach to an existing builder). They are grouped below by on-chain contract module under `src/contracts/`.
|
|
55
|
+
|
|
56
|
+
### CDP (`cdp`)
|
|
57
|
+
|
|
58
|
+
| Function | Summary |
|
|
59
|
+
| -------------- | -------------------------------------------------------------------------------- |
|
|
60
|
+
| `openCdp` | Open a new CDP: deposit collateral, mint iAsset. |
|
|
61
|
+
| `depositCdp` | Add collateral to an existing CDP. |
|
|
62
|
+
| `withdrawCdp` | Withdraw collateral from an existing CDP |
|
|
63
|
+
| `mintCdp` | Mint additional iAsset debt with an existing CDP. |
|
|
64
|
+
| `burnCdp` | Burn iAsset to pay down existing CDP's debt. |
|
|
65
|
+
| `closeCdp` | Close a CDP, burn remaining debt and withdraw collateral. |
|
|
66
|
+
| `redeemCdp` | Redeem iAsset for collateral (burning CDP debt and withdrawing collateral). |
|
|
67
|
+
| `freezeCdp` | Freeze a CDP marking it for liquidation. |
|
|
68
|
+
| `liquidateCdp` | Liquidate a frozen CDP via the stability pool: absorb debt, move collateral. |
|
|
69
|
+
| `mergeCdps` | Merge several frozen CDPs for the same iAsset into a single combined frozen CDP. |
|
|
70
|
+
|
|
71
|
+
### Collector (`collector`)
|
|
72
|
+
|
|
73
|
+
| Function | Summary |
|
|
74
|
+
| ---------------- | ----------------------------------------------------------- |
|
|
75
|
+
| `collectorFeeTx` | Attach a collector fee payment to an in-flight transaction. |
|
|
76
|
+
|
|
77
|
+
### Governance (`gov`)
|
|
78
|
+
|
|
79
|
+
| Function | Summary |
|
|
80
|
+
| -------------------- | ------------------------------------------ |
|
|
81
|
+
| `createProposal` | Create a governance proposal. |
|
|
82
|
+
| `createShardsChunks` | Create poll shards for voting. |
|
|
83
|
+
| `vote` | Vote on a poll shard. |
|
|
84
|
+
| `mergeShards` | Merge poll shards to a poll manager. |
|
|
85
|
+
| `endProposal` | End the poll and prepare it for execution. |
|
|
86
|
+
| `executeProposal` | Execute a passed proposal. |
|
|
87
|
+
|
|
88
|
+
### Stability pool (`stability-pool`)
|
|
89
|
+
|
|
90
|
+
| Function | Summary |
|
|
91
|
+
| ---------------------------- | ----------------------------------------------------- |
|
|
92
|
+
| `requestSpAccountCreation` | Create request for Stability pool account creation. |
|
|
93
|
+
| `requestSpAccountAdjustment` | Create request for Stability pool account adjustment. |
|
|
94
|
+
| `requestSpAccountClosure` | Create request for Stability pool account closure. |
|
|
95
|
+
| `processSpRequest` | Process a request against a Stability pool. |
|
|
96
|
+
| `createE2s2sSnapshots` | Record new epoch–scale–sum snapshot. |
|
|
97
|
+
|
|
98
|
+
### Staking (`staking`)
|
|
99
|
+
|
|
100
|
+
| Function | Summary |
|
|
101
|
+
| ----------------------- | -------------------------------------------------------- |
|
|
102
|
+
| `openStakingPosition` | Create INDY staking position. |
|
|
103
|
+
| `adjustStakingPosition` | Adjust the stake in your INDY staking position. |
|
|
104
|
+
| `closeStakingPosition` | Close your staking position and withdraw your stake. |
|
|
105
|
+
| `distributeAda` | Distribute ADA from collector to INDY stakers as reward. |
|
|
106
|
+
|
|
107
|
+
### Interest oracle (`interest-oracle`)
|
|
108
|
+
|
|
109
|
+
| Function | Summary |
|
|
110
|
+
| --------------------- | -------------------------------------------------------- |
|
|
111
|
+
| `startInterestOracle` | Bootstrap an interest oracle UTxO. |
|
|
112
|
+
| `feedInterestOracle` | Update the oracle’s interest rate and last-updated time. |
|
|
113
|
+
|
|
114
|
+
### Interest collection (`interest-collection`)
|
|
115
|
+
|
|
116
|
+
| Function | Summary |
|
|
117
|
+
| ---------------------- | ------------------------------------------------------------------------------------------- |
|
|
118
|
+
| `batchCollectInterest` | Settle and collect interest for multiple CDPs in a single Tx. |
|
|
119
|
+
| `distributeInterest` | Distribute funds held by interest collector UTxOs according to the interest admin multisig. |
|
|
120
|
+
| `updatePermissions` | Update interest admin permissions. |
|
|
121
|
+
|
|
122
|
+
### Treasury (`treasury`)
|
|
123
|
+
|
|
124
|
+
| Function | Summary |
|
|
125
|
+
| --------------------------- | ---------------------------------------------------------------------------- |
|
|
126
|
+
| `treasuryFeeTx` | Attach a treasury fee payment to an in-flight transaction. |
|
|
127
|
+
| `treasuryMerge` | Merge multiple treasury UTxOs into one. |
|
|
128
|
+
| `treasurySplit` | Split one treasury UTxO into separate outputs per asset. |
|
|
129
|
+
| `treasuryPrepareWithdrawal` | Prepare treasury UTXO tied to a proposal execution and requested withdrawal. |
|
|
130
|
+
|
|
131
|
+
### ROB — Indigo order book (`rob`)
|
|
132
|
+
|
|
133
|
+
| Function | Summary |
|
|
134
|
+
| ----------- | ------------------------------------------------------------------------------------- |
|
|
135
|
+
| `openRob` | Create a buy-iAsset or sell-iAsset order. |
|
|
136
|
+
| `cancelRob` | Cancel an open order and recover the deposit. |
|
|
137
|
+
| `redeemRob` | Fill market order using current oracle price. |
|
|
138
|
+
| `adjustRob` | Adjust deposit on an order, update limit price and claim proceeds from order filling. |
|
|
139
|
+
| `claimRob` | Claim proceeds from a filled or partially filled order. |
|