compare-states.js 975 B

1234567891011121314151617181920212223242526272829
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.compareRouterStates = compareRouterStates;
  6. function compareRouterStates(a, b) {
  7. const stateKeys = Object.keys(a);
  8. if (stateKeys.length !== Object.keys(b).length) return false;
  9. for(let i = stateKeys.length; i--;){
  10. const key = stateKeys[i];
  11. if (key === 'query') {
  12. const queryKeys = Object.keys(a.query);
  13. if (queryKeys.length !== Object.keys(b.query).length) {
  14. return false;
  15. }
  16. for(let j = queryKeys.length; j--;){
  17. const queryKey = queryKeys[j];
  18. if (!b.query.hasOwnProperty(queryKey) || a.query[queryKey] !== b.query[queryKey]) {
  19. return false;
  20. }
  21. }
  22. } else if (!b.hasOwnProperty(key) || a[key] !== b[key]) {
  23. return false;
  24. }
  25. }
  26. return true;
  27. }
  28. //# sourceMappingURL=compare-states.js.map