Refactor OpenAI preset API endpoints to unify save and delete operations

b737af47b5483bb0d8b761e1941042e803f7ead5

Cohee <18619528+Cohee1207@users.noreply.github.com>

2 files changed, +14 -35Showing whitespace changes
public/scripts/openai.js+14 -6
@@ -4009,10 +4009,14 @@ async function saveOpenAIPreset(name, settings, triggerUi = true) {
40094009 n: settings.n,
40104010 };
40114011
40124012 const savePresetSettings = await fetch(`'/api/presets/save-openai?name=${encodeURIComponent(name)}`', {
40134013 method: 'POST',
40144014 headers: getRequestHeaders(),
40154015 body: JSON.stringify(presetBody),{
4016+ apiId: 'openai',
4017+ name: name,
4018+ preset: presetBody,
4019+ }),
40164020 });
40174021
40184022 if (savePresetSettings.ok) {
@@ -4221,10 +4225,14 @@ async function onPresetImportFileChange(e) {
42214225
42224226 await eventSource.emit(event_types.OAI_PRESET_IMPORT_READY, { data: presetBody, presetName: name });
42234227
42244228 const savePresetSettings = await fetch(`'/api/presets/save-openai?name=${encodeURIComponent(name)}`', {
42254229 method: 'POST',
42264230 headers: getRequestHeaders(),
42274231 body: importedFile,JSON.stringify({
4232+ apiId: 'openai',
4233+ name: name,
4234+ preset: importedFile,
4235+ }),
42284236 });
42294237
42304238 if (!savePresetSettings.ok) {
@@ -4367,10 +4375,10 @@ async function onDeletePresetClick() {
43674375 $('#settings_preset_openai').trigger('change');
43684376 }
43694377
43704378 const response = await fetch('/api/presets/delete-openai', {
43714379 method: 'POST',
43724380 headers: getRequestHeaders(),
43734381 body: JSON.stringify({ apiId: 'openai', name: nameToDelete }),
43744382 });
43754383
43764384 if (!response.ok) {
src/endpoints/presets.js+0 -29
@@ -101,32 +101,3 @@ router.post('/restore', function (request, response) {
101101 return response.sendStatus(500);
102102 }
103103});
104-
105-// TODO: Merge with /api/presets/save
106-router.post('/save-openai', function (request, response) {
107- if (!request.body || typeof request.query.name !== 'string') return response.sendStatus(400);
108- const name = sanitize(request.query.name);
109- if (!name) return response.sendStatus(400);
110-
111- const fullpath = path.join(request.user.directories.openAI_Settings, `${name}.json`);
112- writeFileAtomicSync(fullpath, JSON.stringify(request.body, null, 4), 'utf-8');
113- return response.send({ name });
114-});
115-
116-// TODO: Merge with /api/presets/delete
117-router.post('/delete-openai', function (request, response) {
118- if (!request.body || !request.body.name) {
119- return response.sendStatus(400);
120- }
121-
122- const name = sanitize(request.body.name);
123- if (!name) return response.sendStatus(400);
124- const pathToFile = path.join(request.user.directories.openAI_Settings, `${name}.json`);
125-
126- if (fs.existsSync(pathToFile)) {
127- fs.unlinkSync(pathToFile);
128- return response.send({ ok: true });
129- }
130-
131- return response.send({ error: true });
132-});