@jsstudio/development-api-interceptor
Version:
development-api-interceptor
38 lines • 1.55 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const constants_1 = require("./constants");
const indexed_db_1 = __importDefault(require("./indexed-db"));
const interceptors_1 = require("./interceptors");
const logger_1 = require("./utils/logger");
const validation_1 = require("./validation");
class MockApi {
constructor(jsonSchema) {
/**
* This function is the entry point to validate and pass the json for indexedDB .
*
* @param {any} jsonData - Json object received from frontend .
* @param {AxiosStatic} axios Instance of axios .
* @returns { boolean} isValid .
*/
this.initialize = () => {
const tables = this.jsonSchema.tables.map((item) => item.table_name);
const validate = new validation_1.Validation();
const interceptor = new interceptors_1.Interceptor(tables);
try {
validate.jsonSchema(this.jsonSchema);
indexed_db_1.default.setDatabase(this.jsonSchema.database);
indexed_db_1.default.initialize(this.jsonSchema);
interceptor.initialize();
}
catch (err) {
logger_1.logger(constants_1.INDEXED_DB_ERROR, err);
}
};
this.jsonSchema = jsonSchema;
}
}
exports.default = MockApi;
//# sourceMappingURL=index.js.map