@real-router/core 0.24.0 → 0.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/README.md +0 -15
  2. package/dist/cjs/index.d.ts +4 -10
  3. package/dist/cjs/index.js +1 -1
  4. package/dist/cjs/index.js.map +1 -1
  5. package/dist/cjs/metafile-cjs.json +1 -1
  6. package/dist/esm/index.d.mts +4 -10
  7. package/dist/esm/index.mjs +1 -1
  8. package/dist/esm/index.mjs.map +1 -1
  9. package/dist/esm/metafile-esm.json +1 -1
  10. package/package.json +4 -4
  11. package/src/Router.ts +11 -54
  12. package/src/RouterError.ts +1 -1
  13. package/src/constants.ts +1 -3
  14. package/src/helpers.ts +1 -1
  15. package/src/index.ts +1 -3
  16. package/src/namespaces/CloneNamespace/CloneNamespace.ts +6 -6
  17. package/src/namespaces/CloneNamespace/types.ts +3 -7
  18. package/src/namespaces/DependenciesNamespace/DependenciesNamespace.ts +2 -4
  19. package/src/namespaces/NavigationNamespace/NavigationNamespace.ts +1 -0
  20. package/src/namespaces/NavigationNamespace/transition/{wrapSyncError.ts → errorHandling.ts} +23 -17
  21. package/src/namespaces/NavigationNamespace/transition/executeLifecycleHooks.ts +6 -6
  22. package/src/namespaces/NavigationNamespace/transition/index.ts +3 -21
  23. package/src/namespaces/NavigationNamespace/types.ts +0 -4
  24. package/src/namespaces/PluginsNamespace/PluginsNamespace.ts +2 -2
  25. package/src/namespaces/RouteLifecycleNamespace/validators.ts +1 -1
  26. package/src/namespaces/RoutesNamespace/RoutesNamespace.ts +50 -31
  27. package/src/namespaces/RoutesNamespace/stateBuilder.ts +1 -1
  28. package/src/namespaces/index.ts +0 -2
  29. package/src/transitionPath.ts +4 -40
  30. package/src/typeGuards.ts +1 -1
  31. package/src/types.ts +0 -12
  32. package/src/wiring/RouterWiringBuilder.ts +1 -17
  33. package/src/wiring/types.ts +0 -3
  34. package/src/wiring/wireRouter.ts +0 -1
  35. package/src/namespaces/MiddlewareNamespace/MiddlewareNamespace.ts +0 -221
  36. package/src/namespaces/MiddlewareNamespace/constants.ts +0 -3
  37. package/src/namespaces/MiddlewareNamespace/index.ts +0 -5
  38. package/src/namespaces/MiddlewareNamespace/types.ts +0 -28
  39. package/src/namespaces/MiddlewareNamespace/validators.ts +0 -95
  40. package/src/namespaces/NavigationNamespace/transition/executeMiddleware.ts +0 -56
  41. package/src/namespaces/NavigationNamespace/transition/makeError.ts +0 -37
  42. package/src/namespaces/NavigationNamespace/transition/mergeStates.ts +0 -54
  43. package/src/namespaces/NavigationNamespace/transition/processLifecycleResult.ts +0 -69
