fix: run the lint fix to be able to build the app

This commit is contained in:
Pablo Lara
2024-08-04 20:02:55 +02:00
parent ffb91d2733
commit a2172d12f4
3 changed files with 123 additions and 109 deletions
+95 -93
View File
@@ -1,118 +1,120 @@
"use server";
import { revalidatePath } from "next/cache";
import { parseStringify } from '@/lib';
import { parseStringify } from "@/lib";
export const getProvider = async () => {
const keyServer = process.env.LOCAL_SERVER_URL;
const keyServer = process.env.LOCAL_SERVER_URL;
try {
const providers = await fetch(`${keyServer}/providers`, {
headers: {
"X-Tenant-ID": `${process.env.HEADER_TENANT_ID}`,
},
});
const data = await providers.json();
revalidatePath("/providers")
return parseStringify(data);
} catch (error) {
return undefined;
}
try {
const providers = await fetch(`${keyServer}/providers`, {
headers: {
"X-Tenant-ID": `${process.env.HEADER_TENANT_ID}`,
},
});
const data = await providers.json();
revalidatePath("/providers");
return parseStringify(data);
} catch (error) {
return undefined;
}
};
export const addProvider = async (formData: FormData) => {
const keyServer = process.env.LOCAL_SERVER_URL;
const keyServer = process.env.LOCAL_SERVER_URL;
const provider = formData.get("provider");
const providerId = formData.get("id");
const alias = formData.get("alias");
const provider = formData.get("provider");
const providerId = formData.get("id");
const alias = formData.get("alias");
try {
const response = await fetch(`${keyServer}/providers`, {
method: "POST",
headers: {
"X-Tenant-ID": `${process.env.HEADER_TENANT_ID}`,
"Content-Type": "application/vnd.api+json",
},
body: JSON.stringify({
data: {
type: "Provider",
attributes: {
provider: provider,
provider_id: providerId,
alias: alias,
},
}
}),
});
const data = await response.json();
revalidatePath("/providers")
return parseStringify(data);
} catch (error) {
console.error(error)
return {
error: getErrorMessage(error),
}
}
revalidatePath("/providers")
try {
const response = await fetch(`${keyServer}/providers`, {
method: "POST",
headers: {
"X-Tenant-ID": `${process.env.HEADER_TENANT_ID}`,
"Content-Type": "application/vnd.api+json",
},
body: JSON.stringify({
data: {
type: "Provider",
attributes: {
provider: provider,
provider_id: providerId,
alias: alias,
},
},
}),
});
const data = await response.json();
revalidatePath("/providers");
return parseStringify(data);
} catch (error) {
console.error(error);
return {
error: getErrorMessage(error),
};
}
revalidatePath("/providers");
};
export const checkConnectionProvider = async (formData: FormData) => {
const keyServer = process.env.LOCAL_SERVER_URL;
const keyServer = process.env.LOCAL_SERVER_URL;
const providerId = formData.get("id");
const providerId = formData.get("id");
try {
const response = await fetch(`${keyServer}/providers/${providerId}/connection`, {
method: "POST",
headers: {
"X-Tenant-ID": `${process.env.HEADER_TENANT_ID}`,
},
});
const data = await response.json();
revalidatePath("/providers")
return parseStringify(data);
} catch (error) {
return {
error: getErrorMessage(error),
}
}
try {
const response = await fetch(
`${keyServer}/providers/${providerId}/connection`,
{
method: "POST",
headers: {
"X-Tenant-ID": `${process.env.HEADER_TENANT_ID}`,
},
},
);
const data = await response.json();
revalidatePath("/providers");
return parseStringify(data);
} catch (error) {
return {
error: getErrorMessage(error),
};
}
};
export const deleteProvider = async (formData: FormData) => {
const keyServer = process.env.LOCAL_SERVER_URL;
const keyServer = process.env.LOCAL_SERVER_URL;
const providerId = formData.get("id");
const providerId = formData.get("id");
try {
const response = await fetch(`${keyServer}/providers/${providerId}`, {
method: "DELETE",
headers: {
"X-Tenant-ID": `${process.env.HEADER_TENANT_ID}`,
},
});
const data = await response.json();
revalidatePath("/providers")
return parseStringify(data);
} catch (error) {
return {
error: getErrorMessage(error),
}
}
try {
const response = await fetch(`${keyServer}/providers/${providerId}`, {
method: "DELETE",
headers: {
"X-Tenant-ID": `${process.env.HEADER_TENANT_ID}`,
},
});
const data = await response.json();
revalidatePath("/providers");
return parseStringify(data);
} catch (error) {
return {
error: getErrorMessage(error),
};
}
};
export const getErrorMessage = (error: unknown): string => {
let message: string;
let message: string;
if (error instanceof Error) {
message = error.message
} else if (error && typeof error === "object" && "message" in error) {
message = String(error.message)
} else if (typeof error === "string") {
message = error
} else {
message = "Wops! Something when wrong."
}
return message
}
if (error instanceof Error) {
message = error.message;
} else if (error && typeof error === "object" && "message" in error) {
message = String(error.message);
} else if (typeof error === "string") {
message = error;
} else {
message = "Wops! Something when wrong.";
}
return message;
};
+9 -7
View File
@@ -1,22 +1,24 @@
"use client";
import { addProvider } from "@/actions";
import { useRef } from "react";
import { addProvider } from "@/actions";
import { useToast } from "../ui/toast";
import { ButtonAddProvider } from "./ButtonAddProvider";
export const AddProvider = () => {
const ref = useRef<HTMLFormElement>(null)
const { toast } = useToast()
async function clientAction(formData:FormData) {
const ref = useRef<HTMLFormElement>(null);
const { toast } = useToast();
async function clientAction(formData: FormData) {
// reset the form
ref.current?.reset();
// client-side validation
const data = await addProvider(formData)
const data = await addProvider(formData);
if (data?.errors) {
data.errors.forEach((error: { detail: string }) => {
let errorMessage = `${error.detail}`;
const errorMessage = `${error.detail}`;
// show error
toast({
title: "Wops! Something went wrong",
@@ -14,12 +14,12 @@ import { VerticalDotsIcon } from "@/components/icons";
import { StatusBadge } from "@/components/ui/table/StatusBadge";
import { ProviderProps } from "@/types";
import { DateWithTime } from "../DateWithTime";
import { ProviderInfo } from "../ProviderInfo";
import { DeleteProvider } from "../DeleteProvider";
import { CheckConnectionProvider } from "../CheckConnectionProvider";
import { DateWithTime } from "../DateWithTime";
import { DeleteProvider } from "../DeleteProvider";
import { ProviderInfo } from "../ProviderInfo";
const getProviderData= (row: { original: ProviderProps }) => {
const getProviderData = (row: { original: ProviderProps }) => {
return row.original;
};
@@ -32,7 +32,9 @@ export const ColumnsProviders: ColumnDef<ProviderProps>[] = [
accessorKey: "account",
header: "Account",
cell: ({ row }) => {
const { attributes: { connection, provider, alias, provider_id } } = getProviderData(row);
const {
attributes: { connection, provider, alias, provider_id },
} = getProviderData(row);
return (
<ProviderInfo
connected={connection.connected}
@@ -55,7 +57,9 @@ export const ColumnsProviders: ColumnDef<ProviderProps>[] = [
accessorKey: "lastScan",
header: "Last Scan",
cell: ({ row }) => {
const { attributes: {updated_at} } = getProviderData(row);
const {
attributes: { updated_at },
} = getProviderData(row);
return <DateWithTime dateTime={updated_at} />;
},
},
@@ -63,7 +67,9 @@ export const ColumnsProviders: ColumnDef<ProviderProps>[] = [
accessorKey: "nextScan",
header: "Next Scan",
cell: ({ row }) => {
const { attributes: {updated_at} } = getProviderData(row);
const {
attributes: { updated_at },
} = getProviderData(row);
const nextDay = add(new Date(updated_at), {
hours: 24,
});
@@ -82,7 +88,9 @@ export const ColumnsProviders: ColumnDef<ProviderProps>[] = [
accessorKey: "added",
header: "Added",
cell: ({ row }) => {
const { attributes: {inserted_at} } = getProviderData(row);
const {
attributes: { inserted_at },
} = getProviderData(row);
return <DateWithTime dateTime={inserted_at} showTime={false} />;
},
},
@@ -101,7 +109,9 @@ export const ColumnsProviders: ColumnDef<ProviderProps>[] = [
</Button>
</DropdownTrigger>
<DropdownMenu>
<DropdownItem><CheckConnectionProvider id={id} /></DropdownItem>
<DropdownItem>
<CheckConnectionProvider id={id} />
</DropdownItem>
<DropdownItem>
<DeleteProvider id={id} />
</DropdownItem>