mirror of
https://github.com/labring/FastGPT.git
synced 2025-07-22 12:20:34 +00:00
Fix workflow detail (#3382)
* fix: loop node init * fix: workflow detail * fix: point table * add null check
This commit is contained in:
@@ -29,7 +29,7 @@ export const simpleText = (text = '') => {
|
||||
replace {{variable}} to value
|
||||
*/
|
||||
export function replaceVariable(text: any, obj: Record<string, string | number>) {
|
||||
if (!(typeof text === 'string')) return text;
|
||||
if (typeof text !== 'string') return text;
|
||||
|
||||
for (const key in obj) {
|
||||
const val = obj[key];
|
||||
|
@@ -251,6 +251,7 @@ export const getReferenceVariableValue = ({
|
||||
return variables[outputId];
|
||||
}
|
||||
|
||||
// 避免 value 刚好就是二个元素的字符串数组
|
||||
const node = nodes.find((node) => node.nodeId === sourceNodeId);
|
||||
if (!node) {
|
||||
return value;
|
||||
|
@@ -193,6 +193,18 @@ export const MultipleRowArraySelect = ({
|
||||
ref: ref,
|
||||
handler: onClose
|
||||
});
|
||||
const onChange = useCallback(
|
||||
(val: any[][]) => {
|
||||
// Filter invalid value
|
||||
const validList = val.filter((item) => {
|
||||
const listItem = list.find((v) => v.value === item[0]);
|
||||
if (!listItem) return false;
|
||||
return listItem.children?.some((v) => v.value === item[1]);
|
||||
});
|
||||
onSelect(validList);
|
||||
},
|
||||
[onSelect]
|
||||
);
|
||||
|
||||
const RenderList = useCallback(
|
||||
({ index, list }: { index: number; list: MultipleSelectProps['list'] }) => {
|
||||
@@ -213,9 +225,9 @@ export const MultipleRowArraySelect = ({
|
||||
const newValue = [parentValue, item.value];
|
||||
|
||||
if (newValues.some((v) => v[0] === parentValue && v[1] === item.value)) {
|
||||
onSelect(newValues.filter((v) => !(v[0] === parentValue && v[1] === item.value)));
|
||||
onChange(newValues.filter((v) => !(v[0] === parentValue && v[1] === item.value)));
|
||||
} else {
|
||||
onSelect([...newValues, newValue]);
|
||||
onChange([...newValues, newValue]);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
@@ -43,14 +43,16 @@ export const useI18nLng = () => {
|
||||
setLang(lang);
|
||||
|
||||
await i18n?.changeLanguage?.(lang);
|
||||
if (prevLang && prevLang !== lang) {
|
||||
|
||||
if (!i18n.hasResourceBundle(lang, 'common') && prevLang !== lang) {
|
||||
window?.location?.reload?.();
|
||||
}
|
||||
};
|
||||
|
||||
const setUserDefaultLng = () => {
|
||||
const setUserDefaultLng = (forceGetDefaultLng: boolean = false) => {
|
||||
if (!navigator || !localStorage) return;
|
||||
if (getLang()) return onChangeLng(getLang() as string);
|
||||
|
||||
if (getLang() && !forceGetDefaultLng) return onChangeLng(getLang() as string);
|
||||
|
||||
const lang = languageMap[navigator.language] || 'en';
|
||||
|
||||
|
Reference in New Issue
Block a user