@@ -1 +1 @@
1
- {"inputs":{"../event-emitter/dist/esm/index.mjs":{"bytes":1617,"imports":[],"format":"esm"},"../type-guards/dist/esm/index.mjs":{"bytes":3561,"imports":[],"format":"esm"},"src/constants.ts":{"bytes":4060,"imports":[],"format":"esm"},"src/fsm/routerFSM.ts":{"bytes":3369,"imports":[{"path":"@real-router/fsm","kind":"import-statement","external":true}],"format":"esm"},"src/fsm/index.ts":{"bytes":188,"imports":[{"path":"src/fsm/routerFSM.ts","kind":"import-statement","original":"./routerFSM"}],"format":"esm"},"src/helpers.ts":{"bytes":5669,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"./constants"},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"}],"format":"esm"},"src/namespaces/DependenciesNamespace/validators.ts":{"bytes":2922,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/DependenciesNamespace/DependenciesNamespace.ts":{"bytes":7136,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/DependenciesNamespace/validators.ts","kind":"import-statement","original":"./validators"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"../../helpers"}],"format":"esm"},"src/namespaces/DependenciesNamespace/index.ts":{"bytes":129,"imports":[{"path":"src/namespaces/DependenciesNamespace/DependenciesNamespace.ts","kind":"import-statement","original":"./DependenciesNamespace"}],"format":"esm"},"src/namespaces/OptionsNamespace/constants.ts":{"bytes":1156,"imports":[],"format":"esm"},"src/namespaces/OptionsNamespace/helpers.ts":{"bytes":1627,"imports":[],"format":"esm"},"src/namespaces/OptionsNamespace/validators.ts":{"bytes":6937,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/OptionsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/OptionsNamespace/OptionsNamespace.ts":{"bytes":1613,"imports":[{"path":"src/namespaces/OptionsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/OptionsNamespace/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/namespaces/OptionsNamespace/validators.ts","kind":"import-statement","original":"./validators"}],"format":"esm"},"src/namespaces/OptionsNamespace/index.ts":{"bytes":265,"imports":[{"path":"src/namespaces/OptionsNamespace/OptionsNamespace.ts","kind":"import-statement","original":"./OptionsNamespace"},{"path":"src/namespaces/OptionsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/OptionsNamespace/helpers.ts","kind":"import-statement","original":"./helpers"}],"format":"esm"},"src/namespaces/StateNamespace/helpers.ts":{"bytes":1045,"imports":[],"format":"esm"},"src/namespaces/StateNamespace/StateNamespace.ts":{"bytes":8822,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/StateNamespace/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"../../helpers"}],"format":"esm"},"src/namespaces/StateNamespace/index.ts":{"bytes":168,"imports":[{"path":"src/namespaces/StateNamespace/StateNamespace.ts","kind":"import-statement","original":"./StateNamespace"}],"format":"esm"},"src/namespaces/MiddlewareNamespace/constants.ts":{"bytes":120,"imports":[],"format":"esm"},"src/namespaces/MiddlewareNamespace/validators.ts":{"bytes":2860,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/MiddlewareNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/MiddlewareNamespace/MiddlewareNamespace.ts":{"bytes":6646,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"src/namespaces/MiddlewareNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/MiddlewareNamespace/validators.ts","kind":"import-statement","original":"./validators"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"../../helpers"}],"format":"esm"},"src/namespaces/MiddlewareNamespace/index.ts":{"bytes":179,"imports":[{"path":"src/namespaces/MiddlewareNamespace/MiddlewareNamespace.ts","kind":"import-statement","original":"./MiddlewareNamespace"}],"format":"esm"},"src/namespaces/PluginsNamespace/constants.ts":{"bytes":1120,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/PluginsNamespace/validators.ts":{"bytes":2525,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/PluginsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/PluginsNamespace/PluginsNamespace.ts":{"bytes":9761,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"src/namespaces/PluginsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/PluginsNamespace/validators.ts","kind":"import-statement","original":"./validators"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"../../helpers"}],"format":"esm"},"src/namespaces/PluginsNamespace/index.ts":{"bytes":230,"imports":[{"path":"src/namespaces/PluginsNamespace/PluginsNamespace.ts","kind":"import-statement","original":"./PluginsNamespace"},{"path":"src/namespaces/PluginsNamespace/constants.ts","kind":"import-statement","original":"./constants"}],"format":"esm"},"src/namespaces/RouteLifecycleNamespace/validators.ts":{"bytes":1876,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/RouteLifecycleNamespace/RouteLifecycleNamespace.ts":{"bytes":10462,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/RouteLifecycleNamespace/validators.ts","kind":"import-statement","original":"./validators"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"../../helpers"}],"format":"esm"},"src/namespaces/RouteLifecycleNamespace/index.ts":{"bytes":195,"imports":[{"path":"src/namespaces/RouteLifecycleNamespace/RouteLifecycleNamespace.ts","kind":"import-statement","original":"./RouteLifecycleNamespace"}],"format":"esm"},"../path-matcher/dist/esm/index.mjs":{"bytes":9530,"imports":[],"format":"esm"},"../search-params/dist/esm/index.mjs":{"bytes":3813,"imports":[],"format":"esm"},"../route-tree/dist/esm/index.mjs":{"bytes":6514,"imports":[{"path":"../path-matcher/dist/esm/index.mjs","kind":"import-statement","original":"path-matcher"},{"path":"../search-params/dist/esm/index.mjs","kind":"import-statement","original":"search-params"}],"format":"esm"},"src/namespaces/RoutesNamespace/constants.ts":{"bytes":503,"imports":[],"format":"esm"},"src/namespaces/RoutesNamespace/helpers.ts":{"bytes":14659,"imports":[{"path":"../route-tree/dist/esm/index.mjs","kind":"import-statement","original":"route-tree"},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"}],"format":"esm"},"src/namespaces/RoutesNamespace/stateBuilder.ts":{"bytes":2209,"imports":[],"format":"esm"},"src/namespaces/RoutesNamespace/validators.ts":{"bytes":9696,"imports":[{"path":"../route-tree/dist/esm/index.mjs","kind":"import-statement","original":"route-tree"},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/RoutesNamespace/helpers.ts","kind":"import-statement","original":"./helpers"}],"format":"esm"},"src/transitionPath.ts":{"bytes":14307,"imports":[],"format":"esm"},"src/namespaces/RoutesNamespace/RoutesNamespace.ts":{"bytes":44641,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../route-tree/dist/esm/index.mjs","kind":"import-statement","original":"route-tree"},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/RoutesNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/RoutesNamespace/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/namespaces/RoutesNamespace/stateBuilder.ts","kind":"import-statement","original":"./stateBuilder"},{"path":"src/namespaces/RoutesNamespace/validators.ts","kind":"import-statement","original":"./validators"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/transitionPath.ts","kind":"import-statement","original":"../../transitionPath"}],"format":"esm"},"src/namespaces/RoutesNamespace/index.ts":{"bytes":296,"imports":[{"path":"src/namespaces/RoutesNamespace/RoutesNamespace.ts","kind":"import-statement","original":"./RoutesNamespace"},{"path":"src/namespaces/RoutesNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/RoutesNamespace/helpers.ts","kind":"import-statement","original":"./helpers"}],"format":"esm"},"src/namespaces/NavigationNamespace/transition/wrapSyncError.ts":{"bytes":2509,"imports":[],"format":"esm"},"src/RouterError.ts":{"bytes":10112,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"./helpers"}],"format":"esm"},"src/namespaces/NavigationNamespace/transition/makeError.ts":{"bytes":840,"imports":[{"path":"src/namespaces/NavigationNamespace/transition/wrapSyncError.ts","kind":"import-statement","original":"./wrapSyncError"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../../RouterError"}],"format":"esm"},"src/namespaces/NavigationNamespace/transition/executeLifecycleHooks.ts":{"bytes":1259,"imports":[{"path":"src/namespaces/NavigationNamespace/transition/makeError.ts","kind":"import-statement","original":"./makeError"},{"path":"src/constants.ts","kind":"import-statement","original":"../../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../../RouterError"}],"format":"esm"},"src/namespaces/NavigationNamespace/transition/mergeStates.ts":{"bytes":1900,"imports":[],"format":"esm"},"src/namespaces/NavigationNamespace/transition/processLifecycleResult.ts":{"bytes":1779,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/constants.ts","kind":"import-statement","original":"../../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../../RouterError"}],"format":"esm"},"src/namespaces/NavigationNamespace/transition/executeMiddleware.ts":{"bytes":1818,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/NavigationNamespace/transition/makeError.ts","kind":"import-statement","original":"./makeError"},{"path":"src/namespaces/NavigationNamespace/transition/mergeStates.ts","kind":"import-statement","original":"./mergeStates"},{"path":"src/namespaces/NavigationNamespace/transition/processLifecycleResult.ts","kind":"import-statement","original":"./processLifecycleResult"},{"path":"src/constants.ts","kind":"import-statement","original":"../../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../../RouterError"}],"format":"esm"},"src/namespaces/NavigationNamespace/transition/index.ts":{"bytes":2889,"imports":[{"path":"src/namespaces/NavigationNamespace/transition/executeLifecycleHooks.ts","kind":"import-statement","original":"./executeLifecycleHooks"},{"path":"src/namespaces/NavigationNamespace/transition/executeMiddleware.ts","kind":"import-statement","original":"./executeMiddleware"},{"path":"src/constants.ts","kind":"import-statement","original":"../../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../../RouterError"},{"path":"src/transitionPath.ts","kind":"import-statement","original":"../../../transitionPath"}],"format":"esm"},"src/namespaces/NavigationNamespace/validators.ts":{"bytes":2474,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"}],"format":"esm"},"src/namespaces/NavigationNamespace/NavigationNamespace.ts":{"bytes":8747,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"src/namespaces/NavigationNamespace/transition/index.ts","kind":"import-statement","original":"./transition"},{"path":"src/namespaces/NavigationNamespace/validators.ts","kind":"import-statement","original":"./validators"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../RouterError"},{"path":"src/namespaces/OptionsNamespace/index.ts","kind":"import-statement","original":"../OptionsNamespace"}],"format":"esm"},"src/namespaces/NavigationNamespace/index.ts":{"bytes":203,"imports":[{"path":"src/namespaces/NavigationNamespace/NavigationNamespace.ts","kind":"import-statement","original":"./NavigationNamespace"}],"format":"esm"},"src/namespaces/RouterLifecycleNamespace/RouterLifecycleNamespace.ts":{"bytes":5027,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../RouterError"}],"format":"esm"},"src/namespaces/RouterLifecycleNamespace/index.ts":{"bytes":199,"imports":[{"path":"src/namespaces/RouterLifecycleNamespace/RouterLifecycleNamespace.ts","kind":"import-statement","original":"./RouterLifecycleNamespace"}],"format":"esm"},"src/namespaces/CloneNamespace/CloneNamespace.ts":{"bytes":3837,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"}],"format":"esm"},"src/namespaces/CloneNamespace/index.ts":{"bytes":124,"imports":[{"path":"src/namespaces/CloneNamespace/CloneNamespace.ts","kind":"import-statement","original":"./CloneNamespace"}],"format":"esm"},"src/namespaces/EventBusNamespace/EventBusNamespace.ts":{"bytes":7224,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/fsm/index.ts","kind":"import-statement","original":"../../fsm"}],"format":"esm"},"src/namespaces/EventBusNamespace/index.ts":{"bytes":166,"imports":[{"path":"src/namespaces/EventBusNamespace/EventBusNamespace.ts","kind":"import-statement","original":"./EventBusNamespace"}],"format":"esm"},"src/namespaces/index.ts":{"bytes":1026,"imports":[{"path":"src/namespaces/DependenciesNamespace/index.ts","kind":"import-statement","original":"./DependenciesNamespace"},{"path":"src/namespaces/OptionsNamespace/index.ts","kind":"import-statement","original":"./OptionsNamespace"},{"path":"src/namespaces/StateNamespace/index.ts","kind":"import-statement","original":"./StateNamespace"},{"path":"src/namespaces/MiddlewareNamespace/index.ts","kind":"import-statement","original":"./MiddlewareNamespace"},{"path":"src/namespaces/PluginsNamespace/index.ts","kind":"import-statement","original":"./PluginsNamespace"},{"path":"src/namespaces/RouteLifecycleNamespace/index.ts","kind":"import-statement","original":"./RouteLifecycleNamespace"},{"path":"src/namespaces/RoutesNamespace/index.ts","kind":"import-statement","original":"./RoutesNamespace"},{"path":"src/namespaces/NavigationNamespace/index.ts","kind":"import-statement","original":"./NavigationNamespace"},{"path":"src/namespaces/RouterLifecycleNamespace/index.ts","kind":"import-statement","original":"./RouterLifecycleNamespace"},{"path":"src/namespaces/CloneNamespace/index.ts","kind":"import-statement","original":"./CloneNamespace"},{"path":"src/namespaces/EventBusNamespace/index.ts","kind":"import-statement","original":"./EventBusNamespace"}],"format":"esm"},"src/namespaces/RouterLifecycleNamespace/constants.ts":{"bytes":1142,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../RouterError"}],"format":"esm"},"src/typeGuards.ts":{"bytes":1841,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"}],"format":"esm"},"src/wiring/RouterWiringBuilder.ts":{"bytes":9035,"imports":[],"format":"esm"},"src/wiring/wireRouter.ts":{"bytes":1170,"imports":[],"format":"esm"},"src/wiring/index.ts":{"bytes":190,"imports":[{"path":"src/wiring/RouterWiringBuilder.ts","kind":"import-statement","original":"./RouterWiringBuilder"},{"path":"src/wiring/wireRouter.ts","kind":"import-statement","original":"./wireRouter"}],"format":"esm"},"src/Router.ts":{"bytes":34426,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../event-emitter/dist/esm/index.mjs","kind":"import-statement","original":"event-emitter"},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/fsm/index.ts","kind":"import-statement","original":"./fsm"},{"path":"src/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/namespaces/index.ts","kind":"import-statement","original":"./namespaces"},{"path":"src/namespaces/RouterLifecycleNamespace/constants.ts","kind":"import-statement","original":"./namespaces/RouterLifecycleNamespace/constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"./RouterError"},{"path":"src/transitionPath.ts","kind":"import-statement","original":"./transitionPath"},{"path":"src/typeGuards.ts","kind":"import-statement","original":"./typeGuards"},{"path":"src/wiring/index.ts","kind":"import-statement","original":"./wiring"}],"format":"esm"},"src/createRouter.ts":{"bytes":897,"imports":[{"path":"src/Router.ts","kind":"import-statement","original":"./Router"}],"format":"esm"},"src/getNavigator.ts":{"bytes":463,"imports":[],"format":"esm"},"src/index.ts":{"bytes":1034,"imports":[{"path":"src/Router.ts","kind":"import-statement","original":"./Router"},{"path":"src/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"./RouterError"},{"path":"src/createRouter.ts","kind":"import-statement","original":"./createRouter"},{"path":"src/getNavigator.ts","kind":"import-statement","original":"./getNavigator"}],"format":"esm"}},"outputs":{"dist/esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":373361},"dist/esm/index.mjs":{"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/fsm","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true}],"exports":["Router","RouterError","constants","createRouter","errorCodes","events","getNavigator"],"entryPoint":"src/index.ts","inputs":{"src/Router.ts":{"bytesInOutput":24063},"../event-emitter/dist/esm/index.mjs":{"bytesInOutput":2376},"../type-guards/dist/esm/index.mjs":{"bytesInOutput":3119},"src/constants.ts":{"bytesInOutput":2575},"src/fsm/routerFSM.ts":{"bytesInOutput":1269},"src/fsm/index.ts":{"bytesInOutput":0},"src/helpers.ts":{"bytesInOutput":1794},"src/namespaces/DependenciesNamespace/DependenciesNamespace.ts":{"bytesInOutput":5317},"src/namespaces/DependenciesNamespace/validators.ts":{"bytesInOutput":1493},"src/namespaces/DependenciesNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/index.ts":{"bytesInOutput":0},"src/namespaces/OptionsNamespace/constants.ts":{"bytesInOutput":705},"src/namespaces/OptionsNamespace/helpers.ts":{"bytesInOutput":385},"src/namespaces/OptionsNamespace/validators.ts":{"bytesInOutput":4294},"src/namespaces/OptionsNamespace/OptionsNamespace.ts":{"bytesInOutput":930},"src/namespaces/OptionsNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/StateNamespace/helpers.ts":{"bytesInOutput":580},"src/namespaces/StateNamespace/StateNamespace.ts":{"bytesInOutput":6391},"src/namespaces/StateNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/MiddlewareNamespace/MiddlewareNamespace.ts":{"bytesInOutput":4561},"src/namespaces/MiddlewareNamespace/constants.ts":{"bytesInOutput":45},"src/namespaces/MiddlewareNamespace/validators.ts":{"bytesInOutput":1434},"src/namespaces/MiddlewareNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/PluginsNamespace/PluginsNamespace.ts":{"bytesInOutput":7296},"src/namespaces/PluginsNamespace/constants.ts":{"bytesInOutput":483},"src/namespaces/PluginsNamespace/validators.ts":{"bytesInOutput":1421},"src/namespaces/PluginsNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/RouteLifecycleNamespace/RouteLifecycleNamespace.ts":{"bytesInOutput":7676},"src/namespaces/RouteLifecycleNamespace/validators.ts":{"bytesInOutput":901},"src/namespaces/RouteLifecycleNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/RoutesNamespace/RoutesNamespace.ts":{"bytesInOutput":32356},"../path-matcher/dist/esm/index.mjs":{"bytesInOutput":13131},"../search-params/dist/esm/index.mjs":{"bytesInOutput":4200},"../route-tree/dist/esm/index.mjs":{"bytesInOutput":8191},"src/namespaces/RoutesNamespace/constants.ts":{"bytesInOutput":82},"src/namespaces/RoutesNamespace/helpers.ts":{"bytesInOutput":8668},"src/namespaces/RoutesNamespace/stateBuilder.ts":{"bytesInOutput":311},"src/namespaces/RoutesNamespace/validators.ts":{"bytesInOutput":5173},"src/transitionPath.ts":{"bytesInOutput":4558},"src/namespaces/RoutesNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/NavigationNamespace/NavigationNamespace.ts":{"bytesInOutput":7090},"src/namespaces/NavigationNamespace/transition/wrapSyncError.ts":{"bytesInOutput":747},"src/RouterError.ts":{"bytesInOutput":8509},"src/namespaces/NavigationNamespace/transition/makeError.ts":{"bytesInOutput":217},"src/namespaces/NavigationNamespace/transition/executeLifecycleHooks.ts":{"bytesInOutput":649},"src/namespaces/NavigationNamespace/transition/executeMiddleware.ts":{"bytesInOutput":1075},"src/namespaces/NavigationNamespace/transition/mergeStates.ts":{"bytesInOutput":684},"src/namespaces/NavigationNamespace/transition/processLifecycleResult.ts":{"bytesInOutput":995},"src/namespaces/NavigationNamespace/transition/index.ts":{"bytesInOutput":2025},"src/namespaces/NavigationNamespace/validators.ts":{"bytesInOutput":1390},"src/namespaces/NavigationNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/RouterLifecycleNamespace/RouterLifecycleNamespace.ts":{"bytesInOutput":3120},"src/namespaces/RouterLifecycleNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/CloneNamespace/CloneNamespace.ts":{"bytesInOutput":2497},"src/namespaces/CloneNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/EventBusNamespace/EventBusNamespace.ts":{"bytesInOutput":5178},"src/namespaces/EventBusNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/RouterLifecycleNamespace/constants.ts":{"bytesInOutput":91},"src/typeGuards.ts":{"bytesInOutput":1154},"src/wiring/RouterWiringBuilder.ts":{"bytesInOutput":6920},"src/wiring/index.ts":{"bytesInOutput":0},"src/wiring/wireRouter.ts":{"bytesInOutput":332},"src/index.ts":{"bytesInOutput":0},"src/createRouter.ts":{"bytesInOutput":126},"src/getNavigator.ts":{"bytesInOutput":217}},"bytes":202337}}}
1
+ {"inputs":{"../event-emitter/dist/esm/index.mjs":{"bytes":1617,"imports":[],"format":"esm"},"../type-guards/dist/esm/index.mjs":{"bytes":3561,"imports":[],"format":"esm"},"src/constants.ts":{"bytes":3988,"imports":[],"format":"esm"},"src/fsm/routerFSM.ts":{"bytes":3369,"imports":[{"path":"@real-router/fsm","kind":"import-statement","external":true}],"format":"esm"},"src/fsm/index.ts":{"bytes":188,"imports":[{"path":"src/fsm/routerFSM.ts","kind":"import-statement","original":"./routerFSM"}],"format":"esm"},"src/helpers.ts":{"bytes":5658,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"./constants"},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"}],"format":"esm"},"src/namespaces/DependenciesNamespace/validators.ts":{"bytes":2922,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/DependenciesNamespace/DependenciesNamespace.ts":{"bytes":7110,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/DependenciesNamespace/validators.ts","kind":"import-statement","original":"./validators"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"../../helpers"}],"format":"esm"},"src/namespaces/DependenciesNamespace/index.ts":{"bytes":129,"imports":[{"path":"src/namespaces/DependenciesNamespace/DependenciesNamespace.ts","kind":"import-statement","original":"./DependenciesNamespace"}],"format":"esm"},"src/namespaces/OptionsNamespace/constants.ts":{"bytes":1156,"imports":[],"format":"esm"},"src/namespaces/OptionsNamespace/helpers.ts":{"bytes":1627,"imports":[],"format":"esm"},"src/namespaces/OptionsNamespace/validators.ts":{"bytes":6937,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/OptionsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/OptionsNamespace/OptionsNamespace.ts":{"bytes":1613,"imports":[{"path":"src/namespaces/OptionsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/OptionsNamespace/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/namespaces/OptionsNamespace/validators.ts","kind":"import-statement","original":"./validators"}],"format":"esm"},"src/namespaces/OptionsNamespace/index.ts":{"bytes":265,"imports":[{"path":"src/namespaces/OptionsNamespace/OptionsNamespace.ts","kind":"import-statement","original":"./OptionsNamespace"},{"path":"src/namespaces/OptionsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/OptionsNamespace/helpers.ts","kind":"import-statement","original":"./helpers"}],"format":"esm"},"src/namespaces/StateNamespace/helpers.ts":{"bytes":1045,"imports":[],"format":"esm"},"src/namespaces/StateNamespace/StateNamespace.ts":{"bytes":8822,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/StateNamespace/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"../../helpers"}],"format":"esm"},"src/namespaces/StateNamespace/index.ts":{"bytes":168,"imports":[{"path":"src/namespaces/StateNamespace/StateNamespace.ts","kind":"import-statement","original":"./StateNamespace"}],"format":"esm"},"src/namespaces/PluginsNamespace/constants.ts":{"bytes":1120,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/PluginsNamespace/validators.ts":{"bytes":2525,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/PluginsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/PluginsNamespace/PluginsNamespace.ts":{"bytes":9720,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"src/namespaces/PluginsNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/PluginsNamespace/validators.ts","kind":"import-statement","original":"./validators"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"../../helpers"}],"format":"esm"},"src/namespaces/PluginsNamespace/index.ts":{"bytes":230,"imports":[{"path":"src/namespaces/PluginsNamespace/PluginsNamespace.ts","kind":"import-statement","original":"./PluginsNamespace"},{"path":"src/namespaces/PluginsNamespace/constants.ts","kind":"import-statement","original":"./constants"}],"format":"esm"},"src/namespaces/RouteLifecycleNamespace/validators.ts":{"bytes":1873,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"}],"format":"esm"},"src/namespaces/RouteLifecycleNamespace/RouteLifecycleNamespace.ts":{"bytes":10462,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/RouteLifecycleNamespace/validators.ts","kind":"import-statement","original":"./validators"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"../../helpers"}],"format":"esm"},"src/namespaces/RouteLifecycleNamespace/index.ts":{"bytes":195,"imports":[{"path":"src/namespaces/RouteLifecycleNamespace/RouteLifecycleNamespace.ts","kind":"import-statement","original":"./RouteLifecycleNamespace"}],"format":"esm"},"../path-matcher/dist/esm/index.mjs":{"bytes":9530,"imports":[],"format":"esm"},"../search-params/dist/esm/index.mjs":{"bytes":3813,"imports":[],"format":"esm"},"../route-tree/dist/esm/index.mjs":{"bytes":6514,"imports":[{"path":"../path-matcher/dist/esm/index.mjs","kind":"import-statement","original":"path-matcher"},{"path":"../search-params/dist/esm/index.mjs","kind":"import-statement","original":"search-params"}],"format":"esm"},"src/namespaces/RoutesNamespace/constants.ts":{"bytes":503,"imports":[],"format":"esm"},"src/namespaces/RoutesNamespace/helpers.ts":{"bytes":14659,"imports":[{"path":"../route-tree/dist/esm/index.mjs","kind":"import-statement","original":"route-tree"},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"}],"format":"esm"},"src/namespaces/RoutesNamespace/stateBuilder.ts":{"bytes":2220,"imports":[],"format":"esm"},"src/namespaces/RoutesNamespace/validators.ts":{"bytes":9696,"imports":[{"path":"../route-tree/dist/esm/index.mjs","kind":"import-statement","original":"route-tree"},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/RoutesNamespace/helpers.ts","kind":"import-statement","original":"./helpers"}],"format":"esm"},"src/transitionPath.ts":{"bytes":13076,"imports":[],"format":"esm"},"src/namespaces/RoutesNamespace/RoutesNamespace.ts":{"bytes":45334,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../route-tree/dist/esm/index.mjs","kind":"import-statement","original":"route-tree"},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/namespaces/RoutesNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/RoutesNamespace/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/namespaces/RoutesNamespace/stateBuilder.ts","kind":"import-statement","original":"./stateBuilder"},{"path":"src/namespaces/RoutesNamespace/validators.ts","kind":"import-statement","original":"./validators"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/transitionPath.ts","kind":"import-statement","original":"../../transitionPath"}],"format":"esm"},"src/namespaces/RoutesNamespace/index.ts":{"bytes":296,"imports":[{"path":"src/namespaces/RoutesNamespace/RoutesNamespace.ts","kind":"import-statement","original":"./RoutesNamespace"},{"path":"src/namespaces/RoutesNamespace/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/namespaces/RoutesNamespace/helpers.ts","kind":"import-statement","original":"./helpers"}],"format":"esm"},"src/RouterError.ts":{"bytes":10101,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/helpers.ts","kind":"import-statement","original":"./helpers"}],"format":"esm"},"src/namespaces/NavigationNamespace/transition/errorHandling.ts":{"bytes":2532,"imports":[{"path":"src/RouterError.ts","kind":"import-statement","original":"../../../RouterError"}],"format":"esm"},"src/namespaces/NavigationNamespace/transition/executeLifecycleHooks.ts":{"bytes":1257,"imports":[{"path":"src/namespaces/NavigationNamespace/transition/errorHandling.ts","kind":"import-statement","original":"./errorHandling"},{"path":"src/constants.ts","kind":"import-statement","original":"../../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../../RouterError"}],"format":"esm"},"src/namespaces/NavigationNamespace/transition/index.ts":{"bytes":2437,"imports":[{"path":"src/namespaces/NavigationNamespace/transition/executeLifecycleHooks.ts","kind":"import-statement","original":"./executeLifecycleHooks"},{"path":"src/constants.ts","kind":"import-statement","original":"../../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../../RouterError"},{"path":"src/transitionPath.ts","kind":"import-statement","original":"../../../transitionPath"}],"format":"esm"},"src/namespaces/NavigationNamespace/validators.ts":{"bytes":2474,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"}],"format":"esm"},"src/namespaces/NavigationNamespace/NavigationNamespace.ts":{"bytes":8922,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"src/namespaces/NavigationNamespace/transition/index.ts","kind":"import-statement","original":"./transition"},{"path":"src/namespaces/NavigationNamespace/validators.ts","kind":"import-statement","original":"./validators"},{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../RouterError"},{"path":"src/namespaces/OptionsNamespace/index.ts","kind":"import-statement","original":"../OptionsNamespace"}],"format":"esm"},"src/namespaces/NavigationNamespace/index.ts":{"bytes":203,"imports":[{"path":"src/namespaces/NavigationNamespace/NavigationNamespace.ts","kind":"import-statement","original":"./NavigationNamespace"}],"format":"esm"},"src/namespaces/RouterLifecycleNamespace/RouterLifecycleNamespace.ts":{"bytes":5027,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../RouterError"}],"format":"esm"},"src/namespaces/RouterLifecycleNamespace/index.ts":{"bytes":199,"imports":[{"path":"src/namespaces/RouterLifecycleNamespace/RouterLifecycleNamespace.ts","kind":"import-statement","original":"./RouterLifecycleNamespace"}],"format":"esm"},"src/namespaces/CloneNamespace/CloneNamespace.ts":{"bytes":3745,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"}],"format":"esm"},"src/namespaces/CloneNamespace/index.ts":{"bytes":124,"imports":[{"path":"src/namespaces/CloneNamespace/CloneNamespace.ts","kind":"import-statement","original":"./CloneNamespace"}],"format":"esm"},"src/namespaces/EventBusNamespace/EventBusNamespace.ts":{"bytes":7224,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/fsm/index.ts","kind":"import-statement","original":"../../fsm"}],"format":"esm"},"src/namespaces/EventBusNamespace/index.ts":{"bytes":166,"imports":[{"path":"src/namespaces/EventBusNamespace/EventBusNamespace.ts","kind":"import-statement","original":"./EventBusNamespace"}],"format":"esm"},"src/namespaces/index.ts":{"bytes":964,"imports":[{"path":"src/namespaces/DependenciesNamespace/index.ts","kind":"import-statement","original":"./DependenciesNamespace"},{"path":"src/namespaces/OptionsNamespace/index.ts","kind":"import-statement","original":"./OptionsNamespace"},{"path":"src/namespaces/StateNamespace/index.ts","kind":"import-statement","original":"./StateNamespace"},{"path":"src/namespaces/PluginsNamespace/index.ts","kind":"import-statement","original":"./PluginsNamespace"},{"path":"src/namespaces/RouteLifecycleNamespace/index.ts","kind":"import-statement","original":"./RouteLifecycleNamespace"},{"path":"src/namespaces/RoutesNamespace/index.ts","kind":"import-statement","original":"./RoutesNamespace"},{"path":"src/namespaces/NavigationNamespace/index.ts","kind":"import-statement","original":"./NavigationNamespace"},{"path":"src/namespaces/RouterLifecycleNamespace/index.ts","kind":"import-statement","original":"./RouterLifecycleNamespace"},{"path":"src/namespaces/CloneNamespace/index.ts","kind":"import-statement","original":"./CloneNamespace"},{"path":"src/namespaces/EventBusNamespace/index.ts","kind":"import-statement","original":"./EventBusNamespace"}],"format":"esm"},"src/namespaces/RouterLifecycleNamespace/constants.ts":{"bytes":1142,"imports":[{"path":"src/constants.ts","kind":"import-statement","original":"../../constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"../../RouterError"}],"format":"esm"},"src/typeGuards.ts":{"bytes":1830,"imports":[{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"}],"format":"esm"},"src/wiring/RouterWiringBuilder.ts":{"bytes":8392,"imports":[],"format":"esm"},"src/wiring/wireRouter.ts":{"bytes":1138,"imports":[],"format":"esm"},"src/wiring/index.ts":{"bytes":190,"imports":[{"path":"src/wiring/RouterWiringBuilder.ts","kind":"import-statement","original":"./RouterWiringBuilder"},{"path":"src/wiring/wireRouter.ts","kind":"import-statement","original":"./wireRouter"}],"format":"esm"},"src/Router.ts":{"bytes":33062,"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"../event-emitter/dist/esm/index.mjs","kind":"import-statement","original":"event-emitter"},{"path":"../type-guards/dist/esm/index.mjs","kind":"import-statement","original":"type-guards"},{"path":"src/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/fsm/index.ts","kind":"import-statement","original":"./fsm"},{"path":"src/helpers.ts","kind":"import-statement","original":"./helpers"},{"path":"src/namespaces/index.ts","kind":"import-statement","original":"./namespaces"},{"path":"src/namespaces/RouterLifecycleNamespace/constants.ts","kind":"import-statement","original":"./namespaces/RouterLifecycleNamespace/constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"./RouterError"},{"path":"src/transitionPath.ts","kind":"import-statement","original":"./transitionPath"},{"path":"src/typeGuards.ts","kind":"import-statement","original":"./typeGuards"},{"path":"src/wiring/index.ts","kind":"import-statement","original":"./wiring"}],"format":"esm"},"src/createRouter.ts":{"bytes":897,"imports":[{"path":"src/Router.ts","kind":"import-statement","original":"./Router"}],"format":"esm"},"src/getNavigator.ts":{"bytes":463,"imports":[],"format":"esm"},"src/index.ts":{"bytes":988,"imports":[{"path":"src/Router.ts","kind":"import-statement","original":"./Router"},{"path":"src/constants.ts","kind":"import-statement","original":"./constants"},{"path":"src/RouterError.ts","kind":"import-statement","original":"./RouterError"},{"path":"src/createRouter.ts","kind":"import-statement","original":"./createRouter"},{"path":"src/getNavigator.ts","kind":"import-statement","original":"./getNavigator"}],"format":"esm"}},"outputs":{"dist/esm/index.mjs.map":{"imports":[],"exports":[],"inputs":{},"bytes":347139},"dist/esm/index.mjs":{"imports":[{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/fsm","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true},{"path":"@real-router/logger","kind":"import-statement","external":true}],"exports":["Router","RouterError","constants","createRouter","errorCodes","events","getNavigator"],"entryPoint":"src/index.ts","inputs":{"src/Router.ts":{"bytesInOutput":23117},"../event-emitter/dist/esm/index.mjs":{"bytesInOutput":2376},"../type-guards/dist/esm/index.mjs":{"bytesInOutput":3119},"src/constants.ts":{"bytesInOutput":2515},"src/fsm/routerFSM.ts":{"bytesInOutput":1269},"src/fsm/index.ts":{"bytesInOutput":0},"src/helpers.ts":{"bytesInOutput":1794},"src/namespaces/DependenciesNamespace/DependenciesNamespace.ts":{"bytesInOutput":5291},"src/namespaces/DependenciesNamespace/validators.ts":{"bytesInOutput":1493},"src/namespaces/DependenciesNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/index.ts":{"bytesInOutput":0},"src/namespaces/OptionsNamespace/constants.ts":{"bytesInOutput":705},"src/namespaces/OptionsNamespace/helpers.ts":{"bytesInOutput":385},"src/namespaces/OptionsNamespace/validators.ts":{"bytesInOutput":4294},"src/namespaces/OptionsNamespace/OptionsNamespace.ts":{"bytesInOutput":930},"src/namespaces/OptionsNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/StateNamespace/helpers.ts":{"bytesInOutput":580},"src/namespaces/StateNamespace/StateNamespace.ts":{"bytesInOutput":6391},"src/namespaces/StateNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/PluginsNamespace/PluginsNamespace.ts":{"bytesInOutput":7247},"src/namespaces/PluginsNamespace/constants.ts":{"bytesInOutput":482},"src/namespaces/PluginsNamespace/validators.ts":{"bytesInOutput":1421},"src/namespaces/PluginsNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/RouteLifecycleNamespace/RouteLifecycleNamespace.ts":{"bytesInOutput":7676},"src/namespaces/RouteLifecycleNamespace/validators.ts":{"bytesInOutput":898},"src/namespaces/RouteLifecycleNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/RoutesNamespace/RoutesNamespace.ts":{"bytesInOutput":32761},"../path-matcher/dist/esm/index.mjs":{"bytesInOutput":13131},"../search-params/dist/esm/index.mjs":{"bytesInOutput":4200},"../route-tree/dist/esm/index.mjs":{"bytesInOutput":8191},"src/namespaces/RoutesNamespace/constants.ts":{"bytesInOutput":82},"src/namespaces/RoutesNamespace/helpers.ts":{"bytesInOutput":8668},"src/namespaces/RoutesNamespace/stateBuilder.ts":{"bytesInOutput":311},"src/namespaces/RoutesNamespace/validators.ts":{"bytesInOutput":5173},"src/transitionPath.ts":{"bytesInOutput":3928},"src/namespaces/RoutesNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/NavigationNamespace/NavigationNamespace.ts":{"bytesInOutput":7090},"src/RouterError.ts":{"bytesInOutput":8509},"src/namespaces/NavigationNamespace/transition/errorHandling.ts":{"bytesInOutput":949},"src/namespaces/NavigationNamespace/transition/executeLifecycleHooks.ts":{"bytesInOutput":645},"src/namespaces/NavigationNamespace/transition/index.ts":{"bytesInOutput":1614},"src/namespaces/NavigationNamespace/validators.ts":{"bytesInOutput":1390},"src/namespaces/NavigationNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/RouterLifecycleNamespace/RouterLifecycleNamespace.ts":{"bytesInOutput":3120},"src/namespaces/RouterLifecycleNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/CloneNamespace/CloneNamespace.ts":{"bytesInOutput":2438},"src/namespaces/CloneNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/EventBusNamespace/EventBusNamespace.ts":{"bytesInOutput":5178},"src/namespaces/EventBusNamespace/index.ts":{"bytesInOutput":0},"src/namespaces/RouterLifecycleNamespace/constants.ts":{"bytesInOutput":91},"src/typeGuards.ts":{"bytesInOutput":1154},"src/wiring/RouterWiringBuilder.ts":{"bytesInOutput":6507},"src/wiring/index.ts":{"bytesInOutput":0},"src/wiring/wireRouter.ts":{"bytesInOutput":300},"src/index.ts":{"bytesInOutput":0},"src/createRouter.ts":{"bytesInOutput":126},"src/getNavigator.ts":{"bytesInOutput":217}},"bytes":190895}}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@real-router/core",
3
- "version": "0.24.0",
3
+ "version": "0.25.0",
4
4
  "type": "commonjs",
5
5
  "description": "A simple, powerful, view-agnostic, modular and extensible router",
6
6
  "main": "./dist/cjs/index.js",
@@ -49,12 +49,12 @@
49
49
  "dependencies": {
50
50
  "@real-router/fsm": "^0.2.0",
51
51
  "@real-router/logger": "^0.2.0",
52
- "@real-router/types": "^0.14.0"
52
+ "@real-router/types": "^0.15.0"
53
53
  },
54
54
  "devDependencies": {
55
55
  "event-emitter": "^0.1.0",
56
- "route-tree": "^0.3.2",
57
- "type-guards": "^0.2.1"
56
+ "route-tree": "^0.3.3",
57
+ "type-guards": "^0.2.2"
58
58
  },
59
59
  "scripts": {
60
60
  "build": "tsup",
package/src/Router.ts CHANGED
@@ -18,7 +18,6 @@ import {
18
18
  CloneNamespace,
19
19
  DependenciesNamespace,
20
20
  EventBusNamespace,
21
- MiddlewareNamespace,
22
21
  NavigationNamespace,
23
22
  OptionsNamespace,
24
23
  PluginsNamespace,
@@ -37,7 +36,6 @@ import type {
37
36
  EventMethodMap,
38
37
  GuardFnFactory,
39
38
  Limits,
40
- MiddlewareFactory,
41
39
  PluginFactory,
42
40
  Route,
43
41
  RouteConfigUpdate,
@@ -69,7 +67,6 @@ import type { CreateMatcherOptions } from "route-tree";
69
67
  * - StateNamespace: state storage (getState, setState, getPreviousState)
70
68
  * - RoutesNamespace: route tree operations
71
69
  * - RouteLifecycleNamespace: canActivate/canDeactivate guards
72
- * - MiddlewareNamespace: middleware chain
73
70
  * - PluginsNamespace: plugin lifecycle
74
71
  * - NavigationNamespace: navigate, navigateToState
75
72
  * - RouterLifecycleNamespace: start, stop, isStarted
@@ -92,7 +89,6 @@ export class Router<
92
89
  readonly #state: StateNamespace;
93
90
  readonly #routes: RoutesNamespace<Dependencies>;
94
91
  readonly #routeLifecycle: RouteLifecycleNamespace<Dependencies>;
95
- readonly #middleware: MiddlewareNamespace<Dependencies>;
96
92
  readonly #plugins: PluginsNamespace<Dependencies>;
97
93
  readonly #navigation: NavigationNamespace;
98
94
  readonly #lifecycle: RouterLifecycleNamespace;
@@ -165,7 +161,6 @@ export class Router<
165
161
  deriveMatcherOptions(this.#options.get()),
166
162
  );
167
163
  this.#routeLifecycle = new RouteLifecycleNamespace<Dependencies>();
168
- this.#middleware = new MiddlewareNamespace<Dependencies>();
169
164
  this.#plugins = new PluginsNamespace<Dependencies>();
170
165
  this.#navigation = new NavigationNamespace();
171
166
  this.#lifecycle = new RouterLifecycleNamespace();
@@ -204,7 +199,6 @@ export class Router<
204
199
  state: this.#state,
205
200
  routes: this.#routes,
206
201
  routeLifecycle: this.#routeLifecycle,
207
- middleware: this.#middleware,
208
202
  plugins: this.#plugins,
209
203
  navigation: this.#navigation,
210
204
  lifecycle: this.#lifecycle,
@@ -226,6 +220,7 @@ export class Router<
226
220
  this.removeRoute = this.removeRoute.bind(this);
227
221
  this.clearRoutes = this.clearRoutes.bind(this);
228
222
  this.getRoute = this.getRoute.bind(this);
223
+ this.getRouteConfig = this.getRouteConfig.bind(this);
229
224
  this.hasRoute = this.hasRoute.bind(this);
230
225
  this.updateRoute = this.updateRoute.bind(this);
231
226
 
@@ -265,8 +260,6 @@ export class Router<
265
260
  // Plugins
266
261
  this.usePlugin = this.usePlugin.bind(this);
267
262
 
268
- // Middleware
269
- this.useMiddleware = this.useMiddleware.bind(this);
270
263
  // Dependencies
271
264
  this.setDependency = this.setDependency.bind(this);
272
265
  this.setDependencies = this.setDependencies.bind(this);
@@ -386,6 +379,10 @@ export class Router<
386
379
  return this.#routes.getRoute(name);
387
380
  }
388
381
 
382
+ getRouteConfig(name: string): Record<string, unknown> | undefined {
383
+ return this.#routes.getRouteConfig(name);
384
+ }
385
+
389
386
  hasRoute(name: string): boolean {
390
387
  if (!this.#noValidate) {
391
388
  validateRouteName(name, "hasRoute");
@@ -715,7 +712,6 @@ export class Router<
715
712
  this.#eventBus.clearAll();
716
713
 
717
714
  this.#plugins.disposeAll();
718
- this.#middleware.clearAll();
719
715
  this.#routes.clearRoutes();
720
716
  this.#routeLifecycle.clearAll();
721
717
  this.#state.reset();
@@ -858,48 +854,6 @@ export class Router<
858
854
  return this.#plugins.use(...plugins);
859
855
  }
860
856
 
861
- // ============================================================================
862
- // Middleware
863
- // ============================================================================
864
-
865
- useMiddleware(
866
- ...middlewares: MiddlewareFactory<Dependencies>[]
867
- ): Unsubscribe {
868
- if (!this.#noValidate) {
869
- // 1. Validate input arguments
870
- MiddlewareNamespace.validateUseMiddlewareArgs<Dependencies>(middlewares);
871
-
872
- // 2. Validate no duplicates
873
- MiddlewareNamespace.validateNoDuplicates<Dependencies>(
874
- middlewares,
875
- this.#middleware.has.bind(this.#middleware),
876
- );
877
-
878
- // 3. Validate limit
879
- MiddlewareNamespace.validateMiddlewareLimit(
880
- this.#middleware.count(),
881
- middlewares.length,
882
- this.#limits.maxMiddleware,
883
- );
884
- }
885
-
886
- // 4. Initialize (without committing)
887
- const initialized = this.#middleware.initialize(...middlewares);
888
-
889
- // 5. Validate results
890
- if (!this.#noValidate) {
891
- for (const { middleware, factory } of initialized) {
892
- MiddlewareNamespace.validateMiddleware<Dependencies>(
893
- middleware,
894
- factory,
895
- );
896
- }
897
- }
898
-
899
- // 6. Commit
900
- return this.#middleware.commit(initialized);
901
- }
902
-
903
857
  // ============================================================================
904
858
  // Dependencies (backed by DependenciesNamespace)
905
859
  // ============================================================================
@@ -1090,10 +1044,14 @@ export class Router<
1090
1044
  dependencies,
1091
1045
  (routes, options, deps) =>
1092
1046
  new Router<Dependencies>(routes, options, deps),
1093
- (newRouter, config, resolvedForwardMap) => {
1047
+ (newRouter, config, resolvedForwardMap, routeCustomFields) => {
1094
1048
  const typedRouter = newRouter as unknown as Router<Dependencies>;
1095
1049
 
1096
- typedRouter.#routes.applyClonedConfig(config, resolvedForwardMap);
1050
+ typedRouter.#routes.applyClonedConfig(
1051
+ config,
1052
+ resolvedForwardMap,
1053
+ routeCustomFields,
1054
+ );
1097
1055
  },
1098
1056
  );
1099
1057
  }
@@ -1140,7 +1098,6 @@ export class Router<
1140
1098
  this.removeActivateGuard = throwDisposed as never;
1141
1099
  this.removeDeactivateGuard = throwDisposed as never;
1142
1100
  this.usePlugin = throwDisposed as never;
1143
- this.useMiddleware = throwDisposed as never;
1144
1101
  this.setDependency = throwDisposed as never;
1145
1102
  this.setDependencies = throwDisposed as never;
1146
1103
  this.removeDependency = throwDisposed as never;
@@ -1,4 +1,4 @@
1
- // packages/real-router/modules/RouterError.ts
1
+ // packages/core/src/RouterError.ts
2
2
 
3
3
  import { errorCodes } from "./constants";
4
4
  import { deepFreezeState } from "./helpers";
package/src/constants.ts CHANGED
@@ -1,4 +1,4 @@
1
- // packages/real-router/modules/constants.ts
1
+ // packages/core/src/constants.ts
2
2
 
3
3
  import type {
4
4
  EventName,
@@ -90,7 +90,6 @@ export const validEventNames = new Set<EventName>([
90
90
  export const DEFAULT_LIMITS = {
91
91
  maxDependencies: 100,
92
92
  maxPlugins: 50,
93
- maxMiddleware: 50,
94
93
  maxListeners: 10_000,
95
94
  warnListeners: 1000,
96
95
  maxEventDepth: 5,
@@ -104,7 +103,6 @@ export const DEFAULT_LIMITS = {
104
103
  export const LIMIT_BOUNDS = {
105
104
  maxDependencies: { min: 0, max: 10_000 },
106
105
  maxPlugins: { min: 0, max: 1000 },
107
- maxMiddleware: { min: 0, max: 1000 },
108
106
  maxListeners: { min: 0, max: 100_000 },
109
107
  warnListeners: { min: 0, max: 100_000 },
110
108
  maxEventDepth: { min: 0, max: 100 },
package/src/helpers.ts CHANGED
@@ -1,4 +1,4 @@
1
- // packages/real-router/modules/helpers.ts
1
+ // packages/core/src/helpers.ts
2
2
 
3
3
  import { DEFAULT_LIMITS } from "./constants";
4
4
 
package/src/index.ts CHANGED
@@ -1,11 +1,10 @@
1
- // packages/real-router/modules/index.ts
1
+ // packages/core/src/index.ts
2
2
 
3
3
  // Router-dependent types (defined in core)
4
4
  export type {
5
5
  ActivationFnFactory,
6
6
  BuildStateResultWithSegments,
7
7
  GuardFnFactory,
8
- MiddlewareFactory,
9
8
  PluginFactory,
10
9
  Route,
11
10
  RouteConfigUpdate,
@@ -21,7 +20,6 @@ export type {
21
20
  DefaultDependencies,
22
21
  GuardFn,
23
22
  Listener,
24
- Middleware,
25
23
  Navigator,
26
24
  NavigationOptions,
27
25
  Options,
@@ -102,18 +102,18 @@ export class CloneNamespace<
102
102
  newRouter.addActivateGuard(name, handler);
103
103
  }
104
104
 
105
- // Copy middleware factories
106
- if (data.middlewareFactories.length > 0) {
107
- newRouter.useMiddleware(...data.middlewareFactories);
108
- }
109
-
110
105
  // Copy plugin factories
111
106
  if (data.pluginFactories.length > 0) {
112
107
  newRouter.usePlugin(...data.pluginFactories);
113
108
  }
114
109
 
115
110
  // Apply route config (decoders, encoders, defaultParams, forwardMap)
116
- applyConfig(newRouter, data.routeConfig, data.resolvedForwardMap);
111
+ applyConfig(
112
+ newRouter,
113
+ data.routeConfig,
114
+ data.resolvedForwardMap,
115
+ data.routeCustomFields,
116
+ );
117
117
 
118
118
  return newRouter;
119
119
  }
@@ -1,12 +1,7 @@
1
1
  // packages/core/src/namespaces/CloneNamespace/types.ts
2
2
 
3
3
  import type { Router } from "../../Router";
4
- import type {
5
- GuardFnFactory,
6
- MiddlewareFactory,
7
- PluginFactory,
8
- Route,
9
- } from "../../types";
4
+ import type { GuardFnFactory, PluginFactory, Route } from "../../types";
10
5
  import type { RouteConfig } from "../RoutesNamespace";
11
6
  import type { DefaultDependencies, Options } from "@real-router/types";
12
7
 
@@ -19,10 +14,10 @@ export interface CloneData<Dependencies extends DefaultDependencies> {
19
14
  dependencies: Partial<Dependencies>;
20
15
  canDeactivateFactories: Record<string, GuardFnFactory<Dependencies>>;
21
16
  canActivateFactories: Record<string, GuardFnFactory<Dependencies>>;
22
- middlewareFactories: MiddlewareFactory<Dependencies>[];
23
17
  pluginFactories: PluginFactory<Dependencies>[];
24
18
  routeConfig: RouteConfig;
25
19
  resolvedForwardMap: Record<string, string>;
20
+ routeCustomFields: Record<string, Record<string, unknown>>;
26
21
  }
27
22
 
28
23
  /**
@@ -43,4 +38,5 @@ export type ApplyConfigFn<
43
38
  router: Router<Dependencies>,
44
39
  config: RouteConfig,
45
40
  resolvedForwardMap: Record<string, string>,
41
+ routeCustomFields: Record<string, Record<string, unknown>>,
46
42
  ) => void;
@@ -25,7 +25,7 @@ import type { DefaultDependencies } from "@real-router/types";
25
25
  export class DependenciesNamespace<
26
26
  Dependencies extends DefaultDependencies = DefaultDependencies,
27
27
  > {
28
- readonly #dependencies: Partial<Dependencies> = Object.create(
28
+ #dependencies: Partial<Dependencies> = Object.create(
29
29
  null,
30
30
  ) as Partial<Dependencies>;
31
31
 
@@ -207,9 +207,7 @@ export class DependenciesNamespace<
207
207
  * Removes all dependencies.
208
208
  */
209
209
  reset(): void {
210
- for (const key in this.#dependencies) {
211
- delete this.#dependencies[key];
212
- }
210
+ this.#dependencies = Object.create(null) as Partial<Dependencies>;
213
211
  }
214
212
 
215
213
  // =========================================================================
@@ -296,6 +296,7 @@ export class NavigationNamespace {
296
296
  return;
297
297
  }
298
298
 
299
+ /* v8 ignore next 7 -- @preserve: defensive guard for unexpected error codes (e.g. future error types); else branch unreachable after middleware became fire-and-forget */
299
300
  if (
300
301
  routerError.code === errorCodes.CANNOT_ACTIVATE ||
301
302
  routerError.code === errorCodes.CANNOT_DEACTIVATE
@@ -1,4 +1,4 @@
1
- // packages/real-router/modules/transition/wrapSyncError.ts
1
+ import { RouterError } from "../../../RouterError";
2
2
 
3
3
  /**
4
4
  * Error metadata structure for transition errors.
@@ -12,8 +12,25 @@ export interface SyncErrorMetadata {
12
12
  segment?: string;
13
13
  }
14
14
 
15
- // Reserved properties that conflict with RouterError constructor
16
- // Issue #39: Filter these when wrapping sync errors to avoid TypeError
15
+ /**
16
+ * Re-throws a caught error as a RouterError with the given error code.
17
+ * If the error is already a RouterError, sets the code directly.
18
+ * Otherwise wraps it with wrapSyncError metadata.
19
+ */
20
+ export function rethrowAsRouterError(
21
+ error: unknown,
22
+ errorCode: string,
23
+ segment: string,
24
+ ): never {
25
+ if (error instanceof RouterError) {
26
+ error.setCode(errorCode);
27
+
28
+ throw error;
29
+ }
30
+
31
+ throw new RouterError(errorCode, wrapSyncError(error, segment));
32
+ }
33
+
17
34
  const reservedRouterErrorProps = new Set([
18
35
  "code",
19
36
  "segment",
@@ -30,25 +47,14 @@ const reservedRouterErrorProps = new Set([
30
47
  * - Primitives (string, number, etc.): returns minimal metadata
31
48
  *
32
49
  * @param thrown - The value caught in a try-catch block
33
- * @param segment - Optional route segment name (for lifecycle hooks)
50
+ * @param segment - Route segment name (for lifecycle hooks)
34
51
  * @returns Structured error metadata for RouterError
35
- *
36
- * @example
37
- * ```typescript
38
- * try {
39
- * hookFn();
40
- * } catch (error) {
41
- * const metadata = wrapSyncError(error, "users.profile");
42
- * throw new RouterError(errorCodes.TRANSITION_ERR, metadata);
43
- * }
44
- * ```
45
52
  */
46
53
  export function wrapSyncError(
47
54
  thrown: unknown,
48
- segment?: string,
55
+ segment: string,
49
56
  ): SyncErrorMetadata {
50
- // Base metadata - always include segment if provided
51
- const base: SyncErrorMetadata = segment ? { segment } : {};
57
+ const base: SyncErrorMetadata = { segment };
52
58
 
53
59
  // Handle Error instances - extract all useful properties
54
60
  if (thrown instanceof Error) {
@@ -1,24 +1,26 @@
1
- import { rethrowAsRouterError } from "./makeError";
1
+ import { rethrowAsRouterError } from "./errorHandling";
2
2
  import { errorCodes } from "../../../constants";
3
3
  import { RouterError } from "../../../RouterError";
4
4
 
5
5
  import type { GuardFn, State } from "@real-router/types";
6
6
 
7
7
  // Helper: execution of the Lifecycle Hooks group
8
- export const executeLifecycleHooks = async (
8
+ export async function executeLifecycleHooks(
9
9
  hooks: Map<string, GuardFn>,
10
10
  toState: State,
11
11
  fromState: State | undefined,
12
12
  segments: string[],
13
13
  errorCode: string,
14
14
  isCancelled: () => boolean,
15
- ): Promise<void> => {
15
+ ): Promise<void> {
16
16
  const segmentsToProcess = segments.filter((name) => hooks.has(name));
17
17
 
18
18
  if (segmentsToProcess.length === 0) {
19
19
  return;
20
20
  }
21
21
 
22
+ let result: boolean | undefined;
23
+
22
24
  for (const segment of segmentsToProcess) {
23
25
  if (isCancelled()) {
24
26
  throw new RouterError(errorCodes.TRANSITION_CANCELLED);
@@ -28,8 +30,6 @@ export const executeLifecycleHooks = async (
28
30
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion -- guaranteed by filter
29
31
  const hookFn = hooks.get(segment)!;
30
32
 
31
- let result: boolean | undefined;
32
-
33
33
  try {
34
34
  result = await hookFn(toState, fromState);
35
35
  } catch (error: unknown) {
@@ -40,4 +40,4 @@ export const executeLifecycleHooks = async (
40
40
  throw new RouterError(errorCode, { segment });
41
41
  }
42
42
  }
43
- };
43
+ }