|
11 | 11 | updateFunctionValvesById
|
12 | 12 | } from '$lib/apis/functions';
|
13 | 13 | import { getToolValvesById, getToolValvesSpecById, updateToolValvesById } from '$lib/apis/tools';
|
| 14 | +
|
| 15 | + import { |
| 16 | + getUserValvesSpecById as getToolUserValvesSpecById, |
| 17 | + getUserValvesById as getToolUserValvesById, |
| 18 | + updateUserValvesById as updateToolUserValvesById, |
| 19 | + getTools |
| 20 | + } from '$lib/apis/tools'; |
| 21 | + import { |
| 22 | + getUserValvesSpecById as getFunctionUserValvesSpecById, |
| 23 | + getUserValvesById as getFunctionUserValvesById, |
| 24 | + updateUserValvesById as updateFunctionUserValvesById, |
| 25 | + getFunctions |
| 26 | + } from '$lib/apis/functions'; |
| 27 | +
|
14 | 28 | import Spinner from '../../common/Spinner.svelte';
|
15 | 29 | import Switch from '$lib/components/common/Switch.svelte';
|
16 | 30 | import Valves from '$lib/components/common/Valves.svelte';
|
|
23 | 37 |
|
24 | 38 | export let type = 'tool';
|
25 | 39 | export let id = null;
|
| 40 | + export let userValves = false; |
26 | 41 |
|
27 | 42 | let saving = false;
|
28 | 43 | let loading = false;
|
|
43 | 58 |
|
44 | 59 | let res = null;
|
45 | 60 |
|
46 |
| - if (type === 'tool') { |
47 |
| - res = await updateToolValvesById(localStorage.token, id, valves).catch((error) => { |
48 |
| - toast.error(`${error}`); |
49 |
| - }); |
50 |
| - } else if (type === 'function') { |
51 |
| - res = await updateFunctionValvesById(localStorage.token, id, valves).catch((error) => { |
52 |
| - toast.error(`${error}`); |
53 |
| - }); |
| 61 | + if (userValves) { |
| 62 | + if (type === 'tool') { |
| 63 | + res = await updateToolUserValvesById(localStorage.token, id, valves).catch((error) => { |
| 64 | + toast.error(`${error}`); |
| 65 | + }); |
| 66 | + } else if (type === 'function') { |
| 67 | + res = await updateFunctionUserValvesById(localStorage.token, id, valves).catch( |
| 68 | + (error) => { |
| 69 | + toast.error(`${error}`); |
| 70 | + } |
| 71 | + ); |
| 72 | + } |
| 73 | + } else { |
| 74 | + if (type === 'tool') { |
| 75 | + res = await updateToolValvesById(localStorage.token, id, valves).catch((error) => { |
| 76 | + toast.error(`${error}`); |
| 77 | + }); |
| 78 | + } else if (type === 'function') { |
| 79 | + res = await updateFunctionValvesById(localStorage.token, id, valves).catch((error) => { |
| 80 | + toast.error(`${error}`); |
| 81 | + }); |
| 82 | + } |
54 | 83 | }
|
55 | 84 |
|
56 | 85 | if (res) {
|
|
67 | 96 | valves = {};
|
68 | 97 | valvesSpec = null;
|
69 | 98 |
|
70 |
| - if (type === 'tool') { |
71 |
| - valves = await getToolValvesById(localStorage.token, id); |
72 |
| - valvesSpec = await getToolValvesSpecById(localStorage.token, id); |
73 |
| - } else if (type === 'function') { |
74 |
| - valves = await getFunctionValvesById(localStorage.token, id); |
75 |
| - valvesSpec = await getFunctionValvesSpecById(localStorage.token, id); |
76 |
| - } |
| 99 | + try { |
| 100 | + if (userValves) { |
| 101 | + if (type === 'tool') { |
| 102 | + valves = await getToolUserValvesById(localStorage.token, id); |
| 103 | + valvesSpec = await getToolUserValvesSpecById(localStorage.token, id); |
| 104 | + } else if (type === 'function') { |
| 105 | + valves = await getFunctionUserValvesById(localStorage.token, id); |
| 106 | + valvesSpec = await getFunctionUserValvesSpecById(localStorage.token, id); |
| 107 | + } |
| 108 | + } else { |
| 109 | + if (type === 'tool') { |
| 110 | + valves = await getToolValvesById(localStorage.token, id); |
| 111 | + valvesSpec = await getToolValvesSpecById(localStorage.token, id); |
| 112 | + } else if (type === 'function') { |
| 113 | + valves = await getFunctionValvesById(localStorage.token, id); |
| 114 | + valvesSpec = await getFunctionValvesSpecById(localStorage.token, id); |
| 115 | + } |
| 116 | + } |
77 | 117 |
|
78 |
| - if (!valves) { |
79 |
| - valves = {}; |
80 |
| - } |
| 118 | + if (!valves) { |
| 119 | + valves = {}; |
| 120 | + } |
81 | 121 |
|
82 |
| - if (valvesSpec) { |
83 |
| - // Convert array to string |
84 |
| - for (const property in valvesSpec.properties) { |
85 |
| - if (valvesSpec.properties[property]?.type === 'array') { |
86 |
| - valves[property] = (valves[property] ?? []).join(','); |
| 122 | + if (valvesSpec) { |
| 123 | + // Convert array to string |
| 124 | + for (const property in valvesSpec.properties) { |
| 125 | + if (valvesSpec.properties[property]?.type === 'array') { |
| 126 | + valves[property] = (valves[property] ?? []).join(','); |
| 127 | + } |
87 | 128 | }
|
88 | 129 | }
|
89 |
| - } |
90 | 130 |
|
91 |
| - loading = false; |
| 131 | + loading = false; |
| 132 | + } catch (e) { |
| 133 | + toast.error(`Error fetching valves`); |
| 134 | + show = false; |
| 135 | + } |
92 | 136 | };
|
93 | 137 |
|
94 | 138 | $: if (show) {
|
|
0 commit comments