Skip to content

kickstart ui cleanup: shared dropdown, collapsible checks, base cost estimate, region prefs - #2326

Draft
davidgamero wants to merge 10 commits into
Azure:mainfrom
davidgamero:review/kickstart-dropdown-state
Draft

kickstart ui cleanup: shared dropdown, collapsible checks, base cost estimate, region prefs#2326
davidgamero wants to merge 10 commits into
Azure:mainfrom
davidgamero:review/kickstart-dropdown-state

Conversation

@davidgamero

@davidgamero davidgamero commented Jul 20, 2026

Copy link
Copy Markdown
Collaborator

kickstart ui cleanup pass — dropdowns + preflight checks. (region-pref + cost-estimate changes split out into #2327.)

dropdowns

  • new shared SearchableDropdown<T> component (fuzzy search + full keyboard/a11y: arrow nav w/ wraparound, home/end, enter/escape/tab, scrollIntoView, drop-up, aria) — best-of-both of the old TextWithDropdown and CustomDropdown
  • generic items via getValue / optional toLabel / optional sortKey (sortKey sets default order + tiebreaks equal fuzzy scores)
  • migrated all 7 kickstart dropdowns to it (6 in KickstartCluster, 1 github-repo in guided setup)
  • old components left alone for the ~12 non-kickstart usages (follow-up: migrate the rest + delete them so this is a net line reduction)
  • github repo dropdown now suffixes private repos with (private); label composition moved out of jsx into toLabel

preflight checks density

  • wrapped the preflight check list in a collapsible group — shows a one-line pre-flight checks — N of M passed summary
  • auto-collapses once everything passes, auto-expands while running or on any fail/warn
  • succeeded stages now render just title + detail (dropped the leftover clock/elapsed/action rows that made each check ~5 lines)
  • de-duped the providers check (was showing during the region scan AND in preflight)
  • extracted a shared DisclosureButton so the three collapse toggles (full-error, capacity-checks, stage-group) share one impl + css instead of three copies
  • small spacing consistency fixes (checkDetail double-margin, permission-warning gap)

notes

  • extension + webview typecheck, eslint, and npm run build all clean
  • not yet runtime-tested in vscode

Add a generalized SearchableDropdown<T> (fuzzy search + full keyboard/a11y:
arrow nav with wraparound, Home/End, Enter/Escape/Tab, scrollIntoView, drop-up,
ARIA) with generic items via getValue/toLabel/sortKey. Migrate all 7 kickstart
dropdowns (6 in KickstartCluster, 1 github-repo in KickstartGuidedSetup) to it.
Old TextWithDropdown/CustomDropdown kept for the 12 non-kickstart usages.
Drop the two node-derived line items (node compute + Automatic node
management surcharge) from the cluster cost estimate, keeping only the
flat AKS Automatic control plane fee and ACR Basic. Rename the panel to
'Base cost estimate (excludes workloads)' and update disclaimers.
Wrap the preflight check list in a CollapsibleStageGroup that shows a
one-line 'Pre-flight checks — N of M passed' summary, auto-collapsing
once all checks pass and auto-expanding while running or on failure.
Add hideEntriesWhenSucceeded to ActivityStageList so succeeded stages
render just title + detail (no leftover clock/elapsed entry rows).
De-duplicate the providers check (already shown during the region scan)
and normalize stacked-section spacing (checkDetail margin, permission
warning gap).
Refresh REGION_CAPACITY_RISK low/medium/high membership from the latest
AKS Automatic system-pool availability so region recommendation and the
region picker prefer regions with open pool capacity and deprioritise
capacity-constrained ones. Tier membership only; no raw capacity numbers
encoded (they drift).
@davidgamero
davidgamero marked this pull request as draft July 20, 2026 21:40
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.

1 participant