admin(ui): fix updateNode api request

This commit is contained in:
Matthew Penner 2021-02-11 10:32:13 -07:00
parent 3c2094890a
commit f790404845
3 changed files with 17 additions and 2 deletions

View file

@ -107,7 +107,7 @@ class Node extends Model
'name' => 'required|regex:/^([\w .-]{1,100})$/',
'description' => 'string|nullable',
'location_id' => 'required|exists:locations,id',
'database_host_id' => 'required|exists:database_hosts,id',
'database_host_id' => 'sometimes|nullable|exists:database_hosts,id',
'public' => 'boolean',
'fqdn' => 'required|string',
'listen_port_http' => 'required|numeric|between:1,65535',

View file

@ -2,9 +2,22 @@ import http from '@/api/http';
import { Node, rawDataToNode } from '@/api/admin/nodes/getNodes';
export default (id: number, node: Partial<Node>, include: string[] = []): Promise<Node> => {
const data = {};
Object.keys(node).forEach((key) => {
const key2 = key
.replace('HTTP', 'Http')
.replace('SFTP', 'Sftp')
.replace(/[A-Z]/g, letter => `_${letter.toLowerCase()}`);
// @ts-ignore
data[key2] = node[key];
});
console.log(data);
return new Promise((resolve, reject) => {
http.patch(`/api/application/nodes/${id}`, {
...node,
...data,
}, { params: { include: include.join(',') } })
.then(({ data }) => resolve(rawDataToNode(data)))
.catch(reject);

View file

@ -22,6 +22,7 @@ interface Values {
publicPortHTTP: number;
listenPortSFTP: number;
publicPortSFTP: number;
scheme: string;
}
export default () => {
@ -61,6 +62,7 @@ export default () => {
publicPortHTTP: node.publicPortHTTP,
listenPortSFTP: node.listenPortSFTP,
publicPortSFTP: node.publicPortSFTP,
scheme: node.scheme,
}}
validationSchema={object().shape({
name: string().required().max(191),