@react-email/render 1.0.0-canary.1 → 1.0.1

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.
@@ -15,9 +15,9 @@ type Options = {
15
15
  htmlToTextOptions?: HtmlToTextOptions;
16
16
  });
17
17
 
18
- declare const render: (component: React.ReactElement, options?: Options) => Promise<string>;
18
+ declare const render: (element: React.ReactElement, options?: Options) => Promise<string>;
19
19
 
20
- declare const renderAsync: (component: React.ReactElement, options?: Options) => Promise<string>;
20
+ declare const renderAsync: (element: React.ReactElement, options?: Options) => Promise<string>;
21
21
 
22
22
  declare const plainTextSelectors: SelectorDefinition[];
23
23
 
@@ -15,9 +15,9 @@ type Options = {
15
15
  htmlToTextOptions?: HtmlToTextOptions;
16
16
  });
17
17
 
18
- declare const render: (component: React.ReactElement, options?: Options) => Promise<string>;
18
+ declare const render: (element: React.ReactElement, options?: Options) => Promise<string>;
19
19
 
20
- declare const renderAsync: (component: React.ReactElement, options?: Options) => Promise<string>;
20
+ declare const renderAsync: (element: React.ReactElement, options?: Options) => Promise<string>;
21
21
 
22
22
  declare const plainTextSelectors: SelectorDefinition[];
23
23
 
@@ -70,7 +70,7 @@ __export(browser_exports, {
70
70
  });
71
71
  module.exports = __toCommonJS(browser_exports);
72
72
 
73
- // src/browser/render.ts
73
+ // src/browser/render.tsx
74
74
  var import_html_to_text = require("html-to-text");
75
75
 
76
76
  // src/shared/utils/pretty.ts
@@ -96,7 +96,9 @@ var plainTextSelectors = [
96
96
  }
97
97
  ];
98
98
 
99
- // src/browser/render.ts
99
+ // src/browser/render.tsx
100
+ var import_react = require("react");
101
+ var import_jsx_runtime = require("react/jsx-runtime");
100
102
  var decoder = new TextDecoder("utf-8");
