@tinymce/tinymce-react
Advanced tools
Comparing version 3.8.4 to 3.9.0-alpha.20210111052714837.0b1a0c6
233
CHANGELOG.md
@@ -1,128 +0,185 @@ | ||
## 3.8.4 (2020-12-16) | ||
* Updated dependencies to latest available | ||
# Change log | ||
All notable changes to this project will be documented in this file. | ||
## 3.8.3 (2020-12-08) | ||
* Fixed event binding to only rebind handler on changes to the specific property instead of any property. | ||
* Updated TinyMCE types to 5.6 release. | ||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), | ||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). | ||
## 3.8.2 (2020-12-03) | ||
* Fixed external changes not generating undo levels | ||
## [Unreleased] | ||
### Changed | ||
- Adopted beehive-flow branching and versioning process/tooling. | ||
- Changed the changelog formatting | ||
- Updated dependencies to latest available | ||
## 3.8.1 (2020-10-22) | ||
* Fixed an issue where the component would throw an error when unmounted while loading | ||
## [3.8.4] - 2020-12-16 | ||
### Fixed | ||
- Updated dependencies to latest available | ||
## 3.8.0 (2020-10-08) | ||
* Added types from TinyMCE 5.5 release. | ||
## [3.8.3] - 2020-12-08 | ||
### Changed | ||
- Updated TinyMCE types to 5.6 release. | ||
## 3.7.0 (2020-09-28) | ||
* Added `scriptLoading` prop with settings `async`, `defer` and `delay` to modify the loading behaviour of the TinyMCE script tag | ||
### Fixed | ||
- Fixed event binding to only rebind handler on changes to the specific property instead of any property. | ||
## 3.6.1 (2020-09-07) | ||
* Upgraded dependencies to latest available. | ||
## [3.8.2] - 2020-12-03 | ||
### Fixed | ||
- Fixed external changes not generating undo levels | ||
## 3.6.0 (2020-05-07) | ||
* Fixed an issue that allowed events to be fired during `componentWillUnmount` | ||
## [3.8.1] - 2020-10-22 | ||
### Fixed | ||
- Fixed an issue where the component would throw an error when unmounted while loading | ||
## 3.5.1 (2020-04-30) | ||
* Remove `util` module from dependencies by purging usage in code. | ||
* Upgraded jquery in dev dependencies in response to security alert. | ||
## [3.8.0] - 2020-10-08 | ||
### Added | ||
- Added types from TinyMCE 5.5 release. | ||
## 3.5.0 (2020-02-24) | ||
* Added new `tinymceScriptSrc` prop for specifying an external version of TinyMCE to lazy load | ||
## [3.7.0] - 2020-09-28 | ||
### Added | ||
- Added `scriptLoading` prop with settings `async`, `defer` and `delay` to modify the loading behaviour of the TinyMCE script tag | ||
## 3.4.0 (2020-01-31) | ||
* Added new `outputFormat` prop for specifying the format of the content emitted via the `onEditorChange` event | ||
## [3.6.1] - 2020-09-07 | ||
### Fixed | ||
- Upgraded dependencies to latest available. | ||
## 3.3.2 (2019-08-29) | ||
* Fixed an issue that caused `onEditorChange` to fire multiple times | ||
## [3.6.0] - 2020-05-07 | ||
### Fixed | ||
- Fixed an issue that allowed events to be fired during `componentWillUnmount` | ||
## 3.3.1 (2019-08-16) | ||
* Changed referrer policy to origin to allow cloud caching | ||
## [3.5.1] - 2020-04-30 | ||
### Fixed | ||
- Remove `util` module from dependencies by purging usage in code. | ||
- Upgraded jquery in dev dependencies in response to security alert. | ||
## 3.3.0 (2019-07-29) | ||
* Fixed an issue that made the editor ignore new event handlers provided through props | ||
* Removed use of deprecated lifecycle hooks `componentWillMount` and `componentWillReceiveProps` | ||
## [3.5.0] - 2020-02-24 | ||
### Added | ||
- Added new `tinymceScriptSrc` prop for specifying an external version of TinyMCE to lazy load | ||
## 3.2.0 (2019-06-04) | ||
* Changed the CDN URL to use `cdn.tiny.cloud` | ||
## [3.4.0] - 2020-01-31 | ||
### Added | ||
- Added new `outputFormat` prop for specifying the format of the content emitted via the `onEditorChange` event | ||
## 3.1.1 (2019-05-10) | ||
* Removed preinstall script | ||
## [3.3.2] - 2019-08-29 | ||
### Fixed | ||
- Fixed an issue that caused `onEditorChange` to fire multiple times | ||
## 3.1.0 (2019-05-10) | ||
* Added the editor as a second argument to `onEditorChange` | ||
* Exported Typescript prop types | ||
## [3.3.1] - 2019-08-16 | ||
### Fixed | ||
- Changed referrer policy to origin to allow cloud caching | ||
## 3.0.1 (2019-02-11) | ||
* Updated readme on cloud channels. | ||
## [3.3.0] - 2019-07-29 | ||
### Fixed | ||
- Fixed an issue that made the editor ignore new event handlers provided through props | ||
- Removed use of deprecated lifecycle hooks `componentWillMount` and `componentWillReceiveProps` | ||
## 3.0.0 (2019-02-11) | ||
* Changed default cloudChannel to `'5'`. | ||
## [3.2.0] - 2019-06-04 | ||
### Fixed | ||
- Changed the CDN URL to use `cdn.tiny.cloud` | ||
## 2.6.1 (2019-02-07) | ||
* Changed `react` and `react-dom` to be peerDependencies and devDependencies. | ||
## [3.1.1] - 2019-05-10 | ||
### Changed | ||
- Removed preinstall script | ||
## 2.6.0 (2019-02-07) | ||
* Changed `react` and `react-dom` to be peerDependencies. | ||
## [3.1.0] - 2019-05-10 | ||
### Changed | ||
- Added the editor as a second argument to `onEditorChange` | ||
- Exported Typescript prop types | ||
## 2.5.0 (2019-01-24) | ||
* Loosened cloudChannel proptype to take any string to be able to use the locked version channels. | ||
## [3.0.1] - 2019-02-11 | ||
### Changed | ||
- Updated readme on cloud channels. | ||
## 2.4.0 (2018-11-02) | ||
* Added `textareaName` prop that sets the name attribute on the textarea for use in forms. | ||
## [3.0.0] - 2019-02-11 | ||
### Changed | ||
- Changed default cloudChannel to `'5'`. | ||
## 2.3.0 (2018-10-01) | ||
* Added `disabled` prop that sets the editor into readonly mode. | ||
## [2.6.1] - 2019-02-07 | ||
### Fixed | ||
- Changed `react` and `react-dom` to be peerDependencies and devDependencies. | ||
## 2.2.6 (2018-09-03) | ||
* Fixed broken links in readme. | ||
## [2.6.0] - 2019-02-07 | ||
### Fixed | ||
- Changed `react` and `react-dom` to be peerDependencies. | ||
## 2.2.5 (2018-04-23) | ||
* Added a nullcheck in componentWillUnmount to check that tinymce is availabl before running remove. | ||
## [2.5.0] - 2019-01-24 | ||
### Changed | ||
- Loosened cloudChannel proptype to take any string to be able to use the locked version channels. | ||
## 2.2.4 (2018-04-06) | ||
* Removed onPreInit shorthand as it never worked. | ||
## [2.4.0] - 2018-11-02 | ||
### Added | ||
- Added `textareaName` prop that sets the name attribute on the textarea for use in forms. | ||
## 2.2.3 (2018-04-06) | ||
* Fixed a bug with onInit not working. | ||
## [2.3.0] - 2018-10-01 | ||
### Added | ||
- Added `disabled` prop that sets the editor into readonly mode. | ||
## 2.2.2 (2018-04-05) | ||
* Fixed a bug with values set while the editor was initializing. | ||
## [2.2.6] - 2018-09-03 | ||
### Fixed | ||
- Fixed broken links in readme. | ||
## 2.2.1 (2018-04-03) | ||
* No change, pushed to fix missing readme on npm. | ||
## [2.2.5] - 2018-04-23 | ||
### Fixed | ||
- Added a nullcheck in componentWillUnmount to check that tinymce is available before running remove. | ||
## 2.2.0 (2018-02-19) | ||
* Added functionality so you can use the editor as a controlled component by setting the `value` property and using the `onEditorChange` event. | ||
## [2.2.4] - 2018-04-06 | ||
### Fixed | ||
- Removed onPreInit shorthand as it never worked. | ||
## 2.1.4 (2018-02-16) | ||
* Fixed bug where is wasn't possible to set inline in the init object, only on the shorthand. | ||
## [2.2.3] - 2018-04-06 | ||
### Fixed | ||
- Fixed a bug with onInit not working. | ||
## 2.1.3 (2018-01-17) | ||
* Added `plugins` and `toolbar` shorthands. | ||
## [2.2.2] - 2018-04-05 | ||
### Fixed | ||
- Fixed a bug with values set while the editor was initializing. | ||
## 2.1.2 (2018-01-08) | ||
* Use `target` on element instead of `selector` in init config. | ||
## [2.2.1] - 2018-04-03 | ||
### Fixed | ||
- No change, pushed to fix missing readme on npm. | ||
## 2.1.1 (2018-01-03) | ||
* Fix so init setup callback gets called like it should. | ||
## [2.2.0] - 2018-02-19 | ||
### Added | ||
- Added functionality so you can use the editor as a controlled component by setting the `value` property and using the `onEditorChange` event. | ||
## 2.1.0 (2017-12-18) | ||
* Added auto-loading of TinyMCE from TinyMCE Cloud | ||
## [2.1.4] - 2018-02-16 | ||
### Fixed | ||
- Fixed bug where is wasn't possible to set inline in the init object, only on the shorthand. | ||
## 2.0.3 (2017-11-22) | ||
* Added check for `initialValue` prop to prevent javascript error that was shown when `tinymce.setContent` was called with undefined. | ||
## [2.1.3] - 2018-01-17 | ||
### Added | ||
- Added `plugins` and `toolbar` shorthands. | ||
## 2.0.2 (2017-11-22) | ||
* Accidentally published 2.0.1 without building first, published this version to fix that and added prepare hook to prevent the same thing from happening again. | ||
## [2.1.2] - 2018-01-08 | ||
### Changed | ||
- Use `target` on element instead of `selector` in init config. | ||
## 2.0.1 (2017-11-21) | ||
* Added description to package.json and improved readme wording. | ||
## [2.1.1] - 2018-01-03 | ||
### Added | ||
- Fix so init setup callback gets called like it should. | ||
## 2.0.0 (2017-11-08) | ||
* *BREAKING!* Switched `value` prop to `initialValue` to make it clearer what it actually does. | ||
* Only bind whitelisted events. | ||
* Add support for `tagName` prop when using editor inline to define what element you want to initialize the editor on. | ||
## [2.1.0] - 2017-12-18 | ||
### Added | ||
- Added auto-loading of TinyMCE from TinyMCE Cloud | ||
## 1.0.0 (2017-11-07) | ||
* Initial Release. | ||
## [2.0.3] - 2017-11-22 | ||
### Fixed | ||
- Added check for `initialValue` prop to prevent javascript error that was shown when `tinymce.setContent` was called with undefined. | ||
## [2.0.2] - 2017-11-22 | ||
### Fixed | ||
- Accidentally published 2.0.1 without building first, published this version to fix that and added prepare hook to prevent the same thing from happening again. | ||
## [2.0.1] - 2017-11-21 | ||
### Added | ||
- Added description to package.json and improved readme wording. | ||
## [2.0.0] - 2017-11-08 | ||
### Added | ||
- Add support for `tagName` prop when using editor inline to define what element you want to initialize the editor on. | ||
### Changed | ||
- *BREAKING!* Switched `value` prop to `initialValue` to make it clearer what it actually does. | ||
### Fixed | ||
- Only bind whitelisted events. | ||
## [1.0.0] - 2017-11-07 | ||
### Added | ||
- Initial Release. |
@@ -45,3 +45,3 @@ "use strict"; | ||
var _this = _super.call(this, props) || this; | ||
_this.handleEditorChange = function (evt) { | ||
_this.handleEditorChange = function (_evt) { | ||
var _a; | ||
@@ -48,0 +48,0 @@ var editor = _this.editor; |
@@ -88,5 +88,5 @@ "use strict"; | ||
exports.EditorPropTypes = __assign({ apiKey: PropTypes.string, id: PropTypes.string, inline: PropTypes.bool, init: PropTypes.object, initialValue: PropTypes.string, onEditorChange: PropTypes.func, outputFormat: PropTypes.oneOf(['html', 'text']), value: PropTypes.string, tagName: PropTypes.string, cloudChannel: PropTypes.string, plugins: PropTypes.oneOfType([PropTypes.string, PropTypes.array]), toolbar: PropTypes.oneOfType([PropTypes.string, PropTypes.array]), disabled: PropTypes.bool, textareaName: PropTypes.string, tinymceScriptSrc: PropTypes.string, scriptLoading: PropTypes.shape({ | ||
'async': PropTypes.bool, | ||
'defer': PropTypes.bool, | ||
'delay': PropTypes.number | ||
async: PropTypes.bool, | ||
defer: PropTypes.bool, | ||
delay: PropTypes.number | ||
}) }, exports.eventPropTypes); |
@@ -12,10 +12,8 @@ "use strict"; | ||
var Utils_1 = require("./Utils"); | ||
var createState = function () { | ||
return { | ||
listeners: [], | ||
scriptId: Utils_1.uuid('tiny-script'), | ||
scriptLoading: false, | ||
scriptLoaded: false | ||
}; | ||
}; | ||
var createState = function () { return ({ | ||
listeners: [], | ||
scriptId: Utils_1.uuid('tiny-script'), | ||
scriptLoading: false, | ||
scriptLoaded: false | ||
}); }; | ||
var CreateScriptLoader = function () { | ||
@@ -22,0 +20,0 @@ var state = createState(); |
@@ -21,11 +21,6 @@ "use strict"; | ||
exports.isFunction = isFunction; | ||
var isEventProp = function (name) { | ||
return name in EditorPropTypes_1.eventPropTypes; | ||
}; | ||
var eventAttrToEventName = function (attrName) { | ||
return attrName.substr(2); | ||
}; | ||
var bindHandlers = function (editor, prevProps, props, boundHandlers) { | ||
return exports.bindHandlers2(editor.on.bind(editor), editor.off.bind(editor), function (handler) { return function (e) { return handler(e, editor); }; }, prevProps, props, boundHandlers); | ||
}; | ||
var isEventProp = function (name) { return name in EditorPropTypes_1.eventPropTypes; }; | ||
var eventAttrToEventName = function (attrName) { return attrName.substr(2); }; | ||
// eslint-disable-next-line max-len | ||
var bindHandlers = function (editor, prevProps, props, boundHandlers) { return exports.bindHandlers2(editor.on.bind(editor), editor.off.bind(editor), function (handler) { return function (e) { return handler(e, editor); }; }, prevProps, props, boundHandlers); }; | ||
exports.bindHandlers = bindHandlers; | ||
@@ -36,3 +31,3 @@ var bindHandlers2 = function (on, off, adapter, prevProps, props, boundHandlers) { | ||
var removedKeys = prevEventKeys.filter(function (key) { return props[key] === undefined; }); | ||
var changedKeys = currEventKeys.filter(function (key) { return prevProps[key] !== undefined && prevProps[key] != props[key]; }); | ||
var changedKeys = currEventKeys.filter(function (key) { return prevProps[key] !== undefined && prevProps[key] !== props[key]; }); | ||
var addedKeys = currEventKeys.filter(function (key) { return prevProps[key] === undefined; }); | ||
@@ -66,5 +61,3 @@ __spreadArrays(removedKeys, changedKeys).forEach(function (key) { | ||
exports.uuid = uuid; | ||
var isTextarea = function (element) { | ||
return element !== null && element.tagName.toLowerCase() === 'textarea'; | ||
}; | ||
var isTextarea = function (element) { return element !== null && element.tagName.toLowerCase() === 'textarea'; }; | ||
exports.isTextarea = isTextarea; | ||
@@ -77,5 +70,4 @@ var normalizePluginArray = function (plugins) { | ||
}; | ||
var mergePlugins = function (initPlugins, inputPlugins) { | ||
return normalizePluginArray(initPlugins).concat(normalizePluginArray(inputPlugins)); | ||
}; | ||
// eslint-disable-next-line max-len | ||
var mergePlugins = function (initPlugins, inputPlugins) { return normalizePluginArray(initPlugins).concat(normalizePluginArray(inputPlugins)); }; | ||
exports.mergePlugins = mergePlugins; |
@@ -42,3 +42,3 @@ /** | ||
var _this = _super.call(this, props) || this; | ||
_this.handleEditorChange = function (evt) { | ||
_this.handleEditorChange = function (_evt) { | ||
var _a; | ||
@@ -45,0 +45,0 @@ var editor = _this.editor; |
@@ -85,5 +85,5 @@ /** | ||
export var EditorPropTypes = __assign({ apiKey: PropTypes.string, id: PropTypes.string, inline: PropTypes.bool, init: PropTypes.object, initialValue: PropTypes.string, onEditorChange: PropTypes.func, outputFormat: PropTypes.oneOf(['html', 'text']), value: PropTypes.string, tagName: PropTypes.string, cloudChannel: PropTypes.string, plugins: PropTypes.oneOfType([PropTypes.string, PropTypes.array]), toolbar: PropTypes.oneOfType([PropTypes.string, PropTypes.array]), disabled: PropTypes.bool, textareaName: PropTypes.string, tinymceScriptSrc: PropTypes.string, scriptLoading: PropTypes.shape({ | ||
'async': PropTypes.bool, | ||
'defer': PropTypes.bool, | ||
'delay': PropTypes.number | ||
async: PropTypes.bool, | ||
defer: PropTypes.bool, | ||
delay: PropTypes.number | ||
}) }, eventPropTypes); |
@@ -9,10 +9,8 @@ /** | ||
import { uuid } from './Utils'; | ||
var createState = function () { | ||
return { | ||
listeners: [], | ||
scriptId: uuid('tiny-script'), | ||
scriptLoading: false, | ||
scriptLoaded: false | ||
}; | ||
}; | ||
var createState = function () { return ({ | ||
listeners: [], | ||
scriptId: uuid('tiny-script'), | ||
scriptLoading: false, | ||
scriptLoaded: false | ||
}); }; | ||
var CreateScriptLoader = function () { | ||
@@ -19,0 +17,0 @@ var state = createState(); |
@@ -17,11 +17,6 @@ /** | ||
export var isFunction = function (x) { return typeof x === 'function'; }; | ||
var isEventProp = function (name) { | ||
return name in eventPropTypes; | ||
}; | ||
var eventAttrToEventName = function (attrName) { | ||
return attrName.substr(2); | ||
}; | ||
export var bindHandlers = function (editor, prevProps, props, boundHandlers) { | ||
return bindHandlers2(editor.on.bind(editor), editor.off.bind(editor), function (handler) { return function (e) { return handler(e, editor); }; }, prevProps, props, boundHandlers); | ||
}; | ||
var isEventProp = function (name) { return name in eventPropTypes; }; | ||
var eventAttrToEventName = function (attrName) { return attrName.substr(2); }; | ||
// eslint-disable-next-line max-len | ||
export var bindHandlers = function (editor, prevProps, props, boundHandlers) { return bindHandlers2(editor.on.bind(editor), editor.off.bind(editor), function (handler) { return function (e) { return handler(e, editor); }; }, prevProps, props, boundHandlers); }; | ||
export var bindHandlers2 = function (on, off, adapter, prevProps, props, boundHandlers) { | ||
@@ -31,3 +26,3 @@ var prevEventKeys = Object.keys(prevProps).filter(isEventProp); | ||
var removedKeys = prevEventKeys.filter(function (key) { return props[key] === undefined; }); | ||
var changedKeys = currEventKeys.filter(function (key) { return prevProps[key] !== undefined && prevProps[key] != props[key]; }); | ||
var changedKeys = currEventKeys.filter(function (key) { return prevProps[key] !== undefined && prevProps[key] !== props[key]; }); | ||
var addedKeys = currEventKeys.filter(function (key) { return prevProps[key] === undefined; }); | ||
@@ -59,5 +54,3 @@ __spreadArrays(removedKeys, changedKeys).forEach(function (key) { | ||
}; | ||
export var isTextarea = function (element) { | ||
return element !== null && element.tagName.toLowerCase() === 'textarea'; | ||
}; | ||
export var isTextarea = function (element) { return element !== null && element.tagName.toLowerCase() === 'textarea'; }; | ||
var normalizePluginArray = function (plugins) { | ||
@@ -69,4 +62,3 @@ if (typeof plugins === 'undefined' || plugins === '') { | ||
}; | ||
export var mergePlugins = function (initPlugins, inputPlugins) { | ||
return normalizePluginArray(initPlugins).concat(normalizePluginArray(inputPlugins)); | ||
}; | ||
// eslint-disable-next-line max-len | ||
export var mergePlugins = function (initPlugins, inputPlugins) { return normalizePluginArray(initPlugins).concat(normalizePluginArray(inputPlugins)); }; |
{ | ||
"name": "@tinymce/tinymce-react", | ||
"version": "3.8.4", | ||
"description": "Official TinyMCE React Component", | ||
@@ -17,3 +15,3 @@ "repository": { | ||
"scripts": { | ||
"lint": "tslint 'src/**/*.ts?(x)'", | ||
"lint": "eslint 'src/**/*.ts?(x)'", | ||
"clean": "rimraf lib", | ||
@@ -25,4 +23,3 @@ "test": "bedrock-auto -b chrome-headless -f src/test/ts/**/*Test.ts", | ||
"storybook": "start-storybook -p 6006", | ||
"storybook:build": "build-storybook", | ||
"prepare": "yarn run build" | ||
"storybook:build": "build-storybook" | ||
}, | ||
@@ -37,4 +34,4 @@ "keywords": [], | ||
"peerDependencies": { | ||
"react": "^16.7.0", | ||
"react-dom": "^16.7.0" | ||
"react": "^17.0.1", | ||
"react-dom": "^17.0.1" | ||
}, | ||
@@ -44,13 +41,14 @@ "devDependencies": { | ||
"@ephox/agar": "^5.1.1", | ||
"@ephox/bedrock-client": "^9.6.1", | ||
"@ephox/bedrock-server": "^9.7.1", | ||
"@ephox/bedrock-client": "^10.0.0", | ||
"@ephox/bedrock-server": "^10.0.1", | ||
"@ephox/mcagar": "^5.1.1", | ||
"@ephox/sand": "^4.0.3", | ||
"@ephox/sugar": "^7.0.3", | ||
"@ephox/tslint-rules": "^1.0.7", | ||
"@storybook/addon-info": "^5.3.21", | ||
"@storybook/react": "^6.1.11", | ||
"@storybook/storybook-deployer": "^2.8.6", | ||
"@tinymce/beehive-flow": "^0.11.0", | ||
"@tinymce/eslint-plugin": "^1.7.2", | ||
"@tinymce/miniature": "^3.0.1", | ||
"@types/node": "^14.14.14", | ||
"@types/node": "^14.14.20", | ||
"@types/prop-types": "^15.5.8", | ||
@@ -63,3 +61,3 @@ "@types/react": "^17.0.0", | ||
"babel-loader": "^8.2.2", | ||
"core-js": "^3.8.1", | ||
"core-js": "^3.8.2", | ||
"raf": "^3.4.1", | ||
@@ -71,7 +69,8 @@ "react": "^17.0.1", | ||
"tinymce-5": "npm:tinymce@^5", | ||
"ts-loader": "^8.0.12", | ||
"tslint": "^6.1.3", | ||
"ts-loader": "^8.0.14", | ||
"typescript": "^4.1.3", | ||
"webpack": "^5.10.3" | ||
} | ||
"webpack": "^5.12.3" | ||
}, | ||
"version": "3.9.0-alpha.20210111052714837.0b1a0c6", | ||
"name": "@tinymce/tinymce-react" | ||
} |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
62416
32
1313
2