react-email 4.1.0-canary.0 → 4.1.0-canary.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (287) hide show
  1. package/CHANGELOG.md +135 -0
  2. package/dev/index.js +40 -0
  3. package/dev/package.json +13 -0
  4. package/dist/{cli/index.mjs → index.js} +601 -491
  5. package/package.json +29 -64
  6. package/readme.md +16 -0
  7. package/src/commands/build.ts +306 -0
  8. package/src/commands/dev.ts +27 -0
  9. package/src/commands/export.ts +204 -0
  10. package/src/commands/start.ts +38 -0
  11. package/src/index.ts +55 -0
  12. package/src/utils/__snapshots__/tree.spec.ts.snap +27 -0
  13. package/src/utils/esbuild/renderring-utilities-exporter.ts +1 -1
  14. package/src/utils/get-emails-directory-metadata.spec.ts +1 -1
  15. package/src/utils/get-emails-directory-metadata.ts +24 -13
  16. package/src/utils/get-preview-server-location.ts +51 -0
  17. package/src/utils/index.ts +2 -6
  18. package/src/utils/packageJson.ts +4 -0
  19. package/src/utils/preview/get-env-variables-for-preview-app.ts +14 -0
  20. package/src/utils/preview/hot-reloading/create-dependency-graph.spec.ts +284 -0
  21. package/src/utils/preview/hot-reloading/create-dependency-graph.ts +321 -0
  22. package/src/utils/preview/hot-reloading/get-imported-modules.spec.ts +151 -0
  23. package/src/utils/preview/hot-reloading/get-imported-modules.ts +49 -0
  24. package/src/utils/preview/hot-reloading/resolve-path-aliases.spec.ts +11 -0
  25. package/src/utils/preview/hot-reloading/resolve-path-aliases.ts +32 -0
  26. package/src/utils/preview/hot-reloading/setup-hot-reloading.ts +121 -0
  27. package/src/utils/preview/hot-reloading/test/tsconfig.json +8 -0
  28. package/src/utils/preview/index.ts +2 -0
  29. package/src/utils/preview/serve-static-file.ts +52 -0
  30. package/src/utils/preview/start-dev-server.ts +234 -0
  31. package/src/utils/tree.spec.ts +5 -0
  32. package/src/utils/tree.ts +76 -0
  33. package/src/utils/types/hot-reload-change.ts +1 -1
  34. package/src/utils/types/hot-reload-event.ts +1 -1
  35. package/tsconfig.json +4 -10
  36. package/dist/cli/index.d.mts +0 -1
  37. package/dist/cli/index.d.ts +0 -1
  38. package/dist/cli/index.js +0 -1313
  39. package/dist/preview/.next/BUILD_ID +0 -1
  40. package/dist/preview/.next/app-build-manifest.json +0 -44
  41. package/dist/preview/.next/app-path-routes-manifest.json +0 -6
  42. package/dist/preview/.next/build-manifest.json +0 -33
  43. package/dist/preview/.next/diagnostics/build-diagnostics.json +0 -6
  44. package/dist/preview/.next/diagnostics/framework.json +0 -1
  45. package/dist/preview/.next/export-marker.json +0 -6
  46. package/dist/preview/.next/images-manifest.json +0 -57
  47. package/dist/preview/.next/next-minimal-server.js.nft.json +0 -1
  48. package/dist/preview/.next/next-server.js.nft.json +0 -1
  49. package/dist/preview/.next/package.json +0 -1
  50. package/dist/preview/.next/prerender-manifest.json +0 -41
  51. package/dist/preview/.next/react-loadable-manifest.json +0 -1
  52. package/dist/preview/.next/required-server-files.json +0 -310
  53. package/dist/preview/.next/routes-manifest.json +0 -64
  54. package/dist/preview/.next/server/app/_not-found/page.js +0 -1
  55. package/dist/preview/.next/server/app/_not-found/page.js.nft.json +0 -1
  56. package/dist/preview/.next/server/app/_not-found/page_client-reference-manifest.js +0 -1
  57. package/dist/preview/.next/server/app/favicon.ico/route.js +0 -1
  58. package/dist/preview/.next/server/app/favicon.ico/route.js.nft.json +0 -1
  59. package/dist/preview/.next/server/app/favicon.ico.body +0 -0
  60. package/dist/preview/.next/server/app/favicon.ico.meta +0 -1
  61. package/dist/preview/.next/server/app/page.js +0 -1
  62. package/dist/preview/.next/server/app/page.js.nft.json +0 -1
  63. package/dist/preview/.next/server/app/page_client-reference-manifest.js +0 -1
  64. package/dist/preview/.next/server/app/preview/[...slug]/page.js +0 -259
  65. package/dist/preview/.next/server/app/preview/[...slug]/page.js.nft.json +0 -1
  66. package/dist/preview/.next/server/app/preview/[...slug]/page_client-reference-manifest.js +0 -1
  67. package/dist/preview/.next/server/app-paths-manifest.json +0 -6
  68. package/dist/preview/.next/server/chunks/395.js +0 -1
  69. package/dist/preview/.next/server/chunks/574.js +0 -6
  70. package/dist/preview/.next/server/chunks/71.js +0 -1
  71. package/dist/preview/.next/server/chunks/735.js +0 -13
  72. package/dist/preview/.next/server/chunks/840.js +0 -14
  73. package/dist/preview/.next/server/chunks/886.js +0 -8
  74. package/dist/preview/.next/server/functions-config-manifest.json +0 -4
  75. package/dist/preview/.next/server/interception-route-rewrite-manifest.js +0 -1
  76. package/dist/preview/.next/server/middleware-build-manifest.js +0 -1
  77. package/dist/preview/.next/server/middleware-manifest.json +0 -6
  78. package/dist/preview/.next/server/middleware-react-loadable-manifest.js +0 -1
  79. package/dist/preview/.next/server/next-font-manifest.js +0 -1
  80. package/dist/preview/.next/server/next-font-manifest.json +0 -1
  81. package/dist/preview/.next/server/pages/500.html +0 -1
  82. package/dist/preview/.next/server/pages/_app.js +0 -1
  83. package/dist/preview/.next/server/pages/_app.js.nft.json +0 -1
  84. package/dist/preview/.next/server/pages/_document.js +0 -1
  85. package/dist/preview/.next/server/pages/_document.js.nft.json +0 -1
  86. package/dist/preview/.next/server/pages/_error.js +0 -1
  87. package/dist/preview/.next/server/pages/_error.js.nft.json +0 -1
  88. package/dist/preview/.next/server/pages-manifest.json +0 -5
  89. package/dist/preview/.next/server/server-reference-manifest.js +0 -1
  90. package/dist/preview/.next/server/server-reference-manifest.json +0 -1
  91. package/dist/preview/.next/server/webpack-runtime.js +0 -1
  92. package/dist/preview/.next/static/B5zsyvs_AWXezvTSi2Eyl/_buildManifest.js +0 -1
  93. package/dist/preview/.next/static/B5zsyvs_AWXezvTSi2Eyl/_ssgManifest.js +0 -1
  94. package/dist/preview/.next/static/chunks/246-e7336e2929971f63.js +0 -1
  95. package/dist/preview/.next/static/chunks/270-688096d43c717256.js +0 -1
  96. package/dist/preview/.next/static/chunks/539-6e9405ecdc007bb7.js +0 -1
  97. package/dist/preview/.next/static/chunks/587-e77ff7eb4b703903.js +0 -1
  98. package/dist/preview/.next/static/chunks/782947c8-c6cfd05e68542601.js +0 -1
  99. package/dist/preview/.next/static/chunks/803-db74f262c4755323.js +0 -1
  100. package/dist/preview/.next/static/chunks/853-a01d49f63a859f3d.js +0 -1
  101. package/dist/preview/.next/static/chunks/afa401a5-55858bf5265319eb.js +0 -6
  102. package/dist/preview/.next/static/chunks/app/_not-found/page-85e83b2d4bd569a2.js +0 -1
  103. package/dist/preview/.next/static/chunks/app/layout-0f9706a93f161c1e.js +0 -1
  104. package/dist/preview/.next/static/chunks/app/page-0ee3a37f3a3f6f17.js +0 -1
  105. package/dist/preview/.next/static/chunks/app/preview/[...slug]/page-5fba95d740305052.js +0 -1
  106. package/dist/preview/.next/static/chunks/framework-b5f555f62da46ed9.js +0 -1
  107. package/dist/preview/.next/static/chunks/main-a839e2fbd78a08fa.js +0 -1
  108. package/dist/preview/.next/static/chunks/main-app-a6a05ec7ce09e366.js +0 -1
  109. package/dist/preview/.next/static/chunks/pages/_app-ee26b5d329c4bb79.js +0 -1
  110. package/dist/preview/.next/static/chunks/pages/_error-90cb3f6367e28bcd.js +0 -1
  111. package/dist/preview/.next/static/chunks/polyfills-42372ed130431b0a.js +0 -1
  112. package/dist/preview/.next/static/chunks/webpack-6755bde10ea8daa8.js +0 -1
  113. package/dist/preview/.next/static/css/67e57230289273a9.css +0 -3
  114. package/dist/preview/.next/static/media/05613964ce6c782e-s.p.otf +0 -0
  115. package/dist/preview/.next/static/media/11c6126b9369e85e-s.p.otf +0 -0
  116. package/dist/preview/.next/static/media/26a46d62cd723877-s.woff2 +0 -0
  117. package/dist/preview/.next/static/media/26cb97734d8cb717-s.p.otf +0 -0
  118. package/dist/preview/.next/static/media/55c55f0601d81cf3-s.woff2 +0 -0
  119. package/dist/preview/.next/static/media/581909926a08bbc8-s.woff2 +0 -0
  120. package/dist/preview/.next/static/media/6d93bde91c0c2823-s.woff2 +0 -0
  121. package/dist/preview/.next/static/media/97e0cb1ae144a2a9-s.woff2 +0 -0
  122. package/dist/preview/.next/static/media/a34f9d1faa5f3315-s.p.woff2 +0 -0
  123. package/dist/preview/.next/static/media/bb6462617151f6b7-s.p.otf +0 -0
  124. package/dist/preview/.next/static/media/cf6daef822ab0142-s.p.otf +0 -0
  125. package/dist/preview/.next/static/media/df0a9ae256c0569c-s.woff2 +0 -0
  126. package/dist/preview/.next/static/media/e4051546b3043204-s.p.otf +0 -0
  127. package/dist/preview/.next/static/media/logo.2ce2a759.png +0 -0
  128. package/dist/preview/.next/trace +0 -27
  129. package/dist/preview/.next/types/app/layout.ts +0 -84
  130. package/dist/preview/.next/types/app/page.ts +0 -84
  131. package/dist/preview/.next/types/app/preview/[...slug]/page.ts +0 -84
  132. package/dist/preview/.next/types/cache-life.d.ts +0 -141
  133. package/dist/preview/.next/types/package.json +0 -1
  134. package/module-punycode.d.ts +0 -3
  135. package/next-env.d.ts +0 -5
  136. package/next.config.js +0 -22
  137. package/postcss.config.js +0 -8
  138. package/scripts/build-preview-server.mjs +0 -33
  139. package/scripts/fill-caniemail-data.mjs +0 -36
  140. package/src/actions/email-validation/caniemail-data.ts +0 -85993
  141. package/src/actions/email-validation/check-compatibility.ts +0 -333
  142. package/src/actions/email-validation/check-images.spec.tsx +0 -100
  143. package/src/actions/email-validation/check-images.ts +0 -160
  144. package/src/actions/email-validation/check-links.spec.tsx +0 -113
  145. package/src/actions/email-validation/check-links.ts +0 -113
  146. package/src/actions/email-validation/get-code-location-from-ast-element.ts +0 -18
  147. package/src/actions/email-validation/quick-fetch.ts +0 -14
  148. package/src/actions/get-email-path-from-slug.ts +0 -32
  149. package/src/actions/get-emails-directory-metadata-action.ts +0 -19
  150. package/src/actions/render-email-by-path.tsx +0 -121
  151. package/src/animated-icons-data/help.json +0 -1082
  152. package/src/animated-icons-data/link.json +0 -1309
  153. package/src/animated-icons-data/load.json +0 -443
  154. package/src/animated-icons-data/mail.json +0 -1320
  155. package/src/app/env.ts +0 -15
  156. package/src/app/favicon.ico +0 -0
  157. package/src/app/fonts/SFMono/SFMonoBold.otf +0 -0
  158. package/src/app/fonts/SFMono/SFMonoBoldItalic.otf +0 -0
  159. package/src/app/fonts/SFMono/SFMonoHeavy.otf +0 -0
  160. package/src/app/fonts/SFMono/SFMonoHeavyItalic.otf +0 -0
  161. package/src/app/fonts/SFMono/SFMonoLight.otf +0 -0
  162. package/src/app/fonts/SFMono/SFMonoLightItalic.otf +0 -0
  163. package/src/app/fonts/SFMono/SFMonoMedium.otf +0 -0
  164. package/src/app/fonts/SFMono/SFMonoMediumItalic.otf +0 -0
  165. package/src/app/fonts/SFMono/SFMonoRegular.otf +0 -0
  166. package/src/app/fonts/SFMono/SFMonoRegularItalic.otf +0 -0
  167. package/src/app/fonts/SFMono/SFMonoSemibold.otf +0 -0
  168. package/src/app/fonts/SFMono/SFMonoSemiboldItalic.otf +0 -0
  169. package/src/app/fonts.ts +0 -39
  170. package/src/app/globals.css +0 -15
  171. package/src/app/layout.tsx +0 -45
  172. package/src/app/logo.png +0 -0
  173. package/src/app/page.tsx +0 -46
  174. package/src/app/preview/[...slug]/page.tsx +0 -157
  175. package/src/app/preview/[...slug]/preview.tsx +0 -234
  176. package/src/app/preview/[...slug]/rendering-error.tsx +0 -40
  177. package/src/components/button.tsx +0 -101
  178. package/src/components/code-container.tsx +0 -164
  179. package/src/components/code-snippet.tsx +0 -9
  180. package/src/components/code.tsx +0 -184
  181. package/src/components/heading.tsx +0 -113
  182. package/src/components/icons/icon-arrow-down.tsx +0 -16
  183. package/src/components/icons/icon-base.tsx +0 -26
  184. package/src/components/icons/icon-bug.tsx +0 -19
  185. package/src/components/icons/icon-button.tsx +0 -23
  186. package/src/components/icons/icon-check.tsx +0 -19
  187. package/src/components/icons/icon-clipboard.tsx +0 -40
  188. package/src/components/icons/icon-download.tsx +0 -19
  189. package/src/components/icons/icon-email.tsx +0 -18
  190. package/src/components/icons/icon-file.tsx +0 -19
  191. package/src/components/icons/icon-folder-open.tsx +0 -19
  192. package/src/components/icons/icon-folder.tsx +0 -18
  193. package/src/components/icons/icon-hide-sidebar.tsx +0 -23
  194. package/src/components/icons/icon-image.tsx +0 -19
  195. package/src/components/icons/icon-info.tsx +0 -18
  196. package/src/components/icons/icon-link.tsx +0 -14
  197. package/src/components/icons/icon-monitor.tsx +0 -19
  198. package/src/components/icons/icon-moon.tsx +0 -16
  199. package/src/components/icons/icon-phone.tsx +0 -26
  200. package/src/components/icons/icon-reload.tsx +0 -18
  201. package/src/components/icons/icon-source.tsx +0 -19
  202. package/src/components/icons/icon-stamp.tsx +0 -14
  203. package/src/components/icons/icon-sun.tsx +0 -16
  204. package/src/components/icons/icon-warning.tsx +0 -31
  205. package/src/components/index.ts +0 -7
  206. package/src/components/logo.tsx +0 -63
  207. package/src/components/resizable-wrapper.tsx +0 -173
  208. package/src/components/send.tsx +0 -134
  209. package/src/components/shell.tsx +0 -92
  210. package/src/components/sidebar/file-tree-directory-children.tsx +0 -134
  211. package/src/components/sidebar/file-tree-directory.tsx +0 -92
  212. package/src/components/sidebar/file-tree.tsx +0 -31
  213. package/src/components/sidebar/index.ts +0 -1
  214. package/src/components/sidebar/sidebar.tsx +0 -43
  215. package/src/components/text.tsx +0 -99
  216. package/src/components/toolbar/checking-results.tsx +0 -150
  217. package/src/components/toolbar/code-preview-line-link.tsx +0 -40
  218. package/src/components/toolbar/compatibility.tsx +0 -113
  219. package/src/components/toolbar/linter.tsx +0 -278
  220. package/src/components/toolbar/results.tsx +0 -51
  221. package/src/components/toolbar/spam-assassin.tsx +0 -155
  222. package/src/components/toolbar/toolbar-button.tsx +0 -52
  223. package/src/components/toolbar/use-cached-state.ts +0 -33
  224. package/src/components/toolbar.tsx +0 -348
  225. package/src/components/tooltip-content.tsx +0 -31
  226. package/src/components/tooltip.tsx +0 -19
  227. package/src/components/topbar/active-view-toggle-group.tsx +0 -86
  228. package/src/components/topbar/theme-toggle-group.tsx +0 -87
  229. package/src/components/topbar/view-size-controls.tsx +0 -247
  230. package/src/components/topbar.tsx +0 -59
  231. package/src/contexts/emails.tsx +0 -61
  232. package/src/contexts/fragment-identifier.tsx +0 -46
  233. package/src/contexts/preview.tsx +0 -81
  234. package/src/hooks/use-clamped-state.ts +0 -24
  235. package/src/hooks/use-email-rendering-result.ts +0 -45
  236. package/src/hooks/use-fragment-identifier.ts +0 -14
  237. package/src/hooks/use-hot-reload.ts +0 -31
  238. package/src/hooks/use-icon-animation.ts +0 -41
  239. package/src/hooks/use-iframe-color-scheme.ts +0 -35
  240. package/src/hooks/use-rendering-metadata.ts +0 -36
  241. package/src/utils/__snapshots__/get-email-component.spec.ts.snap +0 -3
  242. package/src/utils/caniemail/all-css-properties.ts +0 -358
  243. package/src/utils/caniemail/ast/__snapshots__/get-object-variables.spec.ts.snap +0 -74
  244. package/src/utils/caniemail/ast/__snapshots__/get-used-style-properties.spec.ts.snap +0 -24
  245. package/src/utils/caniemail/ast/get-object-variables.spec.ts +0 -19
  246. package/src/utils/caniemail/ast/get-object-variables.ts +0 -61
  247. package/src/utils/caniemail/ast/get-used-style-properties.spec.ts +0 -23
  248. package/src/utils/caniemail/ast/get-used-style-properties.ts +0 -91
  249. package/src/utils/caniemail/get-compatibility-stats-for-entry.ts +0 -118
  250. package/src/utils/caniemail/get-css-functions.ts +0 -25
  251. package/src/utils/caniemail/get-css-property-names.ts +0 -32
  252. package/src/utils/caniemail/get-css-property-with-value.ts +0 -14
  253. package/src/utils/caniemail/get-css-unit.ts +0 -3
  254. package/src/utils/caniemail/get-element-attributes.ts +0 -7
  255. package/src/utils/caniemail/get-element-names.ts +0 -20
  256. package/src/utils/caniemail/tailwind/generate-tailwind-rules.ts +0 -30
  257. package/src/utils/caniemail/tailwind/get-tailwind-config.ts +0 -187
  258. package/src/utils/caniemail/tailwind/get-tailwind-metadata.spec.ts +0 -25
  259. package/src/utils/caniemail/tailwind/get-tailwind-metadata.ts +0 -45
  260. package/src/utils/caniemail/tailwind/setup-tailwind-context.ts +0 -15
  261. package/src/utils/cn.ts +0 -6
  262. package/src/utils/constants.ts +0 -6
  263. package/src/utils/copy-text-to-clipboard.ts +0 -7
  264. package/src/utils/get-email-component.spec.ts +0 -41
  265. package/src/utils/get-email-component.ts +0 -119
  266. package/src/utils/get-line-and-column-from-offset.spec.ts +0 -11
  267. package/src/utils/get-line-and-column-from-offset.ts +0 -11
  268. package/src/utils/improve-error-with-sourcemap.ts +0 -86
  269. package/src/utils/js-email-detection.spec.ts +0 -24
  270. package/src/utils/language-map.ts +0 -7
  271. package/src/utils/linting.ts +0 -60
  272. package/src/utils/load-stream.ts +0 -15
  273. package/src/utils/result.ts +0 -49
  274. package/src/utils/run-bundled-code.ts +0 -64
  275. package/src/utils/sanitize.ts +0 -6
  276. package/src/utils/static-node-modules-for-vm.ts +0 -93
  277. package/src/utils/testing/js-email-export-default.js +0 -17
  278. package/src/utils/testing/js-email-test.js +0 -18
  279. package/src/utils/testing/mdx-email-test.js +0 -128
  280. package/src/utils/testing/request-response-email.tsx +0 -9
  281. package/src/utils/types/as.ts +0 -26
  282. package/src/utils/types/email-template.ts +0 -8
  283. package/src/utils/types/error-object.ts +0 -11
  284. package/src/utils/unreachable.ts +0 -8
  285. package/tailwind-internals.d.ts +0 -133
  286. package/tailwind.config.ts +0 -98
  287. /package/src/{components/toolbar/results-table.tsx → utils/preview/hot-reloading/test/some-file.ts} +0 -0
package/CHANGELOG.md CHANGED
@@ -1,11 +1,146 @@
1
1
  # react-email
2
2
 
3
+ ## 4.1.0-canary.11
4
+
5
+ ### Patch Changes
6
+
7
+ - 19d4b45: fix static file serving security issue with logging
8
+
9
+ ## 4.1.0-canary.10
10
+
11
+ ## 4.1.0-canary.9
12
+
13
+ ### Patch Changes
14
+
15
+ - 40fb596: Use the same version for the preview-server and react-email
16
+
17
+ ## 4.1.0-canary.8
18
+
19
+ ### Minor Changes
20
+
21
+ - ed2f46a: use a separate package for storing the preview server (@react-email/preview-server)
22
+
23
+ ## 4.1.0-canary.7
24
+
25
+ ### Patch Changes
26
+
27
+ - f00aff6: Fix prettier errors causing NextJS serialization error
28
+
29
+ ## 4.1.0-canary.6
30
+
31
+ ### Patch Changes
32
+
33
+ - 11c4600: Add support for hot reloading with tsconfig path aliases
34
+
35
+ ## 4.1.0-canary.5
36
+
37
+ ### Patch Changes
38
+
39
+ - b947f98: Pre-render email templates on hover
40
+
41
+ ## 4.1.0-canary.4
42
+
43
+ ### Patch Changes
44
+
45
+ - 5c6150d: Add .json import support for hot reloading
46
+ - aae2f59: Ensure dependencies outside emails directory are completely resolved
47
+ - b4b2373: Fix non-email files being rendered during hot reloading
48
+
49
+ ## 4.1.0-canary.3
50
+
51
+ ### Patch Changes
52
+
53
+ - 681d4ed: fix backwards compatibility with `render` versions
54
+
55
+ ## 4.1.0-canary.2
56
+
57
+ ### Patch Changes
58
+
59
+ - 9b1adb0: Use range of versions for dependencies
60
+
61
+ ## 4.1.0-canary.1
62
+
63
+ ### Patch Changes
64
+
65
+ - a587e17: Fix dependent of dependents not causing hot reloads
66
+ - dbf3a64: Add error message for when an email template does not have a default export
67
+
3
68
  ## 4.1.0-canary.0
4
69
 
5
70
  ### Minor Changes
6
71
 
7
72
  - 4a0d4e3: Theme switcher for email template
8
73
 
74
+ ## 4.0.16
75
+
76
+ ### Patch Changes
77
+
78
+ - 1340a0a: fix mobile's sidebar broken in the preview server
79
+
80
+ ## 4.0.15
81
+
82
+ ### Patch Changes
83
+
84
+ - 812c551: fix preview server's background gradient interferring with the user's colors
85
+
86
+ ## 4.0.14
87
+
88
+ ### Patch Changes
89
+
90
+ - b57f866: fix hot reloading with directories at least two levels deep
91
+
92
+ ## 4.0.13
93
+
94
+ ### Patch Changes
95
+
96
+ - 8e4afce: fix hot reloading support for users with `NodeNext`-style imports
97
+
98
+ ## 4.0.12
99
+
100
+ ### Patch Changes
101
+
102
+ - aa518a3: Add an explicit error when running Node <= 17
103
+
104
+ ## 4.0.11
105
+
106
+ ### Patch Changes
107
+
108
+ - 1a17219: fix improper `require` in `email export`
109
+ - 45ab698: update next to 15.3.1
110
+
111
+ ## 4.0.10
112
+
113
+ ### Patch Changes
114
+
115
+ - 5ef9fe8: fix support for `import ... = require(...)` syntax
116
+ - 4c7f597: fix `email dev` not working with `traversal` error
117
+
118
+ ## 4.0.9
119
+
120
+ ### Patch Changes
121
+
122
+ - 643d841: Add .json import support for hot reloading
123
+ - f21a983: fix Node 18 support
124
+ - cd02449: Ensure dependencies outside emails directory are completely resolved
125
+ - 73a31ed: Fix dependent of dependents not causing hot reloads
126
+ - bdffd8c: fix backwards compatibility with `render` versions
127
+ - e7fa043: Fix access to files outside `static` directory
128
+ - 9aa033c: Use range of versions for dependencies
129
+ - ab70556: Fix non-email files being rendered during hot reloading
130
+ - 9c9aa5d: Add error message for when an email template does not have a default export
131
+
132
+ ## 4.0.8
133
+
134
+ ### Patch Changes
135
+
136
+ - ea579b5: Log out errors that happen when `export`'s esbuild fails
137
+
138
+ ## 4.0.7
139
+
140
+ ### Patch Changes
141
+
142
+ - 403e415: Fix `deno` not working as an option for `email build`
143
+
9
144
  ## 4.0.6
10
145
 
11
146
  ### Patch Changes
package/dev/index.js ADDED
@@ -0,0 +1,40 @@
1
+ import child_process from 'node:child_process';
2
+ import path from 'node:path';
3
+ import url from 'node:url';
4
+
5
+ const filename = url.fileURLToPath(import.meta.url);
6
+ const dirname = path.dirname(filename);
7
+
8
+ const root = path.resolve(dirname, '../src/index.ts');
9
+
10
+ const tsxPath = path.resolve(dirname, './node_modules/.bin/tsx');
11
+
12
+ const tsx = child_process.spawn(tsxPath, [root, ...process.argv.slice(2)], {
13
+ shell: true,
14
+ cwd: process.cwd(),
15
+ stdio: 'inherit',
16
+ });
17
+
18
+ process.on('uncaughtExceptionMonitor', () => {
19
+ tsx.kill();
20
+ });
21
+
22
+ process.on('exit', (code) => {
23
+ tsx.kill(code);
24
+ });
25
+
26
+ process.on('SIGINT', () => {
27
+ tsx.kill('SIGINT');
28
+ });
29
+
30
+ process.on('SIGTERM', () => {
31
+ tsx.kill('SIGTERM');
32
+ });
33
+
34
+ process.on('SIGUSR1', () => {
35
+ tsx.kill('SIGUSR1');
36
+ });
37
+
38
+ process.on('SIGUSR2', () => {
39
+ tsx.kill('SIGUSR2');
40
+ });
@@ -0,0 +1,13 @@
1
+ {
2
+ "name": "email-dev",
3
+ "version": "0.0.0",
4
+ "bin": "index.js",
5
+ "private": true,
6
+ "type": "module",
7
+ "scripts": {
8
+ "start": "node ."
9
+ },
10
+ "dependencies": {
11
+ "tsx": "4.19.3"
12
+ }
13
+ }