Skip to content

Prepare the build for tsdown - #6039

Merged
Eugene (OEvgeny) merged 8 commits into
mainfrom
OEvgeny/prep-tsdown
Nov 10, 2026
Merged

Eugene (OEvgeny) merged 8 commits into
mainfrom
OEvgeny/prep-tsdown

Conversation

@OEvgeny

@OEvgeny Eugene (OEvgeny) commented Nov 10, 2026 •

Copy link
Copy Markdown
Collaborator

Prepares the build for tsdown; no behavior change in the published packages.

Changelog Entry

Changed

  • 👷🏻 Build checks and tests accept tsdown output as well as tsup, and the CSS placeholder check also finds template literals, in PR #6039, by @OEvgeny

Description

Some build checks and tests assume today's tsup/esbuild output, so switching to tsdown would fail them, and the css-inject check also misses a placeholder written as a template literal. This PR makes them correct for both tools and moves the Lightning CSS options into a shared file; the emitted CSS is byte-identical.

Design

  • The CSS pipeline stays ours (unplugin-lightningcss + injectCSSPlugin) rather than @tsdown/css, so both bundlers can import lightningCSSOptions.mjs. It has one user today; moving it now keeps the tsdown pull request to new configs only.

Specific Changes

  • vibe-grep css-inject.yaml: also matches template literals (no source writes one today, but `@--X--@` would survive an unminified build: injectCSSPlugin only replaces "…")
  • lightningCSSOptions.mjs: Lightning CSS options and removePreserveReason(), used by esbuildPlugins.mjs
  • api/src/boot/middleware.ts: type on the AvatarPolymiddlewareProxyProps re-export
  • vibe-grep lightning-css.yaml: accepts :has( > …) as well as :has(> …)
  • boot/bundle.html, fluentTheme/simple.html, preact/fluentTheme/simple.html: build tool may be tsup or tsdown
  • I have added tests and executed them locally
  • I have added .changelog/<PR#>-<slug>.md
  • I have updated documentation

Review Checklist

This section is for contributors to review your work.

  • Accessibility reviewed (tab order, content readability, alt text, color contrast)
  • Browser and platform compatibilities reviewed
  • CSS styles reviewed (minimal rules, no z-index)
  • Documents reviewed (docs, samples, live demo)
  • Internationalization reviewed (strings, unit formatting)
  • package.json and package-lock.json reviewed
  • Security reviewed (no data URIs, check for nonce leak)
  • Tests reviewed (coverage, legitimacy)

@OEvgeny
Eugene (OEvgeny) marked this pull request as ready for review November 10, 2026 04:13
Copilot AI balanced review requested due to automatic review settings November 10, 2026 04:13

Copilot AI 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.

Copilot was unable to review this pull request because the user who requested the review has insufficient remaining quota. Try requesting a review at a lower effort level.

@OEvgeny
Eugene (OEvgeny) merged commit cae85c6 into main Nov 10, 2026
46 checks passed
@OEvgeny
Eugene (OEvgeny) deleted the OEvgeny/prep-tsdown branch November 10, 2026 05:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants