MCPcopy Index your code
hub / github.com/chartbrew/chartbrew / getProject

Function getProject

client/src/actions/project.js:45–85  ·  view source on GitHub ↗
(id, active)

Source from the content-addressed store, hash-verified

43}
44
45export function getProject(id, active) {
46 return (dispatch) => {
47 if (!cookie.load("brewToken")) {
48 return new Promise((resolve, reject) => reject(new Error("No Token")));
49 }
50 const token = cookie.load("brewToken");
51 const url = `${API_HOST}/project/${id}`;
52 const method = "GET";
53 const headers = new Headers({
54 "Accept": "application/json",
55 "authorization": `Bearer ${token}`,
56 });
57
58 dispatch({ type: FETCHING_PROJECT });
59 return fetch(url, { method, headers })
60 .then((response) => {
61 if (!response.ok) {
62 dispatch(addError(response.status));
63 return new Promise((resolve, reject) => reject(response.statusText));
64 }
65
66 return response.json();
67 })
68 .then((project) => {
69 dispatch({ type: FETCHING_PROJECT_SUCCESS, project });
70 // switch this to the active project if it's requested
71 if (active) {
72 setTimeout(() => {
73 dispatch(changeActiveProject(project.id));
74 // also update the charts store
75 dispatch({ type: FETCH_ALL_CHARTS, charts: project.Charts });
76 }, 100);
77 }
78 return new Promise(resolve => resolve(project));
79 })
80 .catch((error) => {
81 dispatch({ type: FETCHING_PROJECT_FAILED, error });
82 return new Promise((resolve, reject) => reject(error));
83 });
84 };
85}
86
87export function createProject(data) {
88 return (dispatch) => {

Callers 12

addConnectionFunction · 0.90
saveConnectionFunction · 0.90
ProjectRedirectFunction · 0.90
_getProjectFunction · 0.90
_onSaveFunction · 0.90
_disableAutomaticUpdatesFunction · 0.90
_onSaveFunction · 0.90
_onRemoveScheduleFunction · 0.90
_fetchProjectFunction · 0.90
_fetchProjectFunction · 0.90
_onToggleBrandingFunction · 0.90

Calls 3

addErrorFunction · 0.90
changeActiveProjectFunction · 0.85
dispatchFunction · 0.50

Tested by

no test coverage detected