Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | "use strict"; var __assign = (this && this.__assign) || Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; Object.defineProperty(exports, "__esModule", { value: true }); function createHistory(config) { if (!config.states) { return undefined; } var history = {}; Object.keys(config.states).forEach(function (stateId) { var state = config.states[stateId]; if (!state.states) { return; } history[stateId] = createHistory(state); }); history.$current = config.initial; return history; } exports.createHistory = createHistory; function updateHistory(history, stateValue) { var nextHistory = __assign({}, history, { $current: stateValue }); if (typeof stateValue === 'string') { return nextHistory; } Object.keys(stateValue).forEach(function (subStatePath) { var subHistory = history[subStatePath]; var subStateValue = stateValue[subStatePath]; if (typeof subHistory === 'string') { // this will never happen, just making TS happy return; } nextHistory[subStatePath] = updateHistory(subHistory, subStateValue); }); return nextHistory; } exports.updateHistory = updateHistory; |