cvat-sdk
Version:
CVAT SDK is a Javascript library. It provides you access to Javascript functions and objects that simplify server interaction and provide additional functionality like data validation and serialization.
96 lines (91 loc) • 4.32 kB
JavaScript
import 'axios';
import { URLSearchParams } from 'url';
function _extends() {
return _extends = Object.assign ? Object.assign.bind() : function (n) {
for (var e = 1; e < arguments.length; e++) {
var t = arguments[e];
for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
}
return n;
}, _extends.apply(null, arguments);
}
class RequiredError extends Error {
constructor(field, msg) {
super(msg);
this.field = void 0;
this.field = field;
this.name = "RequiredError";
}
}
const DUMMY_BASE_URL = 'https://example.com';
const assertParamExists = function assertParamExists(functionName, paramName, paramValue) {
if (paramValue === null || paramValue === undefined) {
throw new RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`);
}
};
const setApiKeyToObject = async function setApiKeyToObject(object, keyParamName, configuration) {
if (configuration && configuration.apiKey) {
const localVarApiKeyValue = typeof configuration.apiKey === 'function' ? await configuration.apiKey(keyParamName) : await configuration.apiKey;
object[keyParamName] = localVarApiKeyValue;
}
};
const setBasicAuthToObject = function setBasicAuthToObject(object, configuration) {
if (configuration && (configuration.username || configuration.password)) {
object["auth"] = {
username: configuration.username,
password: configuration.password
};
}
};
const setBearerAuthToObject = async function setBearerAuthToObject(object, configuration) {
if (configuration && configuration.accessToken) {
const accessToken = typeof configuration.accessToken === 'function' ? await configuration.accessToken() : await configuration.accessToken;
object["Authorization"] = "Bearer " + accessToken;
}
};
const setOAuthToObject = async function setOAuthToObject(object, name, scopes, configuration) {
if (configuration && configuration.accessToken) {
const localVarAccessTokenValue = typeof configuration.accessToken === 'function' ? await configuration.accessToken(name, scopes) : await configuration.accessToken;
object["Authorization"] = "Bearer " + localVarAccessTokenValue;
}
};
function setFlattenedQueryParams(urlSearchParams, parameter, key = "") {
if (parameter == null) return;
if (typeof parameter === "object") {
if (Array.isArray(parameter)) {
parameter.forEach(item => setFlattenedQueryParams(urlSearchParams, item, key));
} else {
Object.keys(parameter).forEach(currentKey => setFlattenedQueryParams(urlSearchParams, parameter[currentKey], `${key}${key !== '' ? '.' : ''}${currentKey}`));
}
} else {
if (urlSearchParams.has(key)) {
urlSearchParams.append(key, parameter);
} else {
urlSearchParams.set(key, parameter);
}
}
}
const setSearchParams = function setSearchParams(url, ...objects) {
const searchParams = new URLSearchParams(url.search);
setFlattenedQueryParams(searchParams, objects);
url.search = searchParams.toString();
};
const serializeDataIfNeeded = function serializeDataIfNeeded(value, requestOptions, configuration) {
const nonString = typeof value !== 'string';
const needsSerialization = nonString && configuration && configuration.isJsonMime ? configuration.isJsonMime(requestOptions.headers['Content-Type']) : nonString;
return needsSerialization ? JSON.stringify(value !== undefined ? value : {}) : value || "";
};
const toPathString = function toPathString(url) {
return url.pathname + url.search + url.hash;
};
const createRequestFunction = function createRequestFunction(axiosArgs, globalAxios, BASE_PATH, configuration) {
return (axios = globalAxios, basePath = BASE_PATH) => {
var _configuration$basePa;
const axiosRequestArgs = _extends({}, axiosArgs.options, {
url: (axios.defaults.baseURL ? '' : (_configuration$basePa = configuration == null ? void 0 : configuration.basePath) != null ? _configuration$basePa : basePath) + axiosArgs.url
});
return axios.request(axiosRequestArgs);
};
};
export { DUMMY_BASE_URL, assertParamExists, createRequestFunction, serializeDataIfNeeded, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, toPathString };
//# sourceMappingURL=common.modern.mjs.map