Debounce time in ms before search fires
When false, the overlay does NOT claim the global Ctrl/Cmd+K chord. For hosts (e.g. the Explorer shell) that own that shortcut themselves and open the overlay programmatically — two listeners on the same chord would double-toggle. Escape/arrow handling while open is unaffected.
When true, the overlay subscribes to SearchService.StreamSearch instead of awaiting
ExecuteSearch. Results render progressively as each provider reports back. The
per-provider status chip strip becomes visible while the stream is in flight.
Defaults to false to preserve the request-response UX that shipped in Phase 1.
Which search sources to include
Maximum number of results to fetch and display. Deliberately small — the overlay is a quick-jump surface; "See all results" hands off to the full Search Results workspace for anything deeper. 8 matches the omnibar palette's RESULT count (it fetches 9 rows = 8 results + its see-all row; this overlay's see-all is a footer button, not a row).
Placeholder text for the search input
Promo accept — carries the current query so the host can hand it off.
Label for the promo's accept action.
Promo dismissed — the host should persist this and stop showing it.
Promo copy (one sentence). Required when ShowPromo is true.
ProtectedsearchEmitted when the user clicks "See all results" — carries the current query. Hosts (e.g. the Explorer shell) open the full Search Results workspace, which has scopes, relevance controls, and richer result actions than this capped quick-jump overlay. The overlay closes itself after emitting.
Whether to show the agent CTA
Whether to show filter facets
Optional promo strip pinned to the overlay's bottom edge — a host-supplied nudge (e.g. Explorer advertising its command palette). The component is deliberately ignorant of WHAT is being promoted; the host provides the copy and handles both outcomes.
Per-provider status entries shown above the results list while a streaming search
is in flight. One entry per provider that has reported back. Empty when the user
is not running a streaming search (or when EnableStreaming is false).
id of the highlighted option, announced via aria-activedescendant.
All results flattened for keyboard navigation
Clear all active filters
Close the overlay
Format elapsed time display
Get a score display value (percentage)
Get the flat index of a result for keyboard navigation
Check if any filters are active (used by template)
Check if a filter option is active
Check if a result is currently keyboard-highlighted
A callback method that performs custom clean-up, invoked immediately before a directive, pipe, or service instance is destroyed.
A callback method that is invoked immediately after the default change detector has checked the directive's data-bound properties for the first time, and before any of the view or content children have been checked. It is invoked only once when the directive is instantiated.
Handle clicking the agent CTA
Handle clicking the backdrop to close
Handle filter option toggle
Promo accept: emit the current query and close — the host takes over.
Promo dismiss: the host persists the dismissal; hide it immediately.
Handle query input changes
Recent-search rows are keyboard-activatable (Enter/Space = click).
Recent-search row activated (click or Enter/Space). Re-runs the search AND refocuses the input — the activated row leaves the DOM when recents are replaced by results, which would otherwise drop focus to
.Handle clicking "See all results" — hand off to the full Search workspace
Tab behavior inside the dialog:
Open the overlay
Handle selecting the highlighted result
Toggle the overlay open/closed
Text for the agent CTA button