Skip to content

Update dependency styled-components to v6#1519

Open
renovate[bot] wants to merge 1 commit intomasterfrom
renovate/styled-components-6.x
Open

Update dependency styled-components to v6#1519
renovate[bot] wants to merge 1 commit intomasterfrom
renovate/styled-components-6.x

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Jun 28, 2023

This PR contains the following updates:

Package Change Age Confidence
styled-components (source) 5.3.116.3.11 age confidence

Release Notes

styled-components/styled-components (styled-components)

v6.3.11

Compare Source

Patch Changes
  • 752f5ec: fix: resolve "React is not defined" ReferenceError introduced in 6.3.10 when loading the CJS build in Node.js

v6.3.10

Compare Source

v6.3.9

Compare Source

Patch Changes
  • ca61aca: Fix CSS block comments containing // (e.g. URLs) causing subsequent styles to not be applied.
  • a2cd792: Fix createGlobalStyle styles not being removed when unmounted in RSC environments. React 19's precedence attribute on style tags makes them persist as permanent resources; global styles now render without precedence so they follow normal component lifecycle.
  • dbe0aae: In RSC environments, theme is now undefined instead of {} for styled components, matching the existing behavior of withTheme and createGlobalStyle. This ensures accessing theme properties without a ThemeProvider correctly throws rather than silently returning undefined.
  • 1888c73: Fix withTheme HOC types: ref now correctly resolves to the component instance type instead of the constructor, and theme is properly optional in the wrapped component's props.
  • f84f3fa: Fix SSR styles hydration and global style cleanup in Shadow DOM
  • 43a5b4b: Optimize internal style processing hot paths: cached GroupedTag index lookups, string fast path in flatten, direct string concatenation in dynamic style generation, pre-built stylis middleware chain with lazy RegExp creation, single-lookup Map operations, VirtualTag append fast-path, and manual string concat in SSR output.
  • 788e8c0: Revert exports field and restore browser/server build split with browser field in package.json. Fixes require('stream') resolution errors in browser bundlers like webpack 5.

v6.3.8

Compare Source

Patch Changes
  • 55d05c1: Make react-dom an optional peer dependency, clean up some unnecessary type peers.

v6.3.7

Compare Source

Patch Changes
  • 51ffa9c: Fix createGlobalStyle compatibility with React StrictMode and RSC

    This fix addresses issues where global styles would disappear or behave incorrectly in React StrictMode and RSC:

    1. Static styles optimization: Static global styles (without props/interpolations) are now only injected once and won't be removed/re-added on every render. This prevents the style flickering that could occur during concurrent rendering.

    2. StrictMode-aware cleanup: Style cleanup now uses queueMicrotask to coordinate with React's effect lifecycle. In StrictMode's simulated unmount/remount cycle, styles are preserved. On real unmount, styles are properly removed.

    3. RSC compatibility: Move useRef inside RSC guard in createGlobalStyle and unify all useContext calls to use consistent !IS_RSC ? pattern.

    4. RSC inline style tag cleanup: Fix bug where server-defined createGlobalStyle rendered in client components would leave behind accumulated SSR-rendered inline <style data-styled-global> tags. The cleanup effect now removes these hoisted style tags when the component unmounts or re-renders with different CSS.

    These changes ensure createGlobalStyle works correctly with:

    • React StrictMode's double-render behavior
    • React 18/19's concurrent rendering features
    • React 19's style hoisting with the precedence attribute
    • React Server Components (server-defined GlobalStyles in client components)
  • 51ffa9c: Restore styled.br.

  • 1f794b7: Add package.json "exports" field for better native ESM integration.

v6.3.6

Compare Source

Patch Changes
  • 189bc17: Fix url() CSS function values being incorrectly stripped when using unquoted URLs containing // (e.g., url(https://example.com)). The // in protocol URLs like https://, http://, file://, and protocol-relative URLs was incorrectly being treated as a JavaScript-style line comment.

v6.3.5

Compare Source

