react-email 4.0.0-alpha.5 → 4.0.0-alpha.6

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 (173) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/cli/index.js +1175 -2659
  3. package/dist/cli/index.mjs +16 -14
  4. package/dist/preview/.next/BUILD_ID +1 -1
  5. package/dist/preview/.next/app-build-manifest.json +31 -31
  6. package/dist/preview/.next/app-path-routes-manifest.json +6 -1
  7. package/dist/preview/.next/build-manifest.json +14 -14
  8. package/dist/preview/.next/cache/.rscinfo +1 -1
  9. package/dist/preview/.next/cache/webpack/client-production/0.pack +0 -0
  10. package/dist/preview/.next/cache/webpack/client-production/index.pack +0 -0
  11. package/dist/preview/.next/cache/webpack/edge-server-production/index.pack +0 -0
  12. package/dist/preview/.next/cache/webpack/server-production/0.pack +0 -0
  13. package/dist/preview/.next/cache/webpack/server-production/index.pack +0 -0
  14. package/dist/preview/.next/diagnostics/framework.json +1 -1
  15. package/dist/preview/.next/export-marker.json +6 -1
  16. package/dist/preview/.next/images-manifest.json +57 -1
  17. package/dist/preview/.next/next-minimal-server.js.nft.json +1 -1
  18. package/dist/preview/.next/next-server.js.nft.json +1 -1
  19. package/dist/preview/.next/prerender-manifest.json +41 -1
  20. package/dist/preview/.next/required-server-files.json +310 -1
  21. package/dist/preview/.next/routes-manifest.json +64 -1
  22. package/dist/preview/.next/server/app/_not-found/page.js +1 -1
  23. package/dist/preview/.next/server/app/_not-found/page.js.nft.json +1 -1
  24. package/dist/preview/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  25. package/dist/preview/.next/server/app/favicon.ico/route.js +1 -1
  26. package/dist/preview/.next/server/app/favicon.ico/route.js.nft.json +1 -1
  27. package/dist/preview/.next/server/app/page.js +1 -1
  28. package/dist/preview/.next/server/app/page.js.nft.json +1 -1
  29. package/dist/preview/.next/server/app/page_client-reference-manifest.js +1 -1
  30. package/dist/preview/.next/server/app/preview/[...slug]/page.js +47 -11
  31. package/dist/preview/.next/server/app/preview/[...slug]/page.js.nft.json +1 -1
  32. package/dist/preview/.next/server/app/preview/[...slug]/page_client-reference-manifest.js +1 -1
  33. package/dist/preview/.next/server/chunks/171.js +14 -0
  34. package/dist/preview/.next/server/chunks/446.js +6 -0
  35. package/dist/preview/.next/server/chunks/600.js +8 -0
  36. package/dist/preview/.next/server/chunks/811.js +13 -0
  37. package/dist/preview/.next/server/chunks/833.js +1 -0
  38. package/dist/preview/.next/server/functions-config-manifest.json +4 -1
  39. package/dist/preview/.next/server/middleware-build-manifest.js +1 -1
  40. package/dist/preview/.next/server/pages/500.html +1 -1
  41. package/dist/preview/.next/server/pages/_app.js +1 -1
  42. package/dist/preview/.next/server/pages/_app.js.nft.json +1 -1
  43. package/dist/preview/.next/server/pages/_document.js +1 -1
  44. package/dist/preview/.next/server/pages/_document.js.nft.json +1 -1
  45. package/dist/preview/.next/server/pages/_error.js +1 -1
  46. package/dist/preview/.next/server/pages/_error.js.nft.json +1 -1
  47. package/dist/preview/.next/server/pages-manifest.json +5 -1
  48. package/dist/preview/.next/server/server-reference-manifest.js +1 -1
  49. package/dist/preview/.next/server/server-reference-manifest.json +1 -1
  50. package/dist/preview/.next/server/webpack-runtime.js +1 -1
  51. package/dist/preview/.next/static/chunks/416-56f79fc7e689f06f.js +1 -0
  52. package/dist/preview/.next/static/chunks/683-8bbfd191e5105f01.js +1 -0
  53. package/dist/preview/.next/static/chunks/744-79730358b37b2212.js +1 -0
  54. package/dist/preview/.next/static/chunks/781-5f16c6bc9d9d4cc1.js +1 -0
  55. package/dist/preview/.next/static/chunks/832ad4be-cb988facfb8f955f.js +1 -0
  56. package/dist/preview/.next/static/chunks/87-38e35f08507de015.js +1 -0
  57. package/dist/preview/.next/static/chunks/{afa401a5-a600c227dacf3ab4.js → afa401a5-3e949a1cfd317dd3.js} +3 -3
  58. package/dist/preview/.next/static/chunks/app/_not-found/page-09d694081cc9d4dc.js +1 -0
  59. package/dist/preview/.next/static/chunks/app/layout-a6640e62690d8fd6.js +1 -0
  60. package/dist/preview/.next/static/chunks/app/page-ba68f50b287e7478.js +1 -0
  61. package/dist/preview/.next/static/chunks/app/preview/[...slug]/page-4a5b026ab543e27f.js +1 -0
  62. package/dist/preview/.next/static/chunks/framework-c2bd6d936e3077bc.js +1 -0
  63. package/dist/preview/.next/static/chunks/main-44463a8301435b64.js +1 -0
  64. package/dist/preview/.next/static/chunks/main-app-c2e686acf8d370d7.js +1 -0
  65. package/dist/preview/.next/static/chunks/pages/_app-f3011d3f00bb8dba.js +1 -0
  66. package/dist/preview/.next/static/chunks/pages/_error-39a87dee2e97a2a3.js +1 -0
  67. package/dist/preview/.next/static/chunks/{webpack-2eb145a20ee6cb77.js → webpack-41e2667c9f086a4f.js} +1 -1
  68. package/dist/preview/.next/static/css/d7df9cfc3e182163.css +3 -0
  69. package/dist/preview/.next/static/gFk9UfWL8joM4iD7-wlKF/_buildManifest.js +1 -0
  70. package/dist/preview/.next/trace +26 -22
  71. package/dist/preview/.next/types/cache-life.d.ts +3 -3
  72. package/package.json +14 -9
  73. package/scripts/build-preview-server.mjs +32 -0
  74. package/scripts/fill-caniemail-data.mjs +36 -0
  75. package/src/actions/email-validation/caniemail-data.ts +85993 -0
  76. package/src/actions/email-validation/check-compatibility.ts +322 -0
  77. package/src/actions/email-validation/check-images.spec.tsx +2 -2
  78. package/src/actions/email-validation/check-images.ts +2 -2
  79. package/src/actions/email-validation/check-links.spec.tsx +4 -4
  80. package/src/actions/email-validation/check-links.ts +2 -2
  81. package/src/actions/get-email-path-from-slug.ts +1 -1
  82. package/src/actions/render-email-by-path.tsx +2 -1
  83. package/src/{utils/emails-directory-absolute-path.ts → app/env.ts} +2 -0
  84. package/src/app/layout.tsx +1 -1
  85. package/src/app/page.tsx +1 -1
  86. package/src/app/preview/[...slug]/page.tsx +73 -16
  87. package/src/app/preview/[...slug]/preview.tsx +11 -57
  88. package/src/components/code.tsx +0 -1
  89. package/src/components/toolbar/linter.tsx +267 -124
  90. package/src/components/toolbar/spam-assassin.tsx +20 -31
  91. package/src/components/toolbar/toolbar-button.tsx +50 -0
  92. package/src/components/toolbar/use-cached-state.ts +33 -0
  93. package/src/components/toolbar.tsx +106 -98
  94. package/src/components/topbar/view-size-controls.tsx +1 -0
  95. package/src/components/topbar.tsx +3 -9
  96. package/src/contexts/emails.tsx +2 -1
  97. package/src/contexts/preview.tsx +81 -0
  98. package/src/hooks/use-email-rendering-result.ts +2 -1
  99. package/src/utils/__snapshots__/get-email-component.spec.ts.snap +1 -1
  100. package/src/utils/caniemail/all-css-properties.ts +358 -0
  101. package/src/utils/caniemail/ast/get-object-variables.ts +61 -0
  102. package/src/utils/caniemail/ast/get-used-style-properties.ts +91 -0
  103. package/src/utils/caniemail/get-compatibility-stats-for-entry.ts +118 -0
  104. package/src/utils/caniemail/get-css-functions.ts +25 -0
  105. package/src/utils/caniemail/get-css-property-names.ts +32 -0
  106. package/src/utils/caniemail/get-css-property-with-value.ts +14 -0
  107. package/src/utils/caniemail/get-css-unit.ts +3 -0
  108. package/src/utils/caniemail/get-element-attributes.ts +7 -0
  109. package/src/utils/caniemail/get-element-names.ts +20 -0
  110. package/src/utils/caniemail/tailwind/generate-tailwind-rules.ts +30 -0
  111. package/src/utils/caniemail/tailwind/get-tailwind-config.ts +205 -0
  112. package/src/utils/caniemail/tailwind/get-tailwind-metadata.spec.ts +25 -0
  113. package/src/utils/caniemail/tailwind/get-tailwind-metadata.ts +45 -0
  114. package/src/utils/caniemail/tailwind/setup-tailwind-context.ts +15 -0
  115. package/src/utils/get-email-component.ts +34 -67
  116. package/src/utils/linting.ts +85 -0
  117. package/src/utils/result.ts +49 -0
  118. package/src/utils/run-bundled-code.ts +64 -0
  119. package/tailwind-internals.d.ts +133 -0
  120. package/tsconfig.json +9 -3
  121. package/build-preview-server.mjs +0 -25
  122. package/dist/preview/.next/cache/images/TcyzHbFXGFjrOu3wEMvDoSmqCh3qP3iiNqJf0QbED9Y/60.1741728556140.cQ5qicbpvoXZ7leVmWqG2ElLwXB1ynYeSv8MBSA-QeM.Vy8iMWM3MGUtMTk1ODcxYmIyNzMi.webp +0 -0
  123. package/dist/preview/.next/cache/webpack/client-development/0.pack.gz +0 -0
  124. package/dist/preview/.next/cache/webpack/client-development/1.pack.gz +0 -0
  125. package/dist/preview/.next/cache/webpack/client-development/10.pack.gz +0 -0
  126. package/dist/preview/.next/cache/webpack/client-development/11.pack.gz +0 -0
  127. package/dist/preview/.next/cache/webpack/client-development/12.pack.gz +0 -0
  128. package/dist/preview/.next/cache/webpack/client-development/13.pack.gz +0 -0
  129. package/dist/preview/.next/cache/webpack/client-development/2.pack.gz +0 -0
  130. package/dist/preview/.next/cache/webpack/client-development/3.pack.gz +0 -0
  131. package/dist/preview/.next/cache/webpack/client-development/4.pack.gz +0 -0
  132. package/dist/preview/.next/cache/webpack/client-development/5.pack.gz +0 -0
  133. package/dist/preview/.next/cache/webpack/client-development/6.pack.gz +0 -0
  134. package/dist/preview/.next/cache/webpack/client-development/7.pack.gz +0 -0
  135. package/dist/preview/.next/cache/webpack/client-development/8.pack.gz +0 -0
  136. package/dist/preview/.next/cache/webpack/client-development/9.pack.gz +0 -0
  137. package/dist/preview/.next/cache/webpack/client-development/index.pack.gz +0 -0
  138. package/dist/preview/.next/cache/webpack/client-development/index.pack.gz.old +0 -0
  139. package/dist/preview/.next/cache/webpack/server-development/0.pack.gz +0 -0
  140. package/dist/preview/.next/cache/webpack/server-development/1.pack.gz +0 -0
  141. package/dist/preview/.next/cache/webpack/server-development/2.pack.gz +0 -0
  142. package/dist/preview/.next/cache/webpack/server-development/3.pack.gz +0 -0
  143. package/dist/preview/.next/cache/webpack/server-development/4.pack.gz +0 -0
  144. package/dist/preview/.next/cache/webpack/server-development/5.pack.gz +0 -0
  145. package/dist/preview/.next/cache/webpack/server-development/6.pack.gz +0 -0
  146. package/dist/preview/.next/cache/webpack/server-development/7.pack.gz +0 -0
  147. package/dist/preview/.next/cache/webpack/server-development/8.pack.gz +0 -0
  148. package/dist/preview/.next/cache/webpack/server-development/9.pack.gz +0 -0
  149. package/dist/preview/.next/cache/webpack/server-development/index.pack.gz +0 -0
  150. package/dist/preview/.next/cache/webpack/server-development/index.pack.gz.old +0 -0
  151. package/dist/preview/.next/server/chunks/143.js +0 -6
  152. package/dist/preview/.next/server/chunks/409.js +0 -5
  153. package/dist/preview/.next/server/chunks/46.js +0 -1
  154. package/dist/preview/.next/server/chunks/478.js +0 -14
  155. package/dist/preview/.next/server/chunks/707.js +0 -13
  156. package/dist/preview/.next/static/B4EYZiVzdylEG9lAIl-aO/_buildManifest.js +0 -1
  157. package/dist/preview/.next/static/chunks/575-bc52750855c25df4.js +0 -2
  158. package/dist/preview/.next/static/chunks/684-0f1ef7361c499798.js +0 -1
  159. package/dist/preview/.next/static/chunks/684c6b30-0c65da32762fc4ee.js +0 -1
  160. package/dist/preview/.next/static/chunks/81-e7539b08d9d3fb4d.js +0 -1
  161. package/dist/preview/.next/static/chunks/883-70c8267c50bc4133.js +0 -1
  162. package/dist/preview/.next/static/chunks/921-d1dc8c63f49e85d6.js +0 -1
  163. package/dist/preview/.next/static/chunks/app/_not-found/page-03ce767859c36d4e.js +0 -1
  164. package/dist/preview/.next/static/chunks/app/layout-7cf14e28880544f1.js +0 -1
  165. package/dist/preview/.next/static/chunks/app/page-065cb49b0a078541.js +0 -1
  166. package/dist/preview/.next/static/chunks/app/preview/[...slug]/page-656510fd180c803c.js +0 -1
  167. package/dist/preview/.next/static/chunks/framework-2a724981073c3a29.js +0 -1
  168. package/dist/preview/.next/static/chunks/main-552b9719bbc3a274.js +0 -1
  169. package/dist/preview/.next/static/chunks/main-app-914a73336fd45af5.js +0 -1
  170. package/dist/preview/.next/static/chunks/pages/_app-77ca34bce25ac75c.js +0 -1
  171. package/dist/preview/.next/static/chunks/pages/_error-73f611c46abbb495.js +0 -1
  172. package/dist/preview/.next/static/css/2df96d9ee014e8de.css +0 -3
  173. /package/dist/preview/.next/static/{B4EYZiVzdylEG9lAIl-aO → gFk9UfWL8joM4iD7-wlKF}/_ssgManifest.js +0 -0
@@ -1 +1,41 @@
1
- {"version":4,"routes":{"/favicon.ico":{"initialHeaders":{"cache-control":"public, max-age=0, must-revalidate","content-type":"image/x-icon","x-next-cache-tags":"_N_T_/layout,_N_T_/favicon.ico/layout,_N_T_/favicon.ico/route,_N_T_/favicon.ico"},"experimentalBypassFor":[{"type":"header","key":"Next-Action"},{"type":"header","key":"content-type","value":"multipart/form-data;.*"}],"initialRevalidateSeconds":false,"srcRoute":"/favicon.ico","dataRoute":null,"allowHeader":["host","x-matched-path","x-prerender-revalidate","x-prerender-revalidate-if-generated","x-next-revalidated-tags","x-next-revalidate-tag-token"]}},"dynamicRoutes":{},"notFoundRoutes":[],"preview":{"previewModeId":"f56c744ad38b82ff41a5c759086a02de","previewModeSigningKey":"af566ccf6bb5dde09c477fc3e3f45172eed41e2adb61b587c45da14df81d6994","previewModeEncryptionKey":"372622891839486c2dc24ee9b1307dc052a8b19fb31e4310f64216a0e6e814d1"}}
1
+ {
2
+ "version": 4,
3
+ "routes": {
4
+ "/favicon.ico": {
5
+ "initialHeaders": {
6
+ "cache-control": "public, max-age=0, must-revalidate",
7
+ "content-type": "image/x-icon",
8
+ "x-next-cache-tags": "_N_T_/layout,_N_T_/favicon.ico/layout,_N_T_/favicon.ico/route,_N_T_/favicon.ico"
9
+ },
10
+ "experimentalBypassFor": [
11
+ {
12
+ "type": "header",
13
+ "key": "Next-Action"
14
+ },
15
+ {
16
+ "type": "header",
17
+ "key": "content-type",
18
+ "value": "multipart/form-data;.*"
19
+ }
20
+ ],
21
+ "initialRevalidateSeconds": false,
22
+ "srcRoute": "/favicon.ico",
23
+ "dataRoute": null,
24
+ "allowHeader": [
25
+ "host",
26
+ "x-matched-path",
27
+ "x-prerender-revalidate",
28
+ "x-prerender-revalidate-if-generated",
29
+ "x-next-revalidated-tags",
30
+ "x-next-revalidate-tag-token"
31
+ ]
32
+ }
33
+ },
34
+ "dynamicRoutes": {},
35
+ "notFoundRoutes": [],
36
+ "preview": {
37
+ "previewModeId": "2c3259dfd1f7ff13e354c195432c5686",
38
+ "previewModeSigningKey": "5c4e1f27c57da6f6cdff2003b24229fa06e3cdada6c8f5b842f0cd41480c1670",
39
+ "previewModeEncryptionKey": "0a48cd0f0a0ff3b232ce11d4250297333b0c21d1717cedd06654cfb107834469"
40
+ }
41
+ }
@@ -1 +1,310 @@
1
- {"version":1,"config":{"env":{},"eslint":{"ignoreDuringBuilds":false},"typescript":{"ignoreBuildErrors":false,"tsconfigPath":"tsconfig.json"},"distDir":".next","cleanDistDir":true,"assetPrefix":"","cacheMaxMemorySize":52428800,"configOrigin":"next.config.js","useFileSystemPublicRoutes":true,"generateEtags":true,"pageExtensions":["tsx","ts","jsx","js"],"poweredByHeader":true,"compress":true,"images":{"deviceSizes":[640,750,828,1080,1200,1920,2048,3840],"imageSizes":[16,32,48,64,96,128,256,384],"path":"/_next/image","loader":"default","loaderFile":"","domains":[],"disableStaticImages":false,"minimumCacheTTL":60,"formats":["image/webp"],"dangerouslyAllowSVG":false,"contentSecurityPolicy":"script-src 'none'; frame-src 'none'; sandbox;","contentDispositionType":"attachment","remotePatterns":[],"unoptimized":false},"devIndicators":{"appIsrStatus":true,"buildActivity":true,"buildActivityPosition":"bottom-right"},"onDemandEntries":{"maxInactiveAge":60000,"pagesBufferLength":5},"amp":{"canonicalBase":""},"basePath":"","sassOptions":{},"trailingSlash":false,"i18n":null,"productionBrowserSourceMaps":false,"excludeDefaultMomentLocales":true,"serverRuntimeConfig":{},"publicRuntimeConfig":{},"reactProductionProfiling":false,"reactStrictMode":null,"reactMaxHeadersLength":6000,"httpAgentOptions":{"keepAlive":true},"logging":{},"expireTime":31536000,"staticPageGenerationTimeout":60,"modularizeImports":{"@mui/icons-material":{"transform":"@mui/icons-material/{{member}}"},"lodash":{"transform":"lodash/{{member}}"}},"outputFileTracingRoot":"/home/gabriel/Projects/Resend/react-email.git/4.0","experimental":{"cacheLife":{"default":{"stale":300,"revalidate":900,"expire":4294967294},"seconds":{"stale":0,"revalidate":1,"expire":60},"minutes":{"stale":300,"revalidate":60,"expire":3600},"hours":{"stale":300,"revalidate":3600,"expire":86400},"days":{"stale":300,"revalidate":86400,"expire":604800},"weeks":{"stale":300,"revalidate":604800,"expire":2592000},"max":{"stale":300,"revalidate":2592000,"expire":4294967294}},"cacheHandlers":{},"cssChunking":true,"multiZoneDraftMode":false,"appNavFailHandling":false,"prerenderEarlyExit":true,"serverMinification":true,"serverSourceMaps":false,"linkNoTouchStart":false,"caseSensitiveRoutes":false,"clientSegmentCache":false,"preloadEntriesOnStart":true,"clientRouterFilter":true,"clientRouterFilterRedirects":false,"fetchCacheKeyPrefix":"","middlewarePrefetch":"flexible","optimisticClientCache":true,"manualClientBasePath":false,"cpus":23,"memoryBasedWorkersCount":false,"imgOptConcurrency":null,"imgOptTimeoutInSeconds":7,"imgOptMaxInputPixels":268402689,"imgOptSequentialRead":null,"isrFlushToDisk":true,"workerThreads":false,"optimizeCss":false,"nextScriptWorkers":false,"scrollRestoration":false,"externalDir":false,"disableOptimizedLoading":false,"gzipSize":true,"craCompat":false,"esmExternals":true,"fullySpecified":false,"swcTraceProfiling":false,"forceSwcTransforms":false,"largePageDataBytes":128000,"turbo":{"root":"/home/gabriel/Projects/Resend/react-email.git/4.0"},"typedRoutes":false,"typedEnv":false,"parallelServerCompiles":false,"parallelServerBuildTraces":false,"ppr":false,"authInterrupts":false,"reactOwnerStack":false,"webpackMemoryOptimizations":false,"optimizeServerReact":true,"useEarlyImport":false,"staleTimes":{"dynamic":0,"static":300},"serverComponentsHmrCache":true,"staticGenerationMaxConcurrency":8,"staticGenerationMinPagesPerWorker":25,"dynamicIO":false,"inlineCss":false,"optimizePackageImports":["lucide-react","date-fns","lodash-es","ramda","antd","react-bootstrap","ahooks","@ant-design/icons","@headlessui/react","@headlessui-float/react","@heroicons/react/20/solid","@heroicons/react/24/solid","@heroicons/react/24/outline","@visx/visx","@tremor/react","rxjs","@mui/material","@mui/icons-material","recharts","react-use","effect","@effect/schema","@effect/platform","@effect/platform-node","@effect/platform-browser","@effect/platform-bun","@effect/sql","@effect/sql-mssql","@effect/sql-mysql2","@effect/sql-pg","@effect/sql-squlite-node","@effect/sql-squlite-bun","@effect/sql-squlite-wasm","@effect/sql-squlite-react-native","@effect/rpc","@effect/rpc-http","@effect/typeclass","@effect/experimental","@effect/opentelemetry","@material-ui/core","@material-ui/icons","@tabler/icons-react","mui-core","react-icons/ai","react-icons/bi","react-icons/bs","react-icons/cg","react-icons/ci","react-icons/di","react-icons/fa","react-icons/fa6","react-icons/fc","react-icons/fi","react-icons/gi","react-icons/go","react-icons/gr","react-icons/hi","react-icons/hi2","react-icons/im","react-icons/io","react-icons/io5","react-icons/lia","react-icons/lib","react-icons/lu","react-icons/md","react-icons/pi","react-icons/ri","react-icons/rx","react-icons/si","react-icons/sl","react-icons/tb","react-icons/tfi","react-icons/ti","react-icons/vsc","react-icons/wi"],"trustHostHeader":false,"isExperimentalCompile":false},"bundlePagesRouterDependencies":false,"configFileName":"next.config.js","transpilePackages":["react-email"]},"appDir":"/home/gabriel/Projects/Resend/react-email.git/4.0/packages/react-email","relativeAppDir":"packages/react-email","files":[".next/routes-manifest.json",".next/server/pages-manifest.json",".next/build-manifest.json",".next/prerender-manifest.json",".next/server/middleware-manifest.json",".next/server/middleware-build-manifest.js",".next/server/middleware-react-loadable-manifest.js",".next/server/app-paths-manifest.json",".next/app-path-routes-manifest.json",".next/app-build-manifest.json",".next/server/server-reference-manifest.js",".next/server/server-reference-manifest.json",".next/react-loadable-manifest.json",".next/BUILD_ID",".next/server/next-font-manifest.js",".next/server/next-font-manifest.json"],"ignore":["../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/compiled/@ampproject/toolbox-optimizer/**/*"]}
1
+ {
2
+ "version": 1,
3
+ "config": {
4
+ "env": {},
5
+ "eslint": {
6
+ "ignoreDuringBuilds": false
7
+ },
8
+ "typescript": {
9
+ "ignoreBuildErrors": false,
10
+ "tsconfigPath": "tsconfig.json"
11
+ },
12
+ "distDir": ".next",
13
+ "cleanDistDir": true,
14
+ "assetPrefix": "",
15
+ "cacheMaxMemorySize": 52428800,
16
+ "configOrigin": "next.config.js",
17
+ "useFileSystemPublicRoutes": true,
18
+ "generateEtags": true,
19
+ "pageExtensions": [
20
+ "tsx",
21
+ "ts",
22
+ "jsx",
23
+ "js"
24
+ ],
25
+ "poweredByHeader": true,
26
+ "compress": true,
27
+ "images": {
28
+ "deviceSizes": [
29
+ 640,
30
+ 750,
31
+ 828,
32
+ 1080,
33
+ 1200,
34
+ 1920,
35
+ 2048,
36
+ 3840
37
+ ],
38
+ "imageSizes": [
39
+ 16,
40
+ 32,
41
+ 48,
42
+ 64,
43
+ 96,
44
+ 128,
45
+ 256,
46
+ 384
47
+ ],
48
+ "path": "/_next/image",
49
+ "loader": "default",
50
+ "loaderFile": "",
51
+ "domains": [],
52
+ "disableStaticImages": false,
53
+ "minimumCacheTTL": 60,
54
+ "formats": [
55
+ "image/webp"
56
+ ],
57
+ "dangerouslyAllowSVG": false,
58
+ "contentSecurityPolicy": "script-src 'none'; frame-src 'none'; sandbox;",
59
+ "contentDispositionType": "attachment",
60
+ "remotePatterns": [],
61
+ "unoptimized": false
62
+ },
63
+ "devIndicators": {
64
+ "position": "bottom-left"
65
+ },
66
+ "onDemandEntries": {
67
+ "maxInactiveAge": 60000,
68
+ "pagesBufferLength": 5
69
+ },
70
+ "amp": {
71
+ "canonicalBase": ""
72
+ },
73
+ "basePath": "",
74
+ "sassOptions": {},
75
+ "trailingSlash": false,
76
+ "i18n": null,
77
+ "productionBrowserSourceMaps": false,
78
+ "excludeDefaultMomentLocales": true,
79
+ "serverRuntimeConfig": {},
80
+ "publicRuntimeConfig": {},
81
+ "reactProductionProfiling": false,
82
+ "reactStrictMode": null,
83
+ "reactMaxHeadersLength": 6000,
84
+ "httpAgentOptions": {
85
+ "keepAlive": true
86
+ },
87
+ "logging": {},
88
+ "expireTime": 31536000,
89
+ "staticPageGenerationTimeout": 60,
90
+ "modularizeImports": {
91
+ "@mui/icons-material": {
92
+ "transform": "@mui/icons-material/{{member}}"
93
+ },
94
+ "lodash": {
95
+ "transform": "lodash/{{member}}"
96
+ }
97
+ },
98
+ "outputFileTracingRoot": "/home/gabriel/Projects/Resend/react-email.git/4.0",
99
+ "experimental": {
100
+ "allowedDevOrigins": [],
101
+ "nodeMiddleware": false,
102
+ "cacheLife": {
103
+ "default": {
104
+ "stale": 300,
105
+ "revalidate": 900,
106
+ "expire": 4294967294
107
+ },
108
+ "seconds": {
109
+ "stale": 0,
110
+ "revalidate": 1,
111
+ "expire": 60
112
+ },
113
+ "minutes": {
114
+ "stale": 300,
115
+ "revalidate": 60,
116
+ "expire": 3600
117
+ },
118
+ "hours": {
119
+ "stale": 300,
120
+ "revalidate": 3600,
121
+ "expire": 86400
122
+ },
123
+ "days": {
124
+ "stale": 300,
125
+ "revalidate": 86400,
126
+ "expire": 604800
127
+ },
128
+ "weeks": {
129
+ "stale": 300,
130
+ "revalidate": 604800,
131
+ "expire": 2592000
132
+ },
133
+ "max": {
134
+ "stale": 300,
135
+ "revalidate": 2592000,
136
+ "expire": 4294967294
137
+ }
138
+ },
139
+ "cacheHandlers": {},
140
+ "cssChunking": true,
141
+ "multiZoneDraftMode": false,
142
+ "appNavFailHandling": false,
143
+ "prerenderEarlyExit": true,
144
+ "serverMinification": true,
145
+ "serverSourceMaps": false,
146
+ "linkNoTouchStart": false,
147
+ "caseSensitiveRoutes": false,
148
+ "clientSegmentCache": false,
149
+ "preloadEntriesOnStart": true,
150
+ "clientRouterFilter": true,
151
+ "clientRouterFilterRedirects": false,
152
+ "fetchCacheKeyPrefix": "",
153
+ "middlewarePrefetch": "flexible",
154
+ "optimisticClientCache": true,
155
+ "manualClientBasePath": false,
156
+ "cpus": 23,
157
+ "memoryBasedWorkersCount": false,
158
+ "imgOptConcurrency": null,
159
+ "imgOptTimeoutInSeconds": 7,
160
+ "imgOptMaxInputPixels": 268402689,
161
+ "imgOptSequentialRead": null,
162
+ "isrFlushToDisk": true,
163
+ "workerThreads": false,
164
+ "optimizeCss": false,
165
+ "nextScriptWorkers": false,
166
+ "scrollRestoration": false,
167
+ "externalDir": false,
168
+ "disableOptimizedLoading": false,
169
+ "gzipSize": true,
170
+ "craCompat": false,
171
+ "esmExternals": true,
172
+ "fullySpecified": false,
173
+ "swcTraceProfiling": false,
174
+ "forceSwcTransforms": false,
175
+ "largePageDataBytes": 128000,
176
+ "turbo": {
177
+ "root": "/home/gabriel/Projects/Resend/react-email.git/4.0"
178
+ },
179
+ "typedRoutes": false,
180
+ "typedEnv": false,
181
+ "parallelServerCompiles": false,
182
+ "parallelServerBuildTraces": false,
183
+ "ppr": false,
184
+ "authInterrupts": false,
185
+ "webpackMemoryOptimizations": false,
186
+ "optimizeServerReact": true,
187
+ "useEarlyImport": false,
188
+ "viewTransition": false,
189
+ "staleTimes": {
190
+ "dynamic": 0,
191
+ "static": 300
192
+ },
193
+ "serverComponentsHmrCache": true,
194
+ "staticGenerationMaxConcurrency": 8,
195
+ "staticGenerationMinPagesPerWorker": 25,
196
+ "dynamicIO": false,
197
+ "inlineCss": false,
198
+ "useCache": false,
199
+ "optimizePackageImports": [
200
+ "lucide-react",
201
+ "date-fns",
202
+ "lodash-es",
203
+ "ramda",
204
+ "antd",
205
+ "react-bootstrap",
206
+ "ahooks",
207
+ "@ant-design/icons",
208
+ "@headlessui/react",
209
+ "@headlessui-float/react",
210
+ "@heroicons/react/20/solid",
211
+ "@heroicons/react/24/solid",
212
+ "@heroicons/react/24/outline",
213
+ "@visx/visx",
214
+ "@tremor/react",
215
+ "rxjs",
216
+ "@mui/material",
217
+ "@mui/icons-material",
218
+ "recharts",
219
+ "react-use",
220
+ "effect",
221
+ "@effect/schema",
222
+ "@effect/platform",
223
+ "@effect/platform-node",
224
+ "@effect/platform-browser",
225
+ "@effect/platform-bun",
226
+ "@effect/sql",
227
+ "@effect/sql-mssql",
228
+ "@effect/sql-mysql2",
229
+ "@effect/sql-pg",
230
+ "@effect/sql-squlite-node",
231
+ "@effect/sql-squlite-bun",
232
+ "@effect/sql-squlite-wasm",
233
+ "@effect/sql-squlite-react-native",
234
+ "@effect/rpc",
235
+ "@effect/rpc-http",
236
+ "@effect/typeclass",
237
+ "@effect/experimental",
238
+ "@effect/opentelemetry",
239
+ "@material-ui/core",
240
+ "@material-ui/icons",
241
+ "@tabler/icons-react",
242
+ "mui-core",
243
+ "react-icons/ai",
244
+ "react-icons/bi",
245
+ "react-icons/bs",
246
+ "react-icons/cg",
247
+ "react-icons/ci",
248
+ "react-icons/di",
249
+ "react-icons/fa",
250
+ "react-icons/fa6",
251
+ "react-icons/fc",
252
+ "react-icons/fi",
253
+ "react-icons/gi",
254
+ "react-icons/go",
255
+ "react-icons/gr",
256
+ "react-icons/hi",
257
+ "react-icons/hi2",
258
+ "react-icons/im",
259
+ "react-icons/io",
260
+ "react-icons/io5",
261
+ "react-icons/lia",
262
+ "react-icons/lib",
263
+ "react-icons/lu",
264
+ "react-icons/md",
265
+ "react-icons/pi",
266
+ "react-icons/ri",
267
+ "react-icons/rx",
268
+ "react-icons/si",
269
+ "react-icons/sl",
270
+ "react-icons/tb",
271
+ "react-icons/tfi",
272
+ "react-icons/ti",
273
+ "react-icons/vsc",
274
+ "react-icons/wi"
275
+ ],
276
+ "trustHostHeader": false,
277
+ "isExperimentalCompile": false
278
+ },
279
+ "htmlLimitedBots": "Mediapartners-Google|Slurp|DuckDuckBot|baiduspider|yandex|sogou|bitlybot|tumblr|vkShare|quora link preview|redditbot|ia_archiver|Bingbot|BingPreview|applebot|facebookexternalhit|facebookcatalog|Twitterbot|LinkedInBot|Slackbot|Discordbot|WhatsApp|SkypeUriPreview",
280
+ "bundlePagesRouterDependencies": false,
281
+ "configFileName": "next.config.js",
282
+ "transpilePackages": [
283
+ "react-email"
284
+ ]
285
+ },
286
+ "appDir": "/home/gabriel/Projects/Resend/react-email.git/4.0/packages/react-email",
287
+ "relativeAppDir": "packages/react-email",
288
+ "files": [
289
+ ".next/routes-manifest.json",
290
+ ".next/server/pages-manifest.json",
291
+ ".next/build-manifest.json",
292
+ ".next/prerender-manifest.json",
293
+ ".next/server/functions-config-manifest.json",
294
+ ".next/server/middleware-manifest.json",
295
+ ".next/server/middleware-build-manifest.js",
296
+ ".next/server/middleware-react-loadable-manifest.js",
297
+ ".next/react-loadable-manifest.json",
298
+ ".next/server/app-paths-manifest.json",
299
+ ".next/app-path-routes-manifest.json",
300
+ ".next/app-build-manifest.json",
301
+ ".next/server/server-reference-manifest.js",
302
+ ".next/server/server-reference-manifest.json",
303
+ ".next/BUILD_ID",
304
+ ".next/server/next-font-manifest.js",
305
+ ".next/server/next-font-manifest.json"
306
+ ],
307
+ "ignore": [
308
+ "../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/compiled/@ampproject/toolbox-optimizer/**/*"
309
+ ]
310
+ }
@@ -1 +1,64 @@
1
- {"version":3,"pages404":true,"caseSensitive":false,"basePath":"","redirects":[{"source":"/:path+/","destination":"/:path+","internal":true,"statusCode":308,"regex":"^(?:/((?:[^/]+?)(?:/(?:[^/]+?))*))/$"}],"headers":[],"dynamicRoutes":[{"page":"/preview/[...slug]","regex":"^/preview/(.+?)(?:/)?$","routeKeys":{"nxtPslug":"nxtPslug"},"namedRegex":"^/preview/(?<nxtPslug>.+?)(?:/)?$"}],"staticRoutes":[{"page":"/","regex":"^/(?:/)?$","routeKeys":{},"namedRegex":"^/(?:/)?$"},{"page":"/_not-found","regex":"^/_not\\-found(?:/)?$","routeKeys":{},"namedRegex":"^/_not\\-found(?:/)?$"},{"page":"/favicon.ico","regex":"^/favicon\\.ico(?:/)?$","routeKeys":{},"namedRegex":"^/favicon\\.ico(?:/)?$"}],"dataRoutes":[],"rsc":{"header":"RSC","varyHeader":"RSC, Next-Router-State-Tree, Next-Router-Prefetch, Next-Router-Segment-Prefetch","prefetchHeader":"Next-Router-Prefetch","didPostponeHeader":"x-nextjs-postponed","contentTypeHeader":"text/x-component","suffix":".rsc","prefetchSuffix":".prefetch.rsc"},"rewrites":[]}
1
+ {
2
+ "version": 3,
3
+ "pages404": true,
4
+ "caseSensitive": false,
5
+ "basePath": "",
6
+ "redirects": [
7
+ {
8
+ "source": "/:path+/",
9
+ "destination": "/:path+",
10
+ "internal": true,
11
+ "statusCode": 308,
12
+ "regex": "^(?:/((?:[^/]+?)(?:/(?:[^/]+?))*))/$"
13
+ }
14
+ ],
15
+ "headers": [],
16
+ "dynamicRoutes": [
17
+ {
18
+ "page": "/preview/[...slug]",
19
+ "regex": "^/preview/(.+?)(?:/)?$",
20
+ "routeKeys": {
21
+ "nxtPslug": "nxtPslug"
22
+ },
23
+ "namedRegex": "^/preview/(?<nxtPslug>.+?)(?:/)?$"
24
+ }
25
+ ],
26
+ "staticRoutes": [
27
+ {
28
+ "page": "/",
29
+ "regex": "^/(?:/)?$",
30
+ "routeKeys": {},
31
+ "namedRegex": "^/(?:/)?$"
32
+ },
33
+ {
34
+ "page": "/_not-found",
35
+ "regex": "^/_not\\-found(?:/)?$",
36
+ "routeKeys": {},
37
+ "namedRegex": "^/_not\\-found(?:/)?$"
38
+ },
39
+ {
40
+ "page": "/favicon.ico",
41
+ "regex": "^/favicon\\.ico(?:/)?$",
42
+ "routeKeys": {},
43
+ "namedRegex": "^/favicon\\.ico(?:/)?$"
44
+ }
45
+ ],
46
+ "dataRoutes": [],
47
+ "rsc": {
48
+ "header": "RSC",
49
+ "varyHeader": "RSC, Next-Router-State-Tree, Next-Router-Prefetch, Next-Router-Segment-Prefetch",
50
+ "prefetchHeader": "Next-Router-Prefetch",
51
+ "didPostponeHeader": "x-nextjs-postponed",
52
+ "contentTypeHeader": "text/x-component",
53
+ "suffix": ".rsc",
54
+ "prefetchSuffix": ".prefetch.rsc",
55
+ "prefetchSegmentHeader": "Next-Router-Segment-Prefetch",
56
+ "prefetchSegmentSuffix": ".segment.rsc",
57
+ "prefetchSegmentDirSuffix": ".segments"
58
+ },
59
+ "rewriteHeaders": {
60
+ "pathHeader": "x-nextjs-rewritten-path",
61
+ "queryHeader": "x-nextjs-rewritten-query"
62
+ },
63
+ "rewrites": []
64
+ }
@@ -1 +1 @@
1
- (()=>{var e={};e.id=492,e.ids=[492],e.modules={10846:e=>{"use strict";e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19121:e=>{"use strict";e.exports=require("next/dist/server/app-render/action-async-storage.external.js")},3295:e=>{"use strict";e.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},29294:e=>{"use strict";e.exports=require("next/dist/server/app-render/work-async-storage.external.js")},63033:e=>{"use strict";e.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},79428:e=>{"use strict";e.exports=require("buffer")},79646:e=>{"use strict";e.exports=require("child_process")},55511:e=>{"use strict";e.exports=require("crypto")},94735:e=>{"use strict";e.exports=require("events")},29021:e=>{"use strict";e.exports=require("fs")},81630:e=>{"use strict";e.exports=require("http")},55591:e=>{"use strict";e.exports=require("https")},91645:e=>{"use strict";e.exports=require("net")},21820:e=>{"use strict";e.exports=require("os")},33873:e=>{"use strict";e.exports=require("path")},27910:e=>{"use strict";e.exports=require("stream")},34631:e=>{"use strict";e.exports=require("tls")},83997:e=>{"use strict";e.exports=require("tty")},79551:e=>{"use strict";e.exports=require("url")},28354:e=>{"use strict";e.exports=require("util")},74075:e=>{"use strict";e.exports=require("zlib")},73024:e=>{"use strict";e.exports=require("node:fs")},76760:e=>{"use strict";e.exports=require("node:path")},92665:()=>{},72112:()=>{},85261:(e,t,r)=>{"use strict";r.r(t),r.d(t,{GlobalError:()=>a.a,__next_app__:()=>u,pages:()=>d,routeModule:()=>m,tree:()=>c});var s=r(93427),i=r(5532),o=r(78334),a=r.n(o),n=r(35337),l={};for(let e in n)0>["default","tree","pages","GlobalError","__next_app__","routeModule"].indexOf(e)&&(l[e]=()=>n[e]);r.d(t,l);let c=["",{children:["/_not-found",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(r.t.bind(r,93066,23)),"next/dist/client/components/not-found-error"]}]},{}]},{layout:[()=>Promise.resolve().then(r.bind(r,36508)),"/home/gabriel/Projects/Resend/react-email.git/4.0/packages/react-email/src/app/layout.tsx"],"not-found":[()=>Promise.resolve().then(r.t.bind(r,93066,23)),"next/dist/client/components/not-found-error"],forbidden:[()=>Promise.resolve().then(r.t.bind(r,36395,23)),"next/dist/client/components/forbidden-error"],unauthorized:[()=>Promise.resolve().then(r.t.bind(r,5488,23)),"next/dist/client/components/unauthorized-error"]}],d=[],u={require:r,loadChunk:()=>Promise.resolve()},m=new s.AppPageRouteModule({definition:{kind:i.RouteKind.APP_PAGE,page:"/_not-found/page",pathname:"/_not-found",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:c}})},94229:(e,t,r)=>{"use strict";r.r(t),r.d(t,{"7f3eeaa01e2d3f308e9eb344bbeb1c6e7ee3f64071":()=>s.u});var s=r(96887)},35416:(e,t,r)=>{Promise.resolve().then(r.t.bind(r,88520,23)),Promise.resolve().then(r.t.bind(r,52574,23)),Promise.resolve().then(r.t.bind(r,78334,23)),Promise.resolve().then(r.t.bind(r,65769,23)),Promise.resolve().then(r.t.bind(r,77229,23)),Promise.resolve().then(r.t.bind(r,28143,23)),Promise.resolve().then(r.t.bind(r,32484,23))},45144:(e,t,r)=>{Promise.resolve().then(r.t.bind(r,4672,23)),Promise.resolve().then(r.t.bind(r,61614,23)),Promise.resolve().then(r.t.bind(r,222,23)),Promise.resolve().then(r.t.bind(r,19873,23)),Promise.resolve().then(r.t.bind(r,33781,23)),Promise.resolve().then(r.t.bind(r,49695,23)),Promise.resolve().then(r.t.bind(r,82412,23))},82605:(e,t,r)=>{Promise.resolve().then(r.bind(r,32744))},29869:(e,t,r)=>{Promise.resolve().then(r.bind(r,2578))},2578:(e,t,r)=>{"use strict";r.d(t,{EmailsProvider:()=>d,J:()=>c});var s=r(63185),i=r(27300),o=r(45357);let a=(0,o.createServerReference)("7f3eeaa01e2d3f308e9eb344bbeb1c6e7ee3f64071",o.callServer,void 0,o.findSourceMapURL,"getEmailsDirectoryMetadataAction");var n=r(83546);let l=(0,i.createContext)(void 0),c=()=>{let e=(0,i.useContext)(l);if(void 0===e)throw Error("Cannot call `useEmail()` outside of an EmailsContext provider!");return e},d=e=>{let[t,r]=(0,i.useState)(e.initialEmailsDirectoryMetadata);return"true"!==process.env.NEXT_PUBLIC_IS_BUILDING&&(0,n.a)(async()=>{let t=await a(e.initialEmailsDirectoryMetadata.absolutePath);if(t)r(t);else throw Error("Hot reloading: unable to find the emails directory to update the sidebar")}),(0,s.jsx)(l.Provider,{value:{emailsDirectoryMetadata:t},children:e.children})}},83546:(e,t,r)=>{"use strict";r.d(t,{a:()=>o});var s=r(27300),i=r(1607);let o=e=>{let t=(0,s.useRef)(null);(0,s.useEffect)(()=>{t.current||(t.current=(0,i.io)());let r=t.current;return r.on("reload",t=>{console.debug("Reloading..."),e(t)}),()=>{r.off()}},[e])}},96887:(e,t,r)=>{"use strict";r.d(t,{u:()=>m});var s=r(56827);r(6067);var i=r(73024),o=r.n(i),a=r(76760),n=r.n(a);let l=e=>{if(o().statSync(e).isDirectory())return!1;let{ext:t}=n().parse(e);if(![".js",".tsx",".jsx"].includes(t)||!o().existsSync(e))return!1;let r=o().readFileSync(e,"utf8");return/\bexport\s+default\b/gm.test(r)},c=e=>{let t=e;for(;0===t.emailFilenames.length&&1===t.subDirectories.length;){let e=t.subDirectories[0];t={...e,directoryName:n().join(t.directoryName,e.directoryName)}}return t},d=async(e,t=!1,r=!1,s=e)=>{if(!o().existsSync(e))return;let i=await o().promises.readdir(e,{withFileTypes:!0}),a=i.filter(t=>l(n().join(e,t.name))).map(e=>t?e.name:e.name.replace(n().extname(e.name),"")),u=await Promise.all(i.filter(e=>e.isDirectory()&&!e.name.startsWith("_")&&"static"!==e.name).map(r=>d(n().join(e,r.name),t,!0,s))),m={absolutePath:e,relativePath:n().relative(s,e),directoryName:e.split(n().sep).pop(),emailFilenames:a,subDirectories:u};return r?c(m):m};var u=r(60431);let m=async(e,t=!1,r=!1,s=e)=>d(e,t,r,s);(0,u.D)([m]),(0,s.A)(m,"7f3eeaa01e2d3f308e9eb344bbeb1c6e7ee3f64071",null)},36508:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>p,dynamic:()=>m,metadata:()=>u});var s=r(56233);r(86600);var i=r(32744),o=r(10229),a=r(38576),n=r(43665),l=r.n(n),c=r(92652),d=r.n(c);let u={title:"React Email"},m="force-dynamic",p=async({children:e})=>{let t=await (0,a.getEmailsDirectoryMetadata)(o.emailsDirectoryAbsolutePath);if(void 0===t)throw Error(`Could not find the emails directory specified under ${o.emailsDirectoryAbsolutePath}!`);return(0,s.jsx)("html",{className:`${l().variable} ${d().variable} font-sans`,lang:"en",children:(0,s.jsxs)("body",{className:"relative flex h-screen flex-col overflow-x-hidden bg-black text-slate-11 leading-loose selection:bg-cyan-5 selection:text-cyan-12",children:[(0,s.jsx)(i.EmailsProvider,{initialEmailsDirectoryMetadata:t,children:e}),(0,s.jsx)("div",{"aria-hidden":!0,className:"pointer-events-none absolute inset-0 bg-gradient-to-t from-slate-3"})]})})}},32744:(e,t,r)=>{"use strict";r.d(t,{EmailsProvider:()=>i});var s=r(6015);(0,s.registerClientReference)(function(){throw Error("Attempted to call useEmails() from the server but useEmails is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/gabriel/Projects/Resend/react-email.git/4.0/packages/react-email/src/contexts/emails.tsx","useEmails");let i=(0,s.registerClientReference)(function(){throw Error("Attempted to call EmailsProvider() from the server but EmailsProvider is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/gabriel/Projects/Resend/react-email.git/4.0/packages/react-email/src/contexts/emails.tsx","EmailsProvider")},10229:(e,t,r)=>{"use strict";r.r(t),r.d(t,{emailsDirRelativePath:()=>s,emailsDirectoryAbsolutePath:()=>o,userProjectLocation:()=>i});let s=process.env.EMAILS_DIR_RELATIVE_PATH,i=process.env.USER_PROJECT_LOCATION,o=process.env.EMAILS_DIR_ABSOLUTE_PATH},38576:(e,t,r)=>{"use strict";r.r(t),r.d(t,{getEmailsDirectoryMetadata:()=>c});var s=r(73024),i=r.n(s),o=r(76760),a=r.n(o);let n=e=>{if(i().statSync(e).isDirectory())return!1;let{ext:t}=a().parse(e);if(![".js",".tsx",".jsx"].includes(t)||!i().existsSync(e))return!1;let r=i().readFileSync(e,"utf8");return/\bexport\s+default\b/gm.test(r)},l=e=>{let t=e;for(;0===t.emailFilenames.length&&1===t.subDirectories.length;){let e=t.subDirectories[0];t={...e,directoryName:a().join(t.directoryName,e.directoryName)}}return t},c=async(e,t=!1,r=!1,s=e)=>{if(!i().existsSync(e))return;let o=await i().promises.readdir(e,{withFileTypes:!0}),d=o.filter(t=>n(a().join(e,t.name))).map(e=>t?e.name:e.name.replace(a().extname(e.name),"")),u=await Promise.all(o.filter(e=>e.isDirectory()&&!e.name.startsWith("_")&&"static"!==e.name).map(r=>c(a().join(e,r.name),t,!0,s))),m={absolutePath:e,relativePath:a().relative(s,e),directoryName:e.split(a().sep).pop(),emailFilenames:d,subDirectories:u};return r?l(m):m}},86600:()=>{}};var t=require("../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),s=t.X(0,[707,409],()=>r(85261));module.exports=s})();
1
+ (()=>{var e={};e.id=492,e.ids=[492],e.modules={3046:(e,t,r)=>{"use strict";r.d(t,{Hf:()=>s}),process.env.EMAILS_DIR_RELATIVE_PATH,process.env.USER_PROJECT_LOCATION,process.env.EMAILS_DIR_ABSOLUTE_PATH;let s="true"===process.env.NEXT_PUBLIC_IS_BUILDING},3295:e=>{"use strict";e.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},7229:(e,t,r)=>{Promise.resolve().then(r.bind(r,90194))},10846:e=>{"use strict";e.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19121:e=>{"use strict";e.exports=require("next/dist/server/app-render/action-async-storage.external.js")},21820:e=>{"use strict";e.exports=require("os")},27910:e=>{"use strict";e.exports=require("stream")},28354:e=>{"use strict";e.exports=require("util")},29021:e=>{"use strict";e.exports=require("fs")},29294:e=>{"use strict";e.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:e=>{"use strict";e.exports=require("path")},34631:e=>{"use strict";e.exports=require("tls")},35201:(e,t,r)=>{"use strict";r.d(t,{a:()=>n});var s=r(91307),i=r(22573);let n=e=>{let t=(0,s.useRef)(null);(0,s.useEffect)(()=>{t.current||(t.current=(0,i.io)());let r=t.current;return r.on("reload",t=>{console.debug("Reloading..."),e(t)}),()=>{r.off()}},[e])}},36011:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>p,dynamic:()=>m,metadata:()=>u});var s=r(65800);r(37314);var i=r(56057),n=r(53323),o=r(81548),a=r(9237),l=r.n(a),c=r(28426),d=r.n(c);let u={title:"React Email"},m="force-dynamic",p=async({children:e})=>{let t=await (0,n.getEmailsDirectoryMetadata)(o.Z8);if(void 0===t)throw Error(`Could not find the emails directory specified under ${o.Z8}!`);return(0,s.jsx)("html",{className:`${l().variable} ${d().variable} font-sans`,lang:"en",children:(0,s.jsxs)("body",{className:"relative flex h-screen flex-col overflow-x-hidden bg-black text-slate-11 leading-loose selection:bg-cyan-5 selection:text-cyan-12",children:[(0,s.jsx)(i.EmailsProvider,{initialEmailsDirectoryMetadata:t,children:e}),(0,s.jsx)("div",{"aria-hidden":!0,className:"pointer-events-none absolute inset-0 bg-gradient-to-t from-slate-3"})]})})}},37314:()=>{},40443:(e,t,r)=>{"use strict";r.r(t),r.d(t,{GlobalError:()=>o.a,__next_app__:()=>u,pages:()=>d,routeModule:()=>m,tree:()=>c});var s=r(81680),i=r(28015),n=r(29415),o=r.n(n),a=r(94200),l={};for(let e in a)0>["default","tree","pages","GlobalError","__next_app__","routeModule"].indexOf(e)&&(l[e]=()=>a[e]);r.d(t,l);let c={children:["",{children:["/_not-found",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(r.t.bind(r,74597,23)),"next/dist/client/components/not-found-error"]}]},{}]},{layout:[()=>Promise.resolve().then(r.bind(r,36011)),"/home/gabriel/Projects/Resend/react-email.git/4.0/packages/react-email/src/app/layout.tsx"],"not-found":[()=>Promise.resolve().then(r.t.bind(r,74597,23)),"next/dist/client/components/not-found-error"],forbidden:[()=>Promise.resolve().then(r.t.bind(r,57160,23)),"next/dist/client/components/forbidden-error"],unauthorized:[()=>Promise.resolve().then(r.t.bind(r,12297,23)),"next/dist/client/components/unauthorized-error"]}]}.children,d=[],u={require:r,loadChunk:()=>Promise.resolve()},m=new s.AppPageRouteModule({definition:{kind:i.RouteKind.APP_PAGE,page:"/_not-found/page",pathname:"/_not-found",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:c}})},53323:(e,t,r)=>{"use strict";r.r(t),r.d(t,{getEmailsDirectoryMetadata:()=>c});var s=r(73024),i=r.n(s),n=r(76760),o=r.n(n);let a=e=>{if(i().statSync(e).isDirectory())return!1;let{ext:t}=o().parse(e);if(![".js",".tsx",".jsx"].includes(t)||!i().existsSync(e))return!1;let r=i().readFileSync(e,"utf8");return/\bexport\s+default\b/gm.test(r)},l=e=>{let t=e;for(;0===t.emailFilenames.length&&1===t.subDirectories.length;){let e=t.subDirectories[0];t={...e,directoryName:o().join(t.directoryName,e.directoryName)}}return t},c=async(e,t=!1,r=!1,s=e)=>{if(!i().existsSync(e))return;let n=await i().promises.readdir(e,{withFileTypes:!0}),d=n.filter(t=>a(o().join(e,t.name))).map(e=>t?e.name:e.name.replace(o().extname(e.name),"")),u=await Promise.all(n.filter(e=>e.isDirectory()&&!e.name.startsWith("_")&&"static"!==e.name).map(r=>c(o().join(e,r.name),t,!0,s))),m={absolutePath:e,relativePath:o().relative(s,e),directoryName:e.split(o().sep).pop(),emailFilenames:d,subDirectories:u};return r?l(m):m}},53877:(e,t,r)=>{Promise.resolve().then(r.t.bind(r,53775,23)),Promise.resolve().then(r.t.bind(r,3619,23)),Promise.resolve().then(r.t.bind(r,29415,23)),Promise.resolve().then(r.t.bind(r,70118,23)),Promise.resolve().then(r.t.bind(r,36178,23)),Promise.resolve().then(r.t.bind(r,37926,23)),Promise.resolve().then(r.t.bind(r,73628,23)),Promise.resolve().then(r.t.bind(r,27814,23))},55511:e=>{"use strict";e.exports=require("crypto")},55591:e=>{"use strict";e.exports=require("https")},56057:(e,t,r)=>{"use strict";r.d(t,{EmailsProvider:()=>i});var s=r(86188);(0,s.registerClientReference)(function(){throw Error("Attempted to call useEmails() from the server but useEmails is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/gabriel/Projects/Resend/react-email.git/4.0/packages/react-email/src/contexts/emails.tsx","useEmails");let i=(0,s.registerClientReference)(function(){throw Error("Attempted to call EmailsProvider() from the server but EmailsProvider is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/gabriel/Projects/Resend/react-email.git/4.0/packages/react-email/src/contexts/emails.tsx","EmailsProvider")},63033:e=>{"use strict";e.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},63261:(e,t,r)=>{Promise.resolve().then(r.bind(r,56057))},72112:()=>{},73024:e=>{"use strict";e.exports=require("node:fs")},74075:e=>{"use strict";e.exports=require("zlib")},76760:e=>{"use strict";e.exports=require("node:path")},79428:e=>{"use strict";e.exports=require("buffer")},79551:e=>{"use strict";e.exports=require("url")},79646:e=>{"use strict";e.exports=require("child_process")},81548:(e,t,r)=>{"use strict";r.d(t,{Hf:()=>i,Z8:()=>s}),process.env.EMAILS_DIR_RELATIVE_PATH,process.env.USER_PROJECT_LOCATION;let s=process.env.EMAILS_DIR_ABSOLUTE_PATH,i="true"===process.env.NEXT_PUBLIC_IS_BUILDING},81630:e=>{"use strict";e.exports=require("http")},83997:e=>{"use strict";e.exports=require("tty")},90194:(e,t,r)=>{"use strict";r.d(t,{EmailsProvider:()=>u,J:()=>d});var s=r(7666),i=r(91307),n=r(94450);let o=(0,n.createServerReference)("7f1e597e2c34f308d1c653d80ad406af0454e4eb72",n.callServer,void 0,n.findSourceMapURL,"getEmailsDirectoryMetadataAction");var a=r(3046),l=r(35201);let c=(0,i.createContext)(void 0),d=()=>{let e=(0,i.useContext)(c);if(void 0===e)throw Error("Cannot call `useEmail()` outside of an EmailsContext provider!");return e},u=e=>{let[t,r]=(0,i.useState)(e.initialEmailsDirectoryMetadata);return a.Hf||(0,l.a)(async()=>{let t=await o(e.initialEmailsDirectoryMetadata.absolutePath);if(t)r(t);else throw Error("Hot reloading: unable to find the emails directory to update the sidebar")}),(0,s.jsx)(c.Provider,{value:{emailsDirectoryMetadata:t},children:e.children})}},91645:e=>{"use strict";e.exports=require("net")},92665:()=>{},94735:e=>{"use strict";e.exports=require("events")},95733:(e,t,r)=>{Promise.resolve().then(r.t.bind(r,98861,23)),Promise.resolve().then(r.t.bind(r,79293,23)),Promise.resolve().then(r.t.bind(r,11701,23)),Promise.resolve().then(r.t.bind(r,42580,23)),Promise.resolve().then(r.t.bind(r,59628,23)),Promise.resolve().then(r.t.bind(r,88624,23)),Promise.resolve().then(r.t.bind(r,76198,23)),Promise.resolve().then(r.t.bind(r,60424,23))},96689:(e,t,r)=>{"use strict";r.r(t),r.d(t,{"7f1e597e2c34f308d1c653d80ad406af0454e4eb72":()=>m});var s=r(89170);r(15300);var i=r(73024),n=r.n(i),o=r(76760),a=r.n(o);let l=e=>{if(n().statSync(e).isDirectory())return!1;let{ext:t}=a().parse(e);if(![".js",".tsx",".jsx"].includes(t)||!n().existsSync(e))return!1;let r=n().readFileSync(e,"utf8");return/\bexport\s+default\b/gm.test(r)},c=e=>{let t=e;for(;0===t.emailFilenames.length&&1===t.subDirectories.length;){let e=t.subDirectories[0];t={...e,directoryName:a().join(t.directoryName,e.directoryName)}}return t},d=async(e,t=!1,r=!1,s=e)=>{if(!n().existsSync(e))return;let i=await n().promises.readdir(e,{withFileTypes:!0}),o=i.filter(t=>l(a().join(e,t.name))).map(e=>t?e.name:e.name.replace(a().extname(e.name),"")),u=await Promise.all(i.filter(e=>e.isDirectory()&&!e.name.startsWith("_")&&"static"!==e.name).map(r=>d(a().join(e,r.name),t,!0,s))),m={absolutePath:e,relativePath:a().relative(s,e),directoryName:e.split(a().sep).pop(),emailFilenames:o,subDirectories:u};return r?c(m):m};var u=r(48684);let m=async(e,t=!1,r=!1,s=e)=>d(e,t,r,s);(0,u.D)([m]),(0,s.A)(m,"7f1e597e2c34f308d1c653d80ad406af0454e4eb72",null)}};var t=require("../../webpack-runtime.js");t.C(e);var r=e=>t(t.s=e),s=t.X(0,[811,600],()=>r(40443));module.exports=s})();
@@ -1 +1 @@
1
- {"version":1,"files":["../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/clean-async-snapshot-instance.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/clean-async-snapshot.external.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/.pnpm/next@15.1.7_@babel+core@7.24.5_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/package.json","../../../../node_modules/next","../../../package.json","../../chunks/409.js","../../chunks/707.js","../../webpack-runtime.js","page_client-reference-manifest.js"]}
1
+ {"version":1,"files":["../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/clean-async-snapshot-instance.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/clean-async-snapshot.external.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/.pnpm/next@15.2.2_@babel+core@7.26.10_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/next/package.json","../../../../node_modules/next","../../../package.json","../../chunks/600.js","../../chunks/811.js","../../webpack-runtime.js","page_client-reference-manifest.js"]}