app.use(PrimeVue), so extensions lose three things they may have relied on:
- the
$primevueglobal property on the host Vue app; - the PrimeVue theme stylesheet, so PrimeVue components that an extension renders inside the host app render unstyled; and
- every global
--p-*CSS variable, such as--p-primary-color,--p-surface-*,--p-text-color,--p-content-backgroundand--p-form-field-border-color.
Extensions that render PrimeVue components
Do not rely on the host app’s PrimeVue instance. Either replace the PrimeVue components with your own markup, or create your own Vue app for your UI and install PrimeVue and its theme on that app.Extensions that read --p-* variables
Replace them with the design system theme variables, which follow the active
light or dark theme and the active color palette:
Tooltips
The globalv-tooltip directive is gone, and tooltips no longer render the PrimeVue DOM:
.p-tooltipand.p-tooltip-text- the
data-pd-tooltipattribute - the
$_ptooltip*element properties
data-slot="tooltip-content",
portaled to the end of document.body. It exists only while the tooltip is
open. Extensions that hide tooltips during their own UI should target
[data-slot="tooltip-content"] instead of .p-tooltip.
The --node-component-tooltip* CSS variables are also removed from the design
system stylesheet. Use the theme variables instead:
--background, --foreground and --border. The older names --base-background, --base-foreground and
--border-default are deprecated; see Deprecated variable names.
Deprecated variable names
Earlier versions of these notes pointed at older design system names. They still resolve, but they are deprecated and will be removed in a future release. Move to the theme variable now:
PrimeIcons are still loaded, so existing
pi pi-* icon classes keep working, but they are being phased out. Don’t add new uses.