RegexTester tries a pattern with its flags against a sample, washes each match and lists it with its groups, zero-width ones too; a pattern that does not compile says why. Encoder turns text into Base64, URL or hex and back, says why a decode fails (Base64 pads end the text, twice at most) and copies the result, drawn through typography::literal so no ligature hides a character. ColorContrastChecker measures text on a background, translucent text as it blends, and names the WCAG levels met. ContainerList starts, stops, restarts and opens containers, each button shown when the owner handles it. PodList sorts pods by any column, ages by length through tables' new Cell::Duration, and narrows them by namespace. ResourceMonitor shows each reading's latest value beside its sparkline and, with a limit, how full it is. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
321 lines
8.3 KiB
Markdown
321 lines
8.3 KiB
Markdown
# Chapters 31–43
|
||
|
||
## T31a Project · Tasks — `src/project`
|
||
|
||
- [x] PriorityIndicator
|
||
- [x] IssueIdBadge
|
||
- [x] StatusSelect
|
||
- [x] AssigneePicker
|
||
- [x] DueDatePicker → `forms::DatePicker`
|
||
- [x] TaskItem — check, priority, due date, assignee
|
||
- [x] TaskList
|
||
- [x] SubtaskList → `documents::Checklist`, which gains a field to add one
|
||
|
||
## T31b Project · Issues and boards
|
||
|
||
- [x] IssueCard
|
||
- [x] LabelManager
|
||
- [x] KanbanBoard / KanbanColumn / KanbanCard
|
||
- [x] Sprint Board → `project::KanbanBoard`
|
||
- [x] TaskDetailPanel
|
||
|
||
## T31c Project · Plans
|
||
|
||
- [x] GanttChart / TimelineView → `charts::GanttChart`
|
||
- [x] Roadmap
|
||
- [x] Burndown Chart → `charts::BurndownChart`, on the charts' scales and paint
|
||
- [x] MilestoneProgress
|
||
- [x] WorkloadView
|
||
|
||
## T31d Project · Time and databases
|
||
|
||
- [x] TimeTracker
|
||
- [x] Pomodoro Timer
|
||
- [x] DatabaseView (from T21c) — table, board, gallery, calendar, timeline
|
||
|
||
## T32a Canvas · Plane — `src/canvas`
|
||
|
||
- [x] InfiniteCanvas
|
||
- [x] CanvasGrid / Guides
|
||
- [x] Ruler
|
||
- [x] ZoomControls / ZoomIndicator
|
||
- [x] MiniMap
|
||
- [x] ArtboardFrame
|
||
|
||
## T32b Canvas · Tools
|
||
|
||
- [x] SelectionBox
|
||
- [x] TransformHandles
|
||
- [x] SnapIndicator
|
||
- [x] ToolPalette
|
||
- [x] ShapeTools — rect, ellipse, polygon, line, arrow
|
||
- [x] PenTool / PathEditor
|
||
- [x] TextTool
|
||
- [x] BrushTool / BrushSettings
|
||
- [x] HistoryPanel
|
||
|
||
## T32c Canvas · Panels
|
||
|
||
- [x] LayerPanel
|
||
- [x] AssetPanel
|
||
- [x] InspectorPanel
|
||
- [x] AlignmentToolbar
|
||
- [x] ColorPanel
|
||
- [x] GradientPanel → `forms::GradientEditor`
|
||
- [x] ShadowEditor
|
||
- [x] BorderEditor
|
||
- [x] TypographyPanel
|
||
- [x] ConstraintsEditor
|
||
- [x] AutoLayoutControls
|
||
- [x] ExportPanel
|
||
|
||
## T32d Canvas · Graphs and boards
|
||
|
||
- [x] NodeEditor / NodeGraph
|
||
- [x] Node / Port / Edge / Connection
|
||
- [x] FlowChart / DiagramEditor
|
||
- [x] MindMap
|
||
- [x] Whiteboard
|
||
- [x] StickyNote
|
||
- [x] Connector Line
|
||
|
||
## T33a DB & Dev Tools · Databases — `src/devtools`
|
||
|
||
- [x] ConnectionManager
|
||
- [x] ConnectionForm
|
||
- [x] SchemaTree
|
||
- [x] QueryEditor → `editor::CodeEditor`
|
||
- [x] QueryResultGrid → `tables::DataGrid`
|
||
- [x] QueryHistory
|
||
- [x] QueryPlanViewer
|
||
- [x] TableStructureEditor
|
||
- [x] ERDiagram
|
||
- [x] IndexManager
|
||
- [x] RedisKeyBrowser
|
||
|
||
## T33b DB & Dev Tools · Data formats
|
||
|
||
- [x] DocumentViewer (MongoDB / JSON) → `devtools::JsonViewer`
|
||
- [x] JsonViewer / JsonTree
|
||
- [x] JsonEditor
|
||
- [x] YamlViewer
|
||
- [x] XmlViewer
|
||
|
||
## T33c DB & Dev Tools · APIs
|
||
|
||
- [x] ApiRequestBuilder
|
||
- [x] ResponseViewer
|
||
- [x] HeadersTable
|
||
- [x] QueryParamsEditor → `forms::KeyValueInput`
|
||
- [x] EnvironmentSelector
|
||
- [x] CollectionTree
|
||
- [x] WebSocketConsole
|
||
- [x] GraphQLExplorer
|
||
|
||
## T33d DB & Dev Tools · Tools and machines
|
||
|
||
- [x] RegexTester
|
||
- [x] Base64 / Encoder
|
||
- [x] ColorContrastChecker
|
||
- [x] ContainerList
|
||
- [x] PodList
|
||
- [x] ResourceMonitor
|
||
|
||
## T34 Dashboard — `src/dashboard`
|
||
|
||
- [ ] Dashboard Grid
|
||
- [ ] Widget / DashboardCard
|
||
- [ ] StatCard → `data_display::Statistic`
|
||
- [ ] MetricsChart → `charts::LineChart`
|
||
- [ ] AlertList
|
||
- [ ] IncidentCard
|
||
- [ ] UptimeBar
|
||
- [ ] ServiceStatus
|
||
- [ ] HealthCheck Indicator
|
||
- [ ] LogStream → `terminal::LogViewer`
|
||
- [ ] TraceWaterfall → `agent::TraceViewer`
|
||
- [ ] EventStream
|
||
- [ ] ResourceGauge → `data_display::Gauge`
|
||
- [ ] SystemMonitor
|
||
- [ ] ProcessTable → `terminal::ProcessList`
|
||
- [ ] NetworkGraph (throughput) → `charts::RealtimeChart`
|
||
- [ ] MapView / GeoHeatmap → `maps::MapView`, `maps::GeoHeatmap` (T41)
|
||
- [ ] WorldMap → `maps::WorldMap` (T41)
|
||
- [ ] RefreshIntervalSelector
|
||
- [ ] DashboardFilterBar
|
||
|
||
## T35 Settings — `src/settings`
|
||
|
||
- [ ] SettingsLayout
|
||
- [ ] SettingsSection
|
||
- [ ] SettingsRow
|
||
- [ ] SettingsSearch
|
||
- [ ] ThemeSelector → `theme::ThemeSwitcher`
|
||
- [ ] AccentColorPicker
|
||
- [ ] FontSizeControl
|
||
- [ ] FontFamilySelect → `forms::FontPicker`
|
||
- [ ] DensitySelector
|
||
- [ ] LanguageSelector → `forms::Combobox::languages` (T06f)
|
||
- [ ] KeyboardShortcutsList
|
||
- [ ] ShortcutEditor → `editor::KeybindingsEditor`
|
||
- [ ] ProxySettings
|
||
- [ ] StorageSettings / CacheClear
|
||
- [ ] PrivacySettings
|
||
- [ ] NotificationSettings
|
||
- [ ] StartupSettings
|
||
- [ ] ImportExportSettings
|
||
- [ ] ResetToDefault
|
||
- [ ] AdvancedSettings / FeatureFlags
|
||
- [ ] DeveloperMode Toggle
|
||
|
||
## T36 Account — `src/account`
|
||
|
||
- [ ] LoginForm
|
||
- [ ] SignupForm
|
||
- [ ] OAuthButtons
|
||
- [ ] MagicLinkForm
|
||
- [ ] TwoFactorInput
|
||
- [ ] ForgotPassword
|
||
- [ ] ProfileCard
|
||
- [ ] ProfileEditor
|
||
- [ ] AccountSwitcher
|
||
- [ ] WorkspaceSwitcher / OrgSwitcher
|
||
- [ ] UserMenu
|
||
- [ ] SessionList
|
||
- [ ] ApiKeyManager
|
||
- [ ] SubscriptionCard / PlanBadge
|
||
- [ ] UsageQuota
|
||
- [ ] BillingHistory
|
||
- [ ] PaymentMethodForm
|
||
- [ ] UpgradePrompt / Paywall
|
||
- [ ] TeamMemberTable
|
||
- [ ] RoleSelector
|
||
- [ ] InvitationList
|
||
|
||
## T37 Onboarding & Help — `src/onboarding`
|
||
|
||
- [ ] OnboardingWizard
|
||
- [ ] WelcomeTour → `overlays::Tour` (T09b)
|
||
- [ ] Coachmark / Hotspot — Coachmark → `overlays::Spotlight`; Hotspot here
|
||
- [ ] FeatureHighlight / NewBadge
|
||
- [ ] Checklist (first-run tasks)
|
||
- [ ] HelpTooltip
|
||
- [ ] HelpPanel / DocsSidebar
|
||
- [ ] KeyboardShortcutCheatsheet
|
||
- [ ] WhatsNewDialog
|
||
- [ ] FeedbackWidget
|
||
- [ ] ContactSupport
|
||
- [ ] InlineHelp
|
||
- [ ] EmptyStateWithAction → `feedback::EmptyState`
|
||
|
||
## T38 Interaction — `src/interaction`
|
||
|
||
- [ ] Draggable — native `on_drag`
|
||
- [ ] Droppable / DropTarget — native `on_drop`, `drag_over`
|
||
- [ ] DragOverlay / DragPreview — native drag view
|
||
- [ ] DragGhost → DragPreview (native)
|
||
- [ ] Sortable / SortableContext
|
||
- [ ] Resizable
|
||
- [ ] Rotatable
|
||
- [ ] Selectable / SelectionArea
|
||
- [ ] RubberBandSelection → `interaction::SelectionArea`
|
||
- [ ] LongPress → `primitives::Pressable`
|
||
- [ ] DoubleClick — native `ClickEvent::click_count`
|
||
- [ ] Gesture — prove: wheel zoom, pinch, two-finger swipe
|
||
- [ ] PanZoom → `layout::Viewport`
|
||
- [ ] Hotkeys / KeyBinding — native `actions!`, `bind_keys`, `key_context`
|
||
- [ ] KeyChord — native multi-keystroke bindings
|
||
- [ ] Undo / Redo Manager
|
||
- [ ] InfiniteScroll Trigger → `lists::InfiniteList`
|
||
- [ ] VirtualScroller — native `list()` / `uniform_list()`
|
||
- [ ] ScrollSync
|
||
- [ ] Autofocus — native `window.focus()`
|
||
- [ ] RovingTabIndex
|
||
- [ ] TypeAhead
|
||
- [ ] FocusVisible → `primitives::FocusRing`
|
||
|
||
## T39 Theme — `src/theme`
|
||
|
||
- [x] ThemeProvider (T00)
|
||
- [ ] ThemeSwitcher
|
||
- [x] ColorTokens / DesignTokens (T00)
|
||
- [ ] ThemeEditor
|
||
- [ ] ThemeImporter — VS Code theme JSON
|
||
- [ ] SyntaxThemes
|
||
- [ ] IconThemeProvider
|
||
- [ ] DensityProvider (T00)
|
||
- [ ] RadiusProvider (T00)
|
||
- [ ] FontProvider (T00)
|
||
- [ ] HighContrastMode (T00)
|
||
- [ ] ReducedMotionProvider (T00)
|
||
- [ ] Platform Style
|
||
- [ ] VibrancyBackground / Mica / Acrylic — native `WindowBackgroundAppearance::Blurred`
|
||
- [x] Elevation / Shadow (T00)
|
||
|
||
## T40 i18n & a11y — `src/i18n`
|
||
|
||
- [ ] I18nProvider
|
||
- [ ] Trans / LocalizedText
|
||
- [ ] LocaleNumber / LocaleDate
|
||
- [ ] RTL layout — prove: mirrored stacks
|
||
- [ ] LiveRegion / Announcer — blocked: gpui 0.2.2 has no accessibility tree
|
||
- [ ] SkipLink
|
||
- [ ] AccessibleIcon — blocked: no accessibility tree
|
||
- [ ] AriaLabel helper — blocked: no accessibility tree
|
||
- [ ] KeyboardNavigationHelper
|
||
- [ ] ScreenReaderOnly — blocked: no accessibility tree
|
||
- [ ] ColorBlindSafe Palette
|
||
|
||
## T41 Maps — `src/maps`
|
||
|
||
- [ ] MapView — host tiles
|
||
- [ ] MapMarker
|
||
- [ ] MapPopup
|
||
- [ ] MapCluster
|
||
- [ ] RouteLine
|
||
- [ ] GeoJSON Layer
|
||
- [ ] ChoroplethMap
|
||
- [ ] LocationPicker
|
||
- [ ] CoordinateDisplay
|
||
- [ ] WorldMap (from T34)
|
||
- [ ] GeoHeatmap (from T34)
|
||
|
||
## T42 Misc — `src/misc`
|
||
|
||
- [ ] Clock / WorldClock
|
||
- [ ] Stopwatch
|
||
- [ ] Calculator
|
||
- [ ] UnitConverter
|
||
- [ ] QRCodeScanner — prove: host frames, `rqrr` decode
|
||
- [ ] BarcodeDisplay → `data_display::Barcode`
|
||
- [ ] Captcha
|
||
- [ ] Signature → `forms::SignaturePad`
|
||
- [ ] Rating Widget → `forms::Rating`
|
||
- [ ] Poll / Survey
|
||
- [ ] Quiz / Flashcard
|
||
- [ ] ChangeLog Viewer → `data_display::Changelog`
|
||
- [ ] LicenseViewer
|
||
- [ ] Terms / Consent Dialog
|
||
- [ ] CookieBanner
|
||
- [ ] WebView — prove: `wry`
|
||
- [ ] IframeEmbed / EmbedCard
|
||
- [ ] HTMLPreview → `misc::WebView`
|
||
- [ ] PrintButton — blocked: gpui 0.2.2 has no print API
|
||
- [ ] ExportDialog — PDF, PNG, CSV, JSON
|
||
- [ ] ImportDialog — field mapping
|
||
- [ ] CSVImporter
|
||
- [ ] ShareSheet
|
||
|
||
## T43 Library Tooling — `src/tooling`
|
||
|
||
- [ ] ComponentGallery / Storybook
|
||
- [ ] PlaygroundPanel
|
||
- [ ] InspectorOverlay
|
||
- [ ] FPSMeter / PerfOverlay
|
||
- [ ] RenderCounter
|
||
- [ ] EventLogger
|
||
- [ ] DesignTokenViewer
|
||
- [ ] IconBrowser
|
||
- [ ] A11yChecker — contrast audit
|
||
- [ ] ScreenshotTest Harness — self-capture; scripted input since T01
|