diff --git a/packages/core/client/src/schema-component/antd/variable/Helpers/HelperConfiguator.tsx b/packages/core/client/src/schema-component/antd/variable/Helpers/HelperConfiguator.tsx
index 7cf25c2bb9..9b5c61f1e9 100644
--- a/packages/core/client/src/schema-component/antd/variable/Helpers/HelperConfiguator.tsx
+++ b/packages/core/client/src/schema-component/antd/variable/Helpers/HelperConfiguator.tsx
@@ -15,7 +15,7 @@ import { createMemoryHistory } from 'history';
import debounce from 'lodash/debounce';
import minimatch from 'minimatch';
import React from 'react';
-import { Router } from 'react-router-dom';
+import { Router, useLocation } from 'react-router-dom';
import { useApp } from '../../../../application';
import { SchemaComponent } from '../../../core/SchemaComponent';
import { useCurrentVariable, VariableHelperMapping } from '../VariableProvider';
@@ -59,7 +59,7 @@ export function isFilterAllowedForVariable(
return !mapping.strictMode;
}
-export const HelperConfiguator = observer(
+const Configurator = observer(
({ index, close }: { index: number; close: () => void }) => {
const app = useApp();
const { value, helperObservables } = useCurrentVariable();
@@ -68,7 +68,6 @@ export const HelperConfiguator = observer(
const rawHelper = rawHelpersObs.value[index];
const helperConfigs = app.jsonTemplateParser.filters;
const helperConfig = helperConfigs.find((item) => item.name === helper.name);
- const history = createMemoryHistory();
const previousHelpers = helpersObs.value.slice(0, index);
const inputValue = previousHelpers.reduce((value, helper) => {
return helper.handler(value, ...helper.args);
@@ -178,21 +177,48 @@ export const HelperConfiguator = observer(
},
},
};
+
+ return (
+
+ );
+ },
+ { displayName: 'Configurator' },
+);
+
+const WithRouter = observer(
+ ({ children }: { children: React.ReactNode }) => {
+ const history = createMemoryHistory();
return (
-
+ {children}
);
},
- { displayName: 'Helper' },
+ { displayName: 'WithRouter' },
+);
+
+export const HelperConfiguator = observer(
+ (props: { index: number; close: () => void }) => {
+ try {
+ useLocation();
+ return ;
+ } catch (error) {
+ return (
+
+
+
+ );
+ }
+ },
+ { displayName: 'HelperConfiguator' },
);