Skip to content

feat(preview-server): darker resizing handles, placed around the preview instead of inside #2298

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

Open
wants to merge 58 commits into
base: canary
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
58 commits
Select commit Hold shift + click to select a range
76600dd
feat(tailwind): extract pseudo classes to stylesheet (#1864)
Sjoertjuh Feb 26, 2025
a1a767a
fix(tailwind): Infinite loop during sanitization
gabrielmfern Feb 27, 2025
4e589d4
chore(tailwind): Improve code for running Tailwind integration test (…
gabrielmfern Feb 27, 2025
2724630
chore: Enter pre-release
gabrielmfern Apr 8, 2025
f30230d
chore(root): Version packages (canary) (#2064)
github-actions[bot] Apr 8, 2025
3929662
fix(tailwind): linter (#2021)
bukinoshita Apr 9, 2025
2a3525f
chore(root): Version packages (canary) (#2087)
github-actions[bot] Apr 14, 2025
651878c
chore(root): Version packages (canary) (#2088)
github-actions[bot] Apr 15, 2025
a07bbeb
chore(root): Version packages (canary) (#2090)
github-actions[bot] Apr 15, 2025
f3df95b
chore(root): Version packages (canary) (#2092)
github-actions[bot] Apr 16, 2025
4ba4860
chore(root): Version packages (canary) (#2096)
github-actions[bot] Apr 16, 2025
b4039d7
chore(root): Version packages (canary) (#2098)
github-actions[bot] Apr 16, 2025
3c59502
chore(root): Version packages (canary) (#2175)
github-actions[bot] Apr 21, 2025
fc411b6
chore(deps): update changesets/action digest to 5f15b43 (#2198)
renovate[bot] May 5, 2025
b007e76
chore(deps): update buildjet/cache digest to 9347ea1 (#2197)
renovate[bot] May 5, 2025
30d7fd3
chore(deps): update dependency vite to v6.3.4 [security] (#2196)
renovate[bot] May 5, 2025
4af9d3a
chore(root): Version packages (canary) (#2184)
github-actions[bot] May 5, 2025
eedf70a
Revert "chore(deps): update changesets/action digest to 5f15b43 (#2198)"
gabrielmfern May 5, 2025
231cfaf
chore(react-email): Pre-render email templates on hover (#2187)
gabrielmfern May 5, 2025
adc3cfa
chore(root): Add `minor` changeset for @react-email/components
gabrielmfern May 6, 2025
b38d05f
fix(render): reactDOMServer import on browser and some bundlers (#2221)
MendyLanda May 7, 2025
213cf34
chore(react-email): 'email: not found' error during CI after caching …
gabrielmfern May 7, 2025
ef19700
feat(react-email): Polished way of ensuring `email` binary is availab…
gabrielmfern May 7, 2025
5d41ac3
chore(root): Version packages (canary) (#2217)
github-actions[bot] May 7, 2025
bfa072e
chore(root): Version packages (canary) (#2233)
github-actions[bot] May 12, 2025
268baab
feat(button): respect the user's order of padding properties (#2234)
gabrielmfern May 12, 2025
1c6755f
feat(react-email): TypeScript's path aliases support for hot reloadin…
gabrielmfern May 12, 2025
db4d3a4
chore(root): Add changesets
gabrielmfern May 12, 2025
69360d6
chore(root): Improve changeset for components
gabrielmfern May 12, 2025
e755b87
chore(root): Version packages (canary) (#2236)
github-actions[bot] May 12, 2025
4d7f657
fix(react-email): prettier errors causing NextJS serialization error …
gabrielmfern May 16, 2025
b976ecf
chore(root): Version packages (canary) (#2238)
github-actions[bot] May 16, 2025
184521d
feat: Separate preview server from `react-email` (#2182)
gabrielmfern May 20, 2025
7e9716a
chore(root): Version packages (canary) (#2255)
github-actions[bot] May 20, 2025
2a2bd91
FIX: fix(types): correct typo in SupportEntryCategory type (#2260)
PedroMarianoAlmeida May 22, 2025
7ae0cb5
docs(readme): split build and run instructions for clarity (#2261)
PedroMarianoAlmeida May 26, 2025
b148bc7
chore(root): Update biome to beta.5 (#2264)
gabrielmfern May 26, 2025
20ceb3f
fix(preview-server): `<svg>` not being flagged by compatibility check…
PedroMarianoAlmeida May 27, 2025
c18f7ca
chore(root): Version packages (canary) (#2266)
github-actions[bot] May 27, 2025
7bbd3a6
fix(render): Browser version including errors in the output instead o…
gabrielmfern May 28, 2025
80e2ad8
chore(root): Version packages (canary) (#2269)
github-actions[bot] May 28, 2025
7e41504
chore(deps): bump next from 14.2.3 to 15.3.1 (#2244)
dependabot[bot] May 28, 2025
8ff8223
chore(deps): bump next from 14.2.3 to 15.3.2 (#2273)
dependabot[bot] Jun 2, 2025
9567192
feat(react-email, preview-server): fixed equal versions for both (#2277)
gabrielmfern Jun 3, 2025
c1a0462
chore(root): Version packages (canary) (#2278)
github-actions[bot] Jun 3, 2025
264d97b
fix(react-email): testing data
gabrielmfern Jun 3, 2025
97b5b58
chore(root): lint
gabrielmfern Jun 3, 2025
694d89a
feat(react-email): email-dev package for linking globally (#2258)
gabrielmfern Jun 6, 2025
001cfb4
fix(preview-server): hot reloading with collapsed directories (#2284)
gabrielmfern Jun 9, 2025
43d87af
chore(root): Ignore the `email-dev` private package
gabrielmfern Jun 9, 2025
a635c5e
chore(root): Version packages (canary) (#2286)
github-actions[bot] Jun 9, 2025
6da5c1f
fix(react-email): security issue with path for static files (#2289)
gabrielmfern Jun 10, 2025
5241991
fix(preview-server): forced `color-scheme: dark` (#2271)
gabrielmfern Jun 10, 2025
b94e72c
chore(deps): bump next from 14.2.3 to 15.3.2 (#2290)
dependabot[bot] Jun 10, 2025
0e664d0
chore(demo): use `email-dev` instead of `react-email` in commands (#2…
gabrielmfern Jun 10, 2025
addf436
chore(root): Version packages (canary) (#2291)
github-actions[bot] Jun 10, 2025
7f2e59b
feat(preview-server): darker resizing handles, placed around the prev…
gabrielmfern Jun 13, 2025
fd5ce33
add changeset
gabrielmfern Jun 13, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/afraid-sides-agree.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@react-email/preview-server": patch
---

fix `<svg>` not being flagged as incompatible
5 changes: 5 additions & 0 deletions .changeset/better-insects-like.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@react-email/preview-server": patch
---

fix the forced `color-scheme: dark` for the preview
6 changes: 6 additions & 0 deletions .changeset/common-goats-find.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
"@react-email/preview-server": patch
"react-email": patch
---

Use the same version for the preview-server and react-email
11 changes: 6 additions & 5 deletions .changeset/config.json
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
{
"$schema": "https://unpkg.com/@changesets/[email protected]/schema.json",
"changelog": "@changesets/cli/changelog",
"commit": false,
"linked": [],
"access": "public",
"baseBranch": "main",
"updateInternalDependencies": "patch",
"changelog": "@changesets/cli/changelog",
"commit": false,
"fixed": [["react-email", "@react-email/preview-server"]],
"ignore": [
"@benchmarks/preview-server",
"@benchmarks/tailwind-component",
"demo",
"email-dev",
"web"
]
],
"updateInternalDependencies": "patch"
}
5 changes: 5 additions & 0 deletions .changeset/crazy-seas-eat.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@react-email/components": minor
---

Update `@react-email/[email protected]`
5 changes: 5 additions & 0 deletions .changeset/deep-clowns-bet.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@react-email/render": patch
---

fix browser version including errors in the output instead of throwing them
5 changes: 5 additions & 0 deletions .changeset/great-parrots-yell.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@react-email/tailwind": minor
---

Extract tailwind pseudo classes to stylesheet
5 changes: 5 additions & 0 deletions .changeset/hungry-phones-lick.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@react-email/preview-server": patch
---

improved contrast for resizing handles, placed them around email template
5 changes: 5 additions & 0 deletions .changeset/kind-showers-exist.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"react-email": patch
---

fix static file serving security issue with logging
5 changes: 5 additions & 0 deletions .changeset/mighty-pigs-add.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"react-email": patch
---

Add support for hot reloading with tsconfig path aliases
5 changes: 5 additions & 0 deletions .changeset/petite-boxes-find.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@react-email/preview-server": patch
---

fix hot reloading with collapsed directories
53 changes: 53 additions & 0 deletions .changeset/pre.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
{
"mode": "pre",
"tag": "canary",
"initialVersions": {
"@benchmarks/preview-server": "0.0.0",
"@benchmarks/tailwind-component": "0.0.0",
"@react-email/body": "0.0.11",
"@react-email/button": "0.0.19",
"@react-email/code-block": "0.0.13",
"@react-email/code-inline": "0.0.5",
"@react-email/column": "0.0.13",
"@react-email/components": "0.0.42",
"@react-email/container": "0.0.15",
"@react-email/font": "0.0.9",
"@react-email/head": "0.0.12",
"@react-email/heading": "0.0.15",
"@react-email/hr": "0.0.11",
"@react-email/html": "0.0.11",
"@react-email/img": "0.0.11",
"@react-email/link": "0.0.12",
"@react-email/markdown": "0.0.15",
"@react-email/preview": "0.0.13",
"@react-email/render": "1.1.2",
"@react-email/row": "0.0.12",
"@react-email/section": "0.0.16",
"@react-email/tailwind": "1.0.5",
"@react-email/text": "0.1.5",
"create-email": "1.2.1",
"demo": "0.0.0",
"docs": "0.0.0",
"react-email": "4.0.16",
"tsconfig": "0.0.0",
"web": "0.0.0",
"@react-email/preview-server": "4.1.0-canary.10",
"email-dev": "0.0.0"
},
"changesets": [
"afraid-sides-agree",
"better-insects-like",
"common-goats-find",
"crazy-seas-eat",
"deep-clowns-bet",
"great-parrots-yell",
"kind-showers-exist",
"mighty-pigs-add",
"petite-boxes-find",
"puny-chicken-argue",
"stupid-ghosts-decide",
"tasty-swans-taste",
"tidy-geese-cross",
"tiny-rice-give"
]
}
5 changes: 5 additions & 0 deletions .changeset/puny-chicken-argue.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"react-email": minor
---

use a separate package for storing the preview server (@react-email/preview-server)
5 changes: 5 additions & 0 deletions .changeset/stupid-ghosts-decide.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"react-email": patch
---

Fix prettier errors causing NextJS serialization error
5 changes: 5 additions & 0 deletions .changeset/tasty-swans-taste.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@react-email/components": minor
---

Updated @react-email/[email protected]
5 changes: 5 additions & 0 deletions .changeset/tidy-geese-cross.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"react-email": patch
---

Pre-render email templates on hover
5 changes: 5 additions & 0 deletions .changeset/tiny-rice-give.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@react-email/button": minor
---

respect the order in which padding properties are defined
2 changes: 1 addition & 1 deletion .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda
- name: pnpm Cache
id: pnpm-cache
uses: buildjet/cache@3e70d19e31d6a8030aeddf6ed8dbe601f94d09f4
uses: buildjet/cache@9347ea1c7c1f331d397aa98b3894420448373372
with:
path: |
~/.pnpm-store
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/preview-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda
- name: pnpm Cache
id: pnpm-cache
uses: buildjet/cache@3e70d19e31d6a8030aeddf6ed8dbe601f94d09f4
uses: buildjet/cache@9347ea1c7c1f331d397aa98b3894420448373372
with:
path: |
~/.pnpm-store
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release-canary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
corepack prepare [email protected] --activate
pnpm config set script-shell "/usr/bin/bash"
- name: pnpm Cache
uses: buildjet/cache@3e70d19e31d6a8030aeddf6ed8dbe601f94d09f4
uses: buildjet/cache@9347ea1c7c1f331d397aa98b3894420448373372
with:
path: |
~/.pnpm-store
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda
- name: pnpm Cache
id: pnpm-cache
uses: buildjet/cache@3e70d19e31d6a8030aeddf6ed8dbe601f94d09f4
uses: buildjet/cache@9347ea1c7c1f331d397aa98b3894420448373372
with:
path: |
~/.pnpm-store
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/version.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda
- name: pnpm Cache
id: pnpm-cache
uses: buildjet/cache@3e70d19e31d6a8030aeddf6ed8dbe601f94d09f4
uses: buildjet/cache@9347ea1c7c1f331d397aa98b3894420448373372
with:
path: |
~/.pnpm-store
Expand Down
8 changes: 7 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,13 @@ All components were tested using the most popular email clients.
pnpm install
```

#### Build and run packages
#### Build

```sh
pnpm build
```

#### Run packages

```sh
pnpm dev
Expand Down
13 changes: 7 additions & 6 deletions apps/demo/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,20 @@
"version": "0.0.0",
"private": true,
"scripts": {
"build": "email build",
"dev": "email dev",
"start": "email start",
"export": "email export"
"build": "email-dev build",
"dev": "email-dev dev",
"start": "email-dev start",
"export": "email-dev export"
},
"dependencies": {
"@react-email/components": "workspace:*",
"react": "^19",
"react-dom": "^19",
"react-email": "workspace:*"
"email-dev": "workspace:*"
},
"devDependencies": {
"next": "15.3.1",
"@react-email/preview-server": "workspace:*",
"next": "^15.3.2",
"@types/react": "^19",
"@types/react-dom": "^19",
"tsx": "4.19.3"
Expand Down
2 changes: 1 addition & 1 deletion apps/web/components/customer-reviews/tailwind.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ export const component = (
</Text>
<Button
href="#"
className="mt-[26px] mb-[24px] inline-block w-full rounded-[8px] bg-indigo-600 p-3 text-center box-border font-semibold text-white"
className="mt-[26px] mb-[24px] inline-block w-full rounded-[8px] bg-indigo-600 p-[12px] text-center box-border font-semibold text-white"
>
Write a review
</Button>
Expand Down
2 changes: 1 addition & 1 deletion apps/web/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
"@vercel/analytics": "1.5.0",
"framer-motion": "12.7.4",
"lucide-react": "^0.492.0",
"next": "15.3.1",
"next": "15.3.2",
"prism-react-renderer": "2.4.1",
"react": "^19",
"react-dom": "^19",
Expand Down
2 changes: 1 addition & 1 deletion apps/web/src/components/template.tsx
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
'use client';

import classNames from 'classnames';
import Image from 'next/image';
import type { ImageLoader } from 'next/image';
import Image from 'next/image';
import Link from 'next/link';
import * as React from 'react';
import { Heading } from './heading';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ export const parsePointingTableRows = (response: string) => {
const responseFromTableStart = response.slice(
tableStartMatch.index + tableStartMatch[0].length,
);
let currentRow: Row | undefined = undefined;
let currentRow: Row | undefined;
for (const line of responseFromTableStart.split(/\r\n|\n|\r/)) {
if (line.trim().length === 0) break;

Expand Down
7 changes: 4 additions & 3 deletions biome.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"$schema": "https://biomejs.dev/schemas/2.0.0-beta.1/schema.json",
"$schema": "https://biomejs.dev/schemas/2.0.0-beta.5/schema.json",
"assist": {
"actions": {
"source": {
Expand Down Expand Up @@ -31,7 +31,6 @@
"noCommaOperator": "error",
"useNodejsImportProtocol": "error",
"useAsConstAssertion": "error",
"useNumericLiterals": "error",
"useEnumInitializers": "error",
"useSelfClosingElements": "error",
"useConst": "error",
Expand All @@ -54,6 +53,7 @@
"noDelete": "off"
},
"a11y": {
"noStaticElementInteractions": "off",
"noSvgWithoutTitle": "off",
"noAutofocus": "off"
},
Expand All @@ -67,6 +67,7 @@
"useSortedClasses": "off"
},
"complexity": {
"useNumericLiterals": "error",
"noUselessFragments": "off",
"noForEach": "off"
},
Expand All @@ -87,7 +88,7 @@
"!**/pnpm-lock.yaml",
"!**/.next",
"!**/public",
"!packages/react-email/src/actions/email-validation/caniemail-data.ts",
"!packages/preview-server/src/actions/email-validation/caniemail-data.ts",
"!**/.react-email/**/*",
"!**/node_modules/**/*",
"!**/*.d.ts",
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
"test:watch": "turbo run test:watch"
},
"devDependencies": {
"@biomejs/biome": "2.0.0-beta.1",
"@biomejs/biome": "2.0.0-beta.5",
"@changesets/cli": "2.29.4",
"@types/node": "22.14.1",
"@types/react": "19.0.1",
Expand Down
6 changes: 6 additions & 0 deletions packages/button/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
# @react-email/button

## 0.1.0-canary.0

### Minor Changes

- 11c4600: respect the order in which padding properties are defined

## 0.0.19

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion packages/button/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@react-email/button",
"version": "0.0.19",
"version": "0.1.0-canary.0",
"description": "A link that is styled to look like a button",
"sideEffects": false,
"main": "./dist/index.js",
Expand Down
6 changes: 3 additions & 3 deletions packages/button/src/__snapshots__/button.spec.tsx.snap
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html

exports[`<Button> component > renders correctly with padding values from style prop 1`] = `"<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><!--$--><a href="https://example.com" style="line-height:100%;text-decoration:none;display:inline-block;max-width:100%;mso-padding-alt:0px;padding:12px 20px 12px 20px" target="_blank"><span><!--[if mso]><i style="mso-font-width:500%;mso-text-raise:18" hidden>&#8202;&#8202;</i><![endif]--></span><span style="max-width:100%;display:inline-block;line-height:120%;mso-padding-alt:0px;mso-text-raise:9px"></span><span><!--[if mso]><i style="mso-font-width:500%" hidden>&#8202;&#8202;&#8203;</i><![endif]--></span></a><!--/$-->"`;
exports[`<Button> component > renders correctly with padding values from style prop 1`] = `"<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><!--$--><a href="https://example.com" style="line-height:100%;text-decoration:none;display:inline-block;max-width:100%;mso-padding-alt:0px;padding:12px 20px;padding-top:12px;padding-right:20px;padding-bottom:12px;padding-left:20px" target="_blank"><span><!--[if mso]><i style="mso-font-width:500%;mso-text-raise:18" hidden>&#8202;&#8202;</i><![endif]--></span><span style="max-width:100%;display:inline-block;line-height:120%;mso-padding-alt:0px;mso-text-raise:9px"></span><span><!--[if mso]><i style="mso-font-width:500%" hidden>&#8202;&#8202;&#8203;</i><![endif]--></span></a><!--/$-->"`;

exports[`<Button> component > renders the <Button> component with no padding value 1`] = `"<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><!--$--><a href="https://example.com" style="line-height:100%;text-decoration:none;display:inline-block;max-width:100%;mso-padding-alt:0px;padding:0px 0px 0px 0px" target="_blank"><span><!--[if mso]><i style="mso-font-width:0%;mso-text-raise:0" hidden></i><![endif]--></span><span style="max-width:100%;display:inline-block;line-height:120%;mso-padding-alt:0px;mso-text-raise:0"></span><span><!--[if mso]><i style="mso-font-width:0%" hidden>&#8203;</i><![endif]--></span></a><!--/$-->"`;
exports[`<Button> component > renders the <Button> component with no padding value 1`] = `"<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><!--$--><a href="https://example.com" style="line-height:100%;text-decoration:none;display:inline-block;max-width:100%;mso-padding-alt:0px" target="_blank"><span><!--[if mso]><i style="mso-font-width:0%;mso-text-raise:0" hidden></i><![endif]--></span><span style="max-width:100%;display:inline-block;line-height:120%;mso-padding-alt:0px"></span><span><!--[if mso]><i style="mso-font-width:0%" hidden>&#8203;</i><![endif]--></span></a><!--/$-->"`;

exports[`<Button> component > should allow users to overwrite style props 1`] = `"<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><!--$--><a style="line-height:150%;text-decoration:underline red;display:block;max-width:50%;mso-padding-alt:0px;padding:0px 0px 0px 0px" target="_blank"><span><!--[if mso]><i style="mso-font-width:0%;mso-text-raise:0" hidden></i><![endif]--></span><span style="max-width:100%;display:inline-block;line-height:120%;mso-padding-alt:0px;mso-text-raise:0"></span><span><!--[if mso]><i style="mso-font-width:0%" hidden>&#8203;</i><![endif]--></span></a><!--/$-->"`;
exports[`<Button> component > should allow users to overwrite style props 1`] = `"<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><!--$--><a style="line-height:150%;text-decoration:underline red;display:block;max-width:50%;mso-padding-alt:0px" target="_blank"><span><!--[if mso]><i style="mso-font-width:0%;mso-text-raise:0" hidden></i><![endif]--></span><span style="max-width:100%;display:inline-block;line-height:120%;mso-padding-alt:0px"></span><span><!--[if mso]><i style="mso-font-width:0%" hidden>&#8203;</i><![endif]--></span></a><!--/$-->"`;
Loading
Loading