Skip to content

fix(components): Flatten Select css selectors#3144

Open
edison-cy-yang wants to merge 1 commit into
masterfrom
JOB-165918-flatten-select-css-selectors
Open

fix(components): Flatten Select css selectors#3144
edison-cy-yang wants to merge 1 commit into
masterfrom
JOB-165918-flatten-select-css-selectors

Conversation

@edison-cy-yang
Copy link
Copy Markdown
Contributor

Why Is This Changing?

  • Lightning CSS minify throws SyntaxError: [lightningcss minify] Invalid state in vite:css-post against @jobber/components's built Select CSS, blocking consumers that use Vite + Lightning CSS for CSS minification.
  • The crash trips on the selector chain .select::picker(select)::picker(select) in dist/styles.css — a stacked pseudo-element shape Lightning CSS's parser bails on.
  • Consumers have had to pin cssMinify: "esbuild" as a workaround; this change removes the need for that fallback.

What Is Changing?

  • Flatten a nested CSS rule in Select.module.css so the built output no longer contains the stacked ::picker(select)::picker(select) chain.
  • Dropdown styling (box-shadow, margin, padding, border, border-radius, background) is merged into the existing single-level &::picker(select) block that already holds the transitions.

Consumer Impact

  • Impact: Low
  • Action required: None (consumers using Vite + Lightning CSS can drop any cssMinify: "esbuild" workaround)
  • Breaking change: No

Validation

  • Built @jobber/components and confirmed grep '::picker(select)::picker(select)' packages/components/dist/styles.css returns 0 matches (it returned a match before).
  • Verified the experimental @supports block in dist/styles.css now emits two clean rules: .select, .select::picker(select) { appearance: base-select } and a single-level .select::picker(select) { box-shadow; … transition; }.

Reviewer Notes

Changes can be
tested via Pre-release


In Atlantis we use Github's built in pull request reviews.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 11, 2026

Published Pre-release for 821e607 with versions:

  - @jobber/components@7.11.4-JOB-165918-821e607.0+821e6071b

To install the new version(s) for Web run:

pnpm add @jobber/components@7.11.4-JOB-165918-821e607.0+821e6071b

@edison-cy-yang edison-cy-yang marked this pull request as ready for review May 11, 2026 20:40
@edison-cy-yang edison-cy-yang requested a review from a team as a code owner May 11, 2026 20:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant