rag / frontend /src /models /systemPromptVariable.js
gaojintao01
Add files using Git LFS
f8b5d42
import { API_BASE } from "@/utils/constants";
import { baseHeaders } from "@/utils/request";
/**
* @typedef {Object} SystemPromptVariable
* @property {number|null} id - The ID of the system prompt variable
* @property {string} key - The key of the system prompt variable
* @property {string} value - The value of the system prompt variable
* @property {string} description - The description of the system prompt variable
* @property {string} type - The type of the system prompt variable
*/
const SystemPromptVariable = {
/**
* Get all system prompt variables
* @returns {Promise<{variables: SystemPromptVariable[]}>} - An array of system prompt variables
*/
getAll: async function () {
try {
return await fetch(`${API_BASE}/system/prompt-variables`, {
method: "GET",
headers: baseHeaders(),
})
.then((res) => res.json())
.catch((error) => {
console.error("Error fetching system prompt variables:", error);
return { variables: [] };
});
} catch (error) {
console.error("Error fetching system prompt variables:", error);
return { variables: [] };
}
},
/**
* Create a new system prompt variable
* @param {SystemPromptVariable} variable - The system prompt variable to create
* @returns {Promise<{success: boolean, error: string}>} - A promise that resolves to an object containing a success flag and an error message
*/
create: async function (variable = {}) {
try {
return await fetch(`${API_BASE}/system/prompt-variables`, {
method: "POST",
headers: baseHeaders(),
body: JSON.stringify(variable),
})
.then((res) => res.json())
.catch((error) => {
console.error("Error creating system prompt variable:", error);
return { success: false, error };
});
} catch (error) {
console.error("Error creating system prompt variable:", error);
return { success: false, error };
}
},
/**
* Update a system prompt variable
* @param {string} id - The ID of the system prompt variable to update
* @param {SystemPromptVariable} variable - The system prompt variable to update
* @returns {Promise<{success: boolean, error: string}>} - A promise that resolves to an object containing a success flag and an error message
*/
update: async function (id, variable = {}) {
try {
return await fetch(`${API_BASE}/system/prompt-variables/${id}`, {
method: "PUT",
headers: baseHeaders(),
body: JSON.stringify(variable),
})
.then((res) => res.json())
.catch((error) => {
console.error("Error updating system prompt variable:", error);
return { success: false, error };
});
} catch (error) {
console.error("Error updating system prompt variable:", error);
return { success: false, error };
}
},
/**
* Delete a system prompt variable
* @param {string} id - The ID of the system prompt variable to delete
* @returns {Promise<{success: boolean, error: string}>} - A promise that resolves to an object containing a success flag and an error message
*/
delete: async function (id = null) {
try {
if (id === null) return { success: false, error: "ID is required" };
return await fetch(`${API_BASE}/system/prompt-variables/${id}`, {
method: "DELETE",
headers: baseHeaders(),
})
.then((res) => res.json())
.catch((error) => {
console.error("Error deleting system prompt variable:", error);
return { success: false, error };
});
} catch (error) {
console.error("Error deleting system prompt variable:", error);
return { success: false, error };
}
},
};
export default SystemPromptVariable;