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 => (