summaryrefslogtreecommitdiff
path: root/packages/renderers/renderer-react/server.js
diff options
context:
space:
mode:
Diffstat (limited to 'packages/renderers/renderer-react/server.js')
-rw-r--r--packages/renderers/renderer-react/server.js90
1 files changed, 45 insertions, 45 deletions
diff --git a/packages/renderers/renderer-react/server.js b/packages/renderers/renderer-react/server.js
index 2660c8762..1c0c41286 100644
--- a/packages/renderers/renderer-react/server.js
+++ b/packages/renderers/renderer-react/server.js
@@ -5,63 +5,63 @@ import StaticHtml from './static-html.js';
const reactTypeof = Symbol.for('react.element');
function errorIsComingFromPreactComponent(err) {
- return err.message && (err.message.startsWith("Cannot read property '__H'") || err.message.includes("(reading '__H')"));
+ return err.message && (err.message.startsWith("Cannot read property '__H'") || err.message.includes("(reading '__H')"));
}
function check(Component, props, children) {
- // Note: there are packages that do some unholy things to create "components".
- // Checking the $$typeof property catches most of these patterns.
- if (typeof Component === 'object') {
- const $$typeof = Component['$$typeof'];
- return $$typeof && $$typeof.toString().slice('Symbol('.length).startsWith('react');
- }
- if (typeof Component !== 'function') return false;
+ // Note: there are packages that do some unholy things to create "components".
+ // Checking the $$typeof property catches most of these patterns.
+ if (typeof Component === 'object') {
+ const $$typeof = Component['$$typeof'];
+ return $$typeof && $$typeof.toString().slice('Symbol('.length).startsWith('react');
+ }
+ if (typeof Component !== 'function') return false;
- if (Component.prototype != null && typeof Component.prototype.render === 'function') {
- return React.Component.isPrototypeOf(Component) || React.PureComponent.isPrototypeOf(Component);
- }
+ if (Component.prototype != null && typeof Component.prototype.render === 'function') {
+ return React.Component.isPrototypeOf(Component) || React.PureComponent.isPrototypeOf(Component);
+ }
- let error = null;
- let isReactComponent = false;
- function Tester(...args) {
- try {
- const vnode = Component(...args);
- if (vnode && vnode['$$typeof'] === reactTypeof) {
- isReactComponent = true;
- }
- } catch (err) {
- if (!errorIsComingFromPreactComponent(err)) {
- error = err;
- }
- }
+ let error = null;
+ let isReactComponent = false;
+ function Tester(...args) {
+ try {
+ const vnode = Component(...args);
+ if (vnode && vnode['$$typeof'] === reactTypeof) {
+ isReactComponent = true;
+ }
+ } catch (err) {
+ if (!errorIsComingFromPreactComponent(err)) {
+ error = err;
+ }
+ }
- return React.createElement('div');
- }
+ return React.createElement('div');
+ }
- renderToStaticMarkup(Tester, props, children, {});
+ renderToStaticMarkup(Tester, props, children, {});
- if (error) {
- throw error;
- }
- return isReactComponent;
+ if (error) {
+ throw error;
+ }
+ return isReactComponent;
}
function renderToStaticMarkup(Component, props, children, metadata) {
- delete props['class'];
- const vnode = React.createElement(Component, {
- ...props,
- children: children != null ? React.createElement(StaticHtml, { value: children }) : undefined,
- });
- let html;
- if (metadata && metadata.hydrate) {
- html = ReactDOM.renderToString(vnode);
- } else {
- html = ReactDOM.renderToStaticMarkup(vnode);
- }
- return { html };
+ delete props['class'];
+ const vnode = React.createElement(Component, {
+ ...props,
+ children: children != null ? React.createElement(StaticHtml, { value: children }) : undefined,
+ });
+ let html;
+ if (metadata && metadata.hydrate) {
+ html = ReactDOM.renderToString(vnode);
+ } else {
+ html = ReactDOM.renderToStaticMarkup(vnode);
+ }
+ return { html };
}
export default {
- check,
- renderToStaticMarkup,
+ check,
+ renderToStaticMarkup,
};