* Adding graphql query to fetch latest helm release of specified type * Updating typescript version and js file * Fixing PR comments in release * Adding feature flag as environment variable in release * Changing feature flag name * Updating files as per latest changes in master after resolving merge conflicts * Removing non prod modules
23 lines
893 B
JavaScript
23 lines
893 B
JavaScript
import fetchWrapper from "./fetch-wrapper";
|
|
export default function withDefaults(oldEndpoint, newDefaults) {
|
|
const endpoint = oldEndpoint.defaults(newDefaults);
|
|
const newApi = function (route, parameters) {
|
|
const endpointOptions = endpoint.merge(route, parameters);
|
|
if (!endpointOptions.request || !endpointOptions.request.hook) {
|
|
return fetchWrapper(endpoint.parse(endpointOptions));
|
|
}
|
|
const request = (route, parameters) => {
|
|
return fetchWrapper(endpoint.parse(endpoint.merge(route, parameters)));
|
|
};
|
|
Object.assign(request, {
|
|
endpoint,
|
|
defaults: withDefaults.bind(null, endpoint),
|
|
});
|
|
return endpointOptions.request.hook(request, endpointOptions);
|
|
};
|
|
return Object.assign(newApi, {
|
|
endpoint,
|
|
defaults: withDefaults.bind(null, endpoint),
|
|
});
|
|
}
|