Skip to content

Jetpack UI Modernization #48160

@simison

Description

@simison

We're updating primitive componentry from old RNA Jetpack components to the latest design system components aka @wordpress/ui package.

Where a component doesn't exist yet, we'll use @wordpress/components for now.

(See phcsdm-PK-p2 for internal reference)

Scan source: grep-based import scan of import { … } from '@automattic/jetpack-components'
across projects/plugins/*, projects/packages/*, and projects/js-packages/*.
Plugins / packages with no imports are omitted. Re-run when in doubt.


Plugins (bundled together with their feature packages)

Jetpack plugin (plugins/jetpack)

WordPress.com MU (plugins/mu-wpcom-plugin, packages/jetpack-mu-wpcom)

Boost (plugins/boost, packages/boost-core, packages/boost-speed-score)

  • Button
  • CopyToClipboard @enejb
  • Gridicon @simison
  • IconTooltip
  • Notice
  • NumberSlider
  • Popover
  • Spinner @simison
  • ToggleControl
  • Custom <Pill> component (app/assets/src/js/features/ui/pill) — used for "Beta" labels; should migrate to @wordpress/ui Badge

Protect (plugins/protect, packages/protect-models, packages/protect-status, packages/waf, packages/account-protection, js-packages/scan)

  • ActionPopover
  • Badge Components: Migrate Badge to @wordpress/ui #48156
  • Button
  • Col → Stack
  • Container → Stack
  • ContextualUpgradeTrigger
  • DetailsViewer
  • DiffViewer
  • H3
  • IconTooltip
  • MarkedLines
  • Notice
  • Spinner @simison
  • StatCard
  • Status
  • Text
  • ThemeProvider
  • Title
  • ToggleControl
  • Custom .badge class (src/js/routes/firewall/styles.module.scss) — "NOW AVAILABLE" inline pill; should migrate to @wordpress/ui Badge
  • Custom .status-badge class (src/js/components/paid-accordion/styles.module.scss) — status indicator; should migrate to @wordpress/ui Badge

Search (plugins/search, packages/search)

  • Button
  • Col → Stack
  • Container → Stack
  • DonutMeter
  • Gridicon @simison
  • IconTooltip
  • IndeterminateProgressBar
  • Text
  • ThemeProvider
  • ProductPrice.promoLabel styling (js-packages/components/components/product-price/style.module.scss) — yellow inline promo pill used via promoLabel prop; shared with VideoPress

Social + Publicize (plugins/social, packages/publicize)

Backup (plugins/backup, packages/backup, packages/backup-helper-script-manager)

  • ActionButton
  • Col
  • Container → Stack
  • LoadingPlaceholder
  • ProgressBar
  • Text
  • ThemeProvider

VaultPress (plugins/vaultpress)

  • No @automattic/jetpack-components imports.

VideoPress (plugins/videopress, packages/videopress)

  • ActionPopover
  • Button
  • Col → Stack
  • Container → Stack
  • LoadingPlaceholder
  • ProgressBar
  • SearchIcon
  • Text
  • ThemeProvider
  • Title

CRM (plugins/crm)

  • Button
  • Col → Stack
  • Container → Stack
  • IconTooltip
  • Text
  • ThemeProvider
  • ToggleControl

Starter Plugin (plugins/starter-plugin)

  • Can be ignored for now?

Automattic for Agencies Client (plugins/automattic-for-agencies-client)

  • Can be ignored for now?

  • Button

  • Col → Stack

  • Container → Stack

  • Spinner @simison

  • ThemeProvider

Classic Theme Helper (plugins/classic-theme-helper-plugin, packages/classic-theme-helper)

  • Can be ignored for now?

  • Col → Stack

  • Container → Stack

  • PricingCard

  • ThemeProvider

Dashboards / UI surfaces (even when not their own plugin)

Settings dashboard

The legacy Jetpack Settings screen lives inside projects/plugins/jetpack/_inc/client,
so its usage is covered by Jetpack plugin above. No separate package.

My Jetpack dashboard (packages/my-jetpack)

  • ActionButton
  • Alert
  • Button
  • CheckmarkIcon @simison
  • Col → Stack
  • Container → Stack
  • DotPager
  • GlobalNotices
  • Gridicon @simison
  • H3
  • JetpackIcon
  • JetpackLogo
  • LoadingPlaceholder
  • Notice
  • Spinner @simison
  • StarIcon
  • Text
  • ThemeProvider
  • UpsellBanner

Newsletter / Subscribers dashboard (packages/newsletter, packages/subscribers-dashboard)

  • Col → Stack
  • Container → Stack
  • GlobalNotices

Forms dashboard (packages/forms)

External Media / External Connections (packages/external-media, packages/external-connections)

  • NumberControl

Shared JS packages (consumed by many of the above)

Connection UI (js-packages/connection)

  • ActionButton
  • Button
  • DecorativeCard
  • Spinner @simison
  • Text

Identity Crisis (js-packages/idc)

Licensing (js-packages/licensing)

  • Button
  • Col → Stack
  • Container → Stack
  • Spinner @simison

Partner Coupon (js-packages/partner-coupon)

  • ActionButton

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions