17-Mar-2026 — index filtering, S3 bucket override, and content path editor #192

build 542commit e6a3ee1


Index Filtering

New "Index Pages" Content Type

A new content type called Index Pages is available in the index editor. When selected, only pages that themselves contain an index row are included in the results. This allows a gallery index to automatically discover its child index pages without hardcoding each path individually.

"Show in Parent Index" Flag

Each index row now has a Show in Parent Index checkbox (defaults to checked). Unchecking it hides that page from any parent index that uses the Index Pages content type. This is useful for intermediate navigation pages (e.g. year-based breadcrumb indexes like gallery/2018) that should remain accessible directly but not clutter the top-level gallery view.

Max Path Depth Filtering

The existing maxPathSegments field on content path matches is now enforced. Setting Max Depth to 1 on a Starts With match for gallery/ will only return direct children (e.g. gallery/holidays) and exclude deeper pages (e.g. gallery/holidays/coast-to-coast-2014).

Data Migration

A migration (20260317000000-backfill-show-in-parent-index) sets showInParentIndex: true on all existing index rows to preserve current behaviour. No pages are hidden until explicitly unchecked.

CLI S3 Bucket Override

Interactive Prompt

When starting ngx-cli local dev or local prod, a new prompt asks "Override S3 bucket?" after the environment is selected. It lists all configured environments with their bucket names. Pressing Enter accepts "No override" (the default). This is useful when running a restored database locally and needing images from a different environment's S3 bucket.

CLI Flag

The prompt can be skipped with --s3-bucket <bucket>:

ngx-cli local dev ekwg-dev-2-staging --s3-bucket ngx-ramblers-north-west-kent

Content Path Editor

Datalist Inputs

The content path and exclude path fields in the index editor now use native <datalist> elements instead of typeahead inputs. This provides: