diff --git a/auto-qa/tests/flm-config.test.mjs b/auto-qa/tests/flm-config.test.mjs
index 4ea06e7..529fd7b 100644
--- a/auto-qa/tests/flm-config.test.mjs
+++ b/auto-qa/tests/flm-config.test.mjs
@@ -67,6 +67,10 @@ test('liquidity manager helpers pin Swapr adapter calldata and manager overloads
);
assert.match(pageSource, /depositToSpot\(uint256,uint256,bytes\)/);
assert.match(pageSource, /encodeDualExitParams\(yesExitData, noExitData\)/);
+ assert.doesNotMatch(utilsSource, /conditionalLiquidity\(\)/);
+ assert.doesNotMatch(utilsSource, /totalManagedLiquidity\(\)/);
+ assert.match(pageSource, /Deposits are paused while this manager is in conditional mode/);
+ assert.match(pageSource, /Cannot deposit while the manager is in conditional mode/);
});
test('companies table links configured organizations to their liquidity page', async () => {
diff --git a/src/pages/flm/[org].jsx b/src/pages/flm/[org].jsx
index 03641ac..dcccacd 100644
--- a/src/pages/flm/[org].jsx
+++ b/src/pages/flm/[org].jsx
@@ -234,9 +234,7 @@ export default function FlmPage({ config }) {
shareDecimals: 18,
totalSupply: ZERO,
walletShares: ZERO,
- totalManagedLiquidity: ZERO,
spotLiquidity: ZERO,
- conditionalLiquidity: ZERO,
conditionalYesLiquidity: ZERO,
conditionalNoLiquidity: ZERO,
inConditionalMode: false,
@@ -294,9 +292,7 @@ export default function FlmPage({ config }) {
shareDecimals,
totalSupply,
walletShares,
- totalManagedLiquidity,
spotLiquidity,
- conditionalLiquidity,
conditionalYesLiquidity,
conditionalNoLiquidity,
inConditionalMode,
@@ -315,9 +311,7 @@ export default function FlmPage({ config }) {
readOr(() => manager.decimals(), 18),
readOr(() => manager.totalSupply(), ZERO),
address ? readOr(() => manager.balanceOf(wallet), ZERO) : ZERO,
- readOr(() => manager.totalManagedLiquidity(), ZERO),
readOr(() => manager.spotLiquidity(), ZERO),
- readOr(() => manager.conditionalLiquidity(), ZERO),
readOr(() => manager.conditionalYesLiquidity(), ZERO),
readOr(() => manager.conditionalNoLiquidity(), ZERO),
readOr(() => manager.inConditionalMode(), false),
@@ -353,9 +347,7 @@ export default function FlmPage({ config }) {
shareDecimals,
totalSupply,
walletShares,
- totalManagedLiquidity,
spotLiquidity,
- conditionalLiquidity,
conditionalYesLiquidity,
conditionalNoLiquidity,
inConditionalMode,
@@ -391,6 +383,17 @@ export default function FlmPage({ config }) {
};
}, [deposit, readState, redeem.shares]);
+ const depositsDisabledInConditionalMode = readState.manager.inConditionalMode;
+ const depositActionDisabled = !managerConfigured
+ || !address
+ || Boolean(pendingAction)
+ || !amountChecks.hasDepositAmount
+ || depositsDisabledInConditionalMode;
+ const approvalActionDisabled = !managerConfigured
+ || !address
+ || Boolean(pendingAction)
+ || depositsDisabledInConditionalMode;
+
const updateDeposit = (field, value) => {
setDeposit((current) => ({ ...current, [field]: value }));
};
@@ -438,6 +441,9 @@ export default function FlmPage({ config }) {
const depositToSpot = () => {
return runWalletAction('deposit', async (signer) => {
if (!managerConfigured) throw new Error('Liquidity manager is not configured.');
+ if (depositsDisabledInConditionalMode) {
+ throw new Error('Cannot deposit while the manager is in conditional mode.');
+ }
if (!amountChecks.hasDepositAmount) throw new Error('Enter a deposit amount first.');
if (amountChecks.needsCompanyApproval || amountChecks.needsCollateralApproval) {
throw new Error('Approve the deposit tokens first.');
@@ -625,17 +631,12 @@ export default function FlmPage({ config }) {
label="Total LP shares"
value={formatLpShares(readState.manager.totalSupply, readState.manager.shareDecimals)}
/>
-