From 70ea63ce3b6744289ef3b629544d310fc78711ba Mon Sep 17 00:00:00 2001
From: Mateusz Baginski
Date: Mon, 13 Jan 2025 12:02:00 +0100
Subject: [PATCH] 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 41dd333..daa261d 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 => (