@kineticdata/react
Version:
A React library for the Kinetic Platform
98 lines (97 loc) • 5.42 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.updateSecurityPolicyDefinition = exports.fetchSecurityPolicyDefinitions = exports.fetchSecurityPolicyDefinition = exports.deleteSecurityPolicyDefinition = exports.createSecurityPolicyDefinition = void 0;
var _axios = _interopRequireDefault(require("axios"));
var _helpers = require("../../helpers");
var _http = require("../http");
var validateOptions = function validateOptions(functionName, requiredOptions, options) {
var kappSlug = options.kappSlug,
_options$securityPoli = options.securityPolicyDefinition,
securityPolicyDefinition = _options$securityPoli === void 0 ? {} : _options$securityPoli;
var typesRequiringKapp = ['Kapp', 'Form', 'Submission'];
var kappSlugMissing = typesRequiringKapp.includes(securityPolicyDefinition.type) && !kappSlug;
var missing = requiredOptions.filter(function (requiredOption) {
return !options[requiredOption];
});
if (missing.length > 0) {
throw new Error("".concat(functionName, " failed! The following required options are missing: ").concat(missing));
}
if (kappSlugMissing) {
throw new Error("".concat(functionName, " failed! A kappSlug is required when using type: ").concat(securityPolicyDefinition.type));
}
};
var buildEndpoint = function buildEndpoint(_ref) {
var kappSlug = _ref.kappSlug,
securityPolicyName = _ref.securityPolicyName;
var basePath = kappSlug ? "".concat(_helpers.bundle.apiLocation(), "/kapps/").concat(kappSlug, "/securityPolicyDefinitions") : "".concat(_helpers.bundle.apiLocation(), "/securityPolicyDefinitions");
return securityPolicyName ? "".concat(basePath, "/").concat(encodeURIComponent(securityPolicyName)) : basePath;
};
var fetchSecurityPolicyDefinitions = exports.fetchSecurityPolicyDefinitions = function fetchSecurityPolicyDefinitions() {
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
validateOptions('fetchSecurityPolicyDefinitions', [], options);
return _axios["default"].get(buildEndpoint(options), {
params: (0, _http.paramBuilder)(options),
headers: (0, _http.headerBuilder)(options)
}).then(function (response) {
return {
securityPolicyDefinitions: response.data.securityPolicyDefinitions
};
})["catch"](_http.handleErrors);
};
var fetchSecurityPolicyDefinition = exports.fetchSecurityPolicyDefinition = function fetchSecurityPolicyDefinition() {
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
validateOptions('fetchSecurityPolicyDefinition', ['securityPolicyName'], options);
return _axios["default"].get(buildEndpoint(options), {
params: (0, _http.paramBuilder)(options),
headers: (0, _http.headerBuilder)(options)
}).then(function (response) {
return {
securityPolicyDefinition: response.data.securityPolicyDefinition
};
})["catch"](_http.handleErrors);
};
var createSecurityPolicyDefinition = exports.createSecurityPolicyDefinition = function createSecurityPolicyDefinition() {
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
var kappSlug = options.kappSlug,
securityPolicyDefinition = options.securityPolicyDefinition;
validateOptions('createSecurityPolicyDefinition', ['securityPolicyDefinition'], options);
// For Creates, we don't append the name to the basePath (it goes in the body)
// so not using the buildEndpoint function
var basePath = kappSlug ? "".concat(_helpers.bundle.apiLocation(), "/kapps/").concat(kappSlug, "/securityPolicyDefinitions") : "".concat(_helpers.bundle.apiLocation(), "/securityPolicyDefinitions");
return _axios["default"].post(basePath, securityPolicyDefinition, {
params: (0, _http.paramBuilder)(options),
headers: (0, _http.headerBuilder)(options)
}).then(function (response) {
return {
securityPolicyDefinition: response.data.securityPolicyDefinition
};
})["catch"](_http.handleErrors);
};
var updateSecurityPolicyDefinition = exports.updateSecurityPolicyDefinition = function updateSecurityPolicyDefinition() {
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
var securityPolicyDefinition = options.securityPolicyDefinition;
validateOptions('updateSecurityPolicyDefinition', ['securityPolicyName', 'securityPolicyDefinition'], options);
return _axios["default"].put(buildEndpoint(options), securityPolicyDefinition, {
params: (0, _http.paramBuilder)(options),
headers: (0, _http.headerBuilder)(options)
}).then(function (response) {
return {
securityPolicyDefinition: response.data.securityPolicyDefinition
};
})["catch"](_http.handleErrors);
};
var deleteSecurityPolicyDefinition = exports.deleteSecurityPolicyDefinition = function deleteSecurityPolicyDefinition() {
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
validateOptions('deleteSecurityPolicyDefinition', ['securityPolicyName'], options);
return _axios["default"]["delete"](buildEndpoint(options), {
params: (0, _http.paramBuilder)(options),
headers: (0, _http.headerBuilder)(options)
}).then(function (response) {
return {
securityPolicyDefinition: response.data.securityPolicyDefinition
};
})["catch"](_http.handleErrors);
};