UNPKG

@kineticdata/react

Version:
98 lines (97 loc) 5.42 kB
"use strict"; 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); };