Skip to content

docs(downloads): DLT-3052 DLT-3355 add downloads section and navbar hovercards - #1229

Merged
Francis Rupert (francisrupert) merged 4 commits into
nextfrom
docs/dialpad-design-nav-infra
Apr 28, 2026
Merged

docs(downloads): DLT-3052 DLT-3355 add downloads section and navbar hovercards#1229
Francis Rupert (francisrupert) merged 4 commits into
nextfrom
docs/dialpad-design-nav-infra

Conversation

@francisrupert

@francisrupert Francis Rupert (francisrupert) commented Apr 26, 2026

Copy link
Copy Markdown
Contributor

🛠️ Type Of Change

  • Documentation

📖 Jira Ticket

📖 Description

New /downloads/ section:

Note

The top nav bar may not be the final location, but fine for now.

  • DownloadsCatalog.vue driven by _data/downloads.json
  • 5 sections: Logo, Icon, Gradient, Product Storytelling, Graphic
  • noSidebar frontmatter flag (Layout.vue) for full-width section pages
  • selfManagedHeaderPaths in Page.vue so Downloads registers its own TOC entries
  • generate-raw-markdown.mjs post-process emits /md/downloads/index.md

Navbar hovercards (Foundations / Design System / UI Kits):

  • Hover reveals immediate children, each with a one-line description from the page's frontmatter
  • Click on anchor or inner link dismisses via v-if unmount
  • Two reset paths: route-change for inner-link navigation, mouseleave on the dismissed anchor button for same-page clicks (paired with @blur for keyboard parity)
  • Icons sourced from site-nav.json (same data as the sidebar)
  • Descriptions injected at theme init via _injectFrontmatterIntoSidebar (extends an existing keywords/status injector to also pick up description)

PageHeader:

  • Download button uses <router-link> for internal /downloads/#anchor paths, opens external URLs in a new tab
  • "Back to What's New" link on post detail pages, extensible via a BACK_LINKS table for future child-detail sections
  • copiedTimeout cleared on unmount

isExternalUrl util in theme/utils/, shared by PageHeader and SidebarItem (replaces two inline /^https?:\/\//.test(...) copies).

💡 Context

Downloads paired with Google Drive replaces Brand Design's use of Bynder.

📝 Checklist

  • No private Dialpad links or info in code or PR description.
  • Reviewed the diff.
  • Considered performance impact (hovercard mounts are cheap; v-if unmount avoids tippy state churn on dismissal).
  • Validated keyboard navigation (@blur paired with @mouseleave on the dismissed nav button).

What this PR does NOT do

  • Touch foundations content (separate PR, DLT-3349)
  • Touch the homepage (separate PR, DLT-3350)
  • Modify dialtone-vue components. DtHovercard's hide() short-circuits when content is focused (which a click does), so click-to-dismiss is solved in the consumer via v-if unmount rather than via a component change.

📷 Screenshots / GIFs

Downloads

Screen.Recording.2026-04-26.at.10.54.12.AM.mov

Top Nav Bar Hovercards

Screen.Recording.2026-04-26.at.10.56.21.AM.mov

@coderabbitai

coderabbitai Bot commented Apr 26, 2026

Copy link
Copy Markdown
Contributor

Adds a /downloads/ section with DownloadsCatalog (driven by _data/downloads.json and post-processed raw markdown), navbar hovercards populated from frontmatter descriptions, noSidebar opt-out, PageHeader download/back links, self-managed TOC for downloads, shared isExternalUrl util, and keyboard/blur/dismiss behavior improvements.

Overall Judgement

✅ Ready to merge — Implementation is focused, includes build/tooling and accessibility considerations, and passes privacy/keyboard checks.

Walkthrough

Adds a Downloads documentation page and Vue component, integrates it into navbar and theme behavior, injects per-page descriptions into sidebar items, adds an isExternalUrl helper, and extends build scripts to generate flattened raw markdown for the downloads section.

Changes

Cohort / File(s) Summary
Downloads Feature Core
apps/dialtone-documentation/docs/.vuepress/views/DownloadsCatalog.vue, apps/dialtone-documentation/docs/_data/downloads.json, apps/dialtone-documentation/docs/downloads/index.md
New DownloadsCatalog component and data file; new downloads page that renders catalog, per-item and bulk download links, and populates page headers for "On this Page".
Navigation & Page UI
apps/dialtone-documentation/docs/.vuepress/theme/components/Navbar.vue, apps/dialtone-documentation/docs/.vuepress/theme/components/PageHeader.vue, apps/dialtone-documentation/docs/.vuepress/theme/components/Page.vue, apps/dialtone-documentation/docs/.vuepress/theme/layouts/Layout.vue
Navbar adds Downloads entry and hovercard behavior; PageHeader adds conditional back-link and download button, button styling/spacing and RAW_SECTIONS update; Page watcher skips extra routes; Layout respects $frontmatter.noSidebar.
Theme Index & Client Registration
apps/dialtone-documentation/docs/.vuepress/theme/index.js, apps/dialtone-documentation/docs/.vuepress/client.js
Sidebar injection now fills missing item description from page frontmatter via a lookup map; client registers DownloadsCatalog globally.
Utilities
apps/dialtone-documentation/docs/.vuepress/theme/utils/isExternalUrl.js
Adds isExternalUrl(url) helper to detect http/https external links.
Build & Tooling
apps/dialtone-documentation/scripts/generate-raw-markdown.mjs, apps/dialtone-documentation/scripts/lib/generate-llms.mjs
Raw-markdown generator gained downloads section, refactored frontmatter parsing, and post-processes to emit flattened downloads markdown; SECTION_META updated to include downloads for LLM index generation.

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant Router
    participant DownloadsCatalog
    participant DataFile as downloads.json
    participant ThemeHeaders as HeadersStore
    participant Sidebar

    User->>Router: navigate to /downloads
    Router->>DownloadsCatalog: mount component
    DownloadsCatalog->>DataFile: load sections & items
    DownloadsCatalog->>ThemeHeaders: inject computed headers
    ThemeHeaders->>Sidebar: populate "On this Page"
    DownloadsCatalog->>User: render catalog with download links/buttons
Loading
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/dialpad-design-nav-infra

Comment @coderabbitai help to get the list of available commands and usage tips.

@wiz-inc-55b470eb7e

wiz-inc-55b470eb7e Bot commented Apr 26, 2026

Copy link
Copy Markdown

Wiz Scan Summary

Scanner Findings
Vulnerability Finding Vulnerabilities -
Data Finding Sensitive Data -
Secret Finding Secrets -
IaC Misconfiguration IaC Misconfigurations -
SAST Finding SAST Findings 2 Medium
Software Management Finding Software Management Findings -
Total 2 Medium

View scan details in Wiz

To detect these findings earlier in the dev lifecycle, try using Wiz Code VS Code Extension.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 2cdf77d12f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "Codex (@codex) review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "Codex (@codex) address that feedback".

Comment thread apps/dialtone-documentation/scripts/generate-raw-markdown.mjs

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 7

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@apps/dialtone-documentation/docs/_data/downloads.json`:
- Around line 100-105: The JSON contains a placeholder label in the downloads
data: replace the "label": "Label" inside the "items" array entry with a
descriptive text that matches the "svg": "download-graphic" asset (e.g.,
"Download graphic" or a more specific description like "PDF download graphic");
update the "label" value in that object so it accurately describes the graphic
for consumers of the downloads data.
- Around line 74-79: Replace the placeholder label value in the downloads.json
items array: find the object with "svg": "download-gradient" and change the
"label" property from "Label" to a meaningful, user-facing string that describes
the download (e.g., the file type or action such as "Download PDF" or "Get App")
so the UI displays a clear label.
- Around line 1-108: The JSON currently contains hardcoded user-facing strings
(e.g., sections.*.title, sections.*.relatedLabel, sections.*.downloadAllLabel,
and sections.*.items[*].label) which must be replaced with FTL localization
keys; update each string to a stable key (e.g., downloads.logo.title,
downloads.icon.items.gradient.label) and put the actual text in the FTL
translations file, then modify the docs rendering/template to resolve those keys
at runtime so the JSON only contains the localization keys and not English text;
ensure all instances (logo, icon, gradient, product-storytelling, graphic
sections and their items, relatedLabel/downloadAllLabel fields) are converted
and add corresponding entries to the .ftl file for each key.

In `@apps/dialtone-documentation/docs/.vuepress/theme/components/PageHeader.vue`:
- Around line 88-146: The primary "Copy MD" action currently calls
onCopyAsMarkdown() even when rawMarkdownUrl is null; update the dt-split-button
so the primary action is disabled/guarded when rawMarkdownUrl is falsy and
ensure onCopyAsMarkdown early-returns or shows a fallback (e.g., disabled state
or tooltip) when rawMarkdownUrl is missing; specifically, modify the
dt-split-button props/handler around the Copy MD primary action and add a
null-check inside the onCopyAsMarkdown method (and/or set a
:disabled="!rawMarkdownUrl" on dt-split-button) so clicking the main CTA does
nothing or informs the user when rawMarkdownUrl is not available.

In `@apps/dialtone-documentation/docs/.vuepress/views/DownloadsCatalog.vue`:
- Around line 45-68: The download button is currently nested inside the dt-stack
gated by v-if="item.label", so items with a downloadUrl but no label lose their
CTA; update the template to render the dt-button independently of item.label —
keep the dt-text block wrapped in v-if="item.label" (or render it conditionally
inside dt-stack) and move the dt-button (v-if="item.downloadUrl") outside or
alongside dt-stack so the Download button (dt-button) is displayed whenever
item.downloadUrl exists regardless of item.label; adjust the template around
dt-stack, dt-text and dt-button in DownloadsCatalog.vue accordingly.

In `@apps/dialtone-documentation/docs/downloads/index.md`:
- Around line 1-7: The new Downloads page
(apps/dialtone-documentation/docs/downloads/index.md with frontmatter title
"Downloads" and path /downloads/) was not added to the site's navigation data;
add an entry for "/downloads/" to the _data/site-nav.json array/object used for
site navigation (preserving the existing structure and keys such as title, path,
order or parent if present) so the page is registered even though it has
noSidebar: true; ensure the JSON entry uses the same title "Downloads" and
correct path "/downloads/" and follow existing ordering/grouping conventions in
_data/site-nav.json.

In `@apps/dialtone-documentation/scripts/generate-raw-markdown.mjs`:
- Around line 504-518: postProcessDownloads currently uses title from
parseFrontmatter directly which yields "# undefined" if title is missing; update
postProcessDownloads to provide a sensible fallback (e.g., 'Untitled' or an
empty string) when title is falsy before building the first line, e.g., compute
a safeTitle = title || 'Untitled' (or derive from sourcePath) and use safeTitle
when pushing `# ${safeTitle}`; reference parseFrontmatter and the
postProcessDownloads function to locate the change.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited), Organization UI (inherited)

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: aab2faa3-f0db-4b02-b214-3686c418f447

📥 Commits

Reviewing files that changed from the base of the PR and between 961965a and 2cdf77d.

