location-info
Sometimes you want to parse a string into a meaningful object. The url-pattern module does a decent job this. But what or how do you combine a bunch of possibilities together? This module enables you to build out a collection of parsing possibilities that a string can be matched against. Typically it's used for routing, but it could be used for anything.
Route possibilities are created with Redux actions and stored in state. A selector is used to build out the index and allow deciding what route a string belongs to. Set and get custom information about a location object or string path.
The library forces creating a unique key/id for each route. The route info index with redux actions.
// If not otherwise saved in a database/persistent store...const routeActions = // Alternative to above: addRoute('user', '/user/:userId') const reducer = const initState = locInfo: const store = const locationDetails =
Note that no care is taken to enforce match order. Post an issue if you need it.
Actions
addRoute(idOrObj, pattern = null, props = {})
- addRoutes()
- delRoute()
- updateRoute()