|
@@ -15,15 +15,18 @@ export const DerivedIndexForm = memo(({
|
|
|
onChange,
|
|
|
onConditionSave,
|
|
|
initialValues,
|
|
|
- onSetField
|
|
|
+ onSetField,
|
|
|
+ onExprChange
|
|
|
}) => {
|
|
|
const isCondition = !!initialValues?.ext?.filters;
|
|
|
- const measures = initialValues?.metricDefineByMeasureParams?.measures[0]
|
|
|
+ const measures = initialValues?.metricDefineByMeasureParams?.measures[0];
|
|
|
+ const initTab = initialValues?.ext?.filters?.length<1 && measures?.constraint ?'customScript':'fieldsConfig';
|
|
|
+
|
|
|
const t = useI18NPrefix('global');
|
|
|
const dispatch = useAppDispatch();
|
|
|
const modals = useAppSelector(selectModals);
|
|
|
const conditions = useAppSelector(selectConditions);
|
|
|
- const [tab, setTab] = useState('fieldsConfig');
|
|
|
+ const [tab, setTab] = useState(initTab);
|
|
|
const [conditionType, setConditionType] = useState(!isCondition);
|
|
|
const [dateDims, setDateDims] = useState([]);
|
|
|
const [analyzeDims, setAnalyzeDims] = useState([]);
|
|
@@ -37,6 +40,7 @@ export const DerivedIndexForm = memo(({
|
|
|
}
|
|
|
if (initialValues?.modelId){
|
|
|
initialSelector(initialValues?.modelId)
|
|
|
+ onExprChange?.({expr:measures?.constraint})
|
|
|
}
|
|
|
}, []);
|
|
|
|
|
@@ -90,8 +94,9 @@ export const DerivedIndexForm = memo(({
|
|
|
}, [])
|
|
|
|
|
|
|
|
|
- const onEditorChange = (txt)=>{
|
|
|
- editorRef.current = txt;
|
|
|
+ const onEditorChange = (expr)=>{
|
|
|
+ editorRef.current = expr;
|
|
|
+ onExprChange?.({expr})
|
|
|
}
|
|
|
|
|
|
const onSaveCondition = (tab)=>{
|
|
@@ -150,7 +155,7 @@ export const DerivedIndexForm = memo(({
|
|
|
{
|
|
|
label: t("operation.customScript"),
|
|
|
key: 'customScript',
|
|
|
- children: <CodeEditor value={measures?.constraint} onEditorChange={onEditorChange} width="100%" height="180"/>,
|
|
|
+ children: <CodeEditor ref={editorRef} value={measures?.constraint} onEditorChange={onEditorChange} width="100%" height="180"/>,
|
|
|
}
|
|
|
],
|
|
|
onChange: (key) => {
|