From d624d63a374192f6748a3aa18619c81590599055 Mon Sep 17 00:00:00 2001 From: Primakov Alexandr Date: Sun, 14 Dec 2025 20:51:50 +0300 Subject: [PATCH] Implement submissions polling interval feature in SubmissionsPage, allowing dynamic adjustment of API request frequency based on configuration. --- bro.config.js | 1 + src/pages/submissions/SubmissionsPage.tsx | 13 +++++++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/bro.config.js b/bro.config.js index 98fc6ca..82053cc 100644 --- a/bro.config.js +++ b/bro.config.js @@ -23,6 +23,7 @@ module.exports = { features: { 'challenge-admin': { 'use-chain-submissions-api': { value: 'true' }, + 'submissions-polling-interval-ms': { value: '1200' }, }, }, config: { diff --git a/src/pages/submissions/SubmissionsPage.tsx b/src/pages/submissions/SubmissionsPage.tsx index e964b3f..1903f63 100644 --- a/src/pages/submissions/SubmissionsPage.tsx +++ b/src/pages/submissions/SubmissionsPage.tsx @@ -41,9 +41,18 @@ export const SubmissionsPage: React.FC = () => { const navigate = useNavigate() const { chainId } = useParams<{ chainId?: string }>() - // Проверяем feature flag + // Проверяем feature flags const featureValue = getFeatureValue('challenge-admin', 'use-chain-submissions-api') const useNewApi = featureValue?.value === 'true' + const pollingIntervalFeatureValue = getFeatureValue( + 'challenge-admin', + 'submissions-polling-interval-ms' + ) + const pollingIntervalMs = (() => { + const rawValue = pollingIntervalFeatureValue?.value ?? '' + const parsed = Number.parseInt(rawValue, 10) + return Number.isFinite(parsed) && parsed > 0 ? parsed : 1200 + })() // Состояние для выбранного пользователя и фильтров const [selectedUserId, setSelectedUserId] = useState(null) @@ -72,7 +81,7 @@ export const SubmissionsPage: React.FC = () => { }, { skip: !chainId || !useNewApi, - pollingInterval: 1200, + pollingInterval: pollingIntervalMs, } )