{"id":"6a9a089e8c72f95e2498dbdc","title":"2026 09 04 Issue 212","path":"how-to/committee/release-notes/2026-09-04-issue-212","contentMarkdown":"# 04-Sep-2026 — stop the composer locking up for email types that skip the Compose step [ref #212](https://github.com/nbarrett/ngx-ramblers/issues/212)\n\n## [build 877](https://github.com/nbarrett/ngx-ramblers/actions/runs/33817828838) — [commit 95f3724](https://github.com/nbarrett/ngx-ramblers/commit/95f372439ace9b6c04f117d2ad05292233e3952a)\n\n_____\n\n## What's new\n\nOpening the composer for an email type that omits the Compose step, such as Photographs and video or Website Password Reset Instructions, froze the browser tab. The page was re-rendering itself about a thousand times a second: the hidden Events step handed its date slider a freshly built range on every pass, the slider queued a microtask each time it received one, and that microtask started the next pass. The slider range is now built once and reused until the dates actually change, and the slider ignores a range identical to the one it already has.\n\nThe hidden committee-notification preview had the same shape of problem, a new object built on every pass and passed to a child component. It is now kept as a field that is refreshed only when its inputs change, and it is not rendered at all when the Events step is omitted.\n\n## At a glance\n\n- Email types that omit the Compose step open normally again\n- The events date slider only reacts when the range really changes\n- The committee notification preview is a field kept up to date in ngDoCheck rather than a template getter\n- Nothing is rendered for the events preview when the Events step is omitted","contentHtml":"<h1>04-Sep-2026 — stop the composer locking up for email types that skip the Compose step <a href=\"https://github.com/nbarrett/ngx-ramblers/issues/212\">ref #212</a></h1>\n<h2><a href=\"https://github.com/nbarrett/ngx-ramblers/actions/runs/33817828838\">build 877</a> — <a href=\"https://github.com/nbarrett/ngx-ramblers/commit/95f372439ace9b6c04f117d2ad05292233e3952a\">commit 95f3724</a></h2>\n<hr>\n<h2>What&#39;s new</h2>\n<p>Opening the composer for an email type that omits the Compose step, such as Photographs and video or Website Password Reset Instructions, froze the browser tab. The page was re-rendering itself about a thousand times a second: the hidden Events step handed its date slider a freshly built range on every pass, the slider queued a microtask each time it received one, and that microtask started the next pass. The slider range is now built once and reused until the dates actually change, and the slider ignores a range identical to the one it already has.</p>\n<p>The hidden committee-notification preview had the same shape of problem, a new object built on every pass and passed to a child component. It is now kept as a field that is refreshed only when its inputs change, and it is not rendered at all when the Events step is omitted.</p>\n<h2>At a glance</h2>\n<ul>\n<li>Email types that omit the Compose step open normally again</li>\n<li>The events date slider only reacts when the range really changes</li>\n<li>The committee notification preview is a field kept up to date in ngDoCheck rather than a template getter</li>\n<li>Nothing is rendered for the events preview when the Events step is omitted</li>\n</ul>\n"}