- Last updated: 2025-01-23T13:39:11Z
- Generator: thi.ng/monopub
All notable changes to this project will be documented in this file. Only versions published since 2022-01-01 are listed here. Please consult the Git history for older version information. See Conventional Commits for commit guidelines.
Note: Unlisted patch versions only involve non-code or otherwise excluded changes and/or version bumps of transitive dependencies.
4.1.0 (2024-07-02)
- update HTMLRouter initial & default route handling (8ea075e)
- avoid duplicate dispatch (and breaking back button) for missing routes
- new behavior: HTMLRouter dispatches default route redirect, but does not push it to history
- update initial route handling to use
replaceState()
instead ofpushState()
4.0.11 (2024-06-21)
- enforce uniform naming convention of internal functions (56992b2)
4.0.8 (2024-04-20)
- update type usage (835dfb0)
4.0.1 (2024-03-13)
- update/simplify AugmentedRoute handling (37ae88b)
4.0.0 (2024-03-13)
- trie-based route matching & wildcard support (f1ab427)
- BREAKING CHANGES: update types, args, rename option fields
- add
Trie
data structure for route storage & matching - add support for
+
wildcards to match arbitrary length routes - update
BasicRouter.route()
& replace.matchRoutes()
with new impl - add
AugmentedRoute
interface & pre-process routes to compute wildcard indices for faster matching (along with using the trie) - update
Route.match
to be initially specified as string - update
RouteMatch
to include.rest
args (if any) - add optional
RouteMatch.redirect
flag - REMOVE
Route.title
&RouteMatch.title
(obsolete since only used byHTMLRouter
, but usage unsupported by browsers now (history.pushState()
doesn't support title anymore) - RENAME
RouterConfig
=>RouterOpts
(align naming convention) - RENAME
RouterOpts.defaultRouteID
=>RouterOpts.default
- RENAME
RouterOpts.initialRouteID
=>RouterOpts.initial
- RENAME
RouterOpts.removeTrailingSlash
=>RouterOpts.trim
- REMOVE obsolete
defMatch()
helper - add/update tests
- add
- rename BasicRouter => Router (4d14aab)
- BREAKING CHANGE: rename BasicRouter => Router
- update all refs
- update RouteAuthenticator and .route() args (f009afb)
- add support for optional arbitrary user context object passed to .route() and global auth handler
- update optional args for HTMLRouter.route()/.routeTo()
- update/improve wildcard priority handling (59c2557)
- implement wildcard fallback logic in
Trie.get()
- add docs
- add tests
- implement wildcard fallback logic in
3.4.0 (2024-03-10)
- add defMatch() helper (12134b6)
- rebuild index in updateRoutes() (deb494e)
3.3.0 (2024-03-09)
- sort & validate routes, add tests (9243c01)
3.2.39 (2023-11-09)
- update all tests (packages A-S) (e3085e4)
3.2.30 (2023-08-04)
3.2.14 (2022-11-28)
- update INotify.notify() signature (066bae5)
3.2.0 (2022-06-17)
- add trailing slash option, optimize routeForID() (c003dc2)
- update BasicRouter default config init
- pre-build
routeIndex
in ctor - optimize
routeForID()
to use newrouteIndex
- update format(), hash/prefix handling (724b3ad)
- update HTMLRouter default prefix to "#/" if
useFragment
is true - remove obsolete
HTMLRouter.format()
(now the same as BasicRouter) - update BasicRouter.format() to throw error for missing route param value
- update HTMLRouter default prefix to "#/" if
3.1.5 (2022-04-07)
- replace deprecated .substr() w/ .substring() (0710509)