Skip to content

feat(filter-pill): DLT-2941 DtFilterPill improvements#1110

Open
Francis Rupert (francisrupert) wants to merge 38 commits intonextfrom
filter-pill-refresh
Open

feat(filter-pill): DLT-2941 DtFilterPill improvements#1110
Francis Rupert (francisrupert) wants to merge 38 commits intonextfrom
filter-pill-refresh

Conversation

@francisrupert
Copy link
Contributor

@francisrupert Francis Rupert (francisrupert) commented Mar 8, 2026

image

🛠️ Type Of Change

  • Feature

📖 Jira Ticket

DLT-2941

📖 Description

  • Update default slot with scoped bindings (label, filters, activeFilters, activeFilterList, activeFilterOverflow) for custom label patterns
  • Add useDropdown prop switching overlay from DtPopover to DtDropdown with single-select via DtListItem and arrow key navigation
  • Add deferSelection prop holding checkbox changes in pending state until Apply; Cancel or closing discards changes
  • Add readOnly prop suppressing chevron, clear button, and overlay; uses aria-disabled with localized tooltip fallback
  • Keyboard navigation: Arrow Up/Down on primary button opens popover (blocked in read-only and dropdown modes)
  • Rewritten documentation page with realistic examples for all variants
  • Storybook variants and unit tests for all new modes

📦 Cross-Package Impact

Package Changes
dialtone-css Read-only and selected state styling
dialtone-vue New props, slots, events, tests, stories
dialtone-documentation Rewritten filter-pill.md with examples

📝 Checklist

For all PRs:

  • I have ensured no private Dialpad links or info are in the code or pull request description (Dialtone is a public repo!).
  • I have reviewed my changes.
  • I have added all relevant documentation.
  • I have considered the performance impact of my change.

For all Vue changes:

  • I have added / updated unit tests.
  • I have validated components with a screen reader.
  • I have validated components keyboard navigation.

For all CSS changes:

  • I have used design tokens whenever possible.
  • I have considered how this change will behave on different screen sizes.
  • I have visually validated my change in light and dark mode.
  • I have used gap or flexbox properties for layout instead of margin whenever possible.
filter-pill.mp4

…SS foundation, deprecations, tooling, scratch page

Dark theme tokens, radius-350, CSS :where() specificity softening, import
ordering, watch tooling, inverted deprecations (link, text, breadcrumbs,
keyboard-shortcut), input-group deprecation, deprecated badge in API table,
scratch page.
@github-actions
Copy link
Contributor

github-actions bot commented Mar 8, 2026

Please add either the visual-test-ready or no-visual-test label to this PR depending on whether you want to run visual tests or not.
It is recommended to run visual tests if your PR changes any UI. ‼️

@francisrupert Francis Rupert (francisrupert) added the no-visual-test Add this tag when the PR does not need visual testing label Mar 8, 2026
@wiz-inc-55b470eb7e
Copy link

wiz-inc-55b470eb7e bot commented Mar 8, 2026

Wiz Scan Summary

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

View scan details in Wiz

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

@github-actions
Copy link
Contributor

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

Comment on lines +31 to +33
&:focus-visible {
outline: none;
box-shadow: var(--dt-shadow-focus);
box-shadow: none;
Copy link
Contributor

Choose a reason for hiding this comment

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

No focus ring for list items? That's not accessible is it?

@keydown.up.down.prevent="openPopover"
>
<template
v-if="$slots.startIcon"
Copy link
Contributor

Choose a reason for hiding this comment

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

do we need to use hasSlotContent() for these?

Comment on lines +247 to +252
/**
* When true, checkbox changes are held in a pending state until the user
* clicks Apply. Cancel or closing the popover discards pending changes.
* Only applies to popover mode (not useDropdown).
*/
deferSelection: {
Copy link
Contributor

Choose a reason for hiding this comment

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

Can we add a console.warn on mounted when this and useDropdown are set to true?

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.

2 participants