Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Component selector is not working on nested styled components #35525

Closed
Brooooooklyn opened this issue Mar 22, 2022 · 3 comments · Fixed by #35527
Closed

Component selector is not working on nested styled components #35525

Brooooooklyn opened this issue Mar 22, 2022 · 3 comments · Fixed by #35527
Assignees
Labels
SWC Related to minification/transpilation in Next.js.

Comments

@Brooooooklyn
Copy link
Contributor

First of all thank you for the great work!
Not sure if I should open another issue but I'm still having a problem after trying out the emotion transform.

Component selectors can only be used in conjunction with @emotion/babel-plugin

Here is an example repo with the issue. https://github.com/macko911/next-swc-emotion-component-selector
Basically I've added only this component to the with-emotion-swc example from the Next.js repo.

export const ComponentSelectors = styled.div`
  ${Basic} {
    color: red;
  }`

Is this a feature that might come later, or will I have to refactor my code so that it doesn't rely on the component selector API?

Originally posted by @macko911 in #30804 (comment)

@Brooooooklyn Brooooooklyn self-assigned this Mar 22, 2022
@Brooooooklyn Brooooooklyn added SWC Related to minification/transpilation in Next.js. kind: bug labels Mar 22, 2022
Brooooooklyn added a commit that referenced this issue Mar 22, 2022
Brooooooklyn added a commit that referenced this issue Mar 22, 2022
@icyJoseph
Copy link
Contributor

Hi,

I am a bit confused now, I have project in production which uses this:

export const BadgesWrapper = styled(Flex)`
  flex-direction: column;

  & ${BaseCard} {
    width: 100%;
    max-width: 66.66%;
  }

  @media (min-width: 40em) {
    flex-direction: row;

    & ${BaseCard} {
      width: 100%;
      max-width: 90%;
    }
  }
`;

With SWC and even the swcMinify option.

My confusion is, you are pointing to a repo that uses emotion, but you are using styled-components, so how does your project look like? Are you maybe mixing frameworks?

@Brooooooklyn
Copy link
Contributor Author

@icyJoseph This issue is for the swc emotion transformation bug, and the posted codes are also valid emotion syntax.

@timneutkens timneutkens changed the title Compoent selector is not working on nested styled components Component selector is not working on nested styled components Mar 23, 2022
Brooooooklyn added a commit that referenced this issue Mar 23, 2022
@kodiakhq kodiakhq bot closed this as completed in #35527 Mar 23, 2022
kodiakhq bot pushed a commit that referenced this issue Mar 23, 2022
Fix #35525



## Bug

- [x] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Errors have helpful link attached, see `contributing.md`

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.
- [ ] Errors have helpful link attached, see `contributing.md`

## Documentation / Examples

- [ ] Make sure the linting passes by running `yarn lint`
Kikobeats added a commit to Kikobeats/next.js that referenced this issue Mar 24, 2022
commit f16ee05
Author: hiro <hiroyuki.kikuchi@zozo.com>
Date:   Thu Mar 24 10:02:40 2022 +0900

    Fix typo in docs (vercel#35561)

    The following files have been modified.

    - `docs/api-reference/next.config.js/rewrites.md`
    - `docs/basic-features/script.md`

    ## Documentation / Examples

    - [x] Make sure the linting passes by running `yarn lint`

commit ef7b535
Author: Steven <steven@ceriously.com>
Date:   Wed Mar 23 18:33:47 2022 -0400

    Fix `next info` accidentally printing stderr (vercel#35556)

    I noticed a few issues that had "Output from `next info`" with the first line as

    ```
    /bin/sh: pnpm: command not found
    ```

    This was because `execSync()` was still printing to stderr when a command was not found.

    Changing to `execFileSync()` fixed it so we no longer print to stderr when a command is not found.

commit 59905c1
Author: LongYinan <lynweklm@gmail.com>
Date:   Thu Mar 24 04:47:44 2022 +0800

    Fix styled transform in next-swc/emotion (vercel#35527)

    Fix vercel#35525

    ## Bug

    - [x] Related issues linked using `fixes #number`
    - [ ] Integration tests added
    - [ ] Errors have helpful link attached, see `contributing.md`

    ## Feature

    - [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
    - [ ] Related issues linked using `fixes #number`
    - [ ] Integration tests added
    - [ ] Documentation added
    - [ ] Telemetry added. In case of a feature if it's used or not.
    - [ ] Errors have helpful link attached, see `contributing.md`

    ## Documentation / Examples

    - [ ] Make sure the linting passes by running `yarn lint`

commit ebe1b4c
Author: Shu Ding <g@shud.in>
Date:   Wed Mar 23 20:20:36 2022 +0100

    Upgrade react-server-dom-webpack (vercel#35524)

    There're some changes since our last update that we'll need (e.g. server context).

    ## Bug

    - [ ] Related issues linked using `fixes #number`
    - [ ] Integration tests added
    - [ ] Errors have helpful link attached, see `contributing.md`

    ## Feature

    - [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
    - [ ] Related issues linked using `fixes #number`
    - [ ] Integration tests added
    - [ ] Documentation added
    - [ ] Telemetry added. In case of a feature if it's used or not.
    - [ ] Errors have helpful link attached, see `contributing.md`

    ## Documentation / Examples

    - [ ] Make sure the linting passes by running `yarn lint`

commit 432261a
Author: JJ Kasper <jj@jjsweb.site>
Date:   Wed Mar 23 13:43:12 2022 -0500

    Add link for revalidate from notFound section (vercel#35553)

commit 2cf6696
Author: Jiachi Liu <inbox@huozhi.im>
Date:   Wed Mar 23 16:19:58 2022 +0100

    Merge rsc queries handling (vercel#35545)

    Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>

commit 9fef0d5
Author: JJ Kasper <jj@jjsweb.site>
Date:   Wed Mar 23 09:28:04 2022 -0500

    Normalize ssgCacheKey for /index with minimalMode de-duping (vercel#35536)

    * Normalize ssgCacheKey for /index

    * apply test changes to i18n suite as well

commit 72478c5
Author: JJ Kasper <jj@jjsweb.site>
Date:   Tue Mar 22 13:58:55 2022 -0500

    Update next/link error when no children are provided (vercel#35453)

    * Update next/link error when no children are provided

    * update manifest

    * Apply suggestions from code review

    Co-authored-by: Balázs Orbán <info@balazsorban.com>

commit 6da7691
Author: Malte Ubl <cramforce@users.noreply.github.com>
Date:   Tue Mar 22 07:54:05 2022 -0700

    Reduce hello-world middleware bundle size from 128k to 88k (vercel#35512)

    Moves two utility functions from `server/router.ts` into their own file. This avoids the middleware pulling in the full Next.js router into its bundle.

    There are probably more opportunities like this, but this is a good start. Middleware should likely be bundled by a non-chunking optimizing compiler.

commit 860c97c
Author: Heyang Zhou <zhy20000919@hotmail.com>
Date:   Tue Mar 22 21:20:57 2022 +0800

    SWC import modularization plugin (vercel#34969)

commit 78831c3
Author: Steven <steven@ceriously.com>
Date:   Tue Mar 22 09:00:31 2022 -0400

    v12.1.1-canary.17

commit a2accb2
Author: JJ Kasper <jj@jjsweb.site>
Date:   Tue Mar 22 00:03:42 2022 -0500

    Update trace ignore check to check reasons correctly (vercel#35511)

commit c261924
Author: OJ Kwon <kwon.ohjoong@gmail.com>
Date:   Mon Mar 21 17:09:03 2022 -0700

    feat(telemetry): report swc target triple to telemetry (vercel#35420)

commit af95b0c
Author: Luka Hartwig <mail@lukahartwig.de>
Date:   Tue Mar 22 00:54:43 2022 +0100

    Server component docs use wrong next version (vercel#35313)

    The docs for the react server components preview refer refer to `next@latest` which doesn't work. The linked demo uses `canary` so I replaced it in the install command.

commit 92da36f
Author: JJ Kasper <jj@jjsweb.site>
Date:   Mon Mar 21 18:33:48 2022 -0500

    v12.1.1-canary.16

commit cd47984
Author: Thiago M <thiagotm@outlook.com>
Date:   Mon Mar 21 14:06:04 2022 -0300

    clarify use of Script (vercel#35491)

    Leave more clear that <Script> component can't be used inside Head. Current it says "without need", which don't implies it can't be used.

    ## Bug

    - [ ] Related issues linked using `fixes #number`
    - [ ] Integration tests added
    - [ ] Errors have helpful link attached, see `contributing.md`

    ## Feature

    - [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
    - [ ] Related issues linked using `fixes #number`
    - [ ] Integration tests added
    - [ ] Documentation added
    - [ ] Telemetry added. In case of a feature if it's used or not.
    - [ ] Errors have helpful link attached, see `contributing.md`

    ## Documentation / Examples

    - [x] Make sure the linting passes by running `yarn lint`

commit da3760b
Author: JJ Kasper <jj@jjsweb.site>
Date:   Mon Mar 21 10:00:07 2022 -0500

    Use check on prerender test assertion (vercel#35482)

commit 40a5c94
Author: Nelo <correo@nelo.dev>
Date:   Mon Mar 21 15:24:19 2022 +0100

    Fix typo in getServerSideProps doc page (vercel#35467)

    While reading the documentation, I noticed that this paragraph was not correctly written and was hard to read. I fixed it adding a dot.

    ## Documentation / Examples

    - [ ] Make sure the linting passes by running `yarn lint`
@github-actions
Copy link
Contributor

This closed issue has been automatically locked because it had no new activity for a month. If you are running into a similar issue, please create a new issue with the steps to reproduce. Thank you.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Apr 23, 2022
pavleadev pushed a commit to pavleadev/next.js that referenced this issue Mar 29, 2023
Fix vercel/next.js#35525



## Bug

- [x] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Errors have helpful link attached, see `contributing.md`

## Feature

- [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
- [ ] Related issues linked using `fixes #number`
- [ ] Integration tests added
- [ ] Documentation added
- [ ] Telemetry added. In case of a feature if it's used or not.
- [ ] Errors have helpful link attached, see `contributing.md`

## Documentation / Examples

- [ ] Make sure the linting passes by running `yarn lint`
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
SWC Related to minification/transpilation in Next.js.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants