@keenmate/svelte-spa-router 5.2.0-rc02 → 5.2.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 (3) hide show
  1. package/CHANGELOG.md +21 -5
  2. package/README.md +83 -2240
  3. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -5,7 +5,20 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
- ## [5.2.0-rc02] - 2026-05-01
8
+ ## [Unreleased]
9
+
10
+ ### Added
11
+
12
+ ### Changed
13
+
14
+ ### Fixed
15
+
16
+ ## [5.2.0] - 2026-06-02 [PUBLISHED]
17
+
18
+ ### Changed (docs)
19
+ - **README split into a slim entry point plus `docs/*.md`** — the README had grown to ~2,300 lines mixing install instructions with deep-dive content for every feature. Trimmed it to the basics (features, What's new, install, quick start, docs index, license) and moved the rest into 14 domain-specific files under `docs/`: `imports.md`, `routing-modes.md`, `routes.md`, `navigation.md`, `route-params.md`, `querystring-filters.md`, `loading-metadata.md`, `route-guards.md`, `permissions.md`, `navigation-guards.md`, `hierarchical-routes.md`, `error-handling.md`, `logging.md`, `advanced.md`. All original content is preserved; cross-references use relative links. The new README is 157 lines.
20
+
21
+ ## [5.2.0-rc02] - 2026-05-01 [PUBLISHED]
9
22
 
10
23
  ### Fixed
11
24
  - **`ReferenceError: __PACKAGE_NAME__ is not defined` masking real route errors** — The global API setup in `src/lib/index.js` referenced bundler-injected placeholders (`__PACKAGE_NAME__`, `__VERSION__`, `__AUTHOR__`, `__LICENSE__`, `__REPOSITORY__`, `__HOMEPAGE__`) with `typeof X !== 'undefined'` fallbacks. Consumer Vite optimizers (esbuild prebundle) were not preserving the guard, leaving bare references that threw `ReferenceError` at module-init. The error surfaced asynchronously during route activation and masked real errors thrown by route components.
@@ -92,9 +105,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
92
105
  - New npm scripts: `test:e2e`, `test:e2e:install`, `test:e2e:ui`, `test:e2e:headed`. New Makefile targets: `test-e2e`, `test-e2e-install`, `test-e2e-ui`.
93
106
  - Documentation: `e2e/README.md` covers run instructions, the fixture/spec convention, a coverage matrix, and a 6-step recipe for adding new fixtures. A discoverable in-browser index of all fixtures lives at `/test`.
94
107
 
95
- ## [5.2.0-rc01] - 2026-02-18
108
+ ## [5.2.0-rc01] - 2026-02-18 [PUBLISHED]
96
109
 
97
110
  ### Fixed
111
+ - **Routes no longer wrapped in a layout-breaking `<div style="display: block">`** (Issue #1) — `Router.svelte` previously wrapped every routed component in a wrapper div, even for routes that don't use the loading feature. This broke CSS flexbox/grid layouts and child selectors for the majority of routes that have no need for the wrapper.
112
+ - Split rendering into two paths in `src/lib/Router.svelte`: routes without loading render the component directly (no wrapper div at all); routes with loading keep the wrapper (needed to hide the component during loading) but switch from `display: block` to `display: contents`, making the wrapper invisible to layout.
113
+
98
114
  - **`routeContext()` function missing / mangled name** (Issue #3) — The exported function was named `routerouteContext()` instead of `routeContext()` due to a find-replace accident during the `userData` → `routeContext` rename. The README also referenced the old name `routeUserData()`.
99
115
  - Renamed `routerouteContext()` → `routeContext()` in `route-metadata.svelte.js` (function + all internal variable references)
100
116
  - Updated `route-metadata.d.ts` type declaration to match
@@ -191,7 +207,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
191
207
  - Best practices and common patterns
192
208
  - Debugging with ROUTER:METADATA logging category
193
209
 
194
- ## [5.1.1] - 2025-11-30
210
+ ## [5.1.1] - 2025-11-30 [PUBLISHED]
195
211
 
196
212
  ### Fixed
197
213
  - **Breadcrumbs preserved on querystring changes** - Fixed breadcrumbs resetting to "Loading..." when only the querystring changes (e.g., tab navigation)
@@ -221,7 +237,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
221
237
  - Shows common pattern with page definitions array
222
238
  - Explains the "Route X not found in registry" error and how to fix it
223
239
 
224
- ## [5.1.0] - 2025-11-20 ✅ Published
240
+ ## [5.1.0] - 2025-11-20 [PUBLISHED]
225
241
 
226
242
  ### Added
227
243
  - **Global Window API:** Added runtime debugging and introspection via `window.components['svelte-spa-router']`
@@ -238,7 +254,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
238
254
  - Enables debugging production issues without code changes or rebuilding
239
255
  - Example: `window.components['svelte-spa-router'].logging.setCategoryLevel('ROUTER:NAVIGATION', 'debug')`
240
256
 
241
- ## [5.0.0] - 2025-01-17 ✅ Published
257
+ ## [5.0.0] - 2025-01-17 [PUBLISHED]
242
258
 
243
259
  ### Changed
244
260
  - **Code Quality:** Major ESLint cleanup - reduced linting issues from 161 to 11 (93% reduction)