update UnavaliableFields structure
This commit is contained in:
parent
354a7b5985
commit
ec490a78a8
4 changed files with 11 additions and 14 deletions
|
|
@ -22,9 +22,10 @@ export default function AddNewVariableButton({ children }): JSX.Element {
|
||||||
const [open, setOpen] = useState(false);
|
const [open, setOpen] = useState(false);
|
||||||
const setErrorData = useAlertStore((state) => state.setErrorData);
|
const setErrorData = useAlertStore((state) => state.setErrorData);
|
||||||
const componentFields = useTypesStore((state) => state.ComponentFields);
|
const componentFields = useTypesStore((state) => state.ComponentFields);
|
||||||
const unavaliableFields = useGlobalVariablesStore(
|
const unavaliableFields =new Set(Object.keys(useGlobalVariablesStore(
|
||||||
(state) => state.unavaliableFields
|
(state) => state.unavaliableFields
|
||||||
);
|
)));
|
||||||
|
|
||||||
const availableFields = Array.from(componentFields).filter(
|
const availableFields = Array.from(componentFields).filter(
|
||||||
(field) => !unavaliableFields.has(field)
|
(field) => !unavaliableFields.has(field)
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -5,16 +5,13 @@ import { getUnavailableFields } from "../utils/utils";
|
||||||
|
|
||||||
export const useGlobalVariablesStore = create<GlobalVariablesStore>(
|
export const useGlobalVariablesStore = create<GlobalVariablesStore>(
|
||||||
(set, get) => ({
|
(set, get) => ({
|
||||||
unavaliableFields: new Set(),
|
unavaliableFields: {},
|
||||||
setUnavaliableFields: (fields) => {
|
setUnavaliableFields: (fields) => {
|
||||||
set({ unavaliableFields: fields });
|
set({ unavaliableFields: fields });
|
||||||
},
|
},
|
||||||
addUnavaliableField: (field) => {
|
|
||||||
set({ unavaliableFields: get().unavaliableFields.add(field) });
|
|
||||||
},
|
|
||||||
removeUnavaliableField: (field) => {
|
removeUnavaliableField: (field) => {
|
||||||
const newFields = get().unavaliableFields;
|
const newFields = get().unavaliableFields;
|
||||||
newFields.delete(field);
|
delete newFields[field];
|
||||||
set({ unavaliableFields: newFields });
|
set({ unavaliableFields: newFields });
|
||||||
},
|
},
|
||||||
globalVariablesEntries: [],
|
globalVariablesEntries: [],
|
||||||
|
|
|
||||||
|
|
@ -25,8 +25,7 @@ export type GlobalVariablesStore = {
|
||||||
) => void;
|
) => void;
|
||||||
removeGlobalVariable: (name: string) => Promise<void>;
|
removeGlobalVariable: (name: string) => Promise<void>;
|
||||||
getVariableId: (name: string) => string | undefined;
|
getVariableId: (name: string) => string | undefined;
|
||||||
unavaliableFields: Set<string>;
|
unavaliableFields: {[name: string]: string};
|
||||||
setUnavaliableFields: (fields: Set<string>) => void;
|
setUnavaliableFields: (fields: {[name: string]: string}) => void;
|
||||||
addUnavaliableField: (field: string) => void;
|
|
||||||
removeUnavaliableField: (field: string) => void;
|
removeUnavaliableField: (field: string) => void;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -93,16 +93,16 @@ export function toTitleCase(
|
||||||
|
|
||||||
export function getUnavailableFields(variables: {
|
export function getUnavailableFields(variables: {
|
||||||
[key: string]: { default_fields?: string[] };
|
[key: string]: { default_fields?: string[] };
|
||||||
}): Set<string> {
|
}): {[name: string]: string} {
|
||||||
const set = new Set<string>();
|
const unVariables:{[name: string]: string} = {};
|
||||||
Object.keys(variables).forEach((key) => {
|
Object.keys(variables).forEach((key) => {
|
||||||
if (variables[key].default_fields) {
|
if (variables[key].default_fields) {
|
||||||
variables[key].default_fields!.forEach((field) => {
|
variables[key].default_fields!.forEach((field) => {
|
||||||
set.add(field);
|
unVariables[field] = key;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return set;
|
return unVariables;
|
||||||
}
|
}
|
||||||
|
|
||||||
export const upperCaseWords: string[] = ["llm", "uri"];
|
export const upperCaseWords: string[] = ["llm", "uri"];
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue