From 61513c656722dcae5e4d1c8525680713f2d4d0da Mon Sep 17 00:00:00 2001 From: Jiachi Liu Date: Wed, 3 Aug 2022 23:10:06 +0200 Subject: [PATCH] Use require hook and alias to resolve styled-jsx --- package.json | 1 - .../crates/core/tests/loader/front/attr-1/output.js | 2 +- packages/next-swc/crates/styled_jsx/src/utils.rs | 2 +- .../styled_jsx/tests/errors/nested-style-tags/output.js | 2 +- .../crates/styled_jsx/tests/errors/no-child/output.js | 2 +- .../styled_jsx/tests/errors/ts-with-css-resolve/output.js | 2 +- .../crates/styled_jsx/tests/errors/two-children/output.js | 2 +- .../styled_jsx/tests/errors/wrong-child-type/output.js | 2 +- .../tests/errors/wrong-jsx-expression-type/output.js | 2 +- .../attribute-generation-classname-rewriting/output.js | 2 +- .../tests/fixture/attribute-generation-modes/output.js | 2 +- .../crates/styled_jsx/tests/fixture/class/output.js | 2 +- .../crates/styled_jsx/tests/fixture/comments/output.js | 2 +- .../tests/fixture/component-attribute/output.js | 2 +- .../tests/fixture/css-selector-after-pseudo/output.js | 2 +- .../styled_jsx/tests/fixture/css-tag-same-file/output.js | 2 +- .../styled_jsx/tests/fixture/different-jsx-ids/output.js | 2 +- .../tests/fixture/dynamic-element-class/output.js | 2 +- .../tests/fixture/dynamic-element-external/output.js | 2 +- .../styled_jsx/tests/fixture/dynamic-element/output.js | 2 +- .../crates/styled_jsx/tests/fixture/expressions/output.js | 2 +- .../tests/fixture/external-nested-scope/output.js | 2 +- .../tests/fixture/external-stylesheet-global/output.js | 2 +- .../fixture/external-stylesheet-multi-line/output.js | 2 +- .../tests/fixture/external-stylesheet/output.js | 2 +- .../crates/styled_jsx/tests/fixture/fragment/output.js | 2 +- .../tests/fixture/global-child-selector/output.js | 2 +- .../styled_jsx/tests/fixture/global-redundant/output.js | 2 +- .../crates/styled_jsx/tests/fixture/global/output.js | 2 +- .../crates/styled_jsx/tests/fixture/issue-30480/output.js | 2 +- .../crates/styled_jsx/tests/fixture/issue-30570/output.js | 2 +- .../fixture/issue-31562-interpolation-in-mdea/output.js | 2 +- .../tests/fixture/mixed-global-scoped/output.js | 2 +- .../styled_jsx/tests/fixture/multiple-jsx/output.js | 2 +- .../tests/fixture/non-styled-jsx-style/output.js | 2 +- .../tests/fixture/number-after-placeholder/output.js | 2 +- .../tests/fixture/one-off-global-selectors/output.js | 2 +- .../crates/styled_jsx/tests/fixture/stateless/output.js | 2 +- .../crates/styled_jsx/tests/fixture/styles/output.js | 2 +- .../crates/styled_jsx/tests/fixture/too-many/output.js | 2 +- .../styled_jsx/tests/fixture/tpl-escape-1/output.js | 2 +- .../styled_jsx/tests/fixture/tpl-escape-2/output.js | 2 +- .../tests/fixture/tpl-placeholder-1-as-property/output.js | 2 +- .../fixture/tpl-placeholder-2-as-part-of-value/output.js | 2 +- .../tests/fixture/tpl-placeholder-3-as-value/output.js | 2 +- .../output.js | 2 +- .../output.js | 2 +- .../fixture/transform-css-complex-selector/output.js | 2 +- .../tests/fixture/transform-css-global/output.js | 2 +- .../tests/fixture/transform-css-media-query/output.js | 2 +- .../tests/fixture/transform-css-normal/output.js | 2 +- .../tests/fixture/transform-css-nth-1/output.js | 2 +- .../styled_jsx/tests/fixture/transform-css/output.js | 2 +- .../crates/styled_jsx/tests/fixture/whitespace/output.js | 2 +- packages/next/build/babel/preset.ts | 2 +- packages/next/build/webpack-config.ts | 8 +++++++- packages/next/build/webpack/require-hook.ts | 2 ++ packages/next/pages/_error.tsx | 4 ++-- packages/next/shared/lib/styled-jsx/index.d.ts | 1 + packages/next/shared/lib/styled-jsx/index.js | 1 + .../shared/lib/{styled-jsx.d.ts => styled-jsx/style.d.ts} | 0 .../shared/lib/{styled-jsx.js => styled-jsx/style.js} | 0 pnpm-lock.yaml | 2 -- test/e2e/app-dir/rsc-basic.test.ts | 1 - .../app-dir/rsc-basic/app/root-style-registry.client.js | 4 +--- 65 files changed, 68 insertions(+), 64 deletions(-) create mode 100644 packages/next/shared/lib/styled-jsx/index.d.ts create mode 100644 packages/next/shared/lib/styled-jsx/index.js rename packages/next/shared/lib/{styled-jsx.d.ts => styled-jsx/style.d.ts} (100%) rename packages/next/shared/lib/{styled-jsx.js => styled-jsx/style.js} (100%) diff --git a/package.json b/package.json index 5877847f2216..881653e3f2bc 100644 --- a/package.json +++ b/package.json @@ -191,7 +191,6 @@ "semver": "7.3.7", "shell-quote": "1.7.3", "styled-components": "5.3.3", - "styled-jsx": "link:packages/next/node_modules/styled-jsx", "styled-jsx-plugin-postcss": "3.0.2", "tailwindcss": "1.1.3", "taskr": "1.1.0", diff --git a/packages/next-swc/crates/core/tests/loader/front/attr-1/output.js b/packages/next-swc/crates/core/tests/loader/front/attr-1/output.js index f82bfb4e4a00..3c7b478d94b0 100644 --- a/packages/next-swc/crates/core/tests/loader/front/attr-1/output.js +++ b/packages/next-swc/crates/core/tests/loader/front/attr-1/output.js @@ -1,4 +1,4 @@ -import _JSXStyle from "next/dist/shared/lib/styled-jsx"; +import _JSXStyle from "next/dist/shared/lib/styled-jsx/style"; export default function Foo() { return /*#__PURE__*/ React.createElement("div", { render: function(v) { diff --git a/packages/next-swc/crates/styled_jsx/src/utils.rs b/packages/next-swc/crates/styled_jsx/src/utils.rs index 678762e3c4fa..e916ab37e325 100644 --- a/packages/next-swc/crates/styled_jsx/src/utils.rs +++ b/packages/next-swc/crates/styled_jsx/src/utils.rs @@ -310,7 +310,7 @@ pub fn styled_jsx_import_decl(style_import_name: &str) -> ModuleItem { })], src: Str { span: DUMMY_SP, - value: "next/dist/shared/lib/styled-jsx".into(), + value: "next/dist/shared/lib/styled-jsx/style".into(), raw: None, }, })) diff --git a/packages/next-swc/crates/styled_jsx/tests/errors/nested-style-tags/output.js b/packages/next-swc/crates/styled_jsx/tests/errors/nested-style-tags/output.js index 38d68136f2d8..d53f2bef9299 100644 --- a/packages/next-swc/crates/styled_jsx/tests/errors/nested-style-tags/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/errors/nested-style-tags/output.js @@ -1,4 +1,4 @@ -import _JSXStyle from "next/dist/shared/lib/styled-jsx"; +import _JSXStyle from "next/dist/shared/lib/styled-jsx/style"; const Component = ()=><>
diff --git a/packages/next-swc/crates/styled_jsx/tests/errors/no-child/output.js b/packages/next-swc/crates/styled_jsx/tests/errors/no-child/output.js index 908b640b076a..f366d5daac81 100644 --- a/packages/next-swc/crates/styled_jsx/tests/errors/no-child/output.js +++ b/packages/next-swc/crates/styled_jsx/tests/errors/no-child/output.js @@ -1,4 +1,4 @@ -import _JSXStyle from "next/dist/shared/lib/styled-jsx"; +import _JSXStyle from "next/dist/shared/lib/styled-jsx/style"; export default (()=>