Skip to content

Commit 3874b95

Browse files
committed
Merge release/7.73.2 into release/7.75.0
2 parents 8c059e6 + cefdde1 commit 3874b95

3 files changed

Lines changed: 48 additions & 0 deletions

File tree

app/components/UI/Predict/controllers/PredictController.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ import { GEO_BLOCKED_COUNTRIES } from '../constants/geoblock';
5757
import { PREDICT_BALANCE_PLACEHOLDER_ADDRESS } from '../constants/transactions';
5858
import { PolymarketProvider } from '../providers/polymarket/PolymarketProvider';
5959
import {
60+
LEGACY_V2_CLOB_BASE_URL,
6061
MATIC_CONTRACTS,
6162
POLYMARKET_PROVIDER_ID,
6263
} from '../providers/polymarket/constants';

app/components/UI/Predict/selectors/featureFlags/index.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import {
1313
selectPredictUpDownEnabledFlag,
1414
selectPredictWithAnyTokenEnabledFlag,
1515
} from '.';
16+
import { LEGACY_V2_CLOB_BASE_URL } from '../../providers/polymarket/constants';
1617
import mockedEngine from '../../../../../core/__mocks__/MockedEngine';
1718
import {
1819
mockedState,

app/components/UI/Predict/selectors/featureFlags/index.ts

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -181,3 +181,49 @@ export const selectPredictBottomSheetEnabledFlag = createSelector(
181181
),
182182
) ?? false,
183183
);
184+
185+
/**
186+
* Selector for Predict CLOB v2 enablement
187+
*
188+
* Uses version-gated feature flag `predictClobV2` from remote config.
189+
* Falls back to `false` if remote flag is unavailable or invalid.
190+
*
191+
* @returns {boolean} True if CLOB v2 is enabled and version requirement is met
192+
*/
193+
export const selectPredictClobV2EnabledFlag = createSelector(
194+
selectRemoteFeatureFlags,
195+
(remoteFeatureFlags) =>
196+
validatedVersionGatedFeatureFlag(
197+
unwrapRemoteFeatureFlag<VersionGatedFeatureFlag>(
198+
remoteFeatureFlags?.predictClobV2,
199+
),
200+
) ?? false,
201+
);
202+
203+
/**
204+
* Selector for Predict CLOB v2 legacy host override.
205+
*
206+
* When `predictClobV2` is enabled and `predictClobV2UseLegacyClobHost` is also enabled,
207+
* returns the legacy v2 CLOB host URL for internal RC testing during the migration window.
208+
* Otherwise returns `undefined` so the protocol uses the canonical host.
209+
*
210+
* @returns {string | undefined} The legacy v2 CLOB host URL, or undefined.
211+
*/
212+
export const selectPredictClobV2ClobBaseUrlFlag = createSelector(
213+
selectPredictClobV2EnabledFlag,
214+
selectRemoteFeatureFlags,
215+
(predictClobV2Enabled, remoteFeatureFlags) => {
216+
if (!predictClobV2Enabled) {
217+
return undefined;
218+
}
219+
220+
const useLegacy =
221+
validatedVersionGatedFeatureFlag(
222+
unwrapRemoteFeatureFlag<VersionGatedFeatureFlag>(
223+
remoteFeatureFlags?.predictClobV2UseLegacyClobHost,
224+
),
225+
) ?? false;
226+
227+
return useLegacy ? LEGACY_V2_CLOB_BASE_URL : undefined;
228+
},
229+
);

0 commit comments

Comments
 (0)