Skip to content

LAD: focus incidents with the layer hidden, no-GPS zoom-to, shaped Active ring, dark mode fixes - #559

Merged
OSPFNeighbour merged 23 commits into
masterfrom
master-dev
Oct 14, 2026
Merged

OSPFNeighbour merged 23 commits into
masterfrom
master-dev

Conversation

@OSPFNeighbour

Copy link
Copy Markdown
Collaborator

This release fixes focusing incidents while the Incidents layer is hidden, tidies how hidden incidents and incidents with no GPS location behave on the LAD map, makes the Active ring follow the marker's shape, and fixes three dark mode colour problems. It also updates several dev dependencies.

Fixes

Docs (#558)

  • What's New entry for v2026.10.15.
  • LAD guide: the Incidents visibility toggle, the shaped Active ring, and the no-GPS behaviour in the Incident and Team Registers.

Maintenance

🤖 Generated with Claude Code

dependabot Bot and others added 23 commits October 14, 2026 19:28
Bumps the npm-minor-patch group with 6 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core) | `8.0.6` | `8.0.7` |
| [@babel/preset-env](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-env) | `8.0.6` | `8.0.7` |
| [@babel/preset-typescript](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-typescript) | `8.0.1` | `8.0.7` |
| [@types/chrome](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/chrome) | `0.3.4` | `0.3.5` |
| [jsdom](https://github.com/jsdom/jsdom) | `30.1.1` | `30.1.2` |
| [playwright-core](https://github.com/microsoft/playwright) | `1.63.0` | `1.64.0` |



Updates `@babel/core` from 8.0.6 to 8.0.7
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v8.0.7/packages/babel-core)

Updates `@babel/preset-env` from 8.0.6 to 8.0.7
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v8.0.7/packages/babel-preset-env)

Updates `@babel/preset-typescript` from 8.0.1 to 8.0.7
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v8.0.7/packages/babel-preset-typescript)

Updates `@types/chrome` from 0.3.4 to 0.3.5
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/chrome)

