UNPKG

@n1k1t/mock-server

Version:

Powerful util to setup mocks over HTTP APIs

38 lines 1.26 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.HistoryStorage = void 0; const model_1 = require("./model"); const config_1 = __importDefault(require("../../../config")); class HistoryStorage extends Map { constructor(configuration) { super(); this.configuration = configuration; this.stack = []; } register(predicate) { const history = predicate instanceof model_1.History ? predicate : model_1.History.build({ group: this.configuration.group, snapshot: predicate.snapshot, }); this.set(history.id, history); if (this.stack.push(history.id) > config_1.default.get('history').limit) { this.delete(this.stack.shift()); } return history.switchStatus('registered'); } unregister(history) { if (history) { this.delete(history.switchStatus('unregistered').id); } return this; } clear() { this.stack = []; super.clear(); } } exports.HistoryStorage = HistoryStorage; //# sourceMappingURL=storage.js.map