Patch Changes
  • 7ff7002: Fix: Line comments (//) in multiline CSS declarations no longer cause parsing errors (fixes #​5613)

    JS-style line comments (//) placed after multiline declarations like calc() were not being properly stripped, causing CSS parsing issues. Comments are now correctly removed anywhere in the CSS while preserving valid syntax.

    Example that now works:

    const Box = styled.div`
      max-height: calc(100px + 200px + 300px); // This comment no longer breaks parsing
      background-color: green;
    `;
  • 7ff7002: Fix: Contain invalid CSS syntax to just the affected line

    In styled-components v6, invalid CSS syntax (like unbalanced braces) could cause all subsequent styles to be ignored. This fix ensures that malformed CSS only affects the specific declaration, not subsequent valid styles.

    Example that now works:

    const Circle = styled.div`
      width: 100px;
      line-height: ${() => '14px}'}; // ⛔️ This malformed line is dropped
      background-color: green; // ✅ Now preserved (was ignored in v6)
    `;

v6.3.4

Compare Source

Patch Changes
  • 8e8c282: Fixed createGlobalStyle to not use useLayoutEffect on the server, which was causing a warning and broken styles in v6.3.x. The check typeof React.useLayoutEffect === 'function' is not reliable for detecting server vs client environments in React 18+, so we now use the __SERVER__ build constant instead.

v6.3.3

Compare Source

Patch Changes
  • 6e4d1e7: fix: suppress false "created dynamically" warnings in React Server Components

    The dynamic creation warning check now properly detects RSC environments and skips validation when IS_RSC is true. This eliminates false warnings for module-level styled components in server components, which were incorrectly flagged due to RSC's different module evaluation context. Module-level styled components in RSC files no longer trigger warnings since they cannot be created inside render functions by definition.

v6.3.2

Compare Source

Patch Changes
  • a4b4a6b: fix: include TypeScript declaration files in npm package

    Fixed Rollup TypeScript plugin configuration to override tsconfig.json's noEmit setting, ensuring TypeScript declaration files are generated during build.

  • a4b4a6b: fix: resolve TypeScript error blocking type declaration emission

    Fixed TypeScript error in StyledComponent when merging style attributes from attrs. Added explicit type cast to React.CSSProperties to safely merge CSS property objects. This error was preventing TypeScript declaration files from being generated during build.

v6.3.1

Compare Source

Patch Changes
  • 046e880: Ensure TypeScript declaration files are included in npm package, needed to tweak a Rollup setting.

v6.3.0

Compare Source

Minor Changes
  • 28fd502: Add React Server Components (RSC) support

    styled-components now automatically detects RSC environments and handles CSS delivery appropriately:

    • No 'use client' directive required: Components work in RSC without any wrapper or directive
    • Automatic CSS injection: In RSC mode, styled components emit inline <style> tags that React 19 automatically hoists and deduplicates
    • Zero configuration: Works out of the box with Next.js App Router and other RSC-enabled frameworks
    • Backward compatible: Existing SSR patterns with ServerStyleSheet continue to work unchanged

    RSC best practices:

    • Prefer static styles over dynamic interpolations to avoid serialization overhead
    • Use data attributes for discrete variants (e.g., &[data-size='lg'])
    • CSS custom properties work perfectly in styled-components, can be set via inline style, and cascade to children:
    const Container = styled.div``;
    const Button = styled.button`
      background: var(--color-primary, blue);
    `;
    
    // Variables set on parent cascade to all DOM children
    <Container style={{ '--color-primary': 'orchid' }}>
      <Button>Inherits orchid background</Button>
    </Container>;
    • Use build-time CSS variable generation for theming since ThemeProvider is a no-op in RSC

    Technical details:

    • RSC detection via typeof React.createContext === 'undefined'
    • ThemeProvider and StyleSheetManager become no-ops in RSC (children pass-through)
    • React hooks are conditionally accessed via runtime guards
    • CSS is retrieved from the StyleSheet Tag for inline delivery in RSC mode
  • 856cf06: feat: update built-in element aliases to include modern HTML and SVG elements

    Added support for modern HTML and SVG elements that were previously missing:

    HTML elements:

    • search - HTML5 search element
    • slot - Web Components slot element
    • template - HTML template element

    SVG filter elements:

    • All fe* filter primitive elements (feBlend, feColorMatrix, feComponentTransfer, etc.)
    • clipPath, linearGradient, radialGradient - gradient and clipping elements
    • textPath - SVG text path element
    • switch, symbol, use - SVG structural elements

    This ensures styled-components has comprehensive coverage of all styleable HTML and SVG elements supported by modern browsers and React.

Patch Changes
  • 418adbe: fix(types): add CSS custom properties (variables) support to style prop

    CSS custom properties (CSS variables like --primary-color) are now fully supported in TypeScript without errors:

    • .attrs({ style: { '--var': 'value' } }) - CSS variables in attrs
    • <Component style={{ '--var': 'value' }} /> - CSS variables in component props
    • Mixed usage with regular CSS properties works seamlessly
  • aef2ad6: Update shared css property handling tools to latest versions.

v6.2.0

Compare Source

v6.1.19

Compare Source

Patch Changes
  • aa997d8: fix for React Native >=0.79 crashes when using unsupported web-only CSS values (e.g., fit-content, min-content, max-content). The fix emits a warning and ignores the property using those values, instead of causing crashes.

v6.1.18

Compare Source

Patch Changes
  • 76b18a4: fix react 19 compatibility
  • bdac7af: Quickfix to support expo sdk >= 53 and react-native >=0.79.

v6.1.17

Compare Source

Patch Changes
  • 47a4dcb: Fix for loose DefaultTheme type definition
  • a8c0f5b: fix: add info link to console

v6.1.16

Compare Source

Patch Changes
  • 246c77b: Resolve TS error related to ExoticComponentWithDisplayName API from React.
  • 4757191: Native typings weren't on the correct folder, which caused issues on React Native projects using this library

v6.1.15

Compare Source

Patch Changes
  • b9688ae: chore: update postcss to version 8.4.49 and nanoid to version 3.3.8

v6.1.14

Compare Source

Patch Changes
  • 6908326: Add changesets for release management
  • 18ebf6d: Prevent styled() from injecting an undefined ref prop in React 19

v6.1.13

Compare Source

What's Changed

New Contributors

Full Changelog: styled-components/styled-components@v6.1.12...v6.1.13

v6.1.12

Compare Source

What's Changed

New Contributors

Full Changelog: styled-components/styled-components@v6.1.11...v6.1.12

v6.1.11

Compare Source

What's Changed

Full Changelog: styled-components/styled-components@v6.1.10...v6.1.11

v6.1.10

Compare Source

What's Changed

New Contributors

Full Changelog: styled-components/styled-components@v6.1.9...v6.1.10

v6.1.9

Compare Source

What's Changed

New Contributors

Full Changelog: styled-components/styled-components@v6.1.8...v6.1.9

v6.1.8

Compare Source

Revert adding peerDependencies from v6.1.7; apparently some package managers have differing behaviors around peerDependenciesMeta[package].optional which is causing issues. Will revisit at a later date if possible.

Full Changelog: styled-components/styled-components@v6.1.7...v6.1.8

v6.1.7

Compare Source

What's Changed

  • chore: add all missing peer dependency statements by @​quantizor in #​4243

    NOTE: this change may cause some installed dependency duplication until this NPM bug is addressed but yarn and pnpm have correct behavior. Bun also has a similar bug.

    Overall these changes ensure that styled-components is specifying a known working version of all utilized libraries, while instructing the client package manager that higher semver-compliant versions are permissible and should work, assuming the relevant libraries are compliant in practice.

Full Changelog: styled-components/styled-components@v6.1.6...v6.1.7

v6.1.6

Compare Source

What's Changed

Full Changelog: styled-components/styled-components@v6.1.5...v6.1.6

v6.1.5

Compare Source

What's Changed

Full Changelog: styled-components/styled-components@v6.1.4...v6.1.5

v6.1.4

Compare Source

What's Changed

Full Changelog: styled-components/styled-components@v6.1.3...v6.1.4

v6.1.3

Compare Source

What's Changed

New Contributors

Full Changelog: styled-components/styled-components@v6.1.2...v6.1.3

v6.1.2

What's Changed

New Contributors

Full Changelog: styled-components/styled-components@v6.1.1...v6.1.2

v6.1.1

What's Changed

New Contributors

Full Changelog: styled-components/styled-components@v6.1.0...v6.1.1

v6.1.0

Compare Source

What's Changed

New Contributors

Full Changelog: styled-components/styled-components@v6.0.9...v6.1.0

v6.0.9

Compare Source

fix bundling to not hardcode window (should fix some testing use cases that were incorrectly assuming a server environment when JSDOM and similar are in use)

Full Changelog: styled-components/styled-components@v6.0.8...v6.0.9

v6.0.8

Compare Source

What's Changed

New Contributors

Full Changelog: styled-components/styled-components@v6.0.7...v6.0.8

v6.0.7

Compare Source

What's Changed

New Contributors

Full Changelog: styled-components/styled-components@v6.0.6...v6.0.7

v6.0.6

Compare Source

What's Changed

New Contributors

Full Changelog: styled-components/styled-components@v6.0.5...v6.0.6

v6.0.5

Compare Source

What's Changed

New Contributors

Full Changelog: styled-components/styled-components@v6.0.4...v6.0.5

v6.0.4

Compare Source

What's Changed

  • refactor: dev warning on unknown props retargeted specifically toward HTML targets rather than other React components by @​woodreamz in #​4084
  • fix: untyped event handler callbacks by @​ziolekjj in #​4086

New Contributors

Full Changelog: styled-components/styled-components@v6.0.3...v6.0.4

v6.0.3

Compare Source

What's Changed

New Contributors

Full Changelog: styled-components/styled-components@v6.0.2...v6.0.3

v6.0.2

Compare Source

What's Changed

  • fix: StyleSheetManager must accept undefined props by @​gineika in #​4069
  • fix: replace slow Omit type by @​gineika in #​4068
  • drop displayName in production to save bytes, it's already present in the static className if you're using the babel plugin or equivalent
  • refactor use of flatMap and at with ES5-compliant variants

New Contributors

Full Changelog: styled-components/styled-components@v6.0.1...v6.0.2

v6.0.1

Compare Source

Fixed an issue where a dev-time warning was being triggered too eagerly.

Full Changelog: styled-components/styled-components@v6.0.0...v6.0.1

v6.0.0

Compare Source

yarn add styled-components

Changed in this version

  • fix(types): prevent prop bleed on styling properties (fixes #​4053, c0f8015)
  • feat(types): ship csstype via "CSS" namespace (e6c4f0a)
  • chore: bump stylis to 4.3 (fixes #​4007, fa58875)
  • reduced some sources of unnecessary branching logic

Breaking changes in v6

Migration guide → https://styled-components.com/docs/faqs#what-do-i-need-to-do-to-migrate-to-v6

  • now using stylis v4 (if using stylis-plugin-rtl you'll need to upgrade to the newer version)
  • styled-components now provides its own types; if you installed @types/styled-components in the past, you'll want to remove it
  • dropped $as and $forwardedAs props (use as or forwardedAs)
  • dropped automatic prop filtering; use transient props ($ prefix) for stuff you don't want to be passed to child component / HTML
  • StyleSheetManager
    • replaced disableVendorPrefixes with enableVendorPrefixes prop
    • dropped automatic vendor prefixing; if you need to support older browsers, you can re-enable it easily with the above prop
      <StyleSheetManager enableVendorPrefixes>
        {/* your React tree and ThemeProvider goes here */}
      </StyleSheetManager>
  • dropped deprecated withComponent API (87f511a); use "as" prop instead
  • node >= 14 needed

Full Changelog: styled-components/styled-components@v5.3.7...v6.0.0


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@github-actions
Copy link

github-actions bot commented Jun 28, 2023

🦙 MegaLinter status: ✅ SUCCESS

Descriptor Linter Files Fixed Errors Elapsed time
✅ EDITORCONFIG editorconfig-checker 2 0 0.01s
✅ JSON eslint-plugin-jsonc 1 0 0 1.03s
✅ JSON jsonlint 1 0 0.26s
✅ JSON npm-package-json-lint yes no 1.2s
✅ JSON prettier 1 0 0 0.45s
✅ JSON v8r 1 0 7.83s
✅ REPOSITORY checkov yes no 37.41s
✅ REPOSITORY git_diff yes no 0.01s
✅ REPOSITORY grype yes no 19.02s
✅ REPOSITORY trivy-sbom yes no 5.19s
✅ REPOSITORY trufflehog yes no 164.93s

See detailed report in MegaLinter reports
Set VALIDATE_ALL_CODEBASE: true in mega-linter.yml to validate all sources, not only the diff

MegaLinter is graciously provided by OX Security

@renovate renovate bot force-pushed the renovate/styled-components-6.x branch 11 times, most recently from 5b13c17 to fbcc6bd Compare July 4, 2023 15:15
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch 2 times, most recently from 3d0ec68 to 36c6d35 Compare July 7, 2023 07:12
@buberdds
Copy link
Contributor

buberdds commented Jul 7, 2023

Grommet is not compatible with v6

@renovate renovate bot force-pushed the renovate/styled-components-6.x branch 11 times, most recently from e687018 to 862fe3d Compare July 14, 2023 10:05
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch 4 times, most recently from e326102 to 6bd7f95 Compare July 18, 2023 07:25
@github-actions github-actions bot force-pushed the renovate/styled-components-6.x branch from e107615 to 5696695 Compare January 17, 2026 04:18
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch from 5696695 to 3f4eea7 Compare January 19, 2026 11:36
@github-actions github-actions bot force-pushed the renovate/styled-components-6.x branch from 3f4eea7 to 9044a16 Compare January 19, 2026 11:36
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch from 9044a16 to b27ff7d Compare January 19, 2026 14:30
@github-actions github-actions bot force-pushed the renovate/styled-components-6.x branch from b27ff7d to 3cced50 Compare January 19, 2026 14:31
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch from 3cced50 to 2f57897 Compare January 19, 2026 14:35
@github-actions github-actions bot force-pushed the renovate/styled-components-6.x branch from 2f57897 to d70f64f Compare January 19, 2026 14:35
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch from d70f64f to 8bfc4cd Compare January 19, 2026 22:48
@github-actions github-actions bot force-pushed the renovate/styled-components-6.x branch from 8bfc4cd to 92cb95a Compare January 19, 2026 22:48
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch from 92cb95a to 6f1427b Compare January 20, 2026 15:38
@github-actions github-actions bot force-pushed the renovate/styled-components-6.x branch from 6f1427b to 95f4bb7 Compare January 20, 2026 15:38
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch from 95f4bb7 to 39540f2 Compare January 23, 2026 20:04
@github-actions github-actions bot force-pushed the renovate/styled-components-6.x branch from 39540f2 to e5599dd Compare January 23, 2026 20:04
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch from e5599dd to 7e563b7 Compare January 25, 2026 06:21
@github-actions github-actions bot force-pushed the renovate/styled-components-6.x branch from 7e563b7 to bdf1cef Compare January 25, 2026 06:21
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch from bdf1cef to d99029a Compare February 2, 2026 17:59
@github-actions github-actions bot force-pushed the renovate/styled-components-6.x branch from d99029a to cf625fe Compare February 2, 2026 17:59
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch from cf625fe to 339a4ac Compare February 8, 2026 05:33
@github-actions github-actions bot force-pushed the renovate/styled-components-6.x branch from 339a4ac to 5ee165f Compare February 8, 2026 05:33
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch from 5ee165f to ec67694 Compare February 12, 2026 11:59
@github-actions github-actions bot force-pushed the renovate/styled-components-6.x branch from ec67694 to 207f624 Compare February 12, 2026 11:59
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch from 207f624 to ee61f65 Compare February 17, 2026 19:05
@github-actions github-actions bot force-pushed the renovate/styled-components-6.x branch from ee61f65 to 1a04c97 Compare February 17, 2026 19:05
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch from 1a04c97 to acf93e0 Compare February 18, 2026 17:43
@github-actions github-actions bot force-pushed the renovate/styled-components-6.x branch from acf93e0 to 47d082d Compare February 18, 2026 17:43
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch from 47d082d to 8c0057e Compare February 20, 2026 00:40
@github-actions github-actions bot force-pushed the renovate/styled-components-6.x branch from 8c0057e to abd7d0c Compare February 20, 2026 00:40
@renovate renovate bot force-pushed the renovate/styled-components-6.x branch from abd7d0c to ebe4c40 Compare February 27, 2026 08:49
@github-actions github-actions bot force-pushed the renovate/styled-components-6.x branch from ebe4c40 to b8bbbd1 Compare February 27, 2026 08:50
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.

1 participant