one
Version:
One is a React framework for web, iOS, and Android apps.
56 lines (54 loc) • 1.4 kB
JavaScript
function removeParams(state, paramNames) {
if (!(state === null || state === void 0 ? void 0 : state.routes)) return state;
return {
...state,
routes: state.routes.map(function(route) {
var newRoute = route;
if (route.params) {
var filtered = { ...route.params };
var changed = false;
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
try {
for (var _iterator = paramNames[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
var name = _step.value;
if (name in filtered) {
delete filtered[name];
changed = true;
}
}
} catch (err) {
_didIteratorError = true;
_iteratorError = err;
} finally {
try {
if (!_iteratorNormalCompletion && _iterator.return != null) {
_iterator.return();
}
} finally {
if (_didIteratorError) {
throw _iteratorError;
}
}
}
if (changed) {
newRoute = {
...newRoute,
params: filtered
};
}
}
if (route.state) {
var newState = removeParams(route.state, paramNames);
if (newState !== route.state) {
newRoute = {
...newRoute,
state: newState
};
}
}
return newRoute;
})
};
}
export { removeParams };
//# sourceMappingURL=removeParams.native.js.map