101
103
  var readStream = (stream) => __async(void 0, null, function* () {
102
104
  let result = "";
@@ -119,16 +121,17 @@ var readStream = (stream) => __async(void 0, null, function* () {
119
121
  }
120
122
  return result;
121
123
  });
122
- var render = (component, options) => __async(void 0, null, function* () {
124
+ var render = (element, options) => __async(void 0, null, function* () {
125
+ const suspendedElement = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.Suspense, { children: element });
123
126
  const { default: reactDOMServer } = yield import("react-dom/server");
124
127
  let html;
125
128
  if (Object.hasOwn(reactDOMServer, "renderToReadableStream")) {
126
129
  html = yield readStream(
127
- yield reactDOMServer.renderToReadableStream(component)
130
+ yield reactDOMServer.renderToReadableStream(suspendedElement)
128
131
  );
129
132
  } else {
130
133
  yield new Promise((resolve, reject) => {
131
- const stream = reactDOMServer.renderToPipeableStream(component, {
134
+ const stream = reactDOMServer.renderToPipeableStream(suspendedElement, {
132
135
  onAllReady() {
133
136
  return __async(this, null, function* () {
134
137
  html = yield readStream(stream);
@@ -154,8 +157,10 @@ var render = (component, options) => __async(void 0, null, function* () {
154
157
  return document;
155
158
  });
156
159
 
157
- // src/browser/render-async.ts
160
+ // src/browser/render-async.tsx
158
161
  var import_html_to_text2 = require("html-to-text");
162
+ var import_react2 = require("react");
163
+ var import_jsx_runtime2 = require("react/jsx-runtime");
159
164
  var decoder2 = new TextDecoder("utf-8");
160
165
  var readStream2 = (stream) => __async(void 0, null, function* () {
161
166
  let result = "";
@@ -178,16 +183,17 @@ var readStream2 = (stream) => __async(void 0, null, function* () {
178
183
  }
179
184
  return result;
180
185
  });
181
- var renderAsync = (component, options) => __async(void 0, null, function* () {
186
+ var renderAsync = (element, options) => __async(void 0, null, function* () {
187
+ const suspendedElement = /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react2.Suspense, { children: element });
182
188
  const { default: reactDOMServer } = yield import("react-dom/server");
183
189
  let html;
184
190
  if (Object.hasOwn(reactDOMServer, "renderToReadableStream")) {
185
191
  html = yield readStream2(
186
- yield reactDOMServer.renderToReadableStream(component)
192
+ yield reactDOMServer.renderToReadableStream(suspendedElement)
187
193
  );
188
194
  } else {
189
195
  yield new Promise((resolve, reject) => {
190
- const stream = reactDOMServer.renderToPipeableStream(component, {
196
+ const stream = reactDOMServer.renderToPipeableStream(suspendedElement, {
191
197
  onAllReady() {
192
198
  return __async(this, null, function* () {
193
199
  html = yield readStream2(stream);
@@ -35,7 +35,7 @@ var __async = (__this, __arguments, generator) => {
35
35
  });
36
36
  };
37
37
 
38
- // src/browser/render.ts
38
+ // src/browser/render.tsx
39
39
  import { convert } from "html-to-text";
40
40
 
41
41
  // src/shared/utils/pretty.ts
@@ -61,7 +61,9 @@ var plainTextSelectors = [
61
61
  }
62
62
  ];
63
63
 
64
- // src/browser/render.ts
64
+ // src/browser/render.tsx
65
+ import { Suspense } from "react";
66
+ import { jsx } from "react/jsx-runtime";
65
67
  var decoder = new TextDecoder("utf-8");
66
68
  var readStream = (stream) => __async(void 0, null, function* () {
67
69
  let result = "";
@@ -84,16 +86,17 @@ var readStream = (stream) => __async(void 0, null, function* () {
84
86
  }
85
87
  return result;
86
88
  });
87
- var render = (component, options) => __async(void 0, null, function* () {
89
+ var render = (element, options) => __async(void 0, null, function* () {
90
+ const suspendedElement = /* @__PURE__ */ jsx(Suspense, { children: element });
88
91
  const { default: reactDOMServer } = yield import("react-dom/server");
89
92
  let html;
90
93
  if (Object.hasOwn(reactDOMServer, "renderToReadableStream")) {
91
94
  html = yield readStream(
92
- yield reactDOMServer.renderToReadableStream(component)
95
+ yield reactDOMServer.renderToReadableStream(suspendedElement)
93
96
  );
94
97
  } else {
95
98
  yield new Promise((resolve, reject) => {
96
- const stream = reactDOMServer.renderToPipeableStream(component, {
99
+ const stream = reactDOMServer.renderToPipeableStream(suspendedElement, {
97
100
  onAllReady() {
98
101
  return __async(this, null, function* () {
99
102
  html = yield readStream(stream);
@@ -119,8 +122,10 @@ var render = (component, options) => __async(void 0, null, function* () {
119
122
  return document;
120
123
  });
121
124
 
122
- // src/browser/render-async.ts
125
+ // src/browser/render-async.tsx
123
126
  import { convert as convert2 } from "html-to-text";
127
+ import { Suspense as Suspense2 } from "react";
128
+ import { jsx as jsx2 } from "react/jsx-runtime";
124
129
  var decoder2 = new TextDecoder("utf-8");
125
130
  var readStream2 = (stream) => __async(void 0, null, function* () {
126
131
  let result = "";
@@ -143,16 +148,17 @@ var readStream2 = (stream) => __async(void 0, null, function* () {
143
148
  }
144
149
  return result;
145
150
  });
146
- var renderAsync = (component, options) => __async(void 0, null, function* () {
151
+ var renderAsync = (element, options) => __async(void 0, null, function* () {
152
+ const suspendedElement = /* @__PURE__ */ jsx2(Suspense2, { children: element });
147
153
  const { default: reactDOMServer } = yield import("react-dom/server");
148
154
  let html;
149
155
  if (Object.hasOwn(reactDOMServer, "renderToReadableStream")) {
150
156
  html = yield readStream2(
151
- yield reactDOMServer.renderToReadableStream(component)
157
+ yield reactDOMServer.renderToReadableStream(suspendedElement)
152
158
  );
153
159
  } else {
154
160
  yield new Promise((resolve, reject) => {
155
- const stream = reactDOMServer.renderToPipeableStream(component, {
161
+ const stream = reactDOMServer.renderToPipeableStream(suspendedElement, {
156
162
  onAllReady() {
157
163
  return __async(this, null, function* () {
158
164
  html = yield readStream2(stream);
@@ -15,12 +15,12 @@ type Options = {
15
15
  htmlToTextOptions?: HtmlToTextOptions;
16
16
  });
17
17
 
18
- declare const render: (component: React.ReactElement, options?: Options) => Promise<string>;
18
+ declare const render: (element: React.ReactElement, options?: Options) => Promise<string>;
19
19
 
20
20
  /**
21
21
  * @deprecated use `render`
22
22
  */
23
- declare const renderAsync: (component: React.ReactElement, options?: Options) => Promise<string>;
23
+ declare const renderAsync: (element: React.ReactElement, options?: Options) => Promise<string>;
24
24
 
25
25
  declare const plainTextSelectors: SelectorDefinition[];
26
26
 
@@ -15,12 +15,12 @@ type Options = {
15
15
  htmlToTextOptions?: HtmlToTextOptions;
16
16
  });
17
17
 
18
- declare const render: (component: React.ReactElement, options?: Options) => Promise<string>;
18
+ declare const render: (element: React.ReactElement, options?: Options) => Promise<string>;
19
19
 
20
20
  /**
21
21
  * @deprecated use `render`
22
22
  */
23
- declare const renderAsync: (component: React.ReactElement, options?: Options) => Promise<string>;
23
+ declare const renderAsync: (element: React.ReactElement, options?: Options) => Promise<string>;
24
24
 
25
25
  declare const plainTextSelectors: SelectorDefinition[];
26
26
 
@@ -70,7 +70,7 @@ __export(node_exports, {
70
70
  });
71
71
  module.exports = __toCommonJS(node_exports);
72
72
 
73
- // src/node/render.ts
73
+ // src/node/render.tsx
74
74
  var import_node_stream = require("stream");
75
75
  var import_html_to_text = require("html-to-text");
76
76
 
@@ -97,7 +97,9 @@ var plainTextSelectors = [
97
97
  }
98
98
  ];
99
99
 
100
- // src/node/render.ts
100
+ // src/node/render.tsx
101
+ var import_react = require("react");
102
+ var import_jsx_runtime = require("react/jsx-runtime");
101
103
  var decoder = new TextDecoder("utf-8");
102
104
  var readStream = (stream) => __async(void 0, null, function* () {
103
105
  let result = "";
@@ -125,16 +127,17 @@ var readStream = (stream) => __async(void 0, null, function* () {
125
127
  }
126
128
  return result;
127
129
  });
128
- var render = (component, options) => __async(void 0, null, function* () {
130
+ var render = (element, options) => __async(void 0, null, function* () {
131
+ const suspendedElement = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.Suspense, { children: element });
129
132
  const { default: reactDOMServer } = yield import("react-dom/server");
130
133
  let html;
131
134
  if (Object.hasOwn(reactDOMServer, "renderToReadableStream")) {
132
135
  html = yield readStream(
133
- yield reactDOMServer.renderToReadableStream(component)
136
+ yield reactDOMServer.renderToReadableStream(suspendedElement)
134
137
  );
135
138
  } else {
136
139
  yield new Promise((resolve, reject) => {
137
- const stream = reactDOMServer.renderToPipeableStream(component, {
140
+ const stream = reactDOMServer.renderToPipeableStream(suspendedElement, {
138
141
  onAllReady() {
139
142
  return __async(this, null, function* () {
140
143
  html = yield readStream(stream);
@@ -160,9 +163,11 @@ var render = (component, options) => __async(void 0, null, function* () {
160
163
  return document;
161
164
  });
162
165
 
163
- // src/node/render-async.ts
166
+ // src/node/render-async.tsx
164
167
  var import_node_stream2 = require("stream");
165
168
  var import_html_to_text2 = require("html-to-text");
169
+ var import_react2 = require("react");
170
+ var import_jsx_runtime2 = require("react/jsx-runtime");
166
171
  var decoder2 = new TextDecoder("utf-8");
167
172
  var readStream2 = (stream) => __async(void 0, null, function* () {
168
173
  let result = "";
@@ -190,16 +195,17 @@ var readStream2 = (stream) => __async(void 0, null, function* () {
190
195
  }
191
196
  return result;
192
197
  });
193
- var renderAsync = (component, options) => __async(void 0, null, function* () {
198
+ var renderAsync = (element, options) => __async(void 0, null, function* () {
199
+ const suspendedElement = /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_react2.Suspense, { children: element });
194
200
  const { default: reactDOMServer } = yield import("react-dom/server");
195
201
  let html;
196
202
  if (Object.hasOwn(reactDOMServer, "renderToReadableStream")) {
197
203
  html = yield readStream2(
198
- yield reactDOMServer.renderToReadableStream(component)
204
+ yield reactDOMServer.renderToReadableStream(suspendedElement)
199
205
  );
200
206
  } else {
201
207
  yield new Promise((resolve, reject) => {
202
- const stream = reactDOMServer.renderToPipeableStream(component, {
208
+ const stream = reactDOMServer.renderToPipeableStream(suspendedElement, {
203
209
  onAllReady() {
204
210
  return __async(this, null, function* () {
205
211
  html = yield readStream2(stream);
@@ -35,7 +35,7 @@ var __async = (__this, __arguments, generator) => {
35
35
  });
36
36
  };
37
37
 
38
- // src/node/render.ts
38
+ // src/node/render.tsx
39
39
  import { Writable } from "node:stream";
40
40
  import { convert } from "html-to-text";
41
41
 
@@ -62,7 +62,9 @@ var plainTextSelectors = [
62
62
  }
63
63
  ];
64
64
 
65
- // src/node/render.ts
65
+ // src/node/render.tsx
66
+ import { Suspense } from "react";
67
+ import { jsx } from "react/jsx-runtime";
66
68
  var decoder = new TextDecoder("utf-8");
67
69
  var readStream = (stream) => __async(void 0, null, function* () {
68
70
  let result = "";
@@ -90,16 +92,17 @@ var readStream = (stream) => __async(void 0, null, function* () {
90
92
  }
91
93
  return result;
92
94
  });
93
- var render = (component, options) => __async(void 0, null, function* () {
95
+ var render = (element, options) => __async(void 0, null, function* () {
96
+ const suspendedElement = /* @__PURE__ */ jsx(Suspense, { children: element });
94
97
  const { default: reactDOMServer } = yield import("react-dom/server");
95
98
  let html;
96
99
  if (Object.hasOwn(reactDOMServer, "renderToReadableStream")) {
97
100
  html = yield readStream(
98
- yield reactDOMServer.renderToReadableStream(component)
101
+ yield reactDOMServer.renderToReadableStream(suspendedElement)
99
102
  );
100
103
  } else {
101
104
  yield new Promise((resolve, reject) => {
102
- const stream = reactDOMServer.renderToPipeableStream(component, {
105
+ const stream = reactDOMServer.renderToPipeableStream(suspendedElement, {
103
106
  onAllReady() {
104
107
  return __async(this, null, function* () {
105
108
  html = yield readStream(stream);
@@ -125,9 +128,11 @@ var render = (component, options) => __async(void 0, null, function* () {
125
128
  return document;
126
129
  });
127
130
 
128
- // src/node/render-async.ts
131
+ // src/node/render-async.tsx
129
132
  import { Writable as Writable2 } from "node:stream";
130
133
  import { convert as convert2 } from "html-to-text";
134
+ import { Suspense as Suspense2 } from "react";
135
+ import { jsx as jsx2 } from "react/jsx-runtime";
131
136
  var decoder2 = new TextDecoder("utf-8");
132
137
  var readStream2 = (stream) => __async(void 0, null, function* () {
133
138
  let result = "";
@@ -155,16 +160,17 @@ var readStream2 = (stream) => __async(void 0, null, function* () {
155
160
  }
156
161
  return result;
157
162
  });
158
- var renderAsync = (component, options) => __async(void 0, null, function* () {
163
+ var renderAsync = (element, options) => __async(void 0, null, function* () {
164
+ const suspendedElement = /* @__PURE__ */ jsx2(Suspense2, { children: element });
159
165
  const { default: reactDOMServer } = yield import("react-dom/server");
160
166
  let html;
161
167
  if (Object.hasOwn(reactDOMServer, "renderToReadableStream")) {
162
168
  html = yield readStream2(
163
- yield reactDOMServer.renderToReadableStream(component)
169
+ yield reactDOMServer.renderToReadableStream(suspendedElement)
164
170
  );
165
171
  } else {
166
172
  yield new Promise((resolve, reject) => {
167
- const stream = reactDOMServer.renderToPipeableStream(component, {
173
+ const stream = reactDOMServer.renderToPipeableStream(suspendedElement, {
168
174
  onAllReady() {
169
175
  return __async(this, null, function* () {
170
176
  html = yield readStream2(stream);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-email/render",
3
- "version": "1.0.0-canary.1",
3
+ "version": "1.0.1",
4
4
  "description": "Transform React components into HTML email templates",
5
5
  "sideEffects": false,
6
6
  "main": "./dist/browser/index.js",