From 9eb070e2612909455cc2b9383a7961b9b76ab950 Mon Sep 17 00:00:00 2001 From: Pedro Almeida Date: Sun, 3 Aug 2025 23:52:25 -0300 Subject: [PATCH 1/2] fix(package-tailwind): media-query stripping Issue 2388 --- .../src/utils/css/make-inline-styles-for.ts | 39 ++++++++++++++++--- 1 file changed, 33 insertions(+), 6 deletions(-) diff --git a/packages/tailwind/src/utils/css/make-inline-styles-for.ts b/packages/tailwind/src/utils/css/make-inline-styles-for.ts index 045e3e9ca2..af7e66eed3 100644 --- a/packages/tailwind/src/utils/css/make-inline-styles-for.ts +++ b/packages/tailwind/src/utils/css/make-inline-styles-for.ts @@ -30,25 +30,52 @@ export function makeInlineStylesFor( let residualClasses = [...classes]; const styles: Record = {}; + const classesWithNonInlinableStyles = new Set(); + + tailwindStylesRoot.walkRules((rule) => { + const isInAtRule = rule.parent?.type === 'atrule'; + + let hasPseudoSelectors = false; + selectorParser((selector) => { + selector.walkPseudos(() => { + hasPseudoSelectors = true; + }); + }).processSync(rule.selector); + + const isNonInlinable = isInAtRule || hasPseudoSelectors; + + if (isNonInlinable) { + selectorParser((selector) => { + selector.walkClasses((v) => { + classesWithNonInlinableStyles.add(unescapeClass(v.value)); + }); + }).processSync(rule.selector); + } + }); + + const inlinableClasses = new Set(); walkInlinableRules(tailwindStylesRoot, (rule) => { - const classesOnSelector: string[] = []; selectorParser((selector) => { selector.walkClasses((v) => { - classesOnSelector.push(unescapeClass(v.value)); + inlinableClasses.add(unescapeClass(v.value)); }); }).processSync(rule.selector); - residualClasses = residualClasses.filter((singleClass) => { - return !classesOnSelector.includes(singleClass); - }); - rule.walkDecls((declaration) => { styles[convertCssPropertyToReactProperty(declaration.prop)] = declaration.value + (declaration.important ? '!important' : ''); }); }); + residualClasses = residualClasses.filter((singleClass) => { + const isInlinable = inlinableClasses.has(singleClass); + const hasNonInlinableStyles = + classesWithNonInlinableStyles.has(singleClass); + + return !isInlinable || hasNonInlinableStyles; + }); + return { styles, residualClassName: residualClasses.join(' '), From 847b1d529f306528fe8b4cbcf9ed03d65e362dac Mon Sep 17 00:00:00 2001 From: cpenned <66193019+cpenned@users.noreply.github.com> Date: Wed, 20 Aug 2025 15:00:45 -0600 Subject: [PATCH 2/2] refactor: remove discord link (#2423) Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com> --- README.md | 6 +- .../development-workflow/1-setup.mdx | 2 +- .../contributing/opening-pull-requests.mdx | 2 +- apps/docs/docs.json | 5 -- apps/docs/roadmap.mdx | 2 +- apps/web/next.config.js | 5 -- apps/web/src/components/menu.tsx | 58 +++++-------------- packages/button/readme.md | 7 +-- packages/code-block/readme.md | 7 +-- packages/code-inline/readme.md | 7 +-- packages/column/readme.md | 7 +-- packages/components/readme.md | 7 +-- packages/container/readme.md | 7 +-- packages/create-email/readme.md | 7 +-- packages/head/readme.md | 7 +-- packages/heading/readme.md | 7 +-- packages/hr/readme.md | 7 +-- packages/img/readme.md | 7 +-- packages/link/readme.md | 7 +-- packages/preview-server/readme.md | 7 +-- packages/preview/readme.md | 7 +-- packages/react-email/readme.md | 7 +-- packages/render/readme.md | 7 +-- packages/section/readme.md | 7 +-- packages/text/readme.md | 7 +-- 25 files changed, 75 insertions(+), 131 deletions(-) diff --git a/README.md b/README.md index 6b52615bbd..bad603bc01 100644 --- a/README.md +++ b/README.md @@ -4,11 +4,9 @@
The next generation of writing emails.
High-quality, unstyled components for creating emails.

-Website +Website · -GitHub - · -Discord +GitHub
## Introduction diff --git a/apps/docs/contributing/development-workflow/1-setup.mdx b/apps/docs/contributing/development-workflow/1-setup.mdx index aa46a61491..76893941bb 100644 --- a/apps/docs/contributing/development-workflow/1-setup.mdx +++ b/apps/docs/contributing/development-workflow/1-setup.mdx @@ -41,4 +41,4 @@ To contribute to the project, you must use **Node 18** or higher. If you plan to contribute to the docs, view our [Writing docs](/contributing/development-workflow/5-writing-docs) guide for additional setup. -If you have have any trouble, please [reach out on Discord](https://discord.com/invite/n2pWEjjNnD) or consider [opening up an issue on GitHub](https://github.com/resend/react-email/issues/new?assignees=&labels=Type%3A+Bug&projects=&template=1.bug_report.yml) after reading the [issue guidelines](/contributing/opening-issues). +If you have any trouble, please [reach out on GitHub Discussions](https://github.com/resend/react-email/discussions) or consider [opening up an issue on GitHub](https://github.com/resend/react-email/issues/new?assignees=&labels=Type%3A+Bug&projects=&template=1.bug_report.yml) after reading the [issue guidelines](/contributing/opening-issues). diff --git a/apps/docs/contributing/opening-pull-requests.mdx b/apps/docs/contributing/opening-pull-requests.mdx index 145636b3fc..b447d6356d 100644 --- a/apps/docs/contributing/opening-pull-requests.mdx +++ b/apps/docs/contributing/opening-pull-requests.mdx @@ -67,5 +67,5 @@ Writing down your specific changes—both generally and technically—makes it c ## Getting in touch with us -If you have any questions or need help, you can find us on [Discord](https://discord.com/invite/n2pWEjjNnD). +If you have any questions or need help, you can find us on [GitHub Discussions](https://github.com/resend/react-email/discussions). diff --git a/apps/docs/docs.json b/apps/docs/docs.json index 86e3ca154c..001759c314 100644 --- a/apps/docs/docs.json +++ b/apps/docs/docs.json @@ -121,11 +121,6 @@ "href": "https://demo.react.email/preview/notifications/vercel-invite-user", "icon": "arrow-pointer" }, - { - "anchor": "Discord", - "href": "https://react.email/discord", - "icon": "discord" - }, { "anchor": "GitHub", "href": "https://github.com/resend/react-email", diff --git a/apps/docs/roadmap.mdx b/apps/docs/roadmap.mdx index 6a9fda3efe..abe405f36a 100644 --- a/apps/docs/roadmap.mdx +++ b/apps/docs/roadmap.mdx @@ -6,7 +6,7 @@ description: 'Understand what is currently being prioritized and what we are pla icon: 'map' --- -If any of these are important to you please let us know. We use community feedback to plan our roadmap, and we also encourage contributors to submit their ideas on [Discord](https://react.email/discord) so that we can discuss them with the community. +If any of these are important to you please let us know. We use community feedback to plan our roadmap, and we also encourage contributors to submit their ideas on [GitHub Discussions](https://github.com/resend/react-email/discussions) so that we can discuss them with the community. Feel free to contribute to any of them as well. diff --git a/apps/web/next.config.js b/apps/web/next.config.js index d322af9209..3bcd85fb2d 100644 --- a/apps/web/next.config.js +++ b/apps/web/next.config.js @@ -8,11 +8,6 @@ module.exports = { serverExternalPackages: ['@react-email/components', '@react-email/render'], async redirects() { return [ - { - source: '/discord', - destination: 'https://discord.com/invite/n2pWEjjNnD', - permanent: true, - }, { source: '/examples', destination: '/templates', diff --git a/apps/web/src/components/menu.tsx b/apps/web/src/components/menu.tsx index 535b6ebc29..e23e9ef40b 100644 --- a/apps/web/src/components/menu.tsx +++ b/apps/web/src/components/menu.tsx @@ -14,7 +14,6 @@ interface MenuItemProps { } const GITHUB_URL = 'https://github.com/resend/react-email'; -const DISCORD_URL = '/discord'; const MenuItem: React.FC> = ({ className, @@ -64,48 +63,23 @@ const MenuItems = ({ onItemClick }: { onItemClick: () => void }) => ( ); const SocialIcons = ({ onItemClick }: { onItemClick: () => void }) => ( - <> - - - - - - + - - - - - - - - - - - + + + ); export const Menu: React.FC = () => { diff --git a/packages/button/readme.md b/packages/button/readme.md index 3d1beded25..a0874ff547 100644 --- a/packages/button/readme.md +++ b/packages/button/readme.md @@ -4,11 +4,10 @@
A link that is styled to look like a button.

## Install diff --git a/packages/code-block/readme.md b/packages/code-block/readme.md index 281e633ac1..a337928f6c 100644 --- a/packages/code-block/readme.md +++ b/packages/code-block/readme.md @@ -4,11 +4,10 @@
Display code with a selected theme and regex highlighting using Prism.js.

## Install diff --git a/packages/code-inline/readme.md b/packages/code-inline/readme.md index 668ac974e9..70e5ac60fa 100644 --- a/packages/code-inline/readme.md +++ b/packages/code-inline/readme.md @@ -4,11 +4,10 @@
Display a predictable inline code HTML element that works on all email clients.

## Install diff --git a/packages/column/readme.md b/packages/column/readme.md index 104dfc46e5..149694bdd7 100644 --- a/packages/column/readme.md +++ b/packages/column/readme.md @@ -4,11 +4,10 @@
Display a column that separates content areas vertically in your email.

## Install diff --git a/packages/components/readme.md b/packages/components/readme.md index 41b76b5230..822b562a04 100644 --- a/packages/components/readme.md +++ b/packages/components/readme.md @@ -4,11 +4,10 @@
A collection of all components React Email.

## Install diff --git a/packages/container/readme.md b/packages/container/readme.md index 9230285ad1..4a8edf3379 100644 --- a/packages/container/readme.md +++ b/packages/container/readme.md @@ -4,11 +4,10 @@
A layout component that centers all the email content.

## Install diff --git a/packages/create-email/readme.md b/packages/create-email/readme.md index b2928aebd2..4e78153b20 100644 --- a/packages/create-email/readme.md +++ b/packages/create-email/readme.md @@ -4,11 +4,10 @@
The easiest way to get started with React Email.

## Getting started diff --git a/packages/head/readme.md b/packages/head/readme.md index 18e384e20e..36aec69135 100644 --- a/packages/head/readme.md +++ b/packages/head/readme.md @@ -4,11 +4,10 @@
Contains head components such as style and meta elements.

## Install diff --git a/packages/heading/readme.md b/packages/heading/readme.md index 879e710f76..9fde1fbabc 100644 --- a/packages/heading/readme.md +++ b/packages/heading/readme.md @@ -4,11 +4,10 @@
A block of heading text.

## Install diff --git a/packages/hr/readme.md b/packages/hr/readme.md index ee7a7f17ee..0587ae3a06 100644 --- a/packages/hr/readme.md +++ b/packages/hr/readme.md @@ -4,11 +4,10 @@
Display a divider that separates content areas in your email.

## Install diff --git a/packages/img/readme.md b/packages/img/readme.md index 7a27412f7b..6be90aca53 100644 --- a/packages/img/readme.md +++ b/packages/img/readme.md @@ -4,11 +4,10 @@
Display an image in your email.

## Install diff --git a/packages/link/readme.md b/packages/link/readme.md index b1806413d9..b29473923c 100644 --- a/packages/link/readme.md +++ b/packages/link/readme.md @@ -4,11 +4,10 @@
A hyperlink to web pages, email addresses, or anything else a URL can address.

## Install diff --git a/packages/preview-server/readme.md b/packages/preview-server/readme.md index 8539cb849e..26eaf3c1ec 100644 --- a/packages/preview-server/readme.md +++ b/packages/preview-server/readme.md @@ -2,11 +2,10 @@
A live preview of your emails right in your browser.

This package is used to store the preview server, it is also published and versioned so that it can be installed when the [CLI](../react-email) is being used. diff --git a/packages/preview/readme.md b/packages/preview/readme.md index b405e33958..fa1037812a 100644 --- a/packages/preview/readme.md +++ b/packages/preview/readme.md @@ -4,11 +4,10 @@
A preview text that will be displayed in the inbox of the recipient.

## Install diff --git a/packages/react-email/readme.md b/packages/react-email/readme.md index 4073ac1b03..fddaf4d820 100644 --- a/packages/react-email/readme.md +++ b/packages/react-email/readme.md @@ -4,11 +4,10 @@
The next generation of writing emails.
High-quality, unstyled components for creating emails.

## Getting started diff --git a/packages/render/readme.md b/packages/render/readme.md index 0c07eddf0f..c5412fe22b 100644 --- a/packages/render/readme.md +++ b/packages/render/readme.md @@ -4,11 +4,10 @@
Transform React components into HTML email templates.

## Install diff --git a/packages/section/readme.md b/packages/section/readme.md index fc7fc0c242..1384673d74 100644 --- a/packages/section/readme.md +++ b/packages/section/readme.md @@ -4,11 +4,10 @@
Display a section that can be formatted using columns.

## Install diff --git a/packages/text/readme.md b/packages/text/readme.md index d6667c6b45..c015111a42 100644 --- a/packages/text/readme.md +++ b/packages/text/readme.md @@ -4,11 +4,10 @@
A block of text separated by blank spaces.

## Install