🚀 Big News:Socket Has Acquired Secure Annex.Learn More
Socket
Book a DemoSign in
Socket

@wixc3/react-board

Package Overview
Dependencies
Maintainers
84
Versions
31
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@wixc3/react-board - npm Package Compare versions

Comparing version
2.0.5
to
2.1.2
+1
-1
dist/react-error-handled-render.d.ts.map

@@ -1,1 +0,1 @@

{"version":3,"file":"react-error-handled-render.d.ts","sourceRoot":"","sources":["../src/react-error-handled-render.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,eAAO,MAAM,0BAA0B,YAAmB,MAAM,YAAY,aAAa,WAAW,wBAmBnG,CAAC"}
{"version":3,"file":"react-error-handled-render.d.ts","sourceRoot":"","sources":["../src/react-error-handled-render.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,eAAO,MAAM,0BAA0B,YAAmB,MAAM,YAAY,aAAa,WAAW,wBAuBnG,CAAC"}

@@ -10,10 +10,15 @@ "use strict";

const client_1 = __importDefault(require("react-dom/client"));
const reactRootByContainer = new WeakMap();
const reactErrorHandledRendering = async (element, container) => {
if (client_1.default.createRoot) {
// react 18+
const reactRoot = client_1.default.createRoot(container);
const reactRoot = reactRootByContainer.get(container) || client_1.default.createRoot(container);
reactRootByContainer.set(container, reactRoot);
await new Promise((resolve, reject) => {
reactRoot.render(react_1.default.createElement(ErrorBoundary, { onMount: resolve, reportError: reject }, element));
reactRoot === null || reactRoot === void 0 ? void 0 : reactRoot.render(react_1.default.createElement(ErrorBoundary, { onRender: resolve, reportError: reject }, element));
});
return () => reactRoot.unmount();
return () => {
reactRoot === null || reactRoot === void 0 ? void 0 : reactRoot.unmount();
reactRootByContainer.delete(container);
};
}

@@ -43,4 +48,8 @@ else {

var _a, _b;
(_b = (_a = this.props).onMount) === null || _b === void 0 ? void 0 : _b.call(_a);
(_b = (_a = this.props).onRender) === null || _b === void 0 ? void 0 : _b.call(_a);
}
componentDidUpdate() {
var _a, _b;
(_b = (_a = this.props).onRender) === null || _b === void 0 ? void 0 : _b.call(_a);
}
render() {

@@ -47,0 +56,0 @@ return this.state.hasError ? null : this.props.children;

@@ -1,1 +0,1 @@

{"version":3,"file":"react-error-handled-render.js","sourceRoot":"","sources":["../src/react-error-handled-render.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,0DAAiC;AACjC,8DAA8C;AAEvC,MAAM,0BAA0B,GAAG,KAAK,EAAE,OAA2B,EAAE,SAAsB,EAAE,EAAE;IACpG,IAAI,gBAAc,CAAC,UAAU,EAAE;QAC3B,YAAY;QACZ,MAAM,SAAS,GAAG,gBAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACvD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACxC,SAAS,CAAC,MAAM,CACZ,8BAAC,aAAa,IAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,IAC/C,OAAO,CACI,CACnB,CAAC;QACN,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;KACpC;SAAM;QACH,YAAY;QACZ,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACxC,mBAAQ,CAAC,MAAM,CAAC,8BAAC,aAAa,IAAC,WAAW,EAAE,MAAM,IAAG,OAAO,CAAiB,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACvG,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,EAAE,CAAC,mBAAQ,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;KAC3D;AACL,CAAC,CAAC;AAnBW,QAAA,0BAA0B,8BAmBrC;AAOF,MAAM,aAAc,SAAQ,eAAK,CAAC,SAA4E;IAA9G;;QACoB,UAAK,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAahD,CAAC;IAZG,MAAM,CAAC,wBAAwB;QAC3B,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC9B,CAAC;IACe,iBAAiB,CAAC,KAAc,EAAE,SAA0B;;QACxE,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,WAAW,mDAAG,KAAK,EAAE,SAAS,CAAC,CAAC;IAC/C,CAAC;IACe,iBAAiB;;QAC7B,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,OAAO,kDAAI,CAAC;IAC3B,CAAC;IACe,MAAM;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC5D,CAAC;CACJ"}
{"version":3,"file":"react-error-handled-render.js","sourceRoot":"","sources":["../src/react-error-handled-render.tsx"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,0DAAiC;AACjC,8DAA8C;AAE9C,MAAM,oBAAoB,GAAG,IAAI,OAAO,EAAoC,CAAC;AAEtE,MAAM,0BAA0B,GAAG,KAAK,EAAE,OAA2B,EAAE,SAAsB,EAAE,EAAE;IACpG,IAAI,gBAAc,CAAC,UAAU,EAAE;QAC3B,YAAY;QACZ,MAAM,SAAS,GAAG,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,gBAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAC9F,oBAAoB,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAC/C,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACxC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CACb,8BAAC,aAAa,IAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,IAChD,OAAO,CACI,CACnB,CAAC;QACN,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,EAAE;YACR,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,EAAE,CAAC;YACrB,oBAAoB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC3C,CAAC,CAAC;KACL;SAAM;QACH,YAAY;QACZ,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACxC,mBAAQ,CAAC,MAAM,CAAC,8BAAC,aAAa,IAAC,WAAW,EAAE,MAAM,IAAG,OAAO,CAAiB,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACvG,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,EAAE,CAAC,mBAAQ,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;KAC3D;AACL,CAAC,CAAC;AAvBW,QAAA,0BAA0B,8BAuBrC;AAOF,MAAM,aAAc,SAAQ,eAAK,CAAC,SAA4E;IAA9G;;QACoB,UAAK,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAgBhD,CAAC;IAfG,MAAM,CAAC,wBAAwB;QAC3B,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC9B,CAAC;IACe,iBAAiB,CAAC,KAAc,EAAE,SAA0B;;QACxE,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,WAAW,mDAAG,KAAK,EAAE,SAAS,CAAC,CAAC;IAC/C,CAAC;IACe,iBAAiB;;QAC7B,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,kDAAI,CAAC;IAC5B,CAAC;IACe,kBAAkB;;QAC9B,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,kDAAI,CAAC;IAC5B,CAAC;IACe,MAAM;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC5D,CAAC;CACJ"}
{
"name": "@wixc3/react-board",
"description": "Library for creation of React component boards",
"version": "2.0.5",
"version": "2.1.2",
"main": "dist/index.js",

@@ -11,3 +11,3 @@ "peerDependencies": {

"dependencies": {
"@wixc3/board-core": "^2.0.5"
"@wixc3/board-core": "^2.1.2"
},

@@ -14,0 +14,0 @@ "files": [

@@ -5,9 +5,12 @@ import React from 'react';

const reactRootByContainer = new WeakMap<HTMLElement, ReactDOMClient.Root>();
export const reactErrorHandledRendering = async (element: React.ReactElement, container: HTMLElement) => {
if (ReactDOMClient.createRoot) {
// react 18+
const reactRoot = ReactDOMClient.createRoot(container);
const reactRoot = reactRootByContainer.get(container) || ReactDOMClient.createRoot(container);
reactRootByContainer.set(container, reactRoot);
await new Promise<void>((resolve, reject) => {
reactRoot.render(
<ErrorBoundary onMount={resolve} reportError={reject}>
reactRoot?.render(
<ErrorBoundary onRender={resolve} reportError={reject}>
{element}

@@ -17,3 +20,6 @@ </ErrorBoundary>

});
return () => reactRoot.unmount();
return () => {
reactRoot?.unmount();
reactRootByContainer.delete(container);
};
} else {

@@ -29,3 +35,3 @@ // react <18

interface ErrorBoundryProps {
onMount?(): void;
onRender?(): void;
reportError?(error: unknown, errorInfo: React.ErrorInfo): void;

@@ -43,4 +49,7 @@ }

public override componentDidMount() {
this.props.onMount?.();
this.props.onRender?.();
}
public override componentDidUpdate() {
this.props.onRender?.();
}
public override render() {

@@ -47,0 +56,0 @@ return this.state.hasError ? null : this.props.children;