diff --git a/changelog.md b/changelog.md index 6061692..2334357 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,11 @@ # Changelog +## 2026-03-10 - 3.45.1 - fix(dees-appui) +substitute route params into URL hash when navigating + +- Replaces :param placeholders in view.route with provided params before updating the URL hash. +- Ensures window.history.pushState is called with the resolved route so URLs do not contain literal parameter tokens. + ## 2026-03-10 - 3.45.0 - feat(dees-form) register new input components (tags, list, wysiwyg, richtext) and emit change notification for richtext updates diff --git a/ts_web/00_commitinfo_data.ts b/ts_web/00_commitinfo_data.ts index a74fca4..4f62b47 100644 --- a/ts_web/00_commitinfo_data.ts +++ b/ts_web/00_commitinfo_data.ts @@ -3,6 +3,6 @@ */ export const commitinfo = { name: '@design.estate/dees-catalog', - version: '3.45.0', + version: '3.45.1', description: 'A comprehensive library that provides dynamic web components for building sophisticated and modern web applications using JavaScript and TypeScript.' } diff --git a/ts_web/elements/00group-appui/dees-appui/dees-appui.ts b/ts_web/elements/00group-appui/dees-appui/dees-appui.ts index ae4740e..b2dc0aa 100644 --- a/ts_web/elements/00group-appui/dees-appui/dees-appui.ts +++ b/ts_web/elements/00group-appui/dees-appui/dees-appui.ts @@ -875,8 +875,13 @@ export class DeesAppui extends DeesElement { try { await this.loadView(view, params); - // Update URL hash - const route = view.route || viewId; + // Update URL hash (substitute params into route pattern) + let route = view.route || viewId; + if (params) { + for (const [key, val] of Object.entries(params)) { + route = route.replace(`:${key}`, val); + } + } const newHash = `#${route}`; if (window.location.hash !== newHash) { window.history.pushState({ viewId }, '', newHash);