@natterstefan/react-editor-js
Advanced tools
Comparing version 0.2.1 to 0.2.2
@@ -5,2 +5,10 @@ # react-editor-js | ||
### [0.2.2](https://github.com/natterstefan/react-editor-js/compare/v0.2.1...v0.2.2) (2019-11-23) | ||
### Features | ||
* added reinitializeOnPropsChange ([b80d900](https://github.com/natterstefan/react-editor-js/commit/b80d90024b5653c91c4c907f2bbc97efa7e82f98)) | ||
### [0.2.1](https://github.com/natterstefan/react-editor-js/compare/v0.2.0...v0.2.1) (2019-11-13) | ||
@@ -7,0 +15,0 @@ |
@@ -1,2 +0,2 @@ | ||
!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r(require("react"),require("@editorjs/editorjs"),require("@editorjs/paragraph"),require("@editorjs/header")):"function"==typeof define&&define.amd?define(["react","@editorjs/editorjs","@editorjs/paragraph","@editorjs/header"],r):"object"==typeof exports?exports.ReactEditorJs=r(require("react"),require("@editorjs/editorjs"),require("@editorjs/paragraph"),require("@editorjs/header")):e.ReactEditorJs=r(e.react,e["@editorjs/editorjs"],e["@editorjs/paragraph"],e["@editorjs/header"])}(window,(function(e,r,t,o){return function(e){var r={};function t(o){if(r[o])return r[o].exports;var n=r[o]={i:o,l:!1,exports:{}};return e[o].call(n.exports,n,n.exports,t),n.l=!0,n.exports}return t.m=e,t.c=r,t.d=function(e,r,o){t.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:o})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,r){if(1&r&&(e=t(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(t.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)t.d(o,n,function(r){return e[r]}.bind(null,n));return o},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},t.p="",t(t.s=0)}([function(e,r,t){"use strict";var o=this&&this.__assign||function(){return(o=Object.assign||function(e){for(var r,t=1,o=arguments.length;t<o;t++)for(var n in r=arguments[t])Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n]);return e}).apply(this,arguments)},n=this&&this.__rest||function(e,r){var t={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&r.indexOf(o)<0&&(t[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(e);n<o.length;n++)r.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(t[o[n]]=e[o[n]])}return t},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(null!=e)for(var t in e)Object.hasOwnProperty.call(e,t)&&(r[t]=e[t]);return r.default=e,r},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0});var a=i(t(1)),s=u(t(2)),d=u(t(3)),f=u(t(4));r.default=a.memo((function(e){var r=e.holder,t=e.editorInstance,i=e.children,u=e.tools,l=n(e,["holder","editorInstance","children","tools"]),c=r||"editorjs";return a.useEffect((function(){var e=null;return e=new s.default(o({tools:o({paragraph:{class:d.default,inlineToolbar:!0},header:f.default},u),holder:c},l)),t&&t(e),function(){e&&e.isReady.then((function(){e.destroy(),e=void 0}))}}),[c,t,l,e,u]),i||a.default.createElement("div",{id:c})}))},function(r,t){r.exports=e},function(e,t){e.exports=r},function(e,r){e.exports=t},function(e,r){e.exports=o}])})); | ||
!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r(require("react"),require("@editorjs/editorjs"),require("@editorjs/paragraph"),require("@editorjs/header")):"function"==typeof define&&define.amd?define(["react","@editorjs/editorjs","@editorjs/paragraph","@editorjs/header"],r):"object"==typeof exports?exports.ReactEditorJs=r(require("react"),require("@editorjs/editorjs"),require("@editorjs/paragraph"),require("@editorjs/header")):e.ReactEditorJs=r(e.react,e["@editorjs/editorjs"],e["@editorjs/paragraph"],e["@editorjs/header"])}(window,(function(e,r,t,o){return function(e){var r={};function t(o){if(r[o])return r[o].exports;var n=r[o]={i:o,l:!1,exports:{}};return e[o].call(n.exports,n,n.exports,t),n.l=!0,n.exports}return t.m=e,t.c=r,t.d=function(e,r,o){t.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:o})},t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},t.t=function(e,r){if(1&r&&(e=t(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(t.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)t.d(o,n,function(r){return e[r]}.bind(null,n));return o},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},t.p="",t(t.s=0)}([function(e,r,t){"use strict";var o=this&&this.__assign||function(){return(o=Object.assign||function(e){for(var r,t=1,o=arguments.length;t<o;t++)for(var n in r=arguments[t])Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n]);return e}).apply(this,arguments)},n=this&&this.__rest||function(e,r){var t={};for(var o in e)Object.prototype.hasOwnProperty.call(e,o)&&r.indexOf(o)<0&&(t[o]=e[o]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(o=Object.getOwnPropertySymbols(e);n<o.length;n++)r.indexOf(o[n])<0&&Object.prototype.propertyIsEnumerable.call(e,o[n])&&(t[o[n]]=e[o[n]])}return t},i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var r={};if(null!=e)for(var t in e)Object.hasOwnProperty.call(e,t)&&(r[t]=e[t]);return r.default=e,r},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(r,"__esModule",{value:!0});var a=i(t(1)),s=u(t(2)),d=u(t(3)),f=u(t(4));r.default=a.memo((function(e){var r=e.holder,t=e.editorInstance,i=e.reinitializeOnPropsChange,u=e.children,l=e.tools,c=n(e,["holder","editorInstance","reinitializeOnPropsChange","children","tools"]),p=r||"editorjs";return a.useEffect((function(){var e=null;return e=new s.default(o({tools:o({paragraph:{class:d.default,inlineToolbar:!0},header:f.default},l),holder:p},c)),t&&t(e),function(){e&&i&&e.isReady.then((function(){e.destroy(),e=void 0}))}}),[p,t,c,e,l,i]),u||a.default.createElement("div",{id:p})}))},function(r,t){r.exports=e},function(e,t){e.exports=r},function(e,r){e.exports=t},function(e,r){e.exports=o}])})); | ||
//# sourceMappingURL=reacteditorjs.js.map |
@@ -6,2 +6,3 @@ import React, { ReactElement } from 'react'; | ||
holder?: string; | ||
reinitializeOnPropsChange?: boolean; | ||
editorInstance?: (instance: EditorJS) => void; | ||
@@ -8,0 +9,0 @@ } |
@@ -18,3 +18,3 @@ var __rest = (this && this.__rest) || function (s, e) { | ||
const EditorJs = (props) => { | ||
const { holder: customHolder, editorInstance, children, tools } = props, otherProps = __rest(props, ["holder", "editorInstance", "children", "tools"]); | ||
const { holder: customHolder, editorInstance, reinitializeOnPropsChange, children, tools } = props, otherProps = __rest(props, ["holder", "editorInstance", "reinitializeOnPropsChange", "children", "tools"]); | ||
const holder = customHolder || DEFAULT_ID; | ||
@@ -31,3 +31,3 @@ useEffect(() => { | ||
return () => { | ||
if (instance) { | ||
if (instance && reinitializeOnPropsChange) { | ||
instance.isReady.then(() => { | ||
@@ -39,3 +39,10 @@ instance.destroy(); | ||
}; | ||
}, [holder, editorInstance, otherProps, props, tools]); | ||
}, [ | ||
holder, | ||
editorInstance, | ||
otherProps, | ||
props, | ||
tools, | ||
reinitializeOnPropsChange, | ||
]); | ||
return children || React.createElement("div", { id: holder }); | ||
@@ -42,0 +49,0 @@ }; |
@@ -6,2 +6,3 @@ import React, { ReactElement } from 'react'; | ||
holder?: string; | ||
reinitializeOnPropsChange?: boolean; | ||
editorInstance?: (instance: EditorJS) => void; | ||
@@ -8,0 +9,0 @@ } |
@@ -29,3 +29,3 @@ var __assign = (this && this.__assign) || function () { | ||
var EditorJs = function (props) { | ||
var customHolder = props.holder, editorInstance = props.editorInstance, children = props.children, tools = props.tools, otherProps = __rest(props, ["holder", "editorInstance", "children", "tools"]); | ||
var customHolder = props.holder, editorInstance = props.editorInstance, reinitializeOnPropsChange = props.reinitializeOnPropsChange, children = props.children, tools = props.tools, otherProps = __rest(props, ["holder", "editorInstance", "reinitializeOnPropsChange", "children", "tools"]); | ||
var holder = customHolder || DEFAULT_ID; | ||
@@ -42,3 +42,3 @@ useEffect(function () { | ||
return function () { | ||
if (instance) { | ||
if (instance && reinitializeOnPropsChange) { | ||
instance.isReady.then(function () { | ||
@@ -50,3 +50,10 @@ instance.destroy(); | ||
}; | ||
}, [holder, editorInstance, otherProps, props, tools]); | ||
}, [ | ||
holder, | ||
editorInstance, | ||
otherProps, | ||
props, | ||
tools, | ||
reinitializeOnPropsChange, | ||
]); | ||
return children || React.createElement("div", { id: holder }); | ||
@@ -53,0 +60,0 @@ }; |
@@ -6,2 +6,3 @@ import React, { ReactElement } from 'react'; | ||
holder?: string; | ||
reinitializeOnPropsChange?: boolean; | ||
editorInstance?: (instance: EditorJS) => void; | ||
@@ -8,0 +9,0 @@ } |
@@ -41,3 +41,3 @@ "use strict"; | ||
var EditorJs = function (props) { | ||
var customHolder = props.holder, editorInstance = props.editorInstance, children = props.children, tools = props.tools, otherProps = __rest(props, ["holder", "editorInstance", "children", "tools"]); | ||
var customHolder = props.holder, editorInstance = props.editorInstance, reinitializeOnPropsChange = props.reinitializeOnPropsChange, children = props.children, tools = props.tools, otherProps = __rest(props, ["holder", "editorInstance", "reinitializeOnPropsChange", "children", "tools"]); | ||
var holder = customHolder || DEFAULT_ID; | ||
@@ -54,3 +54,3 @@ react_1.useEffect(function () { | ||
return function () { | ||
if (instance) { | ||
if (instance && reinitializeOnPropsChange) { | ||
instance.isReady.then(function () { | ||
@@ -62,3 +62,10 @@ instance.destroy(); | ||
}; | ||
}, [holder, editorInstance, otherProps, props, tools]); | ||
}, [ | ||
holder, | ||
editorInstance, | ||
otherProps, | ||
props, | ||
tools, | ||
reinitializeOnPropsChange, | ||
]); | ||
return children || react_1.default.createElement("div", { id: holder }); | ||
@@ -65,0 +72,0 @@ }; |
{ | ||
"name": "@natterstefan/react-editor-js", | ||
"version": "0.2.1", | ||
"version": "0.2.2", | ||
"description": "Unofficial react component for editorjs (https://editorjs.io/)", | ||
@@ -69,5 +69,5 @@ "repository": { | ||
"devDependencies": { | ||
"@babel/core": "^7.7.2", | ||
"@babel/core": "^7.7.4", | ||
"@bahmutov/add-typescript-to-cypress": "^2.1.2", | ||
"@cypress/webpack-preprocessor": "^4.1.0", | ||
"@cypress/webpack-preprocessor": "^4.1.1", | ||
"@editorjs/checklist": "^1.1.0", | ||
@@ -90,3 +90,3 @@ "@editorjs/code": "^2.4.1", | ||
"@editorjs/warning": "^1.1.1", | ||
"@size-limit/preset-small-lib": "^2.1.6", | ||
"@size-limit/preset-small-lib": "^2.2.1", | ||
"@storybook/addon-actions": "^5.2.6", | ||
@@ -97,8 +97,8 @@ "@storybook/addons": "^5.2.6", | ||
"@types/enzyme-adapter-react-16": "^1.0.5", | ||
"@types/jest": "^24.0.22", | ||
"@types/react": "^16.9.11", | ||
"@types/jest": "^24.0.23", | ||
"@types/react": "^16.9.12", | ||
"@types/react-dom": "^16.9.4", | ||
"@typescript-eslint/eslint-plugin": "^2.6.1", | ||
"@typescript-eslint/parser": "^2.6.1", | ||
"all-contributors-cli": "^6.10.0", | ||
"@typescript-eslint/eslint-plugin": "^2.8.0", | ||
"@typescript-eslint/parser": "^2.8.0", | ||
"all-contributors-cli": "^6.11.0", | ||
"awesome-typescript-loader": "^5.2.1", | ||
@@ -112,17 +112,17 @@ "babel-eslint": "^10.0.3", | ||
"enzyme-adapter-react-16": "^1.15.1", | ||
"eslint": "^6.6.0", | ||
"eslint": "^6.7.0", | ||
"eslint-config-airbnb": "^18.0.1", | ||
"eslint-config-ns": "^1.0.0", | ||
"eslint-config-prettier": "^6.5.0", | ||
"eslint-config-prettier": "^6.7.0", | ||
"eslint-import-resolver-alias": "^1.1.2", | ||
"eslint-plugin-import": "^2.18.2", | ||
"eslint-plugin-jest": "^23.0.3", | ||
"eslint-plugin-jest": "^23.0.4", | ||
"eslint-plugin-jsx-a11y": "^6.2.3", | ||
"eslint-plugin-prettier": "^3.1.1", | ||
"eslint-plugin-react": "^7.16.0", | ||
"eslint-plugin-react-hooks": "^2.2.0", | ||
"husky": "^3.0.9", | ||
"eslint-plugin-react-hooks": "^2.3.0", | ||
"husky": "^3.1.0", | ||
"jest": "^24.9.0", | ||
"lint-staged": "^9.4.2", | ||
"prettier": "^1.19.0", | ||
"lint-staged": "^9.4.3", | ||
"prettier": "^1.19.1", | ||
"react": "^16.11.0", | ||
@@ -136,3 +136,3 @@ "react-docgen-typescript-loader": "^3.3.0", | ||
"terser-webpack-plugin": "^2.2.1", | ||
"ts-jest": "^24.1.0", | ||
"ts-jest": "^24.2.0", | ||
"typescript": "^3.7.2", | ||
@@ -139,0 +139,0 @@ "webpack": "^4.41.2", |
@@ -7,2 +7,3 @@ # react-editor-js | ||
[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg)](http://commitizen.github.io/cz-cli/) | ||
[![Netlify Status](https://api.netlify.com/api/v1/badges/98a2eaf6-7b36-4136-adbd-38d7d68085b3/deploy-status)](https://app.netlify.com/sites/react-editor-js/deploys) | ||
@@ -127,2 +128,8 @@ Unofficial react component for editorjs ([https://editorjs.io/][1]). | ||
## Additional Props | ||
| Name | Type | Default | Description | | ||
| :------------------------ | :-------: | :-----: | :----------------------------------------------------------------------------------------------------------------------- | | ||
| reinitializeOnPropsChange | `boolean` | `false` | editor-js is initialised again on [componentDidUpdate](https://reactjs.org/docs/react-component.html#componentdidupdate) | | ||
## Licence | ||
@@ -129,0 +136,0 @@ |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
40061
222
161