Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
ibm
GitHub Repository: ibm/watson-machine-learning-samples
Path: blob/master/cloud/ai-service-apps/nextjs-carbon-react-ui/src/contexts/deployment-context.js
6408 views
1
import { createContext, useState, useEffect } from "react";
2
3
export const DeploymentContext = createContext();
4
5
export const DeploymentProvider = ({ children }) => {
6
const [deployment, setDeployment] = useState();
7
8
useEffect(() => {
9
const getDeployment = async () => {
10
try {
11
const result = await _getDeployment();
12
setDeployment(result);
13
} catch (err) {
14
console.error(err);
15
}
16
};
17
getDeployment();
18
}, []);
19
20
return <DeploymentContext.Provider value={deployment}>{children}</DeploymentContext.Provider>;
21
};
22
23
async function _getDeployment() {
24
const response = await fetch("/api/deployment");
25
if (!response.ok) {
26
const { error } = await response.json();
27
console.error(`Error while fetching deployment: ${error}`);
28
return { name: "watsonx AI Service" };
29
}
30
return await response.json();
31
}
32
33