From ac3afb3316e67d1fc09b2ac71666e5faec6ba54c Mon Sep 17 00:00:00 2001 From: Mateusz Baginski Date: Mon, 13 Jan 2025 07:17:24 +0100 Subject: [PATCH 1/2] Bump React 19 version in manual tests. --- package.json | 4 ++-- yarn.lock | 67 ++++++++++++++-------------------------------------- 2 files changed, 20 insertions(+), 51 deletions(-) diff --git a/package.json b/package.json index 5dfba486..0781004e 100644 --- a/package.json +++ b/package.json @@ -67,8 +67,8 @@ "react17-dom": "npm:react-dom@^17.0.0", "react18": "npm:react@^18.0.0", "react18-dom": "npm:react-dom@^18.0.0", - "react19": "npm:react@19.0.0-beta-26f2496093-20240514", - "react19-dom": "npm:react-dom@19.0.0-beta-26f2496093-20240514", + "react19": "npm:react@19.0.0", + "react19-dom": "npm:react-dom@19.0.0", "semver": "^7.0.0", "typescript": "^5.0.0", "vite": "^5.3.1", diff --git a/yarn.lock b/yarn.lock index d22a2339..733709b0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7618,7 +7618,7 @@ raw-loader@^4.0.1: loader-utils "^2.0.0" schema-utils "^3.0.0" -react-dom@^18.0.0: +react-dom@^18.0.0, "react18-dom@npm:react-dom@^18.0.0": version "18.3.1" resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.3.1.tgz#c2265d79511b57d479b3dd3fdfa51536494c5cb4" integrity sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw== @@ -7677,39 +7677,24 @@ react-refresh@^0.14.2: loose-envify "^1.1.0" object-assign "^4.1.1" -"react18-dom@npm:react-dom@^18.0.0": - version "18.3.1" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.3.1.tgz#c2265d79511b57d479b3dd3fdfa51536494c5cb4" - integrity sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw== - dependencies: - loose-envify "^1.1.0" - scheduler "^0.23.2" - -"react18@npm:react@^18.0.0": +"react18@npm:react@^18.0.0", react@^18.0.0: version "18.3.1" resolved "https://registry.yarnpkg.com/react/-/react-18.3.1.tgz#49ab892009c53933625bd16b2533fc754cab2891" integrity sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ== dependencies: loose-envify "^1.1.0" -"react19-dom@npm:react-dom@19.0.0-beta-26f2496093-20240514": - version "19.0.0-beta-26f2496093-20240514" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-19.0.0-beta-26f2496093-20240514.tgz#5fe4e829db8d379303057f539900a61ed6ca2615" - integrity sha512-UvQ+K1l3DFQ34LDgfFSNuUGi9EC+yfE9tS6MdpNTd5fx7qC7KLfepfC/KpxWMQZ7JfE3axD4ZO6H4cBSpAZpqw== +"react19-dom@npm:react-dom@19.0.0": + version "19.0.0" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-19.0.0.tgz#43446f1f01c65a4cd7f7588083e686a6726cfb57" + integrity sha512-4GV5sHFG0e/0AD4X+ySy6UJd3jVl1iNsNHdpad0qhABJ11twS3TTBnseqsKurKcsNqCEFeGL3uLpVChpIO3QfQ== dependencies: - scheduler "0.25.0-beta-26f2496093-20240514" + scheduler "^0.25.0" -"react19@npm:react@19.0.0-beta-26f2496093-20240514": - version "19.0.0-beta-26f2496093-20240514" - resolved "https://registry.yarnpkg.com/react/-/react-19.0.0-beta-26f2496093-20240514.tgz#3a0d63746b3f9ebd461a0731191bd08047fb1dbb" - integrity sha512-ZsU/WjNZ6GfzMWsq2DcGjElpV9it8JmETHm9mAJuOJNhuJcWJxt8ltCJabONFRpDFq1A/DP0d0KFj9CTJVM4VA== - -react@^18.0.0: - version "18.3.1" - resolved "https://registry.yarnpkg.com/react/-/react-18.3.1.tgz#49ab892009c53933625bd16b2533fc754cab2891" - integrity sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ== - dependencies: - loose-envify "^1.1.0" +"react19@npm:react@19.0.0": + version "19.0.0" + resolved "https://registry.yarnpkg.com/react/-/react-19.0.0.tgz#6e1969251b9f108870aa4bff37a0ce9ddfaaabdd" + integrity sha512-V8AVnmPIICiWpGfm6GLzCR/W5FXLchHop40W4nXBmdlEceh16rCN8O8LNWm5bh5XUX91fh7KpA+W0TgMKmgTpQ== read-cache@^1.0.0: version "1.0.0" @@ -8042,11 +8027,6 @@ safe-regex-test@^1.0.3: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -scheduler@0.25.0-beta-26f2496093-20240514: - version "0.25.0-beta-26f2496093-20240514" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.25.0-beta-26f2496093-20240514.tgz#a3bc0ff694ec6de7a78c1e48e1f8f4a8555bd77d" - integrity sha512-vDwOytLHFnA3SW2B1lNcbO+/qKVyLCX+KLpm+tRGNDsXpyxzRgkIaYGWmX+S70AJGchUHCtuqQ50GFeFgDbXUw== - scheduler@^0.19.1: version "0.19.1" resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.19.1.tgz#4f3e2ed2c1a7d65681f4c854fa8c5a1ccb40f196" @@ -8070,6 +8050,11 @@ scheduler@^0.23.2: dependencies: loose-envify "^1.1.0" +scheduler@^0.25.0: + version "0.25.0" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.25.0.tgz#336cd9768e8cceebf52d3c80e3dcf5de23e7e015" + integrity sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA== + schema-utils@^3.0.0, schema-utils@^3.1.1: version "3.3.0" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe" @@ -8465,7 +8450,7 @@ stringify-object@^3.3.0: is-obj "^1.0.1" is-regexp "^1.0.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1": +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -8479,13 +8464,6 @@ strip-ansi@^5.2.0: dependencies: ansi-regex "^4.1.0" -strip-ansi@^6.0.0, strip-ansi@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - strip-ansi@^7.0.1, strip-ansi@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45" @@ -9238,16 +9216,7 @@ workerpool@^6.5.1: resolved "https://registry.yarnpkg.com/workerpool/-/workerpool-6.5.1.tgz#060f73b39d0caf97c6db64da004cd01b4c099544" integrity sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA== -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - -wrap-ansi@7.0.0, wrap-ansi@^6.2.0, wrap-ansi@^7.0.0, wrap-ansi@^8.0.1, wrap-ansi@^8.1.0: +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0", wrap-ansi@7.0.0, wrap-ansi@^6.2.0, wrap-ansi@^7.0.0, wrap-ansi@^8.0.1, wrap-ansi@^8.1.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== From 70ea63ce3b6744289ef3b629544d310fc78711ba Mon Sep 17 00:00:00 2001 From: Mateusz Baginski Date: Mon, 13 Jan 2025 12:02:00 +0100 Subject: [PATCH 2/2] Improve cloud injector error reporting. --- demos/cdn-react/App.tsx | 23 ++-- .../CKEditorCloudLocalPluginDemo.tsx | 62 +++++++++++ demos/cdn-react/local-plugin.umd.js | 100 ++++++++++++++++++ src/cloud/useCKEditorCloud.tsx | 10 ++ src/hooks/useAsyncCallback.ts | 2 - 5 files changed, 184 insertions(+), 13 deletions(-) create mode 100644 demos/cdn-react/CKEditorCloudLocalPluginDemo.tsx create mode 100644 demos/cdn-react/local-plugin.umd.js diff --git a/demos/cdn-react/App.tsx b/demos/cdn-react/App.tsx index 41dd3335..daa261d6 100644 --- a/demos/cdn-react/App.tsx +++ b/demos/cdn-react/App.tsx @@ -9,6 +9,7 @@ import { CKEditorCloudDemo } from './CKEditorCloudDemo.js'; import { CKEditorCloudPluginsDemo } from './CKEditorCloudPluginsDemo.js'; import { CKEditorCKBoxCloudDemo } from './CKEditorCKBoxCloudDemo.js'; import { CKEditorCloudContextDemo } from './CKEditorCloudContextDemo.js'; +import { CKEditorCloudLocalPluginsDemo } from './CKEditorCloudLocalPluginDemo.js'; const EDITOR_CONTENT = `

Sample

@@ -22,29 +23,29 @@ const EDITOR_CONTENT = ` custom build works fine.

`; -const DEMOS = [ 'Editor', 'Context', 'CKBox', 'Cloud Plugins' ] as const; +const EDITOR_CONTENT_ELEMENTS = { + Editor: , + Context: , + CKBox: , + 'Cloud Plugins': , + 'Cloud Local Plugins': +}; -type Demo = ( typeof DEMOS )[ number ]; +type Demo = keyof typeof EDITOR_CONTENT_ELEMENTS; export const App = (): ReactNode => { const [ currentDemo, setCurrentDemo ] = useState( 'Editor' ); - - const content = ( { - Editor: , - Context: , - CKBox: , - 'Cloud Plugins': - } )[ currentDemo ]; + const content = EDITOR_CONTENT_ELEMENTS[ currentDemo ]; return (

CKEditor 5 – React Component – CDN demo

- { DEMOS.map( demo => ( + { Object.keys( EDITOR_CONTENT_ELEMENTS ).map( demo => (