TryGhost
OSS
Ghost
🎨 Improved author selection performance on sites with many staff users ref https://linear.app/ghost/issue/BER-3760/admin-is-inefficient-on-sites-with-large-numbers-of-staff - on sites with very large staff lists, Admin fetched every user up-front to populate author dropdowns — with 18k+ staff that meant 180+ API requests before the post settings menu or the posts screen were usable - extracted the tags input's paginate-on-scroll + server-side search behaviour into an abstract `GhPaginatedOptions` component: options load a page at a time when the dropdown opens, search queries the API until every option has been loaded, then switches to client-side filtering - added two components on that base: a multi-select `GhPaginatedTokenInput` and a single-select `GhPaginatedFilterSelect` - rebuilt the post settings menu authors input and the tags input on `GhPaginatedTokenInput`, so authors load a page at a time and searching queries the API across name, slug, and email - rebuilt the posts/pages screens' author and tag filters on `GhPaginatedFilterSelect`, replacing the eager all-users fetch and the bespoke tag pagination logic that lived in the posts controller; deep-linked `?author=` filters now resolve with a single by-slug lookup - consolidated the NQL search-term escaping that was duplicated across tags, labels, and resource-select searches into a shared `escapeNqlString` util
nx run-many -t lint -p ghost-admin
Sign in / Sign up
Open main menu
Succeeded
CI Pipeline Execution
nx run-many -t lint -p ghost-admin
Click to copy
Linux
4 CPU cores
read-write
access token used
be2b09dc
29044