UNPKG

ipqs-node-sdk

Version:

React package to interface with the various IPQS APIs

45 lines (44 loc) 2.26 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.whichUrl = exports.getLeakedResults = void 0; const const_1 = require("../leaked/const"); const request_1 = require("../utils/request"); const utils_1 = require("../utils"); const const_2 = require("../utils/request/const"); const getLeakedResults = (privateKey, params) => __awaiter(void 0, void 0, void 0, function* () { return yield (0, request_1.getResult)({ type: "GET", privateKey, params, validateFn: validateParams, urlFn: exports.whichUrl, urlPropName: const_1.URL_PROP_NAME }); }); exports.getLeakedResults = getLeakedResults; const validateParams = (params) => { const errors = []; const { requestParameters } = params; if (!validateRequestParams(requestParameters)) { errors.push(const_1.ERRORS.INCORRECT_REQUEST_PARAMETERS); } if (!(0, utils_1.disallowPKConfigs)(params)) { errors.push(const_1.ERRORS.PK_CONFIG_NOT_ALLOWED); } return errors; }; const whichUrl = (privateKey, params, urlPropName) => { const { config: { exportType } } = params; const requestParameters = params.requestParameters; const type = requestParameters.type; const value = requestParameters.value; const sanitizedExportType = (0, utils_1.sanitizeExportType)(exportType); return `${const_2.BASE_URL}/${sanitizedExportType}/${urlPropName}/${type}/${privateKey}/${value}`; }; exports.whichUrl = whichUrl; const validateRequestParams = (obj) => { return ('type' in obj) && ('value' in obj); }; exports.default = exports.getLeakedResults;