Updates `jsdom` from 30.1.1 to 30.1.2
- [Release notes](https://github.com/jsdom/jsdom/releases)
- [Commits](jsdom/jsdom@v30.1.1...v30.1.2)

Updates `playwright-core` from 1.63.0 to 1.64.0
- [Release notes](https://github.com/microsoft/playwright/releases)
- [Commits](microsoft/playwright@v1.63.0...v1.64.0)

---
updated-dependencies:
- dependency-name: "@babel/core"
  dependency-version: 8.0.7
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor-patch
- dependency-name: "@babel/preset-env"
  dependency-version: 8.0.7
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor-patch
- dependency-name: "@babel/preset-typescript"
  dependency-version: 8.0.7
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor-patch
- dependency-name: "@types/chrome"
  dependency-version: 0.3.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor-patch
- dependency-name: jsdom
  dependency-version: 30.1.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: npm-minor-patch
- dependency-name: playwright-core
  dependency-version: 1.64.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: npm-minor-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [style-loader](https://github.com/webpack-contrib/style-loader) from 3.3.3 to 4.0.0.
- [Release notes](https://github.com/webpack-contrib/style-loader/releases)
- [Changelog](https://github.com/webpack/style-loader/blob/main/CHANGELOG.md)
- [Commits](webpack/style-loader@v3.3.3...v4.0.0)

---
updated-dependencies:
- dependency-name: style-loader
  dependency-version: 4.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Clicking an incident in the alerts did nothing with the Incidents layer
hidden: the cluster group still held the marker but was off the map, so
zoomToShowLayer threw and aborted focusAndExpandInList before the row
expanded.

- flyToJob switches the Incidents layer back on (mirroring focusing an
  asset on a hidden asset layer) and refreshes the layers drawer. With
  ko deferUpdates on, flush the queued subscriber via ko.tasks.runEarly()
  so the layer is on the map before zooming.
- focusAndExpandInList expands/scrolls the row first and guards the map
  step, so a map failure can't swallow the click.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Toggling Incidents off only removed the cluster/unclustered marker layer,
leaving the New pulse rings, Active marching rings and the standalone
rescue layer on the map. The stored hidden state was likewise only applied
to the cluster group on load.

MapVM.setIncidentsVisible() now shows/hides all of them together (re-running
_syncPulseRings on show so clustered markers keep their rings hidden), and
is applied at startup when incidents were left hidden.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The Active ring was always a circle. It now outlines the marker's own
shape (square, diamond, triangle, hex, star, pentagon, teardrop, cross),
pushed out so the gap is even along flat sides, via a shapeOutlineSvg()
helper now shared with the New pulse ring.

Circles keep the cheap rotating <g>; other shapes would visibly spin, so
they march the dashes along the outline with stroke-dashoffset instead.
Reduced-motion disables both.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Incidents without coordinates have no map marker, so the incident-row
address button and the tasking "Zoom to" crosshair silently did nothing.
Disable both when there is no GPS fix, explain why in the tooltip, and
show "No location" instead of "null, null" when there is no address.

Fixes #548

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Bootstrap's pointer-events: none on disabled buttons also suppresses
their title tooltip. Add a btn-disabled-tooltip class that restores
hover (clicks stay blocked by the disabled attribute) and use it on the
tasking crosshair and the incident-row address button, replacing the
address button's wrapper-title workaround, which couldn't be used inside
a btn-group.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The blanket `body.dark-mode div` colour turned zone, unit/power and FRAO
labels pale against their white halo on the still-light basemap. Pin
them to their light-mode text colours.

Fixes #462

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Fixes #461. The dark-mode `.dropdown-item` colour (and the `!important`
`.row-* *` / `fieldset *` text overrides the menus sit inside) beat
Bootstrap's disabled grey, so invalid tasking/incident status options
looked identical to valid ones. They now render grey.

The same row overrides painted light text onto the En route (cyan) and
On site (amber) tasking status pills; those now keep dark text.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ark-mode

Grey out invalid status options and fix status pill text in dark mode
Keep map layer text labels dark in dark mode
Disable zoom-to for incidents with no GPS location
…nd-shape

LAD: hide incident rings with the Incidents layer, shape the Active ring to the marker
…idents

Alerts: focus an incident even when the Incidents layer is hidden
…ster-dev/npm-minor-patch-18336d4e87

Bump the npm-minor-patch group across 1 directory with 6 updates
…ster-dev/style-loader-4.0.0

Bump style-loader from 3.3.3 to 4.0.0
Bumps [husky](https://github.com/typicode/husky) from 7.0.4 to 9.1.7.
- [Release notes](https://github.com/typicode/husky/releases)
- [Commits](typicode/husky@v7.0.4...v9.1.7)

---
updated-dependencies:
- dependency-name: husky
  dependency-version: 9.1.7
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
…ster-dev/husky-9.1.7

Bump husky from 7.0.4 to 9.1.7
Bumps [prettier](https://github.com/prettier/prettier) from 2.8.8 to 3.9.10.
- [Release notes](https://github.com/prettier/prettier/releases)
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)
- [Commits](prettier/prettier@2.8.8...3.9.10)

---
updated-dependencies:
- dependency-name: prettier
  dependency-version: 3.9.10
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
…ster-dev/prettier-3.9.10

Bump prettier from 2.8.8 to 3.9.10
- Situation Map: document the Incidents visibility toggle and that focusing
  an incident turns it back on (#553, #554); Active ring follows the marker
  shape (#554)
- Incident Register / Team Register: incidents with no GPS location can't
  be zoomed to; "No location" (#555)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
What's New and LAD guide: v2026.10.15 map and dark mode fixes
@OSPFNeighbour
OSPFNeighbour merged commit 19aabfd into master Oct 14, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

zoom to something not geocoded still tries zoom to when incident layer is disabled Map Layer Text - Dark mode Team Status Update - Dark Mode

1 participant