⛔ Files ignored due to path filters (11)
  • apps/dialtone-documentation/docs/.vuepress/public/assets/images/download-gradient.svg is excluded by !**/*.svg
  • apps/dialtone-documentation/docs/.vuepress/public/assets/images/download-graphic.svg is excluded by !**/*.svg
  • apps/dialtone-documentation/docs/.vuepress/public/assets/images/download-logo--dark-icon.svg is excluded by !**/*.svg
  • apps/dialtone-documentation/docs/.vuepress/public/assets/images/download-logo--gradient-icon.svg is excluded by !**/*.svg
  • apps/dialtone-documentation/docs/.vuepress/public/assets/images/download-logo--meetings-dark.svg is excluded by !**/*.svg
  • apps/dialtone-documentation/docs/.vuepress/public/assets/images/download-logo--meetings-light.svg is excluded by !**/*.svg
  • apps/dialtone-documentation/docs/.vuepress/public/assets/images/download-logo--primary-2-dark.svg is excluded by !**/*.svg
  • apps/dialtone-documentation/docs/.vuepress/public/assets/images/download-logo--primary-2-light.svg is excluded by !**/*.svg
  • apps/dialtone-documentation/docs/.vuepress/public/assets/images/download-logo--secondary-1-color-dark.svg is excluded by !**/*.svg
  • apps/dialtone-documentation/docs/.vuepress/public/assets/images/download-logo--secondary-1-color-light.svg is excluded by !**/*.svg
  • apps/dialtone-documentation/docs/.vuepress/public/assets/images/download-product-storytelling.svg is excluded by !**/*.svg
📒 Files selected for processing (11)
  • apps/dialtone-documentation/docs/.vuepress/client.js
  • apps/dialtone-documentation/docs/.vuepress/theme/components/Navbar.vue
  • apps/dialtone-documentation/docs/.vuepress/theme/components/Page.vue
  • apps/dialtone-documentation/docs/.vuepress/theme/components/PageHeader.vue
  • apps/dialtone-documentation/docs/.vuepress/theme/index.js
  • apps/dialtone-documentation/docs/.vuepress/theme/layouts/Layout.vue
  • apps/dialtone-documentation/docs/.vuepress/theme/utils/isExternalUrl.js
  • apps/dialtone-documentation/docs/.vuepress/views/DownloadsCatalog.vue
  • apps/dialtone-documentation/docs/_data/downloads.json
  • apps/dialtone-documentation/docs/downloads/index.md
  • apps/dialtone-documentation/scripts/generate-raw-markdown.mjs

Comment thread apps/dialtone-documentation/docs/_data/downloads.json
Comment thread apps/dialtone-documentation/docs/_data/downloads.json
Comment thread apps/dialtone-documentation/docs/_data/downloads.json
Comment thread apps/dialtone-documentation/docs/downloads/index.md
Comment thread apps/dialtone-documentation/scripts/generate-raw-markdown.mjs

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@apps/dialtone-documentation/docs/.vuepress/views/DownloadsCatalog.vue`:
- Around line 23-35: The section-level download button currently always renders
(dt-button) and shows a disabled CTA when section.downloadAllUrl is null; change
the template to render the dt-button only when section.downloadAllUrl is truthy
(use v-if on the dt-button or its wrapper) so the CTA is omitted entirely when
no URL is provided—keep using section.downloadAllLabel for the label and
preserve the startIcon slot and other props unchanged.

In `@apps/dialtone-documentation/scripts/generate-raw-markdown.mjs`:
- Around line 664-675: The downloads post-processing swallow (catch) hides
failures so an unexpanded /md/downloads/index.md persists; change the block that
checks section.name === 'downloads' to let postProcessDownloads errors fail the
run by either removing the try/catch or rethrowing the caught error (or calling
process.exit(1)) after logging; specifically update the code around the call to
postProcessDownloads (and the DOWNLOADS_JSON/readFileSync usage) so that any
thrown err is not only logged but causes a non-zero exit or is rethrown to fail
the export.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited), Organization UI (inherited)

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: 80f997af-618c-4c5b-94f9-990ed1f7f34e

📥 Commits

Reviewing files that changed from the base of the PR and between 2cdf77d and ef174fc.

📒 Files selected for processing (5)
  • apps/dialtone-documentation/docs/.vuepress/theme/components/PageHeader.vue
  • apps/dialtone-documentation/docs/.vuepress/views/DownloadsCatalog.vue
  • apps/dialtone-documentation/docs/_data/downloads.json
  • apps/dialtone-documentation/scripts/generate-raw-markdown.mjs
  • apps/dialtone-documentation/scripts/lib/generate-llms.mjs

Comment thread apps/dialtone-documentation/scripts/generate-raw-markdown.mjs

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

♻️ Duplicate comments (1)
apps/dialtone-documentation/scripts/generate-raw-markdown.mjs (1)

664-676: ⚠️ Potential issue | 🟠 Major

Set a non-zero exit code when downloads post-process fails.

This catch block logs and increments errorCount, but the process can still exit successfully, allowing stale/unexpanded downloads markdown to flow into later indexing steps. Mark the run as failed at this point.

Suggested minimal fix
     if (section.name === 'downloads') {
       try {
         const downloadsData = JSON.parse(readFileSync(DOWNLOADS_JSON, 'utf-8'));
         postProcessDownloads(
           resolve(sourceDir, 'index.md'),
           resolve(outputBase, 'index.md'),
           downloadsData,
         );
       } catch (err) {
         console.error(`[generate-raw-markdown] downloads post-process: ${err.message}`);
         errorCount++;
+        process.exitCode = 1;
       }
     }
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@apps/dialtone-documentation/scripts/generate-raw-markdown.mjs` around lines
664 - 676, The catch block for the downloads post-process (where section.name
=== 'downloads' and you call postProcessDownloads with DOWNLOADS_JSON) only logs
and increments errorCount; modify the catch to mark the run as failed by setting
a non-zero exit status (e.g., set process.exitCode = 1 or call process.exit(1))
after incrementing errorCount so failures of postProcessDownloads are reflected
in the process exit code and prevent stale output from proceeding.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Duplicate comments:
In `@apps/dialtone-documentation/scripts/generate-raw-markdown.mjs`:
- Around line 664-676: The catch block for the downloads post-process (where
section.name === 'downloads' and you call postProcessDownloads with
DOWNLOADS_JSON) only logs and increments errorCount; modify the catch to mark
the run as failed by setting a non-zero exit status (e.g., set process.exitCode
= 1 or call process.exit(1)) after incrementing errorCount so failures of
postProcessDownloads are reflected in the process exit code and prevent stale
output from proceeding.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited), Organization UI (inherited)

Review profile: ASSERTIVE

Plan: Enterprise

Run ID: 63429202-0f98-4204-8571-345bea7e0f31

📥 Commits

Reviewing files that changed from the base of the PR and between ef174fc and 4b18667.

📒 Files selected for processing (1)
  • apps/dialtone-documentation/scripts/generate-raw-markdown.mjs

Comment on lines +299 to +329
// Unmount the hovercard via v-if to guarantee instant dismissal on click —
// bypasses DtHovercard's focus/transition/hover state entirely.
// Reset path differs by where the click originated:
// 'inner' click (item inside the popover): cursor is in the popover content,
// not the anchor — mouseleave on the anchor button never fires. Reset via
// route change (navigation) or a timer fallback (same-page click).
// 'anchor' click (the nav button itself): cursor stays on the anchor after
// click. Resetting too early causes the hovercard to remount under the
// cursor, fire mouseenter, and re-open after enterDelay. So for anchor
// clicks the only reset path is mouseleave on the plain button.
const dismissedKey = ref(null);
let dismissalKind = null;
let resetTimer;
const dismissHovercard = (key, kind = 'inner') => {
dismissedKey.value = key;
dismissalKind = kind;
clearTimeout(resetTimer);
if (kind === 'inner') {
resetTimer = setTimeout(() => {
if (dismissedKey.value === key) clearDismissal();
}, 400);
}
};
const releaseDismissal = (key) => {
if (dismissedKey.value === key) clearDismissal();
};
function clearDismissal () {
clearTimeout(resetTimer);
dismissedKey.value = null;
dismissalKind = null;
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

well this is annoying isn't it... Probably an improvement we can make to hovercard, but outside the scope of this PR of course.

@francisrupert
Francis Rupert (francisrupert) merged commit ecf5f85 into next Apr 28, 2026
9 checks passed
@francisrupert
Francis Rupert (francisrupert) deleted the docs/dialpad-design-nav-infra branch April 28, 2026 21:47
@github-actions

Copy link
Copy Markdown
Contributor

✔️ Deploy previews ready!
😎 Dialtone documentation preview: https://dialtone.dialpad.com/deploy-previews/pr-1229/

Brad Paugh (braddialpad) pushed a commit that referenced this pull request Apr 30, 2026
# [9.182.0-next.1](dialtone/v9.181.0...dialtone/v9.182.0-next.1) (2026-04-30)

### Bug Fixes

* **Combinator:** NO-JIRA remove unnecessary eslint-disable max-len comments ([e431bf6](e431bf6))
* correct types paths in package.json exports ([#1239](#1239)) ([21667f9](21667f9))
* **Css:** DLT-3321 reorder utility classes so single-direction wins over shorthand ([#1205](#1205)) ([df3bd74](df3bd74))
* **Css:** DLT-3336 register bgo, fco, bco vars as non-inheriting ([#1209](#1209)) ([0278620](0278620))
* **Doc:** NO-JIRA correct font size utility json ([#1015](#1015)) ([76cf0fa](76cf0fa))
* **Editor:** NO-JIRA remove extra blank line in editor.mdx ([18c47ef](18c47ef))
* possible merge issue in sidebarItem.vue ([5e2e91b](5e2e91b))
* **Split Button, Filter Pill:** DLT-3260 DLT-3261 correct misalignment at size 100 ([#1176](#1176)) ([fe2b777](fe2b777))
* **Stylelint:** disable hue-degree-notation rule and update OKLCH color syntax ([81f886e](81f886e))
* **Stylelint:** disable hue-degree-notation rule and update OKLCH color syntax ([8721f43](8721f43))
* **Tabs:** DLT-3251 improve accessibility ([#1171](#1171)) ([01b101e](01b101e))
* **Tokens:** DLT-3053 preserve root font size variable as reference ([#1093](#1093)) ([112ab4b](112ab4b))
* **Tokens:** handle multi-layer box shadows correctly in postcss plugin ([feea7f1](feea7f1))
* **Tokens:** NO-JIRA output line-height as unitless instead of percentages ([#1040](#1040)) ([33d8505](33d8505))
* **Tokens:** wrap css math expressions with calc() in layered build ([#966](#966)) ([1635f61](1635f61))
* update @dialpad/i18n dependencies to latest versions ([7a4b777](7a4b777))

### Code Refactoring

* **Box:** DLT-3333 rename percent prop values to p-suffix ([#1208](#1208)) ([e5fa5da](e5fa5da))
* **Combobox Multi Select:** NO-JIRA use logical css properties ([#1104](#1104)) ([a675daf](a675daf))
* **Components,recipes:** DLT-3043 DLT-3046 logical start/end naming with deprecated backward-compatible fallbacks ([#1079](#1079)) ([1d26a4e](1d26a4e))
* **Components:** DLT-3100 remove rootClass references ([#1184](#1184)) ([6531783](6531783))
* **Components:** DLT-3160 standardize v-model event handling ([#1201](#1201)) ([f1624d4](f1624d4))
* **Components:** dlt-3282 renamed show prop to open ([#1190](#1190)) ([5509d0f](5509d0f))
* **Components:** dlt-3283 refactor prop/slots to be consistent ([#1196](#1196)) ([2d22c76](2d22c76))
* **Components:** DLT-3284 refactor props to not have native html attributes names ([#1204](#1204)) ([48a0f57](48a0f57))
* **Css:** DLT-1876 css logical properties ([#872](#872)) ([1acd6c9](1acd6c9))
* **Modal:** DLT-3262 migrate DtModal to native dialog element ([#1179](#1179)) ([589edb5](589edb5))
* **Notice,banner,toast:** DLT-3296 decouple CSS and fix specificity violations ([#1194](#1194)) ([9579ac0](9579ac0))
* **Resizable:** DLT-3335 align size props on --dt-layout-* instead of --dt-size-* ([#1215](#1215)) ([c156dbc](c156dbc))
* **Style:** DLT-3014 wrap all styles in css cascade layers ([#1061](#1061)) ([f8b3fed](f8b3fed))
* **Text:** DLT-2883 rename headline sizes from xxl => 2xl, etc ([#1029](#1029)) ([0ac86f3](0ac86f3))
* **Text:** DLT-3302 tone prop uses css variables instead of css utilities ([#1197](#1197)) ([75df16f](75df16f))
* **Tokens,css,link,text,breadcrumbs,input Group,split Button:** tokens, CSS foundation, deprecations, tooling DLT-3011 DLT-2961 DLT-3068 DLT-3069 DLT-3070 DLT-3071 DLT-3072 ([#1092](#1092)) ([7783090](7783090))
* **Tokens:** DLT-2884 deprecate space tokens in favor of size tokens ([#1013](#1013)) ([63f6d2f](63f6d2f))
* **Tokens:** DLT-3013 convert color system from HSL to OKLCH ([#1060](#1060)) ([42dc418](42dc418))

### Documentation

* **Components:** DLT-3178 DLT-3182 unify code examples into single code-example component ([#1147](#1147)) ([d0b6e14](d0b6e14))
* **Css Utilities:** DLT-3295 DLT-3280 mark physical utilities as deprecated ([#1193](#1193)) ([73f1479](73f1479))
* **Css Utilities:** DLT-3337 migrate internal utility-class consumers to token-indexed names and rewrite radius docs ([#1212](#1212)) ([d675238](d675238))
* **Dialtone Vue:** DLT-3226 update documentation and consuming code to numeric size scale ([#1158](#1158)) ([149c763](149c763))
* DLT-1510 DLT-1511 DLT-1512 site redesign and ia ([#968](#968)) ([6ea7eb9](6ea7eb9))
* DLT-2908 ui kits landing page ([#1049](#1049)) ([d805b9d](d805b9d))
* DLT-3016 migration docs ([#1224](#1224)) ([3d73a43](3d73a43))
* DLT-3243 fenced code blocks for examples and snippets ([#1166](#1166)) ([cb169df](cb169df))
* DLT-3250 display component status badges in sidebar and page headers ([#1170](#1170)) ([7d5f5d5](7d5f5d5))
* DLT-3252 add GFM alert syntax for notices ([#1172](#1172)) ([1697911](1697911))
* DLT-3258 DLT-3259 improve sidebar search with logical keywords and fuzzy matching ([#1174](#1174)) ([2bf4639](2bf4639))
* DLT-3345 migrate d-stack*/d-flow* wrappers to DtStack ([#1218](#1218)) ([fa090ef](fa090ef))
* **Downloads:** DLT-3052 DLT-3355 add downloads section and navbar hovercards ([#1229](#1229)) ([ecf5f85](ecf5f85))
* **Foundations, Homepage:** DLT-3349 DLT-3350 refresh foundations content and homepage ([#1228](#1228)) ([ab73dfd](ab73dfd))
* **Layout And Spacing:** improve to focus on understanding new layout and spacing system ([c75201f](c75201f))
* **Migration Guide:** NO-JIRA improve prop/slot migration guide ([#1227](#1227)) ([1328452](1328452))
* NO-JIRA fix focus left-nav items on keypress down up ([#1106](#1106)) ([882c9b9](882c9b9))
* **Playground:** DLT-3119 refine playground UI and integrate across doc site ([#1127](#1127)) ([ba6b599](ba6b599))
* **Playground:** DLT-3242 segmented control for compact enum props ([#1165](#1165)) ([fa440d8](fa440d8))
* **Utilities:** DLT-3183 convert to vue demo fenced block ([#1167](#1167)) ([522197f](522197f))

### Features

* **Avatar:** DLT-2942 updated avatar component ([#1047](#1047)) ([e50563d](e50563d))
* **Avatar:** DLT-3161 change from clickable to "interactive" ([#1182](#1182)) ([2d00fe0](2d00fe0))
* **Banner, Notice, Toast, Breadcrumbs, Checkbox, Radio, Input, Select Menu, Empty State:** visual refresh, dt-text integration, form api parity DLT-2944 DLT-2945 DLT-2949 DLT-2959 DLT-2960 DLT-2957 ([#1091](#1091)) ([16e908a](16e908a))
* **Box:** DLT-3315 new DtBox primitive component ([#1203](#1203)) ([e0c942e](e0c942e))
* **Button,tabs,split Button:** visual refresh and slot updates DLT-2946 DLT-2947 DLT-2965 ([#1090](#1090)) ([ffdd56f](ffdd56f))
* **Colors:** DLT-3354 split green palette into distinct light and dark mode values ([#1225](#1225)) ([cf63034](cf63034))
* **Combinator:** DLT-3312 preview resolved value in sized props ([#1199](#1199)) ([61bb610](61bb610))
* **Components:** dlt-3096 add slot classes ([#1214](#1214)) ([5f6528e](5f6528e))
* **Components:** DLT-3157 align critical/positive prop values and CSS class names ([#1177](#1177)) ([edd98b2](edd98b2))
* **Components:** DLT-3159 enforce positive boolean props ([#1198](#1198)) ([ac73bdc](ac73bdc))
* **Components:** DLT-3192 establish the slotclass convention rule ([#1216](#1216)) ([3c399d4](3c399d4))
* **Css Utilities, Design Tokens:** DLT-3330 DLT-3332 add off-scale pixel-indexed layout tokens and sizing utilities ([#1206](#1206)) ([1054875](1054875))
* **Css Utilities, Eslint Plugin Dialtone:** DLT-3329 update border-radius css utilities and associated tooling ([#1211](#1211)) ([6bc3599](6bc3599))
* **Css Utilities:** DLT-3357 DLT-3358 add ease-in and retune ease-out ([#1226](#1226)) ([961965a](961965a))
* **Css Utility:** DLT-2715 add default color for border css utilities ([#874](#874)) ([71310ab](71310ab))
* **Design Tokens, Text, Link, Box, Css:** DLT-3338 add info semantic tokens and consumers ([#1210](#1210)) ([2f04b45](2f04b45))
* **Dialtone Css, Dialtone Tokens, Dialtone Vue:** DLT-3197 DLT-3198 DLT-3199 DLT-3200 DLT-3201 DLT-3202 DLT-3203 DLT-3204 DLT-3205 DLT-3206 DLT-3207 DLT-3208 DLT-3209 DLT-3210 DLT-3211 token-stop utility classes, migration tooling, and documentation ([#1150](#1150)) ([6237b84](6237b84))
* **Dialtone Vue:** DLT-3225 migrate component size props to numeric ordinal scale ([#1157](#1157)) ([725bd41](725bd41))
* **Eslint Plugin Dialtone:** DLT-3047 physical-to-logical naming migration tooling ([#1163](#1163)) ([d94dc4b](d94dc4b))
* **Eslint Plugin Dialtone:** DLT-3227 DLT-3228 add deprecated-tshirt-sizes ESLint rule and migration codemod ([#1159](#1159)) ([21a011f](21a011f))
* **Filter Pill:** DLT-2704 create component ([#473](#473)) ([6267445](6267445))
* **Filter Pill:** DLT-2941 DtFilterPill improvements ([#1110](#1110)) ([23c5689](23c5689))
* **Focusgroup:** DLT-3285 add v-dt-focusgroup directive for declarative roving tabindex ([#1187](#1187)) ([e1ea074](e1ea074))
* **Focustrap:** DLT-3297 add v-dt-focustrap directive for declarative focus trapping ([#1195](#1195)) ([6ef9a21](6ef9a21))
* **Link,button:** DLT-3012 add underline prop ([#1059](#1059)) ([1cb91ea](1cb91ea))
* **Mode Directive, Mode Island:** DLT-3067 DLT-3078 DLT-3077 add `v-dt-mode` directive ([#1109](#1109)) ([f97efca](f97efca))
* **Prose:** DLT-3245 new component ([#1169](#1169)) ([adee928](adee928))
* **Scripts, Eslint, Stylelint:** DLT-3359 add success-to-positive migration tooling ([#1231](#1231)) ([0d652a5](0d652a5))
* **Scripts:** DLT-3033 DLT-3034 DLT-3035 add link-rendering migration codemod and ESLint rule ([#1233](#1233)) ([35a7238](35a7238))
* **Scripts:** DLT-3304 add scripts/docs for migration props changes ([#1219](#1219)) ([589173f](589173f))
* **Segmented Control:** DLT-413 new component ([#1144](#1144)) ([ad4c6c3](ad4c6c3))
* **Split Button:** DLT-3257 add show-divider prop ([#1173](#1173)) ([5bef411](5bef411))
* **Style:** DLT-2976 update underline thickness and offset ([#1058](#1058)) ([1e56947](1e56947))
* **Tabs:** DLT-3114 add vertical orientation variant ([#1120](#1120)) ([3290a23](3290a23))
* **Tabs:** DLT-3162 add spread prop for horizontal distribution ([#1135](#1135)) ([6e7cd04](6e7cd04))
* **Text:** export text component from dialtone-vue ([757fdb7](757fdb7))
* **Text:** new vue component DLT-2864 DLT-2863 DLT-2862 ([#995](#995)) ([196ef8a](196ef8a))
* **Tokens, Css:** DLT-3331 rename success tokens and utility classes to positive ([#1230](#1230)) ([34bdff5](34bdff5))
* **Tokens:** DLT-1977 add high contrast design tokens and theme ([#938](#938)) ([a1c0457](a1c0457))
* **Tokens:** DLT-2767 exploratory shell themes ([#909](#909)) ([3afcf63](3afcf63))
* **Tokens:** DLT-2781 create color-assistive themes ([#921](#921)) ([a6cc397](a6cc397))
* **Tokens:** DLT-2802 DLT-2563 layered theming system and mode island component ([#945](#945)) ([5c72c6c](5c72c6c))
* **Tokens:** DLT-2937 introduce spacing and layout token systems ([#1045](#1045)) ([de23e12](de23e12))
* **Tokens:** update color ramps and consumer color migration tools DLT-3004 DLT-3005 DLT-3006 DLT-3007 DLT-3008 ([#1054](#1054)) ([28cb1de](28cb1de))
* **Typography, Tokens:** DLT-2856 DLT-2857 next typography system ([#994](#994)) ([d744e97](d744e97))
Brad Paugh (braddialpad) pushed a commit that referenced this pull request May 1, 2026
# [9.183.0-next.1](dialtone/v9.182.1...dialtone/v9.183.0-next.1) (2026-05-01)

### Bug Fixes

* **Combinator:** NO-JIRA remove unnecessary eslint-disable max-len comments ([e431bf6](e431bf6))
* correct types paths in package.json exports ([#1239](#1239)) ([21667f9](21667f9))
* **Css:** DLT-3321 reorder utility classes so single-direction wins over shorthand ([#1205](#1205)) ([df3bd74](df3bd74))
* **Css:** DLT-3336 register bgo, fco, bco vars as non-inheriting ([#1209](#1209)) ([0278620](0278620))
* **Doc:** NO-JIRA correct font size utility json ([#1015](#1015)) ([76cf0fa](76cf0fa))
* **Editor:** NO-JIRA remove extra blank line in editor.mdx ([18c47ef](18c47ef))
* possible merge issue in sidebarItem.vue ([5e2e91b](5e2e91b))
* **Split Button, Filter Pill:** DLT-3260 DLT-3261 correct misalignment at size 100 ([#1176](#1176)) ([fe2b777](fe2b777))
* **Stylelint:** disable hue-degree-notation rule and update OKLCH color syntax ([81f886e](81f886e))
* **Stylelint:** disable hue-degree-notation rule and update OKLCH color syntax ([8721f43](8721f43))
* **Tabs:** DLT-3251 improve accessibility ([#1171](#1171)) ([01b101e](01b101e))
* **Tokens:** DLT-3053 preserve root font size variable as reference ([#1093](#1093)) ([112ab4b](112ab4b))
* **Tokens:** handle multi-layer box shadows correctly in postcss plugin ([feea7f1](feea7f1))
* **Tokens:** NO-JIRA output line-height as unitless instead of percentages ([#1040](#1040)) ([33d8505](33d8505))
* **Tokens:** wrap css math expressions with calc() in layered build ([#966](#966)) ([1635f61](1635f61))
* update @dialpad/i18n dependencies to latest versions ([7a4b777](7a4b777))

### Code Refactoring

* **Box:** DLT-3333 rename percent prop values to p-suffix ([#1208](#1208)) ([e5fa5da](e5fa5da))
* **Combobox Multi Select:** NO-JIRA use logical css properties ([#1104](#1104)) ([a675daf](a675daf))
* **Components,recipes:** DLT-3043 DLT-3046 logical start/end naming with deprecated backward-compatible fallbacks ([#1079](#1079)) ([1d26a4e](1d26a4e))
* **Components:** DLT-3100 remove rootClass references ([#1184](#1184)) ([6531783](6531783))
* **Components:** DLT-3160 standardize v-model event handling ([#1201](#1201)) ([f1624d4](f1624d4))
* **Components:** dlt-3282 renamed show prop to open ([#1190](#1190)) ([5509d0f](5509d0f))
* **Components:** dlt-3283 refactor prop/slots to be consistent ([#1196](#1196)) ([2d22c76](2d22c76))
* **Components:** DLT-3284 refactor props to not have native html attributes names ([#1204](#1204)) ([48a0f57](48a0f57))
* **Css:** DLT-1876 css logical properties ([#872](#872)) ([1acd6c9](1acd6c9))
* **Modal:** DLT-3262 migrate DtModal to native dialog element ([#1179](#1179)) ([589edb5](589edb5))
* **Notice,banner,toast:** DLT-3296 decouple CSS and fix specificity violations ([#1194](#1194)) ([9579ac0](9579ac0))
* **Resizable:** DLT-3335 align size props on --dt-layout-* instead of --dt-size-* ([#1215](#1215)) ([c156dbc](c156dbc))
* **Style:** DLT-3014 wrap all styles in css cascade layers ([#1061](#1061)) ([f8b3fed](f8b3fed))
* **Text:** DLT-2883 rename headline sizes from xxl => 2xl, etc ([#1029](#1029)) ([0ac86f3](0ac86f3))
* **Text:** DLT-3302 tone prop uses css variables instead of css utilities ([#1197](#1197)) ([75df16f](75df16f))
* **Tokens,css,link,text,breadcrumbs,input Group,split Button:** tokens, CSS foundation, deprecations, tooling DLT-3011 DLT-2961 DLT-3068 DLT-3069 DLT-3070 DLT-3071 DLT-3072 ([#1092](#1092)) ([7783090](7783090))
* **Tokens:** DLT-2884 deprecate space tokens in favor of size tokens ([#1013](#1013)) ([63f6d2f](63f6d2f))
* **Tokens:** DLT-3013 convert color system from HSL to OKLCH ([#1060](#1060)) ([42dc418](42dc418))

### Documentation

* **Components:** DLT-3178 DLT-3182 unify code examples into single code-example component ([#1147](#1147)) ([d0b6e14](d0b6e14))
* **Css Utilities:** DLT-3295 DLT-3280 mark physical utilities as deprecated ([#1193](#1193)) ([73f1479](73f1479))
* **Css Utilities:** DLT-3337 migrate internal utility-class consumers to token-indexed names and rewrite radius docs ([#1212](#1212)) ([d675238](d675238))
* **Dialtone Vue:** DLT-3226 update documentation and consuming code to numeric size scale ([#1158](#1158)) ([149c763](149c763))
* DLT-1510 DLT-1511 DLT-1512 site redesign and ia ([#968](#968)) ([6ea7eb9](6ea7eb9))
* DLT-2908 ui kits landing page ([#1049](#1049)) ([d805b9d](d805b9d))
* DLT-3016 migration docs ([#1224](#1224)) ([3d73a43](3d73a43))
* DLT-3243 fenced code blocks for examples and snippets ([#1166](#1166)) ([cb169df](cb169df))
* DLT-3250 display component status badges in sidebar and page headers ([#1170](#1170)) ([7d5f5d5](7d5f5d5))
* DLT-3252 add GFM alert syntax for notices ([#1172](#1172)) ([1697911](1697911))
* DLT-3258 DLT-3259 improve sidebar search with logical keywords and fuzzy matching ([#1174](#1174)) ([2bf4639](2bf4639))
* DLT-3345 migrate d-stack*/d-flow* wrappers to DtStack ([#1218](#1218)) ([fa090ef](fa090ef))
* **Downloads:** DLT-3052 DLT-3355 add downloads section and navbar hovercards ([#1229](#1229)) ([ecf5f85](ecf5f85))
* **Foundations, Homepage:** DLT-3349 DLT-3350 refresh foundations content and homepage ([#1228](#1228)) ([ab73dfd](ab73dfd))
* **Layout And Spacing:** improve to focus on understanding new layout and spacing system ([c75201f](c75201f))
* **Migration Guide:** NO-JIRA improve prop/slot migration guide ([#1227](#1227)) ([1328452](1328452))
* NO-JIRA fix focus left-nav items on keypress down up ([#1106](#1106)) ([882c9b9](882c9b9))
* **Playground:** DLT-3119 refine playground UI and integrate across doc site ([#1127](#1127)) ([ba6b599](ba6b599))
* **Playground:** DLT-3242 segmented control for compact enum props ([#1165](#1165)) ([fa440d8](fa440d8))
* **Tabs, Skeleton, Rich Text Editor, Emoji, Avatar:** DLT-3347 update doc page code examples ([#1221](#1221)) ([c80061f](c80061f))
* **Utilities:** DLT-3183 convert to vue demo fenced block ([#1167](#1167)) ([522197f](522197f))

### Features

* **Avatar:** DLT-2942 updated avatar component ([#1047](#1047)) ([e50563d](e50563d))
* **Avatar:** DLT-3161 change from clickable to "interactive" ([#1182](#1182)) ([2d00fe0](2d00fe0))
* **Banner, Notice, Toast, Breadcrumbs, Checkbox, Radio, Input, Select Menu, Empty State:** visual refresh, dt-text integration, form api parity DLT-2944 DLT-2945 DLT-2949 DLT-2959 DLT-2960 DLT-2957 ([#1091](#1091)) ([16e908a](16e908a))
* **Box:** DLT-3315 new DtBox primitive component ([#1203](#1203)) ([e0c942e](e0c942e))
* **Button,tabs,split Button:** visual refresh and slot updates DLT-2946 DLT-2947 DLT-2965 ([#1090](#1090)) ([ffdd56f](ffdd56f))
* **Colors:** DLT-3354 split green palette into distinct light and dark mode values ([#1225](#1225)) ([cf63034](cf63034))
* **Combinator:** DLT-3312 preview resolved value in sized props ([#1199](#1199)) ([61bb610](61bb610))
* **Components:** dlt-3096 add slot classes ([#1214](#1214)) ([5f6528e](5f6528e))
* **Components:** DLT-3157 align critical/positive prop values and CSS class names ([#1177](#1177)) ([edd98b2](edd98b2))
* **Components:** DLT-3159 enforce positive boolean props ([#1198](#1198)) ([ac73bdc](ac73bdc))
* **Components:** DLT-3192 establish the slotclass convention rule ([#1216](#1216)) ([3c399d4](3c399d4))
* **Css Utilities, Design Tokens:** DLT-3330 DLT-3332 add off-scale pixel-indexed layout tokens and sizing utilities ([#1206](#1206)) ([1054875](1054875))
* **Css Utilities, Eslint Plugin Dialtone:** DLT-3329 update border-radius css utilities and associated tooling ([#1211](#1211)) ([6bc3599](6bc3599))
* **Css Utilities:** DLT-3357 DLT-3358 add ease-in and retune ease-out ([#1226](#1226)) ([961965a](961965a))
* **Css Utility:** DLT-2715 add default color for border css utilities ([#874](#874)) ([71310ab](71310ab))
* **Design Tokens, Text, Link, Box, Css:** DLT-3338 add info semantic tokens and consumers ([#1210](#1210)) ([2f04b45](2f04b45))
* **Dialtone Css, Dialtone Tokens, Dialtone Vue:** DLT-3197 DLT-3198 DLT-3199 DLT-3200 DLT-3201 DLT-3202 DLT-3203 DLT-3204 DLT-3205 DLT-3206 DLT-3207 DLT-3208 DLT-3209 DLT-3210 DLT-3211 token-stop utility classes, migration tooling, and documentation ([#1150](#1150)) ([6237b84](6237b84))
* **Dialtone Vue:** DLT-3225 migrate component size props to numeric ordinal scale ([#1157](#1157)) ([725bd41](725bd41))
* **Eslint Plugin Dialtone:** DLT-3047 physical-to-logical naming migration tooling ([#1163](#1163)) ([d94dc4b](d94dc4b))
* **Eslint Plugin Dialtone:** DLT-3227 DLT-3228 add deprecated-tshirt-sizes ESLint rule and migration codemod ([#1159](#1159)) ([21a011f](21a011f))
* **Filter Pill:** DLT-2704 create component ([#473](#473)) ([6267445](6267445))
* **Filter Pill:** DLT-2941 DtFilterPill improvements ([#1110](#1110)) ([23c5689](23c5689))
* **Focusgroup:** DLT-3285 add v-dt-focusgroup directive for declarative roving tabindex ([#1187](#1187)) ([e1ea074](e1ea074))
* **Focustrap:** DLT-3297 add v-dt-focustrap directive for declarative focus trapping ([#1195](#1195)) ([6ef9a21](6ef9a21))
* **Link,button:** DLT-3012 add underline prop ([#1059](#1059)) ([1cb91ea](1cb91ea))
* **Mode Directive, Mode Island:** DLT-3067 DLT-3078 DLT-3077 add `v-dt-mode` directive ([#1109](#1109)) ([f97efca](f97efca))
* **Prose:** DLT-3245 new component ([#1169](#1169)) ([adee928](adee928))
* **Scripts, Eslint, Stylelint:** DLT-3359 add success-to-positive migration tooling ([#1231](#1231)) ([0d652a5](0d652a5))
* **Scripts:** DLT-3033 DLT-3034 DLT-3035 add link-rendering migration codemod and ESLint rule ([#1233](#1233)) ([35a7238](35a7238))
* **Scripts:** DLT-3304 add scripts/docs for migration props changes ([#1219](#1219)) ([589173f](589173f))
* **Segmented Control:** DLT-413 new component ([#1144](#1144)) ([ad4c6c3](ad4c6c3))
* **Split Button:** DLT-3257 add show-divider prop ([#1173](#1173)) ([5bef411](5bef411))
* **Style:** DLT-2976 update underline thickness and offset ([#1058](#1058)) ([1e56947](1e56947))
* **Tabs:** DLT-3114 add vertical orientation variant ([#1120](#1120)) ([3290a23](3290a23))
* **Tabs:** DLT-3162 add spread prop for horizontal distribution ([#1135](#1135)) ([6e7cd04](6e7cd04))
* **Text:** export text component from dialtone-vue ([757fdb7](757fdb7))
* **Text:** new vue component DLT-2864 DLT-2863 DLT-2862 ([#995](#995)) ([196ef8a](196ef8a))
* **Tokens, Css:** DLT-3331 rename success tokens and utility classes to positive ([#1230](#1230)) ([34bdff5](34bdff5))
* **Tokens:** DLT-1977 add high contrast design tokens and theme ([#938](#938)) ([a1c0457](a1c0457))
* **Tokens:** DLT-2767 exploratory shell themes ([#909](#909)) ([3afcf63](3afcf63))
* **Tokens:** DLT-2781 create color-assistive themes ([#921](#921)) ([a6cc397](a6cc397))
* **Tokens:** DLT-2802 DLT-2563 layered theming system and mode island component ([#945](#945)) ([5c72c6c](5c72c6c))
* **Tokens:** DLT-2937 introduce spacing and layout token systems ([#1045](#1045)) ([de23e12](de23e12))
* **Tokens:** update color ramps and consumer color migration tools DLT-3004 DLT-3005 DLT-3006 DLT-3007 DLT-3008 ([#1054](#1054)) ([28cb1de](28cb1de))
* **Typography, Tokens:** DLT-2856 DLT-2857 next typography system ([#994](#994)) ([d744e97](d744e97))
Brad Paugh (braddialpad) pushed a commit that referenced this pull request May 22, 2026
# [9.184.0-next.1](dialtone/v9.183.0...dialtone/v9.184.0-next.1) (2026-05-22)

### Bug Fixes

* **Combinator:** NO-JIRA remove unnecessary eslint-disable max-len comments ([e431bf6](e431bf6))
* **Components:** dlt-3408 components clean up ([#1264](#1264)) ([38c383a](38c383a))
* **Components:** no-jira update tree-shaking export ([#1270](#1270)) ([f12ddcc](f12ddcc))
* correct types paths in package.json exports ([#1239](#1239)) ([21667f9](21667f9))
* **Css:** DLT-3321 reorder utility classes so single-direction wins over shorthand ([#1205](#1205)) ([df3bd74](df3bd74))
* **Css:** DLT-3336 register bgo, fco, bco vars as non-inheriting ([#1209](#1209)) ([0278620](0278620))
* **Dialtone Tokens:** NO-JIRA fix shadow DOM setAttribute crash in theme setters ([#1271](#1271)) ([554047b](554047b))
* **Doc:** NO-JIRA correct font size utility json ([#1015](#1015)) ([76cf0fa](76cf0fa))
* **Editor:** NO-JIRA remove extra blank line in editor.mdx ([18c47ef](18c47ef))
* **Modal:** auto-detect shadow root and teleport dialog into it ([#1268](#1268)) ([f945c84](f945c84))
* NO-JIRA regenerate pnpm-lock.yaml after staging merge ([4462a1a](4462a1a))
* possible merge issue in sidebarItem.vue ([5e2e91b](5e2e91b))
* **Resizable:** DLT-3444 center handle position ([#1291](#1291)) ([0d5d639](0d5d639))
* **Rich Text Editor:** bubble menu error ([68e3591](68e3591))
* **Segmented Control, Button:** NO-JIRA correct layering of slot items ([#1283](#1283)) ([046f212](046f212))
* **Segmented Control:** DLT-3443 correct background color of traveling indicator ([#1290](#1290)) ([5fc4fa8](5fc4fa8))
* **Split Button, Filter Pill:** DLT-3260 DLT-3261 correct misalignment at size 100 ([#1176](#1176)) ([fe2b777](fe2b777))
* **Stylelint:** disable hue-degree-notation rule and update OKLCH color syntax ([81f886e](81f886e))
* **Stylelint:** disable hue-degree-notation rule and update OKLCH color syntax ([8721f43](8721f43))
* **Tabs:** DLT-3251 improve accessibility ([#1171](#1171)) ([01b101e](01b101e))
* **Tokens:** DLT-3053 preserve root font size variable as reference ([#1093](#1093)) ([112ab4b](112ab4b))
* **Tokens:** handle multi-layer box shadows correctly in postcss plugin ([feea7f1](feea7f1))
* **Tokens:** NO-JIRA output line-height as unitless instead of percentages ([#1040](#1040)) ([33d8505](33d8505))
* **Tokens:** wrap css math expressions with calc() in layered build ([#966](#966)) ([1635f61](1635f61))
* update @dialpad/i18n dependencies to latest versions ([7a4b777](7a4b777))

### Code Refactoring

* **Box:** DLT-3333 rename percent prop values to p-suffix ([#1208](#1208)) ([e5fa5da](e5fa5da))
* **Combinator:** DLT-3418 migrate controls prop changes ([#1261](#1261)) ([ab03b44](ab03b44))
* **Combobox Multi Select:** NO-JIRA use logical css properties ([#1104](#1104)) ([a675daf](a675daf))
* **Components,recipes:** DLT-3043 DLT-3046 logical start/end naming with deprecated backward-compatible fallbacks ([#1079](#1079)) ([1d26a4e](1d26a4e))
* **Components:** DLT-3100 remove rootClass references ([#1184](#1184)) ([6531783](6531783))
* **Components:** DLT-3160 standardize v-model event handling ([#1201](#1201)) ([f1624d4](f1624d4))
* **Components:** dlt-3196 components to pascal case ([#1255](#1255)) ([aa6d259](aa6d259))
* **Components:** dlt-3282 renamed show prop to open ([#1190](#1190)) ([5509d0f](5509d0f))
* **Components:** dlt-3283 refactor prop/slots to be consistent ([#1196](#1196)) ([2d22c76](2d22c76))
* **Components:** DLT-3284 refactor props to not have native html attributes names ([#1204](#1204)) ([48a0f57](48a0f57))
* **Css:** DLT-1876 css logical properties ([#872](#872)) ([1acd6c9](1acd6c9))
* **Modal:** DLT-3262 migrate DtModal to native dialog element ([#1179](#1179)) ([589edb5](589edb5))
* **Notice,banner,toast:** DLT-3296 decouple CSS and fix specificity violations ([#1194](#1194)) ([9579ac0](9579ac0))
* **Resizable:** DLT-3335 align size props on --dt-layout-* instead of --dt-size-* ([#1215](#1215)) ([c156dbc](c156dbc))
* **Style:** DLT-3014 wrap all styles in css cascade layers ([#1061](#1061)) ([f8b3fed](f8b3fed))
* **Text:** DLT-2883 rename headline sizes from xxl => 2xl, etc ([#1029](#1029)) ([0ac86f3](0ac86f3))
* **Text:** DLT-3302 tone prop uses css variables instead of css utilities ([#1197](#1197)) ([75df16f](75df16f))
* **Tokens,css,link,text,breadcrumbs,input Group,split Button:** tokens, CSS foundation, deprecations, tooling DLT-3011 DLT-2961 DLT-3068 DLT-3069 DLT-3070 DLT-3071 DLT-3072 ([#1092](#1092)) ([7783090](7783090))
* **Tokens:** DLT-2884 deprecate space tokens in favor of size tokens ([#1013](#1013)) ([63f6d2f](63f6d2f))
* **Tokens:** DLT-3013 convert color system from HSL to OKLCH ([#1060](#1060)) ([42dc418](42dc418))
* **Validation Messages:** DLT-3422 update to use icon slot over embedded icon ([#1272](#1272)) ([344b737](344b737))

### Documentation

* **Border Radius:** dlt-3362 border-radius migration guide ([#1280](#1280)) ([12fd76a](12fd76a))
* **Combinator:** DLT-3424 bridge logical to physical naming ([#1273](#1273)) ([ad4a5a1](ad4a5a1))
* **Components:** DLT-3178 DLT-3182 unify code examples into single code-example component ([#1147](#1147)) ([d0b6e14](d0b6e14))
* **Css Utilities:** DLT-3295 DLT-3280 mark physical utilities as deprecated ([#1193](#1193)) ([73f1479](73f1479))
* **Css Utilities:** DLT-3337 migrate internal utility-class consumers to token-indexed names and rewrite radius docs ([#1212](#1212)) ([d675238](d675238))
* **Dialog:** dlt-3361 dtmodal native dialog migration ([#1275](#1275)) ([4ef8a09](4ef8a09))
* **Dialtone Vue:** DLT-3226 update documentation and consuming code to numeric size scale ([#1158](#1158)) ([149c763](149c763))
* DLT-1510 DLT-1511 DLT-1512 site redesign and ia ([#968](#968)) ([6ea7eb9](6ea7eb9))
* DLT-2908 ui kits landing page ([#1049](#1049)) ([d805b9d](d805b9d))
* DLT-3016 migration docs ([#1224](#1224)) ([3d73a43](3d73a43))
* DLT-3243 fenced code blocks for examples and snippets ([#1166](#1166)) ([cb169df](cb169df))
* DLT-3250 display component status badges in sidebar and page headers ([#1170](#1170)) ([7d5f5d5](7d5f5d5))
* DLT-3252 add GFM alert syntax for notices ([#1172](#1172)) ([1697911](1697911))
* DLT-3258 DLT-3259 improve sidebar search with logical keywords and fuzzy matching ([#1174](#1174)) ([2bf4639](2bf4639))
* DLT-3345 migrate d-stack*/d-flow* wrappers to DtStack ([#1218](#1218)) ([fa090ef](fa090ef))
* **Downloads:** DLT-3052 DLT-3355 add downloads section and navbar hovercards ([#1229](#1229)) ([ecf5f85](ecf5f85))
* **Foundations, Homepage:** DLT-3349 DLT-3350 refresh foundations content and homepage ([#1228](#1228)) ([ab73dfd](ab73dfd))
* **Layout And Spacing:** improve to focus on understanding new layout and spacing system ([c75201f](c75201f))
* **Migration Guide:** NO-JIRA improve prop/slot migration guide ([#1227](#1227)) ([1328452](1328452))
* NO-JIRA fix focus left-nav items on keypress down up ([#1106](#1106)) ([882c9b9](882c9b9))
* **Playground:** DLT-3119 refine playground UI and integrate across doc site ([#1127](#1127)) ([ba6b599](ba6b599))
* **Playground:** DLT-3242 segmented control for compact enum props ([#1165](#1165)) ([fa440d8](fa440d8))
* **Recipes:** dlt-3308 recipes removed from dialtone - migration guide ([#1269](#1269)) ([d1d5c59](d1d5c59))
* **Tabs, Skeleton, Rich Text Editor:** DLT-3347 update doc page code examples on next branch ([#1248](#1248)) ([5837895](5837895))
* **Utilities:** DLT-3183 convert to vue demo fenced block ([#1167](#1167)) ([522197f](522197f))

### Features

* **Avatar:** DLT-2942 updated avatar component ([#1047](#1047)) ([e50563d](e50563d))
* **Avatar:** DLT-3161 change from clickable to "interactive" ([#1182](#1182)) ([2d00fe0](2d00fe0))
* **Banner, Notice, Toast, Breadcrumbs, Checkbox, Radio, Input, Select Menu, Empty State:** visual refresh, dt-text integration, form api parity DLT-2944 DLT-2945 DLT-2949 DLT-2959 DLT-2960 DLT-2957 ([#1091](#1091)) ([16e908a](16e908a))
* **Box:** DLT-3315 new DtBox primitive component ([#1203](#1203)) ([e0c942e](e0c942e))
* **Button,tabs,split Button:** visual refresh and slot updates DLT-2946 DLT-2947 DLT-2965 ([#1090](#1090)) ([ffdd56f](ffdd56f))
* **Chip:** DLT-3195 change interactive prop default from true to false ([#1246](#1246)) ([30a5ea2](30a5ea2))
* **Colors, Link, Tokens:** DLT-3360 retune blue/gold/purple/black/red palette, add mention semantic tokens, migrate success to positive ([#1245](#1245)) ([880b37b](880b37b))
* **Colors:** DLT-3354 split green palette into distinct light and dark mode values ([#1225](#1225)) ([cf63034](cf63034))
* **Combinator:** DLT-3312 preview resolved value in sized props ([#1199](#1199)) ([61bb610](61bb610))
* **Combobox Multi Select:** DLT-3366 forward input-level escape, enter, keydown events ([#1253](#1253)) ([a635301](a635301))
* **Components:** dlt-3096 add slot classes ([#1214](#1214)) ([5f6528e](5f6528e))
* **Components:** DLT-3157 align critical/positive prop values and CSS class names ([#1177](#1177)) ([edd98b2](edd98b2))
* **Components:** DLT-3159 enforce positive boolean props ([#1198](#1198)) ([ac73bdc](ac73bdc))
* **Components:** DLT-3192 establish the slotclass convention rule ([#1216](#1216)) ([3c399d4](3c399d4))
* **Css Utilities, Design Tokens:** DLT-3330 DLT-3332 add off-scale pixel-indexed layout tokens and sizing utilities ([#1206](#1206)) ([1054875](1054875))
* **Css Utilities, Eslint Plugin Dialtone:** DLT-3329 update border-radius css utilities and associated tooling ([#1211](#1211)) ([6bc3599](6bc3599))
* **Css Utilities:** DLT-3357 DLT-3358 add ease-in and retune ease-out ([#1226](#1226)) ([961965a](961965a))
* **Css Utility:** DLT-2715 add default color for border css utilities ([#874](#874)) ([71310ab](71310ab))
* **Design Tokens, Modal, Notice, Popover, Hovercard, Emoji Picker:** DLT-3436 add overlay surface color ([#1282](#1282)) ([62d60f2](62d60f2))
* **Design Tokens, Text, Link, Box, Css:** DLT-3338 add info semantic tokens and consumers ([#1210](#1210)) ([2f04b45](2f04b45))
* **Design Tokens:** DLT-3356 extend prota/deuter/trita accessible themes to semantic and components ([#1237](#1237)) ([d8fbf58](d8fbf58))
* **Design Tokens:** DLT-3368 DLT-3371 DLT-3410 add material dimension and brand-locked pairings ([#1252](#1252)) ([eeedc67](eeedc67))
* **Dialtone Css, Dialtone Documentation:** DLT-3363 add theme-to-mode migration guide and codemod ([#1260](#1260)) ([90aa4b4](90aa4b4))
* **Dialtone Css, Dialtone Tokens, Dialtone Vue:** DLT-3197 DLT-3198 DLT-3199 DLT-3200 DLT-3201 DLT-3202 DLT-3203 DLT-3204 DLT-3205 DLT-3206 DLT-3207 DLT-3208 DLT-3209 DLT-3210 DLT-3211 token-stop utility classes, migration tooling, and documentation ([#1150](#1150)) ([6237b84](6237b84))
* **Dialtone Css:** DLT-3278 add dialtone-migrate-typography codemod ([#1289](#1289)) ([aea7eba](aea7eba))
* **Dialtone Icons:** NO-JIRA add agent-assist-color brand-full-color icon ([#1265](#1265)) ([d159d78](d159d78))
* **Dialtone Vue:** DLT-3225 migrate component size props to numeric ordinal scale ([#1157](#1157)) ([725bd41](725bd41))
* **Eslint Plugin Dialtone:** DLT-3047 physical-to-logical naming migration tooling ([#1163](#1163)) ([d94dc4b](d94dc4b))
* **Eslint Plugin Dialtone:** DLT-3227 DLT-3228 add deprecated-tshirt-sizes ESLint rule and migration codemod ([#1159](#1159)) ([21a011f](21a011f))
* **Eslint Plugin Dialtone:** DLT-3365 add deprecated-stack-flow-classes rule ([#1247](#1247)) ([8554f5a](8554f5a))
* **Filter Pill:** DLT-2704 create component ([#473](#473)) ([6267445](6267445))
* **Filter Pill:** DLT-2941 DtFilterPill improvements ([#1110](#1110)) ([23c5689](23c5689))
* **Focusgroup:** DLT-3285 add v-dt-focusgroup directive for declarative roving tabindex ([#1187](#1187)) ([e1ea074](e1ea074))
* **Focustrap:** DLT-3297 add v-dt-focustrap directive for declarative focus trapping ([#1195](#1195)) ([6ef9a21](6ef9a21))
* **Link,button:** DLT-3012 add underline prop ([#1059](#1059)) ([1cb91ea](1cb91ea))
* **Modal:** DLT-3432 add transparentBackdrop prop ([#1277](#1277)) ([daace31](daace31))
* **Mode Directive, Mode Island:** DLT-3067 DLT-3078 DLT-3077 add `v-dt-mode` directive ([#1109](#1109)) ([f97efca](f97efca))
* **Popover, Tooltip:** DLT-3419 auto-append to nearest dialog for top-layer support ([#1266](#1266)) ([a5427e8](a5427e8))
* **Presence, Avatar:** DLT-3438 add icons to presence ([#1287](#1287)) ([51062be](51062be))
* **Prose:** DLT-3245 new component ([#1169](#1169)) ([adee928](adee928))
* **Scripts, Eslint, Stylelint:** DLT-3359 add success-to-positive migration tooling ([#1231](#1231)) ([0d652a5](0d652a5))
* **Scripts:** DLT-3033 DLT-3034 DLT-3035 add link-rendering migration codemod and ESLint rule ([#1233](#1233)) ([35a7238](35a7238))
* **Scripts:** DLT-3304 add scripts/docs for migration props changes ([#1219](#1219)) ([589173f](589173f))
* **Scrollbar:** DLT-3158 implement object props ([#1249](#1249)) ([09ff456](09ff456))
* **Segmented Control:** DLT-413 new component ([#1144](#1144)) ([ad4c6c3](ad4c6c3))
* **Split Button:** DLT-3257 add show-divider prop ([#1173](#1173)) ([5bef411](5bef411))
* **Style:** DLT-2976 update underline thickness and offset ([#1058](#1058)) ([1e56947](1e56947))
* **Tabs:** DLT-3114 add vertical orientation variant ([#1120](#1120)) ([3290a23](3290a23))
* **Tabs:** DLT-3162 add spread prop for horizontal distribution ([#1135](#1135)) ([6e7cd04](6e7cd04))
* **Text:** export text component from dialtone-vue ([757fdb7](757fdb7))
* **Text:** new vue component DLT-2864 DLT-2863 DLT-2862 ([#995](#995)) ([196ef8a](196ef8a))
* **Tokens, Css:** DLT-3331 rename success tokens and utility classes to positive ([#1230](#1230)) ([34bdff5](34bdff5))
* **Tokens:** DLT-1977 add high contrast design tokens and theme ([#938](#938)) ([a1c0457](a1c0457))
* **Tokens:** DLT-2767 exploratory shell themes ([#909](#909)) ([3afcf63](3afcf63))
* **Tokens:** DLT-2781 create color-assistive themes ([#921](#921)) ([a6cc397](a6cc397))
* **Tokens:** DLT-2802 DLT-2563 layered theming system and mode island component ([#945](#945)) ([5c72c6c](5c72c6c))
* **Tokens:** DLT-2937 introduce spacing and layout token systems ([#1045](#1045)) ([de23e12](de23e12))
* **Tokens:** update color ramps and consumer color migration tools DLT-3004 DLT-3005 DLT-3006 DLT-3007 DLT-3008 ([#1054](#1054)) ([28cb1de](28cb1de))
* **Typography, Tokens:** DLT-2856 DLT-2857 next typography system ([#994](#994)) ([d744e97](d744e97))
* **Validation Messages:** DLT-3423 add info variant ([#1274](#1274)) ([412154b](412154b))
Brad Paugh (braddialpad) pushed a commit that referenced this pull request Jun 2, 2026
# [9.185.0-next.1](dialtone/v9.184.0...dialtone/v9.185.0-next.1) (2026-06-02)

### Bug Fixes

* **Combinator:** NO-JIRA remove unnecessary eslint-disable max-len comments ([e431bf6](e431bf6))
* **Combobox Multi Select:** DLT-3409 stop input from shrinking when chips are added ([#1257](#1257)) ([7f54cff](7f54cff))
* **Components:** dlt-3408 components clean up ([#1264](#1264)) ([38c383a](38c383a))
* **Components:** no-jira update tree-shaking export ([#1270](#1270)) ([f12ddcc](f12ddcc))
* correct types paths in package.json exports ([#1239](#1239)) ([21667f9](21667f9))
* **Css:** DLT-3321 reorder utility classes so single-direction wins over shorthand ([#1205](#1205)) ([df3bd74](df3bd74))
* **Css:** DLT-3336 register bgo, fco, bco vars as non-inheriting ([#1209](#1209)) ([0278620](0278620))
* **Dialtone Tokens:** NO-JIRA fix shadow DOM setAttribute crash in theme setters ([#1271](#1271)) ([554047b](554047b))
* **Doc:** NO-JIRA correct font size utility json ([#1015](#1015)) ([76cf0fa](76cf0fa))
* **Editor:** NO-JIRA remove extra blank line in editor.mdx ([18c47ef](18c47ef))
* **Modal:** auto-detect shadow root and teleport dialog into it ([#1268](#1268)) ([f945c84](f945c84))
* NO-JIRA regenerate pnpm-lock.yaml after staging merge ([4462a1a](4462a1a))
* possible merge issue in sidebarItem.vue ([5e2e91b](5e2e91b))
* **Resizable, Box:** DLT-3445 accept full layout token set ([#1293](#1293)) ([4a63990](4a63990))
* **Resizable:** DLT-3444 center handle position ([#1291](#1291)) ([0d5d639](0d5d639))
* **Rich Text Editor:** bubble menu error ([68e3591](68e3591))
* **Segmented Control, Button:** DLT-3446 update disabled active button style ([#1294](#1294)) ([9968aac](9968aac))
* **Segmented Control, Button:** NO-JIRA correct layering of slot items ([#1283](#1283)) ([046f212](046f212))
* **Segmented Control:** DLT-3443 correct background color of traveling indicator ([#1290](#1290)) ([5fc4fa8](5fc4fa8))
* **Split Button, Filter Pill:** DLT-3260 DLT-3261 correct misalignment at size 100 ([#1176](#1176)) ([fe2b777](fe2b777))
* **Stylelint:** disable hue-degree-notation rule and update OKLCH color syntax ([81f886e](81f886e))
* **Stylelint:** disable hue-degree-notation rule and update OKLCH color syntax ([8721f43](8721f43))
* **Tabs:** DLT-3251 improve accessibility ([#1171](#1171)) ([01b101e](01b101e))
* **Tokens:** DLT-3053 preserve root font size variable as reference ([#1093](#1093)) ([112ab4b](112ab4b))
* **Tokens:** handle multi-layer box shadows correctly in postcss plugin ([feea7f1](feea7f1))
* **Tokens:** NO-JIRA output line-height as unitless instead of percentages ([#1040](#1040)) ([33d8505](33d8505))
* **Tokens:** wrap css math expressions with calc() in layered build ([#966](#966)) ([1635f61](1635f61))
* update @dialpad/i18n dependencies to latest versions ([7a4b777](7a4b777))
* **Validation Messages:** DLT-3430 fix VoiceOver silent on validation messages ([#1285](#1285)) ([96adfdf](96adfdf))

### Code Refactoring

* **Box:** DLT-3333 rename percent prop values to p-suffix ([#1208](#1208)) ([e5fa5da](e5fa5da))
* **Combinator:** DLT-3418 migrate controls prop changes ([#1261](#1261)) ([ab03b44](ab03b44))
* **Combobox Multi Select:** NO-JIRA use logical css properties ([#1104](#1104)) ([a675daf](a675daf))
* **Components,recipes:** DLT-3043 DLT-3046 logical start/end naming with deprecated backward-compatible fallbacks ([#1079](#1079)) ([1d26a4e](1d26a4e))
* **Components:** DLT-3100 remove rootClass references ([#1184](#1184)) ([6531783](6531783))
* **Components:** DLT-3160 standardize v-model event handling ([#1201](#1201)) ([f1624d4](f1624d4))
* **Components:** dlt-3196 components to pascal case ([#1255](#1255)) ([aa6d259](aa6d259))
* **Components:** dlt-3282 renamed show prop to open ([#1190](#1190)) ([5509d0f](5509d0f))
* **Components:** dlt-3283 refactor prop/slots to be consistent ([#1196](#1196)) ([2d22c76](2d22c76))
* **Components:** DLT-3284 refactor props to not have native html attributes names ([#1204](#1204)) ([48a0f57](48a0f57))
* **Css:** DLT-1876 css logical properties ([#872](#872)) ([1acd6c9](1acd6c9))
* **Modal:** DLT-3262 migrate DtModal to native dialog element ([#1179](#1179)) ([589edb5](589edb5))
* **Notice,banner,toast:** DLT-3296 decouple CSS and fix specificity violations ([#1194](#1194)) ([9579ac0](9579ac0))
* **Resizable:** DLT-3335 align size props on --dt-layout-* instead of --dt-size-* ([#1215](#1215)) ([c156dbc](c156dbc))
* **Style:** DLT-3014 wrap all styles in css cascade layers ([#1061](#1061)) ([f8b3fed](f8b3fed))
* **Text:** DLT-2883 rename headline sizes from xxl => 2xl, etc ([#1029](#1029)) ([0ac86f3](0ac86f3))
* **Text:** DLT-3302 tone prop uses css variables instead of css utilities ([#1197](#1197)) ([75df16f](75df16f))
* **Tokens,css,link,text,breadcrumbs,input Group,split Button:** tokens, CSS foundation, deprecations, tooling DLT-3011 DLT-2961 DLT-3068 DLT-3069 DLT-3070 DLT-3071 DLT-3072 ([#1092](#1092)) ([7783090](7783090))
* **Tokens:** DLT-2884 deprecate space tokens in favor of size tokens ([#1013](#1013)) ([63f6d2f](63f6d2f))
* **Tokens:** DLT-3013 convert color system from HSL to OKLCH ([#1060](#1060)) ([42dc418](42dc418))
* **Validation Messages:** DLT-3422 update to use icon slot over embedded icon ([#1272](#1272)) ([344b737](344b737))

### Documentation

* **Border Radius:** dlt-3362 border-radius migration guide ([#1280](#1280)) ([12fd76a](12fd76a))
* **Combinator:** DLT-3424 bridge logical to physical naming ([#1273](#1273)) ([ad4a5a1](ad4a5a1))
* **Components:** DLT-3178 DLT-3182 unify code examples into single code-example component ([#1147](#1147)) ([d0b6e14](d0b6e14))
* **Css Utilities:** DLT-3295 DLT-3280 mark physical utilities as deprecated ([#1193](#1193)) ([73f1479](73f1479))
* **Css Utilities:** DLT-3337 migrate internal utility-class consumers to token-indexed names and rewrite radius docs ([#1212](#1212)) ([d675238](d675238))
* **Dialog:** dlt-3361 dtmodal native dialog migration ([#1275](#1275)) ([4ef8a09](4ef8a09))
* **Dialtone Vue:** DLT-3226 update documentation and consuming code to numeric size scale ([#1158](#1158)) ([149c763](149c763))
* DLT-1510 DLT-1511 DLT-1512 site redesign and ia ([#968](#968)) ([6ea7eb9](6ea7eb9))
* DLT-2908 ui kits landing page ([#1049](#1049)) ([d805b9d](d805b9d))
* DLT-3016 migration docs ([#1224](#1224)) ([3d73a43](3d73a43))
* DLT-3243 fenced code blocks for examples and snippets ([#1166](#1166)) ([cb169df](cb169df))
* DLT-3250 display component status badges in sidebar and page headers ([#1170](#1170)) ([7d5f5d5](7d5f5d5))
* DLT-3252 add GFM alert syntax for notices ([#1172](#1172)) ([1697911](1697911))
* DLT-3258 DLT-3259 improve sidebar search with logical keywords and fuzzy matching ([#1174](#1174)) ([2bf4639](2bf4639))
* DLT-3345 migrate d-stack*/d-flow* wrappers to DtStack ([#1218](#1218)) ([fa090ef](fa090ef))
* DLT-3434 build pipeline for component wall thumbs ([#1278](#1278)) ([cb9992f](cb9992f))
* **Downloads:** DLT-3052 DLT-3355 add downloads section and navbar hovercards ([#1229](#1229)) ([ecf5f85](ecf5f85))
* **Foundations, Homepage:** DLT-3349 DLT-3350 refresh foundations content and homepage ([#1228](#1228)) ([ab73dfd](ab73dfd))
* **Layout And Spacing:** improve to focus on understanding new layout and spacing system ([c75201f](c75201f))
* **Migration Guide:** NO-JIRA improve prop/slot migration guide ([#1227](#1227)) ([1328452](1328452))
* NO-JIRA add typography utilities to DtText migration guide ([#1296](#1296)) ([1dcf975](1dcf975))
* NO-JIRA fix focus left-nav items on keypress down up ([#1106](#1106)) ([882c9b9](882c9b9))
* **Playground:** DLT-3119 refine playground UI and integrate across doc site ([#1127](#1127)) ([ba6b599](ba6b599))
* **Playground:** DLT-3242 segmented control for compact enum props ([#1165](#1165)) ([fa440d8](fa440d8))
* **Recipes:** dlt-3308 recipes removed from dialtone - migration guide ([#1269](#1269)) ([d1d5c59](d1d5c59))
* **Tabs, Skeleton, Rich Text Editor:** DLT-3347 update doc page code examples on next branch ([#1248](#1248)) ([5837895](5837895))
* **Utilities:** DLT-3183 convert to vue demo fenced block ([#1167](#1167)) ([522197f](522197f))

### Features

* **Avatar:** DLT-2942 updated avatar component ([#1047](#1047)) ([e50563d](e50563d))
* **Avatar:** DLT-3161 change from clickable to "interactive" ([#1182](#1182)) ([2d00fe0](2d00fe0))
* **Banner, Notice, Toast, Breadcrumbs, Checkbox, Radio, Input, Select Menu, Empty State:** visual refresh, dt-text integration, form api parity DLT-2944 DLT-2945 DLT-2949 DLT-2959 DLT-2960 DLT-2957 ([#1091](#1091)) ([16e908a](16e908a))
* **Box:** DLT-3315 new DtBox primitive component ([#1203](#1203)) ([e0c942e](e0c942e))
* **Button,tabs,split Button:** visual refresh and slot updates DLT-2946 DLT-2947 DLT-2965 ([#1090](#1090)) ([ffdd56f](ffdd56f))
* **Chip:** DLT-3195 change interactive prop default from true to false ([#1246](#1246)) ([30a5ea2](30a5ea2))
* **Colors, Link, Tokens:** DLT-3360 retune blue/gold/purple/black/red palette, add mention semantic tokens, migrate success to positive ([#1245](#1245)) ([880b37b](880b37b))
* **Colors:** DLT-3354 split green palette into distinct light and dark mode values ([#1225](#1225)) ([cf63034](cf63034))
* **Combinator:** DLT-3312 preview resolved value in sized props ([#1199](#1199)) ([61bb610](61bb610))
* **Components:** dlt-3096 add slot classes ([#1214](#1214)) ([5f6528e](5f6528e))
* **Components:** DLT-3157 align critical/positive prop values and CSS class names ([#1177](#1177)) ([edd98b2](edd98b2))
* **Components:** DLT-3159 enforce positive boolean props ([#1198](#1198)) ([ac73bdc](ac73bdc))
* **Components:** DLT-3192 establish the slotclass convention rule ([#1216](#1216)) ([3c399d4](3c399d4))
* **Css Utilities, Design Tokens:** DLT-3330 DLT-3332 add off-scale pixel-indexed layout tokens and sizing utilities ([#1206](#1206)) ([1054875](1054875))
* **Css Utilities, Eslint Plugin Dialtone:** DLT-3329 update border-radius css utilities and associated tooling ([#1211](#1211)) ([6bc3599](6bc3599))
* **Css Utilities:** DLT-3357 DLT-3358 add ease-in and retune ease-out ([#1226](#1226)) ([961965a](961965a))
* **Css Utility:** DLT-2715 add default color for border css utilities ([#874](#874)) ([71310ab](71310ab))
* **Design Tokens, Modal, Notice, Popover, Hovercard, Emoji Picker:** DLT-3436 add overlay surface color ([#1282](#1282)) ([62d60f2](62d60f2))
* **Design Tokens, Text, Link, Box, Css:** DLT-3338 add info semantic tokens and consumers ([#1210](#1210)) ([2f04b45](2f04b45))
* **Design Tokens:** DLT-3356 extend prota/deuter/trita accessible themes to semantic and components ([#1237](#1237)) ([d8fbf58](d8fbf58))
* **Design Tokens:** DLT-3368 DLT-3371 DLT-3410 add material dimension and brand-locked pairings ([#1252](#1252)) ([eeedc67](eeedc67))
* **Dialtone Css, Dialtone Documentation:** DLT-3363 add theme-to-mode migration guide and codemod ([#1260](#1260)) ([90aa4b4](90aa4b4))
* **Dialtone Css, Dialtone Tokens, Dialtone Vue:** DLT-3197 DLT-3198 DLT-3199 DLT-3200 DLT-3201 DLT-3202 DLT-3203 DLT-3204 DLT-3205 DLT-3206 DLT-3207 DLT-3208 DLT-3209 DLT-3210 DLT-3211 token-stop utility classes, migration tooling, and documentation ([#1150](#1150)) ([6237b84](6237b84))
* **Dialtone Css:** DLT-3278 add dialtone-migrate-typography codemod ([#1289](#1289)) ([aea7eba](aea7eba))
* **Dialtone Icons:** NO-JIRA add /vue export to dialtone-icon ([#1304](#1304)) ([081b0e9](081b0e9))
* **Dialtone Vue:** DLT-3225 migrate component size props to numeric ordinal scale ([#1157](#1157)) ([725bd41](725bd41))
* **Eslint Plugin Dialtone:** DLT-3047 physical-to-logical naming migration tooling ([#1163](#1163)) ([d94dc4b](d94dc4b))
* **Eslint Plugin Dialtone:** DLT-3227 DLT-3228 add deprecated-tshirt-sizes ESLint rule and migration codemod ([#1159](#1159)) ([21a011f](21a011f))
* **Eslint Plugin Dialtone:** DLT-3365 add deprecated-stack-flow-classes rule ([#1247](#1247)) ([8554f5a](8554f5a))
* **Filter Pill:** DLT-2704 create component ([#473](#473)) ([6267445](6267445))
* **Filter Pill:** DLT-2941 DtFilterPill improvements ([#1110](#1110)) ([23c5689](23c5689))
* **Focusgroup:** DLT-3285 add v-dt-focusgroup directive for declarative roving tabindex ([#1187](#1187)) ([e1ea074](e1ea074))
* **Focustrap:** DLT-3297 add v-dt-focustrap directive for declarative focus trapping ([#1195](#1195)) ([6ef9a21](6ef9a21))
* **Link,button:** DLT-3012 add underline prop ([#1059](#1059)) ([1cb91ea](1cb91ea))
* **Mcp Server, Query Core, Dialtone Docs, Dialtone Cli:** DLT-3416 add search_documentation tool ([#1259](#1259)) ([ef1d5a8](ef1d5a8))
* **Modal:** DLT-3432 add transparentBackdrop prop ([#1277](#1277)) ([daace31](daace31))
* **Modal:** NO-JIRA apply headerClass to header text element ([#1279](#1279)) ([3cb4282](3cb4282))
* **Mode Directive, Mode Island:** DLT-3067 DLT-3078 DLT-3077 add `v-dt-mode` directive ([#1109](#1109)) ([f97efca](f97efca))
* **Popover, Tooltip:** DLT-3419 auto-append to nearest dialog for top-layer support ([#1266](#1266)) ([a5427e8](a5427e8))
* **Presence, Avatar:** DLT-3438 add icons to presence ([#1287](#1287)) ([51062be](51062be))
* **Prose:** DLT-3245 new component ([#1169](#1169)) ([adee928](adee928))
* **Scripts, Eslint, Stylelint:** DLT-3359 add success-to-positive migration tooling ([#1231](#1231)) ([0d652a5](0d652a5))
* **Scripts:** DLT-3033 DLT-3034 DLT-3035 add link-rendering migration codemod and ESLint rule ([#1233](#1233)) ([35a7238](35a7238))
* **Scripts:** DLT-3304 add scripts/docs for migration props changes ([#1219](#1219)) ([589173f](589173f))
* **Scrollbar:** DLT-3158 implement object props ([#1249](#1249)) ([09ff456](09ff456))
* **Segmented Control:** DLT-413 new component ([#1144](#1144)) ([ad4c6c3](ad4c6c3))
* **Split Button:** DLT-3257 add show-divider prop ([#1173](#1173)) ([5bef411](5bef411))
* **Style:** DLT-2976 update underline thickness and offset ([#1058](#1058)) ([1e56947](1e56947))
* **Tabs:** DLT-3114 add vertical orientation variant ([#1120](#1120)) ([3290a23](3290a23))
* **Tabs:** DLT-3162 add spread prop for horizontal distribution ([#1135](#1135)) ([6e7cd04](6e7cd04))
* **Text:** export text component from dialtone-vue ([757fdb7](757fdb7))
* **Text:** new vue component DLT-2864 DLT-2863 DLT-2862 ([#995](#995)) ([196ef8a](196ef8a))
* **Tokens, Css:** DLT-3331 rename success tokens and utility classes to positive ([#1230](#1230)) ([34bdff5](34bdff5))
* **Tokens:** DLT-1977 add high contrast design tokens and theme ([#938](#938)) ([a1c0457](a1c0457))
* **Tokens:** DLT-2767 exploratory shell themes ([#909](#909)) ([3afcf63](3afcf63))
* **Tokens:** DLT-2781 create color-assistive themes ([#921](#921)) ([a6cc397](a6cc397))
* **Tokens:** DLT-2802 DLT-2563 layered theming system and mode island component ([#945](#945)) ([5c72c6c](5c72c6c))
* **Tokens:** DLT-2937 introduce spacing and layout token systems ([#1045](#1045)) ([de23e12](de23e12))
* **Tokens:** update color ramps and consumer color migration tools DLT-3004 DLT-3005 DLT-3006 DLT-3007 DLT-3008 ([#1054](#1054)) ([28cb1de](28cb1de))
* **Typography, Tokens:** DLT-2856 DLT-2857 next typography system ([#994](#994)) ([d744e97](d744e97))
* **Validation Messages:** DLT-3423 add info variant ([#1274](#1274)) ([412154b](412154b))
Brad Paugh (braddialpad) pushed a commit that referenced this pull request Jun 4, 2026
# [9.187.0-next.1](dialtone/v9.186.0...dialtone/v9.187.0-next.1) (2026-06-04)

### Bug Fixes

* **Combinator:** DLT-3171 update v-model bindings from rendered component events ([#1299](#1299)) ([81d0c15](81d0c15))
* **Combinator:** NO-JIRA remove unnecessary eslint-disable max-len comments ([e431bf6](e431bf6))
* **Components:** dlt-3408 components clean up ([#1264](#1264)) ([38c383a](38c383a))
* **Components:** no-jira update tree-shaking export ([#1270](#1270)) ([f12ddcc](f12ddcc))
* **Contact Info:** no-jira remove min-inline-size regression from token migration ([ed8ee12](ed8ee12))
* correct types paths in package.json exports ([#1239](#1239)) ([21667f9](21667f9))
* **Css:** DLT-3321 reorder utility classes so single-direction wins over shorthand ([#1205](#1205)) ([df3bd74](df3bd74))
* **Css:** DLT-3336 register bgo, fco, bco vars as non-inheriting ([#1209](#1209)) ([0278620](0278620))
* **Dialtone Tokens:** NO-JIRA fix shadow DOM setAttribute crash in theme setters ([#1271](#1271)) ([554047b](554047b))
* **Doc:** NO-JIRA correct font size utility json ([#1015](#1015)) ([76cf0fa](76cf0fa))
* **Documentation:** DLT-3451 migrate stale @change/[@input](https://github.com/input) handlers to [@update](https://github.com/update):model-value ([#1300](#1300)) ([9260128](9260128))
* **Editor:** NO-JIRA remove extra blank line in editor.mdx ([18c47ef](18c47ef))
* **Modal:** auto-detect shadow root and teleport dialog into it ([#1268](#1268)) ([f945c84](f945c84))
* NO-JIRA regenerate pnpm-lock.yaml after staging merge ([4462a1a](4462a1a))
* possible merge issue in sidebarItem.vue ([5e2e91b](5e2e91b))
* **Resizable, Box:** DLT-3445 accept full layout token set ([#1293](#1293)) ([4a63990](4a63990))
* **Resizable:** DLT-3444 center handle position ([#1291](#1291)) ([0d5d639](0d5d639))
* **Rich Text Editor:** bubble menu error ([68e3591](68e3591))
* **Segmented Control, Button:** DLT-3446 update disabled active button style ([#1294](#1294)) ([9968aac](9968aac))
* **Segmented Control, Button:** NO-JIRA correct layering of slot items ([#1283](#1283)) ([046f212](046f212))
* **Segmented Control:** DLT-3443 correct background color of traveling indicator ([#1290](#1290)) ([5fc4fa8](5fc4fa8))
* **Split Button, Filter Pill:** DLT-3260 DLT-3261 correct misalignment at size 100 ([#1176](#1176)) ([fe2b777](fe2b777))
* **Stylelint:** disable hue-degree-notation rule and update OKLCH color syntax ([81f886e](81f886e))
* **Stylelint:** disable hue-degree-notation rule and update OKLCH color syntax ([8721f43](8721f43))
* **Tabs:** DLT-3251 improve accessibility ([#1171](#1171)) ([01b101e](01b101e))
* **Tokens:** DLT-3053 preserve root font size variable as reference ([#1093](#1093)) ([112ab4b](112ab4b))
* **Tokens:** handle multi-layer box shadows correctly in postcss plugin ([feea7f1](feea7f1))
* **Tokens:** NO-JIRA output line-height as unitless instead of percentages ([#1040](#1040)) ([33d8505](33d8505))
* **Tokens:** wrap css math expressions with calc() in layered build ([#966](#966)) ([1635f61](1635f61))
* update @dialpad/i18n dependencies to latest versions ([7a4b777](7a4b777))
* **Validation Messages:** DLT-3430 fix VoiceOver silent on validation messages ([#1285](#1285)) ([96adfdf](96adfdf))

### Code Refactoring

* **Box:** DLT-3333 rename percent prop values to p-suffix ([#1208](#1208)) ([e5fa5da](e5fa5da))
* **Combinator:** DLT-3418 migrate controls prop changes ([#1261](#1261)) ([ab03b44](ab03b44))
* **Combobox Multi Select:** NO-JIRA use logical css properties ([#1104](#1104)) ([a675daf](a675daf))
* **Components,recipes:** DLT-3043 DLT-3046 logical start/end naming with deprecated backward-compatible fallbacks ([#1079](#1079)) ([1d26a4e](1d26a4e))
* **Components:** DLT-3100 remove rootClass references ([#1184](#1184)) ([6531783](6531783))
* **Components:** DLT-3160 standardize v-model event handling ([#1201](#1201)) ([f1624d4](f1624d4))
* **Components:** dlt-3196 components to pascal case ([#1255](#1255)) ([aa6d259](aa6d259))
* **Components:** dlt-3282 renamed show prop to open ([#1190](#1190)) ([5509d0f](5509d0f))
* **Components:** dlt-3283 refactor prop/slots to be consistent ([#1196](#1196)) ([2d22c76](2d22c76))
* **Components:** DLT-3284 refactor props to not have native html attributes names ([#1204](#1204)) ([48a0f57](48a0f57))
* **Css:** DLT-1876 css logical properties ([#872](#872)) ([1acd6c9](1acd6c9))
* **Modal:** DLT-3262 migrate DtModal to native dialog element ([#1179](#1179)) ([589edb5](589edb5))
* **Notice,banner,toast:** DLT-3296 decouple CSS and fix specificity violations ([#1194](#1194)) ([9579ac0](9579ac0))
* **Resizable:** DLT-3335 align size props on --dt-layout-* instead of --dt-size-* ([#1215](#1215)) ([c156dbc](c156dbc))
* **Style:** DLT-3014 wrap all styles in css cascade layers ([#1061](#1061)) ([f8b3fed](f8b3fed))
* **Text:** DLT-2883 rename headline sizes from xxl => 2xl, etc ([#1029](#1029)) ([0ac86f3](0ac86f3))
* **Text:** DLT-3302 tone prop uses css variables instead of css utilities ([#1197](#1197)) ([75df16f](75df16f))
* **Tokens,css,link,text,breadcrumbs,input Group,split Button:** tokens, CSS foundation, deprecations, tooling DLT-3011 DLT-2961 DLT-3068 DLT-3069 DLT-3070 DLT-3071 DLT-3072 ([#1092](#1092)) ([7783090](7783090))
* **Tokens:** DLT-2884 deprecate space tokens in favor of size tokens ([#1013](#1013)) ([63f6d2f](63f6d2f))
* **Tokens:** DLT-3013 convert color system from HSL to OKLCH ([#1060](#1060)) ([42dc418](42dc418))
* **Validation Messages:** DLT-3422 update to use icon slot over embedded icon ([#1272](#1272)) ([344b737](344b737))

### Documentation

* **Border Radius:** dlt-3362 border-radius migration guide ([#1280](#1280)) ([12fd76a](12fd76a))
* **Combinator:** DLT-3424 bridge logical to physical naming ([#1273](#1273)) ([ad4a5a1](ad4a5a1))
* **Components:** DLT-3178 DLT-3182 unify code examples into single code-example component ([#1147](#1147)) ([d0b6e14](d0b6e14))
* **Css Utilities:** DLT-3295 DLT-3280 mark physical utilities as deprecated ([#1193](#1193)) ([73f1479](73f1479))
* **Css Utilities:** DLT-3337 migrate internal utility-class consumers to token-indexed names and rewrite radius docs ([#1212](#1212)) ([d675238](d675238))
* **Dialog:** dlt-3361 dtmodal native dialog migration ([#1275](#1275)) ([4ef8a09](4ef8a09))
* **Dialtone Vue:** DLT-3226 update documentation and consuming code to numeric size scale ([#1158](#1158)) ([149c763](149c763))
* DLT-1510 DLT-1511 DLT-1512 site redesign and ia ([#968](#968)) ([6ea7eb9](6ea7eb9))
* DLT-2908 ui kits landing page ([#1049](#1049)) ([d805b9d](d805b9d))
* DLT-3016 migration docs ([#1224](#1224)) ([3d73a43](3d73a43))
* DLT-3212 automate token-derived docs data files from build sources ([#1298](#1298)) ([cf064f1](cf064f1))
* DLT-3243 fenced code blocks for examples and snippets ([#1166](#1166)) ([cb169df](cb169df))
* DLT-3250 display component status badges in sidebar and page headers ([#1170](#1170)) ([7d5f5d5](7d5f5d5))
* DLT-3252 add GFM alert syntax for notices ([#1172](#1172)) ([1697911](1697911))
* DLT-3258 DLT-3259 improve sidebar search with logical keywords and fuzzy matching ([#1174](#1174)) ([2bf4639](2bf4639))
* DLT-3345 migrate d-stack*/d-flow* wrappers to DtStack ([#1218](#1218)) ([fa090ef](fa090ef))
* DLT-3434 build pipeline for component wall thumbs ([#1278](#1278)) ([cb9992f](cb9992f))
* **Downloads:** DLT-3052 DLT-3355 add downloads section and navbar hovercards ([#1229](#1229)) ([ecf5f85](ecf5f85))
* **Foundations, Homepage:** DLT-3349 DLT-3350 refresh foundations content and homepage ([#1228](#1228)) ([ab73dfd](ab73dfd))
* **Layout And Spacing:** improve to focus on understanding new layout and spacing system ([c75201f](c75201f))
* **Migration Guide:** NO-JIRA improve prop/slot migration guide ([#1227](#1227)) ([1328452](1328452))
* **Migration Script:** dlt-3303 master migration script to next ([#1288](#1288)) ([332b3cc](332b3cc))
* NO-JIRA add typography utilities to DtText migration guide ([#1296](#1296)) ([1dcf975](1dcf975))
* NO-JIRA fix focus left-nav items on keypress down up ([#1106](#1106)) ([882c9b9](882c9b9))
* **Playground:** DLT-3119 refine playground UI and integrate across doc site ([#1127](#1127)) ([ba6b599](ba6b599))
* **Playground:** DLT-3242 segmented control for compact enum props ([#1165](#1165)) ([fa440d8](fa440d8))
* **Recipes:** dlt-3308 recipes removed from dialtone - migration guide ([#1269](#1269)) ([d1d5c59](d1d5c59))
* **Tabs, Skeleton, Rich Text Editor:** DLT-3347 update doc page code examples on next branch ([#1248](#1248)) ([5837895](5837895))
* **Utilities:** DLT-3183 convert to vue demo fenced block ([#1167](#1167)) ([522197f](522197f))

### Features

* **Avatar:** DLT-2942 updated avatar component ([#1047](#1047)) ([e50563d](e50563d))
* **Avatar:** DLT-3161 change from clickable to "interactive" ([#1182](#1182)) ([2d00fe0](2d00fe0))
* **Banner, Notice, Toast, Breadcrumbs, Checkbox, Radio, Input, Select Menu, Empty State:** visual refresh, dt-text integration, form api parity DLT-2944 DLT-2945 DLT-2949 DLT-2959 DLT-2960 DLT-2957 ([#1091](#1091)) ([16e908a](16e908a))
* **Box:** DLT-3315 new DtBox primitive component ([#1203](#1203)) ([e0c942e](e0c942e))
* **Button,tabs,split Button:** visual refresh and slot updates DLT-2946 DLT-2947 DLT-2965 ([#1090](#1090)) ([ffdd56f](ffdd56f))
* **Chip:** DLT-3195 change interactive prop default from true to false ([#1246](#1246)) ([30a5ea2](30a5ea2))
* **Colors, Link, Tokens:** DLT-3360 retune blue/gold/purple/black/red palette, add mention semantic tokens, migrate success to positive ([#1245](#1245)) ([880b37b](880b37b))
* **Colors:** DLT-3354 split green palette into distinct light and dark mode values ([#1225](#1225)) ([cf63034](cf63034))
* **Combinator:** DLT-3312 preview resolved value in sized props ([#1199](#1199)) ([61bb610](61bb610))
* **Components:** dlt-3096 add slot classes ([#1214](#1214)) ([5f6528e](5f6528e))
* **Components:** DLT-3157 align critical/positive prop values and CSS class names ([#1177](#1177)) ([edd98b2](edd98b2))
* **Components:** DLT-3159 enforce positive boolean props ([#1198](#1198)) ([ac73bdc](ac73bdc))
* **Components:** DLT-3192 establish the slotclass convention rule ([#1216](#1216)) ([3c399d4](3c399d4))
* **Css Utilities, Design Tokens:** DLT-3330 DLT-3332 add off-scale pixel-indexed layout tokens and sizing utilities ([#1206](#1206)) ([1054875](1054875))
* **Css Utilities, Eslint Plugin Dialtone:** DLT-3329 update border-radius css utilities and associated tooling ([#1211](#1211)) ([6bc3599](6bc3599))
* **Css Utilities:** DLT-3357 DLT-3358 add ease-in and retune ease-out ([#1226](#1226)) ([961965a](961965a))
* **Css Utility:** DLT-2715 add default color for border css utilities ([#874](#874)) ([71310ab](71310ab))
* **Design Tokens, Modal, Notice, Popover, Hovercard, Emoji Picker:** DLT-3436 add overlay surface color ([#1282](#1282)) ([62d60f2](62d60f2))
* **Design Tokens, Text, Link, Box, Css:** DLT-3338 add info semantic tokens and consumers ([#1210](#1210)) ([2f04b45](2f04b45))
* **Design Tokens:** DLT-3356 extend prota/deuter/trita accessible themes to semantic and components ([#1237](#1237)) ([d8fbf58](d8fbf58))
* **Design Tokens:** DLT-3368 DLT-3371 DLT-3410 add material dimension and brand-locked pairings ([#1252](#1252)) ([eeedc67](eeedc67))
* **Dialtone Css, Dialtone Documentation:** DLT-3363 add theme-to-mode migration guide and codemod ([#1260](#1260)) ([90aa4b4](90aa4b4))
* **Dialtone Css, Dialtone Tokens, Dialtone Vue:** DLT-3197 DLT-3198 DLT-3199 DLT-3200 DLT-3201 DLT-3202 DLT-3203 DLT-3204 DLT-3205 DLT-3206 DLT-3207 DLT-3208 DLT-3209 DLT-3210 DLT-3211 token-stop utility classes, migration tooling, and documentation ([#1150](#1150)) ([6237b84](6237b84))
* **Dialtone Css:** DLT-3278 add dialtone-migrate-typography codemod ([#1289](#1289)) ([aea7eba](aea7eba))
* **Dialtone Icons:** NO-JIRA add /vue export to dialtone-icon ([#1304](#1304)) ([081b0e9](081b0e9))
* **Dialtone Vue:** DLT-3225 migrate component size props to numeric ordinal scale ([#1157](#1157)) ([725bd41](725bd41))
* **Eslint Plugin Dialtone:** DLT-3047 physical-to-logical naming migration tooling ([#1163](#1163)) ([d94dc4b](d94dc4b))
* **Eslint Plugin Dialtone:** DLT-3227 DLT-3228 add deprecated-tshirt-sizes ESLint rule and migration codemod ([#1159](#1159)) ([21a011f](21a011f))
* **Eslint Plugin Dialtone:** DLT-3365 add deprecated-stack-flow-classes rule ([#1247](#1247)) ([8554f5a](8554f5a))
* **Filter Pill:** DLT-2704 create component ([#473](#473)) ([6267445](6267445))
* **Filter Pill:** DLT-2941 DtFilterPill improvements ([#1110](#1110)) ([23c5689](23c5689))
* **Focusgroup:** DLT-3285 add v-dt-focusgroup directive for declarative roving tabindex ([#1187](#1187)) ([e1ea074](e1ea074))
* **Focustrap:** DLT-3297 add v-dt-focustrap directive for declarative focus trapping ([#1195](#1195)) ([6ef9a21](6ef9a21))
* **Icons:** DP-192459 add circle and circle-dashed icons ([#1305](#1305)) ([8c41212](8c41212))
* **Link,button:** DLT-3012 add underline prop ([#1059](#1059)) ([1cb91ea](1cb91ea))
* **Modal:** DLT-3432 add transparentBackdrop prop ([#1277](#1277)) ([daace31](daace31))
* **Modal:** NO-JIRA apply headerClass to header text element ([#1279](#1279)) ([3cb4282](3cb4282))
* **Mode Directive, Mode Island:** DLT-3067 DLT-3078 DLT-3077 add `v-dt-mode` directive ([#1109](#1109)) ([f97efca](f97efca))
* **Popover, Tooltip:** DLT-3419 auto-append to nearest dialog for top-layer support ([#1266](#1266)) ([a5427e8](a5427e8))
* **Presence, Avatar:** DLT-3438 add icons to presence ([#1287](#1287)) ([51062be](51062be))
* **Prose:** DLT-3245 new component ([#1169](#1169)) ([adee928](adee928))
* **Scripts, Eslint, Stylelint:** DLT-3359 add success-to-positive migration tooling ([#1231](#1231)) ([0d652a5](0d652a5))
* **Scripts:** DLT-3033 DLT-3034 DLT-3035 add link-rendering migration codemod and ESLint rule ([#1233](#1233)) ([35a7238](35a7238))
* **Scripts:** DLT-3304 add scripts/docs for migration props changes ([#1219](#1219)) ([589173f](589173f))
* **Scrollbar:** DLT-3158 implement object props ([#1249](#1249)) ([09ff456](09ff456))
* **Segmented Control:** DLT-413 new component ([#1144](#1144)) ([ad4c6c3](ad4c6c3))
* **Split Button:** DLT-3257 add show-divider prop ([#1173](#1173)) ([5bef411](5bef411))
* **Style:** DLT-2976 update underline thickness and offset ([#1058](#1058)) ([1e56947](1e56947))
* **Tabs:** DLT-3114 add vertical orientation variant ([#1120](#1120)) ([3290a23](3290a23))
* **Tabs:** DLT-3162 add spread prop for horizontal distribution ([#1135](#1135)) ([6e7cd04](6e7cd04))
* **Text:** export text component from dialtone-vue ([757fdb7](757fdb7))
* **Text:** new vue component DLT-2864 DLT-2863 DLT-2862 ([#995](#995)) ([196ef8a](196ef8a))
* **Tokens, Css:** DLT-3331 rename success tokens and utility classes to positive ([#1230](#1230)) ([34bdff5](34bdff5))
* **Tokens:** DLT-1977 add high contrast design tokens and theme ([#938](#938)) ([a1c0457](a1c0457))
* **Tokens:** DLT-2767 exploratory shell themes ([#909](#909)) ([3afcf63](3afcf63))
* **Tokens:** DLT-2781 create color-assistive themes ([#921](#921)) ([a6cc397](a6cc397))
* **Tokens:** DLT-2802 DLT-2563 layered theming system and mode island component ([#945](#945)) ([5c72c6c](5c72c6c))
* **Tokens:** DLT-2937 introduce spacing and layout token systems ([#1045](#1045)) ([de23e12](de23e12))
* **Tokens:** update color ramps and consumer color migration tools DLT-3004 DLT-3005 DLT-3006 DLT-3007 DLT-3008 ([#1054](#1054)) ([28cb1de](28cb1de))
* **Typography, Tokens:** DLT-2856 DLT-2857 next typography system ([#994](#994)) ([d744e97](d744e97))
* **Validation Messages:** DLT-3423 add info variant ([#1274](#1274)) ([412154b](412154b))

### Reverts

* remove accidental next-shadows commits from next ([868a502](868a502))
Brad Paugh (braddialpad) pushed a commit that referenced this pull request Jun 16, 2026
# [9.188.0-next.1](dialtone/v9.187.0...dialtone/v9.188.0-next.1) (2026-06-16)

### Bug Fixes

* **Combinator:** DLT-3171 update v-model bindings from rendered component events ([#1299](#1299)) ([81d0c15](81d0c15))
* **Combinator:** DLT-3232 pass app context to renderer target for directive resolution ([#1301](#1301)) ([41e125b](41e125b))
* **Combinator:** NO-JIRA remove unnecessary eslint-disable max-len comments ([e431bf6](e431bf6))
* **Components:** dlt-3408 components clean up ([#1264](#1264)) ([38c383a](38c383a))
* **Components:** no-jira update tree-shaking export ([#1270](#1270)) ([f12ddcc](f12ddcc))
* **Contact Info:** no-jira remove min-inline-size regression from token migration ([ed8ee12](ed8ee12))
* correct types paths in package.json exports ([#1239](#1239)) ([21667f9](21667f9))
* **Css:** DLT-3321 reorder utility classes so single-direction wins over shorthand ([#1205](#1205)) ([df3bd74](df3bd74))
* **Css:** DLT-3336 register bgo, fco, bco vars as non-inheriting ([#1209](#1209)) ([0278620](0278620))
* **Dialtone Docs:** NO-JIRA trim ai_summary to within 150-char limit ([ec59b13](ec59b13))
* **Dialtone Documentation:** NO-JIRA update @dialpad/i18n to 1.25.3 ([291789a](291789a))
* **Dialtone Icons:** NO-JIRA restore vue/dist export paths after staging merge ([d78b4b6](d78b4b6))
* **Dialtone Tokens:** NO-JIRA fix shadow DOM setAttribute crash in theme setters ([#1271](#1271)) ([554047b](554047b))
* **Dialtone Vue:** NO-JIRA declare @vitejs/plugin-react devDependency for storybook build ([0a02bf8](0a02bf8))
* **Doc:** NO-JIRA correct font size utility json ([#1015](#1015)) ([76cf0fa](76cf0fa))
* **Docs:** NO-JIRA actually static render the docs ([#1319](#1319)) ([0107a8e](0107a8e))
* **Documentation:** DLT-3451 migrate stale @change/[@input](https://github.com/input) handlers to [@update](https://github.com/update):model-value ([#1300](#1300)) ([9260128](9260128))
* **Editor:** NO-JIRA remove extra blank line in editor.mdx ([18c47ef](18c47ef))
* **Filter Pill, Mode Island:** NO-JIRA make next-only code SSR-safe after static rendering merge ([cd174ca](cd174ca))
* **Image Viewer:** DLT-3456 trap focus within the modal via v-dt-focustrap directive ([#1313](#1313)) ([a5aa3e7](a5aa3e7))
* **Modal:** auto-detect shadow root and teleport dialog into it ([#1268](#1268)) ([f945c84](f945c84))
* NO-JIRA regenerate pnpm-lock.yaml after staging merge ([4462a1a](4462a1a))
* possible merge issue in sidebarItem.vue ([5e2e91b](5e2e91b))
* **Resizable, Box:** DLT-3445 accept full layout token set ([#1293](#1293)) ([4a63990](4a63990))
* **Resizable:** DLT-3444 center handle position ([#1291](#1291)) ([0d5d639](0d5d639))
* **Rich Text Editor:** bubble menu error ([68e3591](68e3591))
* **Segmented Control, Button:** DLT-3446 update disabled active button style ([#1294](#1294)) ([9968aac](9968aac))
* **Segmented Control, Button:** NO-JIRA correct layering of slot items ([#1283](#1283)) ([046f212](046f212))
* **Segmented Control:** DLT-3443 correct background color of traveling indicator ([#1290](#1290)) ([5fc4fa8](5fc4fa8))
* **Split Button, Filter Pill:** DLT-3260 DLT-3261 correct misalignment at size 100 ([#1176](#1176)) ([fe2b777](fe2b777))
* **Stylelint:** disable hue-degree-notation rule and update OKLCH color syntax ([81f886e](81f886e))
* **Stylelint:** disable hue-degree-notation rule and update OKLCH color syntax ([8721f43](8721f43))
* **Tabs:** DLT-3251 improve accessibility ([#1171](#1171)) ([01b101e](01b101e))
* **Tokens:** DLT-3053 preserve root font size variable as reference ([#1093](#1093)) ([112ab4b](112ab4b))
* **Tokens:** handle multi-layer box shadows correctly in postcss plugin ([feea7f1](feea7f1))
* **Tokens:** NO-JIRA output line-height as unitless instead of percentages ([#1040](#1040)) ([33d8505](33d8505))
* **Tokens:** wrap css math expressions with calc() in layered build ([#966](#966)) ([1635f61](1635f61))
* update @dialpad/i18n dependencies to latest versions ([7a4b777](7a4b777))
* **Validation Messages:** DLT-3430 fix VoiceOver silent on validation messages ([#1285](#1285)) ([96adfdf](96adfdf))

### Code Refactoring

* **Box:** DLT-3333 rename percent prop values to p-suffix ([#1208](#1208)) ([e5fa5da](e5fa5da))
* **Combinator:** DLT-3418 migrate controls prop changes ([#1261](#1261)) ([ab03b44](ab03b44))
* **Combobox Multi Select:** NO-JIRA use logical css properties ([#1104](#1104)) ([a675daf](a675daf))
* **Components,recipes:** DLT-3043 DLT-3046 logical start/end naming with deprecated backward-compatible fallbacks ([#1079](#1079)) ([1d26a4e](1d26a4e))
* **Components:** DLT-3100 remove rootClass references ([#1184](#1184)) ([6531783](6531783))
* **Components:** DLT-3160 standardize v-model event handling ([#1201](#1201)) ([f1624d4](f1624d4))
* **Components:** dlt-3196 components to pascal case ([#1255](#1255)) ([aa6d259](aa6d259))
* **Components:** dlt-3282 renamed show prop to open ([#1190](#1190)) ([5509d0f](5509d0f))
* **Components:** dlt-3283 refactor prop/slots to be consistent ([#1196](#1196)) ([2d22c76](2d22c76))
* **Components:** DLT-3284 refactor props to not have native html attributes names ([#1204](#1204)) ([48a0f57](48a0f57))
* **Css:** DLT-1876 css logical properties ([#872](#872)) ([1acd6c9](1acd6c9))
* **Modal:** DLT-3262 migrate DtModal to native dialog element ([#1179](#1179)) ([589edb5](589edb5))
* **Modal:** DLT-3453 trap focus with v-dt-focustrap directive ([#1316](#1316)) ([6e2a868](6e2a868))
* **Notice,banner,toast:** DLT-3296 decouple CSS and fix specificity violations ([#1194](#1194)) ([9579ac0](9579ac0))
* **Popover:** DLT-3455 trap focus with v-dt-focustrap directive ([#1312](#1312)) ([e57e227](e57e227))
* **Resizable:** DLT-3335 align size props on --dt-layout-* instead of --dt-size-* ([#1215](#1215)) ([c156dbc](c156dbc))
* **Style:** DLT-3014 wrap all styles in css cascade layers ([#1061](#1061)) ([f8b3fed](f8b3fed))
* **Text:** DLT-2883 rename headline sizes from xxl => 2xl, etc ([#1029](#1029)) ([0ac86f3](0ac86f3))
* **Text:** DLT-3302 tone prop uses css variables instead of css utilities ([#1197](#1197)) ([75df16f](75df16f))
* **Tokens,css,link,text,breadcrumbs,input Group,split Button:** tokens, CSS foundation, deprecations, tooling DLT-3011 DLT-2961 DLT-3068 DLT-3069 DLT-3070 DLT-3071 DLT-3072 ([#1092](#1092)) ([7783090](7783090))
* **Tokens:** DLT-2884 deprecate space tokens in favor of size tokens ([#1013](#1013)) ([63f6d2f](63f6d2f))
* **Tokens:** DLT-3013 convert color system from HSL to OKLCH ([#1060](#1060)) ([42dc418](42dc418))
* **Validation Messages:** DLT-3422 update to use icon slot over embedded icon ([#1272](#1272)) ([344b737](344b737))

### Documentation

* **Border Radius:** dlt-3362 border-radius migration guide ([#1280](#1280)) ([12fd76a](12fd76a))
* **Combinator:** DLT-3424 bridge logical to physical naming ([#1273](#1273)) ([ad4a5a1](ad4a5a1))
* **Components:** DLT-3178 DLT-3182 unify code examples into single code-example component ([#1147](#1147)) ([d0b6e14](d0b6e14))
* **Css Utilities:** DLT-3295 DLT-3280 mark physical utilities as deprecated ([#1193](#1193)) ([73f1479](73f1479))
* **Css Utilities:** DLT-3337 migrate internal utility-class consumers to token-indexed names and rewrite radius docs ([#1212](#1212)) ([d675238](d675238))
* **Dialog:** dlt-3361 dtmodal native dialog migration ([#1275](#1275)) ([4ef8a09](4ef8a09))
* **Dialtone Vue:** DLT-3226 update documentation and consuming code to numeric size scale ([#1158](#1158)) ([149c763](149c763))
* DLT-1510 DLT-1511 DLT-1512 site redesign and ia ([#968](#968)) ([6ea7eb9](6ea7eb9))
* DLT-2908 ui kits landing page ([#1049](#1049)) ([d805b9d](d805b9d))
* DLT-3016 migration docs ([#1224](#1224)) ([3d73a43](3d73a43))
* DLT-3212 automate token-derived docs data files from build sources ([#1298](#1298)) ([cf064f1](cf064f1))
* DLT-3243 fenced code blocks for examples and snippets ([#1166](#1166)) ([cb169df](cb169df))
* DLT-3250 display component status badges in sidebar and page headers ([#1170](#1170)) ([7d5f5d5](7d5f5d5))
* DLT-3252 add GFM alert syntax for notices ([#1172](#1172)) ([1697911](1697911))
* DLT-3258 DLT-3259 improve sidebar search with logical keywords and fuzzy matching ([#1174](#1174)) ([2bf4639](2bf4639))
* DLT-3345 migrate d-stack*/d-flow* wrappers to DtStack ([#1218](#1218)) ([fa090ef](fa090ef))
* DLT-3434 build pipeline for component wall thumbs ([#1278](#1278)) ([cb9992f](cb9992f))
* **Downloads:** DLT-3052 DLT-3355 add downloads section and navbar hovercards ([#1229](#1229)) ([ecf5f85](ecf5f85))
* **Foundations, Homepage:** DLT-3349 DLT-3350 refresh foundations content and homepage ([#1228](#1228)) ([ab73dfd](ab73dfd))
* **Layout And Spacing:** improve to focus on understanding new layout and spacing system ([c75201f](c75201f))
* **Migration Guide:** NO-JIRA improve prop/slot migration guide ([#1227](#1227)) ([1328452](1328452))
* **Migration Script:** dlt-3303 master migration script to next ([#1288](#1288)) ([332b3cc](332b3cc))
* NO-JIRA add functions-and-utilities to raw markdown pipeline ([628ce32](628ce32))
* NO-JIRA add typography utilities to DtText migration guide ([#1296](#1296)) ([1dcf975](1dcf975))
* NO-JIRA fix focus left-nav items on keypress down up ([#1106](#1106)) ([882c9b9](882c9b9))
* **Playground:** DLT-3119 refine playground UI and integrate across doc site ([#1127](#1127)) ([ba6b599](ba6b599))
* **Playground:** DLT-3242 segmented control for compact enum props ([#1165](#1165)) ([fa440d8](fa440d8))
* **Recipes:** dlt-3308 recipes removed from dialtone - migration guide ([#1269](#1269)) ([d1d5c59](d1d5c59))
* **Tabs, Skeleton, Rich Text Editor:** DLT-3347 update doc page code examples on next branch ([#1248](#1248)) ([5837895](5837895))
* **Utilities:** DLT-3183 convert to vue demo fenced block ([#1167](#1167)) ([522197f](522197f))

### Features

* **Avatar:** DLT-2942 updated avatar component ([#1047](#1047)) ([e50563d](e50563d))
* **Avatar:** DLT-3161 change from clickable to "interactive" ([#1182](#1182)) ([2d00fe0](2d00fe0))
* **Banner, Notice, Toast, Breadcrumbs, Checkbox, Radio, Input, Select Menu, Empty State:** visual refresh, dt-text integration, form api parity DLT-2944 DLT-2945 DLT-2949 DLT-2959 DLT-2960 DLT-2957 ([#1091](#1091)) ([16e908a](16e908a))
* **Banner:** DLT-3454 trap focus with v-dt-focustrap directive ([#1310](#1310)) ([22faacf](22faacf))
* **Box:** DLT-3315 new DtBox primitive component ([#1203](#1203)) ([e0c942e](e0c942e))
* **Box:** NO-JIRA add overlay surface value ([#1328](#1328)) ([ea7a8a5](ea7a8a5))
* **Button,tabs,split Button:** visual refresh and slot updates DLT-2946 DLT-2947 DLT-2965 ([#1090](#1090)) ([ffdd56f](ffdd56f))
* **Chip:** DLT-3195 change interactive prop default from true to false ([#1246](#1246)) ([30a5ea2](30a5ea2))
* **Colors, Link, Tokens:** DLT-3360 retune blue/gold/purple/black/red palette, add mention semantic tokens, migrate success to positive ([#1245](#1245)) ([880b37b](880b37b))
* **Colors:** DLT-3354 split green palette into distinct light and dark mode values ([#1225](#1225)) ([cf63034](cf63034))
* **Combinator:** DLT-3312 preview resolved value in sized props ([#1199](#1199)) ([61bb610](61bb610))
* **Combinator:** DLT-3470 render DtToggle mixed state as a segmented control ([#1309](#1309)) ([ff2a7b8](ff2a7b8))
* **Components:** dlt-3096 add slot classes ([#1214](#1214)) ([5f6528e](5f6528e))
* **Components:** DLT-3157 align critical/positive prop values and CSS class names ([#1177](#1177)) ([edd98b2](edd98b2))
* **Components:** DLT-3159 enforce positive boolean props ([#1198](#1198)) ([ac73bdc](ac73bdc))
* **Components:** DLT-3192 establish the slotclass convention rule ([#1216](#1216)) ([3c399d4](3c399d4))
* **Css Utilities, Design Tokens:** DLT-3330 DLT-3332 add off-scale pixel-indexed layout tokens and sizing utilities ([#1206](#1206)) ([1054875](1054875))
* **Css Utilities, Eslint Plugin Dialtone:** DLT-3329 update border-radius css utilities and associated tooling ([#1211](#1211)) ([6bc3599](6bc3599))
* **Css Utilities:** DLT-3357 DLT-3358 add ease-in and retune ease-out ([#1226](#1226)) ([961965a](961965a))
* **Css Utility:** DLT-2715 add default color for border css utilities ([#874](#874)) ([71310ab](71310ab))
* **Design Tokens, Modal, Notice, Popover, Hovercard, Emoji Picker:** DLT-3436 add overlay surface color ([#1282](#1282)) ([62d60f2](62d60f2))
* **Design Tokens, Text, Link, Box, Css:** DLT-3338 add info semantic tokens and consumers ([#1210](#1210)) ([2f04b45](2f04b45))
* **Design Tokens:** DLT-3356 extend prota/deuter/trita accessible themes to semantic and components ([#1237](#1237)) ([d8fbf58](d8fbf58))
* **Design Tokens:** DLT-3368 DLT-3371 DLT-3410 add material dimension and brand-locked pairings ([#1252](#1252)) ([eeedc67](eeedc67))
* **Dialtone Css, Dialtone Documentation:** DLT-3363 add theme-to-mode migration guide and codemod ([#1260](#1260)) ([90aa4b4](90aa4b4))
* **Dialtone Css, Dialtone Tokens, Dialtone Vue:** DLT-3197 DLT-3198 DLT-3199 DLT-3200 DLT-3201 DLT-3202 DLT-3203 DLT-3204 DLT-3205 DLT-3206 DLT-3207 DLT-3208 DLT-3209 DLT-3210 DLT-3211 token-stop utility classes, migration tooling, and documentation ([#1150](#1150)) ([6237b84](6237b84))
* **Dialtone Css:** DLT-3278 add dialtone-migrate-typography codemod ([#1289](#1289)) ([aea7eba](aea7eba))
* **Dialtone Css:** NO-JIRA add dialtone-migrate bin and color-stops run-once marker ([#1329](#1329)) ([0286af1](0286af1))
* **Dialtone Icons:** NO-JIRA add /vue export to dialtone-icon ([#1304](#1304)) ([081b0e9](081b0e9))
* **Dialtone Vue:** DLT-3225 migrate component size props to numeric ordinal scale ([#1157](#1157)) ([725bd41](725bd41))
* **Eslint Plugin Dialtone:** DLT-3047 physical-to-logical naming migration tooling ([#1163](#1163)) ([d94dc4b](d94dc4b))
* **Eslint Plugin Dialtone:** DLT-3227 DLT-3228 add deprecated-tshirt-sizes ESLint rule and migration codemod ([#1159](#1159)) ([21a011f](21a011f))
* **Eslint Plugin Dialtone:** DLT-3365 add deprecated-stack-flow-classes rule ([#1247](#1247)) ([8554f5a](8554f5a))
* **Filter Pill:** DLT-2704 create component ([#473](#473)) ([6267445](6267445))
* **Filter Pill:** DLT-2941 DtFilterPill improvements ([#1110](#1110)) ([23c5689](23c5689))
* **Focusgroup:** DLT-3285 add v-dt-focusgroup directive for declarative roving tabindex ([#1187](#1187)) ([e1ea074](e1ea074))
* **Focustrap:** DLT-3297 add v-dt-focustrap directive for declarative focus trapping ([#1195](#1195)) ([6ef9a21](6ef9a21))
* **Fonts:** DLT-3475 export font module ([#1325](#1325)) ([bb8c966](bb8c966))
* **Link,button:** DLT-3012 add underline prop ([#1059](#1059)) ([1cb91ea](1cb91ea))
* **Master Script:** no-jira migration script ignore gitignore folders ([#1314](#1314)) ([e0af275](e0af275))
* **Modal:** DLT-3432 add transparentBackdrop prop ([#1277](#1277)) ([daace31](daace31))
* **Modal:** NO-JIRA apply headerClass to header text element ([#1279](#1279)) ([3cb4282](3cb4282))
* **Mode Directive, Mode Island:** DLT-3067 DLT-3078 DLT-3077 add `v-dt-mode` directive ([#1109](#1109)) ([f97efca](f97efca))
* **Popover, Tooltip:** DLT-3419 auto-append to nearest dialog for top-layer support ([#1266](#1266)) ([a5427e8](a5427e8))
* **Presence, Avatar:** DLT-3438 add icons to presence ([#1287](#1287)) ([51062be](51062be))
* **Prose:** DLT-3245 new component ([#1169](#1169)) ([adee928](adee928))
* **Scripts, Eslint, Stylelint:** DLT-3359 add success-to-positive migration tooling ([#1231](#1231)) ([0d652a5](0d652a5))
* **Scripts:** DLT-3033 DLT-3034 DLT-3035 add link-rendering migration codemod and ESLint rule ([#1233](#1233)) ([35a7238](35a7238))
* **Scripts:** DLT-3304 add scripts/docs for migration props changes ([#1219](#1219)) ([589173f](589173f))
* **Scrollbar:** DLT-3158 implement object props ([#1249](#1249)) ([09ff456](09ff456))
* **Segmented Control:** DLT-413 new component ([#1144](#1144)) ([ad4c6c3](ad4c6c3))
* **Split Button:** DLT-3257 add show-divider prop ([#1173](#1173)) ([5bef411](5bef411))
* **Style:** DLT-2976 update underline thickness and offset ([#1058](#1058)) ([1e56947](1e56947))
* **Tabs:** DLT-3114 add vertical orientation variant ([#1120](#1120)) ([3290a23](3290a23))
* **Tabs:** DLT-3162 add spread prop for horizontal distribution ([#1135](#1135)) ([6e7cd04](6e7cd04))
* **Text:** export text component from dialtone-vue ([757fdb7](757fdb7))
* **Text:** new vue component DLT-2864 DLT-2863 DLT-2862 ([#995](#995)) ([196ef8a](196ef8a))
* **Tokens, Css:** DLT-3331 rename success tokens and utility classes to positive ([#1230](#1230)) ([34bdff5](34bdff5))
* **Tokens:** DLT-1977 add high contrast design tokens and theme ([#938](#938)) ([a1c0457](a1c0457))
* **Tokens:** DLT-2767 exploratory shell themes ([#909](#909)) ([3afcf63](3afcf63))
* **Tokens:** DLT-2781 create color-assistive themes ([#921](#921)) ([a6cc397](a6cc397))
* **Tokens:** DLT-2802 DLT-2563 layered theming system and mode island component ([#945](#945)) ([5c72c6c](5c72c6c))
* **Tokens:** DLT-2937 introduce spacing and layout token systems ([#1045](#1045)) ([de23e12](de23e12))
* **Tokens:** update color ramps and consumer color migration tools DLT-3004 DLT-3005 DLT-3006 DLT-3007 DLT-3008 ([#1054](#1054)) ([28cb1de](28cb1de))
* **Typography, Tokens:** DLT-2856 DLT-2857 next typography system ([#994](#994)) ([d744e97](d744e97))
* **Validation Messages:** DLT-3423 add info variant ([#1274](#1274)) ([412154b](412154b))
* **Whats New:** DLT-3450 show author photos from GitHub avatars ([#1302](#1302)) ([d885432](d885432))

### Reverts

* remove accidental next-shadows commits from next ([868a502](868a502))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

no-visual-test Add this tag when the PR does not need visual testing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants