@_sh/strapi-plugin-ckeditor 6.0.3 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -28,7 +28,7 @@
28
28
  - **Self-Hosted**
29
29
 
30
30
  <p align="right">
31
- <a href="https://www.buymeacoffee.com/nshenderov" target="_blank">
31
+ <a href="https://boosty.to/nkshenderov/donate" target="_blank">
32
32
  <img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" style="height: 60px; width: 217px;" >
33
33
  </a>
34
34
  </p>
@@ -469,7 +469,7 @@ export default {
469
469
  <summary>Setting a new set of presets [TS]</summary>
470
470
 
471
471
  ```ts
472
- // src/admin/app.tsx
472
+ // src/admin/app.ts
473
473
 
474
474
  import {
475
475
  Bold,
@@ -553,7 +553,7 @@ export default {
553
553
  <summary>Default presets modification using setPluginConfig [TS]</summary>
554
554
 
555
555
  ```ts
556
- // src/admin/app.tsx
556
+ // src/admin/app.ts
557
557
 
558
558
  import { css } from 'styled-components';
559
559
 
@@ -627,7 +627,7 @@ export default {
627
627
  <summary>Default presets modification using getPluginPresets [TS]</summary>
628
628
 
629
629
  ```ts
630
- // src/admin/app.tsx
630
+ // src/admin/app.ts
631
631
 
632
632
  import { css } from 'styled-components';
633
633
  import { getPluginPresets } from '@_sh/strapi-plugin-ckeditor';
@@ -687,7 +687,7 @@ export default {
687
687
  <summary>Modifying theme using setPluginConfig [TS]</summary>
688
688
 
689
689
  ```ts
690
- // src/admin/app.tsx
690
+ // src/admin/app.ts
691
691
 
692
692
  import { css } from 'styled-components';
693
693
 
@@ -723,7 +723,7 @@ export default {
723
723
  <summary>Modifying theme using getPluginTheme [TS]</summary>
724
724
 
725
725
  ```ts
726
- // src/admin/app.tsx
726
+ // src/admin/app.ts
727
727
 
728
728
  import { css } from 'styled-components';
729
729
  import { getPluginTheme } from '@_sh/strapi-plugin-ckeditor';
@@ -849,7 +849,7 @@ for detailed instructions.
849
849
 
850
850
  Strapi **>= 5.0.0**
851
851
 
852
- Node **>= 18.0.0 <= 22.x.x**
852
+ Node **>= 20.0.0 <= 24.x.x**
853
853
 
854
854
  ---
855
855
 
@@ -30,7 +30,7 @@ const admin = require("@strapi/strapi/admin");
30
30
  const ckeditor5 = require("ckeditor5");
31
31
  const ckeditor5React = require("@ckeditor/ckeditor5-react");
32
32
  require("ckeditor5/ckeditor5.css");
33
- const index = require("./index-D48ig74s.js");
33
+ const index = require("./index-V5z1nLLU.js");
34
34
  require("sanitize-html");
35
35
  const icons = require("@strapi/icons");
36
36
  const _interopDefault = (e) => e && e.__esModule ? e : { default: e };
@@ -349,7 +349,9 @@ const CKEReact = React__default.default.forwardRef((_, forwardedRef) => {
349
349
  const ckWrapper = document.querySelector(".ck-body-wrapper");
350
350
  const listener = ckWrapper?.addEventListener("pointerdown", (e) => e.stopPropagation(), true);
351
351
  return () => {
352
- listener && ckWrapper?.removeEventListener("pointerdown", listener);
352
+ if (listener) {
353
+ ckWrapper?.removeEventListener("pointerdown", listener);
354
+ }
353
355
  };
354
356
  }, [editorInstance]);
355
357
  React.useImperativeHandle(
@@ -457,24 +459,44 @@ const WordCounter = styledComponents.styled(designSystem.Flex)`
457
459
  `;
458
460
  function EditorLayout({ children }) {
459
461
  const { error, preset } = useEditorContext();
460
- const [isExpandedMode, handleToggleExpand] = React.useReducer((prev) => !prev, false);
461
- React.useEffect(() => {
462
- if (isExpandedMode) {
463
- document.body.classList.add("lock-body-scroll");
462
+ const [isExpandedMode, setIsExpandedMode] = React.useState(false);
463
+ const handleToggleExpand = (open) => {
464
+ if (open) {
464
465
  setTimeout(() => {
466
+ const ckPopupsWrapper = document.querySelector(".ck-body-wrapper");
467
+ const ckEditorModal = document.getElementById("ck-editor-modal");
468
+ if (ckPopupsWrapper && ckEditorModal) {
469
+ ckEditorModal.appendChild(ckPopupsWrapper);
470
+ }
465
471
  document.querySelector(".ck-editor__expanded .ck-editor__editable")?.focus();
466
472
  }, 0);
473
+ } else {
474
+ const ckPopupsWrapper = document.querySelector(".ck-body-wrapper");
475
+ if (ckPopupsWrapper) {
476
+ document.body.appendChild(ckPopupsWrapper);
477
+ }
478
+ }
479
+ setIsExpandedMode(open);
480
+ };
481
+ React.useEffect(() => {
482
+ if (isExpandedMode) {
483
+ document.body.classList.add("lock-body-scroll");
467
484
  }
468
485
  return () => {
469
486
  document.body.classList.remove("lock-body-scroll");
470
487
  };
471
488
  }, [isExpandedMode]);
472
489
  if (isExpandedMode) {
473
- return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Modal.Root, { open: isExpandedMode, onOpenChange: handleToggleExpand, children: /* @__PURE__ */ jsxRuntime.jsx(
474
- designSystem.Modal.Content,
490
+ return /* @__PURE__ */ jsxRuntime.jsx(designSystem.Modal.Root, { open: isExpandedMode, onOpenChange: handleToggleExpand, children: /* @__PURE__ */ jsxRuntime.jsx(Content, { id: "ck-editor-modal", children: /* @__PURE__ */ jsxRuntime.jsx(
491
+ designSystem.Flex,
475
492
  {
476
- style: { maxWidth: "var(--ck-editor-full-screen-box-max-width)", width: "unset" },
477
- children: /* @__PURE__ */ jsxRuntime.jsx(designSystem.Flex, { height: "90dvh", width: "90dvw", alignItems: "flex-start", direction: "column", children: /* @__PURE__ */ jsxRuntime.jsxs(
493
+ height: "90dvh",
494
+ width: "90dvw",
495
+ maxWidth: "100%",
496
+ direction: "column",
497
+ alignItems: "flex-start",
498
+ background: "neutral100",
499
+ children: /* @__PURE__ */ jsxRuntime.jsxs(
478
500
  EditorWrapper,
479
501
  {
480
502
  $presetStyles: preset?.styles,
@@ -483,12 +505,20 @@ function EditorLayout({ children }) {
483
505
  className: "ck-editor__expanded",
484
506
  children: [
485
507
  children,
486
- /* @__PURE__ */ jsxRuntime.jsx(CollapseButton, { tabindex: "-1", label: "Collapse", onClick: handleToggleExpand, children: /* @__PURE__ */ jsxRuntime.jsx(icons.Collapse, {}) })
508
+ /* @__PURE__ */ jsxRuntime.jsx(
509
+ CollapseButton,
510
+ {
511
+ tabIndex: "-1",
512
+ label: "Collapse",
513
+ onClick: () => handleToggleExpand(false),
514
+ children: /* @__PURE__ */ jsxRuntime.jsx(icons.Collapse, {})
515
+ }
516
+ )
487
517
  ]
488
518
  }
489
- ) })
519
+ )
490
520
  }
491
- ) });
521
+ ) }) });
492
522
  }
493
523
  return /* @__PURE__ */ jsxRuntime.jsxs(
494
524
  EditorWrapper,
@@ -498,7 +528,7 @@ function EditorLayout({ children }) {
498
528
  $hasError: Boolean(error),
499
529
  children: [
500
530
  children,
501
- /* @__PURE__ */ jsxRuntime.jsx(ExpandButton, { label: "Expand", onClick: handleToggleExpand, children: /* @__PURE__ */ jsxRuntime.jsx(icons.Expand, {}) })
531
+ /* @__PURE__ */ jsxRuntime.jsx(ExpandButton, { label: "Expand", onClick: () => handleToggleExpand(true), children: /* @__PURE__ */ jsxRuntime.jsx(icons.Expand, {}) })
502
532
  ]
503
533
  }
504
534
  );
@@ -540,6 +570,11 @@ const CollapseButton = styledComponents.styled(designSystem.IconButton)`
540
570
  z-index: 2;
541
571
  box-shadow: ${({ theme }) => theme.shadows.filterShadow};
542
572
  `;
573
+ const Content = styledComponents.styled(designSystem.Modal.Content)`
574
+ max-width: var(--ck-editor-full-screen-box-max-width);
575
+ width: unset;
576
+ overflow: visible;
577
+ `;
543
578
  const GlobalStyle = styledComponents.createGlobalStyle`
544
579
  ${({ $editortTheme, $variant }) => $editortTheme && styledComponents.css`
545
580
  ${$editortTheme.common}
@@ -1,12 +1,12 @@
1
1
  import { jsx, jsxs, Fragment } from "react/jsx-runtime";
2
- import React, { createContext, useContext, useState, useEffect, useMemo, useRef, useCallback, useImperativeHandle, useReducer } from "react";
2
+ import React, { createContext, useContext, useState, useEffect, useMemo, useRef, useCallback, useImperativeHandle } from "react";
3
3
  import { Flex, IconButton, Modal, Field as Field$1, Loader, Box } from "@strapi/design-system";
4
4
  import { styled, css, createGlobalStyle } from "styled-components";
5
5
  import { useStrapiApp, useField } from "@strapi/strapi/admin";
6
6
  import { ClassicEditor } from "ckeditor5";
7
7
  import { CKEditor } from "@ckeditor/ckeditor5-react";
8
8
  import "ckeditor5/ckeditor5.css";
9
- import { g as getPluginConfig, p as prefixFileUrlWithBackendUrl, i as isImageResponsive } from "./index-CwLpvdFD.mjs";
9
+ import { g as getPluginConfig, p as prefixFileUrlWithBackendUrl, i as isImageResponsive } from "./index-D6brYb_3.mjs";
10
10
  import "sanitize-html";
11
11
  import { Collapse, Expand } from "@strapi/icons";
12
12
  const STORAGE_KEYS = {
@@ -323,7 +323,9 @@ const CKEReact = React.forwardRef((_, forwardedRef) => {
323
323
  const ckWrapper = document.querySelector(".ck-body-wrapper");
324
324
  const listener = ckWrapper?.addEventListener("pointerdown", (e) => e.stopPropagation(), true);
325
325
  return () => {
326
- listener && ckWrapper?.removeEventListener("pointerdown", listener);
326
+ if (listener) {
327
+ ckWrapper?.removeEventListener("pointerdown", listener);
328
+ }
327
329
  };
328
330
  }, [editorInstance]);
329
331
  useImperativeHandle(
@@ -431,24 +433,44 @@ const WordCounter = styled(Flex)`
431
433
  `;
432
434
  function EditorLayout({ children }) {
433
435
  const { error, preset } = useEditorContext();
434
- const [isExpandedMode, handleToggleExpand] = useReducer((prev) => !prev, false);
435
- useEffect(() => {
436
- if (isExpandedMode) {
437
- document.body.classList.add("lock-body-scroll");
436
+ const [isExpandedMode, setIsExpandedMode] = useState(false);
437
+ const handleToggleExpand = (open) => {
438
+ if (open) {
438
439
  setTimeout(() => {
440
+ const ckPopupsWrapper = document.querySelector(".ck-body-wrapper");
441
+ const ckEditorModal = document.getElementById("ck-editor-modal");
442
+ if (ckPopupsWrapper && ckEditorModal) {
443
+ ckEditorModal.appendChild(ckPopupsWrapper);
444
+ }
439
445
  document.querySelector(".ck-editor__expanded .ck-editor__editable")?.focus();
440
446
  }, 0);
447
+ } else {
448
+ const ckPopupsWrapper = document.querySelector(".ck-body-wrapper");
449
+ if (ckPopupsWrapper) {
450
+ document.body.appendChild(ckPopupsWrapper);
451
+ }
452
+ }
453
+ setIsExpandedMode(open);
454
+ };
455
+ useEffect(() => {
456
+ if (isExpandedMode) {
457
+ document.body.classList.add("lock-body-scroll");
441
458
  }
442
459
  return () => {
443
460
  document.body.classList.remove("lock-body-scroll");
444
461
  };
445
462
  }, [isExpandedMode]);
446
463
  if (isExpandedMode) {
447
- return /* @__PURE__ */ jsx(Modal.Root, { open: isExpandedMode, onOpenChange: handleToggleExpand, children: /* @__PURE__ */ jsx(
448
- Modal.Content,
464
+ return /* @__PURE__ */ jsx(Modal.Root, { open: isExpandedMode, onOpenChange: handleToggleExpand, children: /* @__PURE__ */ jsx(Content, { id: "ck-editor-modal", children: /* @__PURE__ */ jsx(
465
+ Flex,
449
466
  {
450
- style: { maxWidth: "var(--ck-editor-full-screen-box-max-width)", width: "unset" },
451
- children: /* @__PURE__ */ jsx(Flex, { height: "90dvh", width: "90dvw", alignItems: "flex-start", direction: "column", children: /* @__PURE__ */ jsxs(
467
+ height: "90dvh",
468
+ width: "90dvw",
469
+ maxWidth: "100%",
470
+ direction: "column",
471
+ alignItems: "flex-start",
472
+ background: "neutral100",
473
+ children: /* @__PURE__ */ jsxs(
452
474
  EditorWrapper,
453
475
  {
454
476
  $presetStyles: preset?.styles,
@@ -457,12 +479,20 @@ function EditorLayout({ children }) {
457
479
  className: "ck-editor__expanded",
458
480
  children: [
459
481
  children,
460
- /* @__PURE__ */ jsx(CollapseButton, { tabindex: "-1", label: "Collapse", onClick: handleToggleExpand, children: /* @__PURE__ */ jsx(Collapse, {}) })
482
+ /* @__PURE__ */ jsx(
483
+ CollapseButton,
484
+ {
485
+ tabIndex: "-1",
486
+ label: "Collapse",
487
+ onClick: () => handleToggleExpand(false),
488
+ children: /* @__PURE__ */ jsx(Collapse, {})
489
+ }
490
+ )
461
491
  ]
462
492
  }
463
- ) })
493
+ )
464
494
  }
465
- ) });
495
+ ) }) });
466
496
  }
467
497
  return /* @__PURE__ */ jsxs(
468
498
  EditorWrapper,
@@ -472,7 +502,7 @@ function EditorLayout({ children }) {
472
502
  $hasError: Boolean(error),
473
503
  children: [
474
504
  children,
475
- /* @__PURE__ */ jsx(ExpandButton, { label: "Expand", onClick: handleToggleExpand, children: /* @__PURE__ */ jsx(Expand, {}) })
505
+ /* @__PURE__ */ jsx(ExpandButton, { label: "Expand", onClick: () => handleToggleExpand(true), children: /* @__PURE__ */ jsx(Expand, {}) })
476
506
  ]
477
507
  }
478
508
  );
@@ -514,6 +544,11 @@ const CollapseButton = styled(IconButton)`
514
544
  z-index: 2;
515
545
  box-shadow: ${({ theme }) => theme.shadows.filterShadow};
516
546
  `;
547
+ const Content = styled(Modal.Content)`
548
+ max-width: var(--ck-editor-full-screen-box-max-width);
549
+ width: unset;
550
+ overflow: visible;
551
+ `;
517
552
  const GlobalStyle = createGlobalStyle`
518
553
  ${({ $editortTheme, $variant }) => $editortTheme && css`
519
554
  ${$editortTheme.common}
@@ -6,7 +6,7 @@ import { jsx, jsxs } from "react/jsx-runtime";
6
6
  import { Flex, lightTheme } from "@strapi/design-system";
7
7
  import cloneDeep from "lodash/cloneDeep";
8
8
  const name = "@_sh/strapi-plugin-ckeditor";
9
- const version = "6.0.3";
9
+ const version = "7.0.0";
10
10
  const description = "Integrates CKEditor 5 into your Strapi project as a fully customizable custom field. (Community Edition)";
11
11
  const keywords = [
12
12
  "strapi",
@@ -67,43 +67,45 @@ const scripts = {
67
67
  "test:ts:front": "run -T tsc -p admin/tsconfig.json",
68
68
  "test:ts:back": "run -T tsc -p server/tsconfig.json",
69
69
  release: "release-it",
70
- "release:info": "release-it --changelog"
70
+ "release:info": "release-it --changelog",
71
+ "lint:ts": "eslint . --ext ts,tsx --report-unused-disable-directives",
72
+ "lint:ts:fix": "eslint . --ext ts,tsx --report-unused-disable-directives --fix"
71
73
  };
72
74
  const dependencies = {
73
- "@ckeditor/ckeditor5-react": "~9.5.0",
74
- "@strapi/design-system": "2.0.0-rc.18",
75
- "@strapi/icons": "2.0.0-rc.18",
76
- ckeditor5: "~45.2.0",
75
+ "@ckeditor/ckeditor5-react": "~11.0.1",
76
+ "@strapi/design-system": "2.1.2",
77
+ "@strapi/icons": "2.1.2",
78
+ ckeditor5: "~47.4.0",
77
79
  lodash: "4.17.21",
78
80
  "sanitize-html": "2.13.0",
79
81
  yup: "0.32.9"
80
82
  };
81
83
  const devDependencies = {
82
84
  "@release-it/conventional-changelog": "10.0.0",
83
- "@strapi/sdk-plugin": "5.3.2",
84
- "@strapi/strapi": "5.11.0",
85
- "@strapi/typescript-utils": "5.11.0",
86
- "@types/react": "^18.3.12",
87
- "@types/react-dom": "^18.3.1",
88
- "@types/sanitize-html": "2.13.0",
89
- "@typescript-eslint/eslint-plugin": "7.0.0",
90
- "@typescript-eslint/parser": "7.0.0",
91
- eslint: "8.2.0",
92
- "eslint-config-airbnb": "19.0.4",
93
- "eslint-config-airbnb-typescript": "18.0.0",
94
- "eslint-config-prettier": "9.1.0",
95
- "eslint-plugin-import": "2.25.3",
96
- "eslint-plugin-jsx-a11y": "6.10.2",
97
- "eslint-plugin-prettier": "5.2.1",
98
- "eslint-plugin-react": "7.28.0",
99
- "eslint-plugin-react-hooks": "4.3.0",
100
- prettier: "3.4.0",
101
- react: "18.3.1",
102
- "react-dom": "18.3.1",
103
- "react-router-dom": "6.30.0",
104
- "release-it": "18.1.2",
105
- "styled-components": "6.1.15",
106
- typescript: "5.6.3"
85
+ "@strapi/sdk-plugin": "5.4.0",
86
+ "@strapi/strapi": "5.33.4",
87
+ "@strapi/typescript-utils": "5.33.4",
88
+ "@types/react": "^18.0.0",
89
+ "@types/react-dom": "^18.0.0",
90
+ "@types/sanitize-html": "^2.13.0",
91
+ "@typescript-eslint/eslint-plugin": "^7.0.0",
92
+ "@typescript-eslint/parser": "^7.0.0",
93
+ eslint: "^8.2.0",
94
+ "eslint-config-airbnb": "^19.0.4",
95
+ "eslint-config-airbnb-typescript": "^18.0.0",
96
+ "eslint-config-prettier": "^9.1.0",
97
+ "eslint-plugin-import": "^2.25.3",
98
+ "eslint-plugin-jsx-a11y": "^6.10.2",
99
+ "eslint-plugin-prettier": "^5.2.1",
100
+ "eslint-plugin-react": "^7.28.0",
101
+ "eslint-plugin-react-hooks": "^4.3.0",
102
+ prettier: "^3.4.0",
103
+ "release-it": "^18.1.2",
104
+ typescript: "5.6.3",
105
+ react: "^18.0.0",
106
+ "react-dom": "^18.0.0",
107
+ "react-router-dom": "^6.0.0",
108
+ "styled-components": "^6.0.0"
107
109
  };
108
110
  const peerDependencies = {
109
111
  "@strapi/strapi": "^5.0.0",
@@ -113,7 +115,7 @@ const peerDependencies = {
113
115
  "styled-components": "^6.0.0"
114
116
  };
115
117
  const engines = {
116
- node: ">=18.0.0 <=22.x.x",
118
+ node: ">=20.0.0 <=24.x.x",
117
119
  npm: ">=6.0.0"
118
120
  };
119
121
  const license = "MIT";
@@ -162,7 +164,7 @@ const colors = css`
162
164
  --ck-color-base-focus: ${theme.colors.primary200};
163
165
  --ck-color-base-active: ${theme.colors.primary500}8F;
164
166
  --ck-color-base-active-focus: ${theme.colors.primary600};
165
- --ck-color-editor-base-text: ${theme.colors.neutral800};
167
+ --ck-content-font-color: ${theme.colors.neutral800};
166
168
  --ck-color-base-border: ${theme.colors.neutral200};
167
169
  --ck-color-base-background: ${theme.colors.neutral0};
168
170
  --ck-custom-foreground: ${theme.colors.neutral200};
@@ -248,8 +250,13 @@ const colors = css`
248
250
 
249
251
  /* -- Image ------------------------------------------------------------------------------- */
250
252
 
251
- --ck-color-image-caption-background: ${theme.colors.neutral100};
252
- --ck-color-image-caption-text: ${theme.colors.neutral800};
253
+ --ck-content-color-image-caption-background: ${theme.colors.neutral100};
254
+ --ck-content-color-image-caption-text: ${theme.colors.neutral800};
255
+
256
+ /* -- Table ------------------------------------------------------------------------------- */
257
+
258
+ --ck-content-color-table-caption-background: ${theme.colors.neutral100};
259
+ --ck-content-color-table-caption-text: ${theme.colors.neutral800};
253
260
 
254
261
  /* -- Widget ------------------------------------------------------------------------------ */
255
262
 
@@ -288,18 +295,18 @@ const dark = css`
288
295
  const reset = css`
289
296
  ${({ theme }) => css`
290
297
  .ck {
291
- --ck-color-image-caption-background: hsl(0, 0%, 97%);
292
- --ck-color-image-caption-text: hsl(0, 0%, 20%);
293
- --ck-color-mention-background: hsla(341, 100%, 30%, 0.1);
294
- --ck-color-mention-text: hsl(341, 100%, 30%);
298
+ --ck-content-color-image-caption-background: hsl(0, 0%, 97%);
299
+ --ck-content-color-image-caption-text: hsl(0, 0%, 20%);
300
+ --ck-content-color-mention-background: hsla(341, 100%, 30%, 0.1);
301
+ --ck-content-color-mention-text: hsl(341, 100%, 30%);
295
302
  --ck-color-table-caption-background: hsl(0, 0%, 97%);
296
303
  --ck-color-table-caption-text: hsl(0, 0%, 20%);
297
- --ck-highlight-marker-blue: hsl(201, 97%, 72%);
298
- --ck-highlight-marker-green: hsl(120, 93%, 68%);
299
- --ck-highlight-marker-pink: hsl(345, 96%, 73%);
300
- --ck-highlight-marker-yellow: hsl(60, 97%, 73%);
301
- --ck-highlight-pen-green: hsl(112, 100%, 27%);
302
- --ck-highlight-pen-red: hsl(0, 85%, 49%);
304
+ --ck-content-highlight-marker-blue: hsl(201, 97%, 72%);
305
+ --ck-content-highlight-marker-green: hsl(120, 93%, 68%);
306
+ --ck-content-highlight-marker-pink: hsl(345, 96%, 73%);
307
+ --ck-content-highlight-marker-yellow: hsl(60, 97%, 73%);
308
+ --ck-content-highlight-pen-green: hsl(112, 100%, 27%);
309
+ --ck-content-highlight-pen-red: hsl(0, 85%, 49%);
303
310
  --ck-image-style-spacing: 1.5em;
304
311
  --ck-inline-image-style-spacing: calc(var(--ck-image-style-spacing) / 2);
305
312
  --ck-todo-list-checkmark-size: 16px;
@@ -316,7 +323,6 @@ const reset = css`
316
323
  --ck-font-face: 'Source Sans Pro', system-ui, Roboto, 'Helvetica Neue', 'Helvetica', Arial,
317
324
  sans-serif;
318
325
 
319
- color: var(--ck-color-editor-base-text);
320
326
  font-family: var(--ck-font-face);
321
327
 
322
328
  * {
@@ -324,41 +330,6 @@ const reset = css`
324
330
  margin: revert;
325
331
  }
326
332
 
327
- h1 {
328
- font-size: 2.3em;
329
- }
330
-
331
- h2 {
332
- font-size: 1.84em;
333
- }
334
-
335
- h3 {
336
- font-size: 1.48em;
337
- }
338
-
339
- h4 {
340
- font-size: 1.22em;
341
- }
342
-
343
- h5 {
344
- font-size: 1.06em;
345
- }
346
-
347
- h6 {
348
- font-size: 1em;
349
- }
350
-
351
- h1,
352
- h2,
353
- h3,
354
- h4,
355
- h5,
356
- h6 {
357
- line-height: 1.2em;
358
- padding-top: 0.8em;
359
- margin-bottom: 0.4em;
360
- }
361
-
362
333
  blockquote,
363
334
  ol,
364
335
  p,
@@ -370,9 +341,9 @@ const reset = css`
370
341
  }
371
342
 
372
343
  figcaption {
373
- background-color: var(--ck-color-image-caption-background);
344
+ background-color: var(--ck-content-color-image-caption-background);
374
345
  caption-side: bottom;
375
- color: var(--ck-color-image-caption-text);
346
+ color: var(--ck-content-color-image-caption-text);
376
347
  display: table-caption;
377
348
  font-size: 0.75em;
378
349
  outline-offset: -1px;
@@ -418,6 +389,11 @@ const reset = css`
418
389
  sup {
419
390
  vertical-align: super;
420
391
  }
392
+
393
+ .ck-input-text.raw-html-embed__source,
394
+ .ck-button.raw-html-embed__edit-button {
395
+ color: var(--ck-color-text);
396
+ }
421
397
  }
422
398
  `}
423
399
  `;
@@ -515,7 +491,7 @@ const plugin = css`
515
491
  }
516
492
 
517
493
  .ck.ck-editor__editable > .ck-placeholder::before {
518
- color: var(--ck-color-editor-base-text);
494
+ color: var(--ck-content-font-color);
519
495
  opacity: 0.65;
520
496
  }
521
497
 
@@ -1249,7 +1225,7 @@ const index = {
1249
1225
  defaultMessage: "The advanced rich text editor. (Community Edition)"
1250
1226
  },
1251
1227
  components: {
1252
- Input: async () => import("./Field-C5uO1-1c.mjs").then((module) => ({
1228
+ Input: async () => import("./Field-SB2kmV75.mjs").then((module) => ({
1253
1229
  default: module.Field
1254
1230
  }))
1255
1231
  },
@@ -28,7 +28,7 @@ const yup__namespace = /* @__PURE__ */ _interopNamespace(yup);
28
28
  const sanitizeHtml__namespace = /* @__PURE__ */ _interopNamespace(sanitizeHtml);
29
29
  const cloneDeep__default = /* @__PURE__ */ _interopDefault(cloneDeep);
30
30
  const name = "@_sh/strapi-plugin-ckeditor";
31
- const version = "6.0.3";
31
+ const version = "7.0.0";
32
32
  const description = "Integrates CKEditor 5 into your Strapi project as a fully customizable custom field. (Community Edition)";
33
33
  const keywords = [
34
34
  "strapi",
@@ -89,43 +89,45 @@ const scripts = {
89
89
  "test:ts:front": "run -T tsc -p admin/tsconfig.json",
90
90
  "test:ts:back": "run -T tsc -p server/tsconfig.json",
91
91
  release: "release-it",
92
- "release:info": "release-it --changelog"
92
+ "release:info": "release-it --changelog",
93
+ "lint:ts": "eslint . --ext ts,tsx --report-unused-disable-directives",
94
+ "lint:ts:fix": "eslint . --ext ts,tsx --report-unused-disable-directives --fix"
93
95
  };
94
96
  const dependencies = {
95
- "@ckeditor/ckeditor5-react": "~9.5.0",
96
- "@strapi/design-system": "2.0.0-rc.18",
97
- "@strapi/icons": "2.0.0-rc.18",
98
- ckeditor5: "~45.2.0",
97
+ "@ckeditor/ckeditor5-react": "~11.0.1",
98
+ "@strapi/design-system": "2.1.2",
99
+ "@strapi/icons": "2.1.2",
100
+ ckeditor5: "~47.4.0",
99
101
  lodash: "4.17.21",
100
102
  "sanitize-html": "2.13.0",
101
103
  yup: "0.32.9"
102
104
  };
103
105
  const devDependencies = {
104
106
  "@release-it/conventional-changelog": "10.0.0",
105
- "@strapi/sdk-plugin": "5.3.2",
106
- "@strapi/strapi": "5.11.0",
107
- "@strapi/typescript-utils": "5.11.0",
108
- "@types/react": "^18.3.12",
109
- "@types/react-dom": "^18.3.1",
110
- "@types/sanitize-html": "2.13.0",
111
- "@typescript-eslint/eslint-plugin": "7.0.0",
112
- "@typescript-eslint/parser": "7.0.0",
113
- eslint: "8.2.0",
114
- "eslint-config-airbnb": "19.0.4",
115
- "eslint-config-airbnb-typescript": "18.0.0",
116
- "eslint-config-prettier": "9.1.0",
117
- "eslint-plugin-import": "2.25.3",
118
- "eslint-plugin-jsx-a11y": "6.10.2",
119
- "eslint-plugin-prettier": "5.2.1",
120
- "eslint-plugin-react": "7.28.0",
121
- "eslint-plugin-react-hooks": "4.3.0",
122
- prettier: "3.4.0",
123
- react: "18.3.1",
124
- "react-dom": "18.3.1",
125
- "react-router-dom": "6.30.0",
126
- "release-it": "18.1.2",
127
- "styled-components": "6.1.15",
128
- typescript: "5.6.3"
107
+ "@strapi/sdk-plugin": "5.4.0",
108
+ "@strapi/strapi": "5.33.4",
109
+ "@strapi/typescript-utils": "5.33.4",
110
+ "@types/react": "^18.0.0",
111
+ "@types/react-dom": "^18.0.0",
112
+ "@types/sanitize-html": "^2.13.0",
113
+ "@typescript-eslint/eslint-plugin": "^7.0.0",
114
+ "@typescript-eslint/parser": "^7.0.0",
115
+ eslint: "^8.2.0",
116
+ "eslint-config-airbnb": "^19.0.4",
117
+ "eslint-config-airbnb-typescript": "^18.0.0",
118
+ "eslint-config-prettier": "^9.1.0",
119
+ "eslint-plugin-import": "^2.25.3",
120
+ "eslint-plugin-jsx-a11y": "^6.10.2",
121
+ "eslint-plugin-prettier": "^5.2.1",
122
+ "eslint-plugin-react": "^7.28.0",
123
+ "eslint-plugin-react-hooks": "^4.3.0",
124
+ prettier: "^3.4.0",
125
+ "release-it": "^18.1.2",
126
+ typescript: "5.6.3",
127
+ react: "^18.0.0",
128
+ "react-dom": "^18.0.0",
129
+ "react-router-dom": "^6.0.0",
130
+ "styled-components": "^6.0.0"
129
131
  };
130
132
  const peerDependencies = {
131
133
  "@strapi/strapi": "^5.0.0",
@@ -135,7 +137,7 @@ const peerDependencies = {
135
137
  "styled-components": "^6.0.0"
136
138
  };
137
139
  const engines = {
138
- node: ">=18.0.0 <=22.x.x",
140
+ node: ">=20.0.0 <=24.x.x",
139
141
  npm: ">=6.0.0"
140
142
  };
141
143
  const license = "MIT";
@@ -184,7 +186,7 @@ const colors = styledComponents.css`
184
186
  --ck-color-base-focus: ${theme.colors.primary200};
185
187
  --ck-color-base-active: ${theme.colors.primary500}8F;
186
188
  --ck-color-base-active-focus: ${theme.colors.primary600};
187
- --ck-color-editor-base-text: ${theme.colors.neutral800};
189
+ --ck-content-font-color: ${theme.colors.neutral800};
188
190
  --ck-color-base-border: ${theme.colors.neutral200};
189
191
  --ck-color-base-background: ${theme.colors.neutral0};
190
192
  --ck-custom-foreground: ${theme.colors.neutral200};
@@ -270,8 +272,13 @@ const colors = styledComponents.css`
270
272
 
271
273
  /* -- Image ------------------------------------------------------------------------------- */
272
274
 
273
- --ck-color-image-caption-background: ${theme.colors.neutral100};
274
- --ck-color-image-caption-text: ${theme.colors.neutral800};
275
+ --ck-content-color-image-caption-background: ${theme.colors.neutral100};
276
+ --ck-content-color-image-caption-text: ${theme.colors.neutral800};
277
+
278
+ /* -- Table ------------------------------------------------------------------------------- */
279
+
280
+ --ck-content-color-table-caption-background: ${theme.colors.neutral100};
281
+ --ck-content-color-table-caption-text: ${theme.colors.neutral800};
275
282
 
276
283
  /* -- Widget ------------------------------------------------------------------------------ */
277
284
 
@@ -310,18 +317,18 @@ const dark = styledComponents.css`
310
317
  const reset = styledComponents.css`
311
318
  ${({ theme }) => styledComponents.css`
312
319
  .ck {
313
- --ck-color-image-caption-background: hsl(0, 0%, 97%);
314
- --ck-color-image-caption-text: hsl(0, 0%, 20%);
315
- --ck-color-mention-background: hsla(341, 100%, 30%, 0.1);
316
- --ck-color-mention-text: hsl(341, 100%, 30%);
320
+ --ck-content-color-image-caption-background: hsl(0, 0%, 97%);
321
+ --ck-content-color-image-caption-text: hsl(0, 0%, 20%);
322
+ --ck-content-color-mention-background: hsla(341, 100%, 30%, 0.1);
323
+ --ck-content-color-mention-text: hsl(341, 100%, 30%);
317
324
  --ck-color-table-caption-background: hsl(0, 0%, 97%);
318
325
  --ck-color-table-caption-text: hsl(0, 0%, 20%);
319
- --ck-highlight-marker-blue: hsl(201, 97%, 72%);
320
- --ck-highlight-marker-green: hsl(120, 93%, 68%);
321
- --ck-highlight-marker-pink: hsl(345, 96%, 73%);
322
- --ck-highlight-marker-yellow: hsl(60, 97%, 73%);
323
- --ck-highlight-pen-green: hsl(112, 100%, 27%);
324
- --ck-highlight-pen-red: hsl(0, 85%, 49%);
326
+ --ck-content-highlight-marker-blue: hsl(201, 97%, 72%);
327
+ --ck-content-highlight-marker-green: hsl(120, 93%, 68%);
328
+ --ck-content-highlight-marker-pink: hsl(345, 96%, 73%);
329
+ --ck-content-highlight-marker-yellow: hsl(60, 97%, 73%);
330
+ --ck-content-highlight-pen-green: hsl(112, 100%, 27%);
331
+ --ck-content-highlight-pen-red: hsl(0, 85%, 49%);
325
332
  --ck-image-style-spacing: 1.5em;
326
333
  --ck-inline-image-style-spacing: calc(var(--ck-image-style-spacing) / 2);
327
334
  --ck-todo-list-checkmark-size: 16px;
@@ -338,7 +345,6 @@ const reset = styledComponents.css`
338
345
  --ck-font-face: 'Source Sans Pro', system-ui, Roboto, 'Helvetica Neue', 'Helvetica', Arial,
339
346
  sans-serif;
340
347
 
341
- color: var(--ck-color-editor-base-text);
342
348
  font-family: var(--ck-font-face);
343
349
 
344
350
  * {
@@ -346,41 +352,6 @@ const reset = styledComponents.css`
346
352
  margin: revert;
347
353
  }
348
354
 
349
- h1 {
350
- font-size: 2.3em;
351
- }
352
-
353
- h2 {
354
- font-size: 1.84em;
355
- }
356
-
357
- h3 {
358
- font-size: 1.48em;
359
- }
360
-
361
- h4 {
362
- font-size: 1.22em;
363
- }
364
-
365
- h5 {
366
- font-size: 1.06em;
367
- }
368
-
369
- h6 {
370
- font-size: 1em;
371
- }
372
-
373
- h1,
374
- h2,
375
- h3,
376
- h4,
377
- h5,
378
- h6 {
379
- line-height: 1.2em;
380
- padding-top: 0.8em;
381
- margin-bottom: 0.4em;
382
- }
383
-
384
355
  blockquote,
385
356
  ol,
386
357
  p,
@@ -392,9 +363,9 @@ const reset = styledComponents.css`
392
363
  }
393
364
 
394
365
  figcaption {
395
- background-color: var(--ck-color-image-caption-background);
366
+ background-color: var(--ck-content-color-image-caption-background);
396
367
  caption-side: bottom;
397
- color: var(--ck-color-image-caption-text);
368
+ color: var(--ck-content-color-image-caption-text);
398
369
  display: table-caption;
399
370
  font-size: 0.75em;
400
371
  outline-offset: -1px;
@@ -440,6 +411,11 @@ const reset = styledComponents.css`
440
411
  sup {
441
412
  vertical-align: super;
442
413
  }
414
+
415
+ .ck-input-text.raw-html-embed__source,
416
+ .ck-button.raw-html-embed__edit-button {
417
+ color: var(--ck-color-text);
418
+ }
443
419
  }
444
420
  `}
445
421
  `;
@@ -537,7 +513,7 @@ const plugin = styledComponents.css`
537
513
  }
538
514
 
539
515
  .ck.ck-editor__editable > .ck-placeholder::before {
540
- color: var(--ck-color-editor-base-text);
516
+ color: var(--ck-content-font-color);
541
517
  opacity: 0.65;
542
518
  }
543
519
 
@@ -1271,7 +1247,7 @@ const index = {
1271
1247
  defaultMessage: "The advanced rich text editor. (Community Edition)"
1272
1248
  },
1273
1249
  components: {
1274
- Input: async () => Promise.resolve().then(() => require("./Field-Bjfn0oud.js")).then((module2) => ({
1250
+ Input: async () => Promise.resolve().then(() => require("./Field-D_sK_Mfq.js")).then((module2) => ({
1275
1251
  default: module2.Field
1276
1252
  }))
1277
1253
  },
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  require("yup");
4
- const index = require("../_chunks/index-D48ig74s.js");
4
+ const index = require("../_chunks/index-V5z1nLLU.js");
5
5
  require("ckeditor5");
6
6
  require("sanitize-html");
7
7
  exports.StrapiMediaLib = index.StrapiMediaLib;
@@ -1,5 +1,5 @@
1
1
  import "yup";
2
- import { S, h, a, b, d, c, e, f, s } from "../_chunks/index-CwLpvdFD.mjs";
2
+ import { S, h, a, b, d, c, e, f, s } from "../_chunks/index-D6brYb_3.mjs";
3
3
  import "ckeditor5";
4
4
  import "sanitize-html";
5
5
  export {
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  const name = "@_sh/strapi-plugin-ckeditor";
3
- const version = "6.0.3";
3
+ const version = "7.0.0";
4
4
  const description = "Integrates CKEditor 5 into your Strapi project as a fully customizable custom field. (Community Edition)";
5
5
  const keywords = [
6
6
  "strapi",
@@ -61,43 +61,45 @@ const scripts = {
61
61
  "test:ts:front": "run -T tsc -p admin/tsconfig.json",
62
62
  "test:ts:back": "run -T tsc -p server/tsconfig.json",
63
63
  release: "release-it",
64
- "release:info": "release-it --changelog"
64
+ "release:info": "release-it --changelog",
65
+ "lint:ts": "eslint . --ext ts,tsx --report-unused-disable-directives",
66
+ "lint:ts:fix": "eslint . --ext ts,tsx --report-unused-disable-directives --fix"
65
67
  };
66
68
  const dependencies = {
67
- "@ckeditor/ckeditor5-react": "~9.5.0",
68
- "@strapi/design-system": "2.0.0-rc.18",
69
- "@strapi/icons": "2.0.0-rc.18",
70
- ckeditor5: "~45.2.0",
69
+ "@ckeditor/ckeditor5-react": "~11.0.1",
70
+ "@strapi/design-system": "2.1.2",
71
+ "@strapi/icons": "2.1.2",
72
+ ckeditor5: "~47.4.0",
71
73
  lodash: "4.17.21",
72
74
  "sanitize-html": "2.13.0",
73
75
  yup: "0.32.9"
74
76
  };
75
77
  const devDependencies = {
76
78
  "@release-it/conventional-changelog": "10.0.0",
77
- "@strapi/sdk-plugin": "5.3.2",
78
- "@strapi/strapi": "5.11.0",
79
- "@strapi/typescript-utils": "5.11.0",
80
- "@types/react": "^18.3.12",
81
- "@types/react-dom": "^18.3.1",
82
- "@types/sanitize-html": "2.13.0",
83
- "@typescript-eslint/eslint-plugin": "7.0.0",
84
- "@typescript-eslint/parser": "7.0.0",
85
- eslint: "8.2.0",
86
- "eslint-config-airbnb": "19.0.4",
87
- "eslint-config-airbnb-typescript": "18.0.0",
88
- "eslint-config-prettier": "9.1.0",
89
- "eslint-plugin-import": "2.25.3",
90
- "eslint-plugin-jsx-a11y": "6.10.2",
91
- "eslint-plugin-prettier": "5.2.1",
92
- "eslint-plugin-react": "7.28.0",
93
- "eslint-plugin-react-hooks": "4.3.0",
94
- prettier: "3.4.0",
95
- react: "18.3.1",
96
- "react-dom": "18.3.1",
97
- "react-router-dom": "6.30.0",
98
- "release-it": "18.1.2",
99
- "styled-components": "6.1.15",
100
- typescript: "5.6.3"
79
+ "@strapi/sdk-plugin": "5.4.0",
80
+ "@strapi/strapi": "5.33.4",
81
+ "@strapi/typescript-utils": "5.33.4",
82
+ "@types/react": "^18.0.0",
83
+ "@types/react-dom": "^18.0.0",
84
+ "@types/sanitize-html": "^2.13.0",
85
+ "@typescript-eslint/eslint-plugin": "^7.0.0",
86
+ "@typescript-eslint/parser": "^7.0.0",
87
+ eslint: "^8.2.0",
88
+ "eslint-config-airbnb": "^19.0.4",
89
+ "eslint-config-airbnb-typescript": "^18.0.0",
90
+ "eslint-config-prettier": "^9.1.0",
91
+ "eslint-plugin-import": "^2.25.3",
92
+ "eslint-plugin-jsx-a11y": "^6.10.2",
93
+ "eslint-plugin-prettier": "^5.2.1",
94
+ "eslint-plugin-react": "^7.28.0",
95
+ "eslint-plugin-react-hooks": "^4.3.0",
96
+ prettier: "^3.4.0",
97
+ "release-it": "^18.1.2",
98
+ typescript: "5.6.3",
99
+ react: "^18.0.0",
100
+ "react-dom": "^18.0.0",
101
+ "react-router-dom": "^6.0.0",
102
+ "styled-components": "^6.0.0"
101
103
  };
102
104
  const peerDependencies = {
103
105
  "@strapi/strapi": "^5.0.0",
@@ -107,7 +109,7 @@ const peerDependencies = {
107
109
  "styled-components": "^6.0.0"
108
110
  };
109
111
  const engines = {
110
- node: ">=18.0.0 <=22.x.x",
112
+ node: ">=20.0.0 <=24.x.x",
111
113
  npm: ">=6.0.0"
112
114
  };
113
115
  const license = "MIT";
@@ -1,5 +1,5 @@
1
1
  const name = "@_sh/strapi-plugin-ckeditor";
2
- const version = "6.0.3";
2
+ const version = "7.0.0";
3
3
  const description = "Integrates CKEditor 5 into your Strapi project as a fully customizable custom field. (Community Edition)";
4
4
  const keywords = [
5
5
  "strapi",
@@ -60,43 +60,45 @@ const scripts = {
60
60
  "test:ts:front": "run -T tsc -p admin/tsconfig.json",
61
61
  "test:ts:back": "run -T tsc -p server/tsconfig.json",
62
62
  release: "release-it",
63
- "release:info": "release-it --changelog"
63
+ "release:info": "release-it --changelog",
64
+ "lint:ts": "eslint . --ext ts,tsx --report-unused-disable-directives",
65
+ "lint:ts:fix": "eslint . --ext ts,tsx --report-unused-disable-directives --fix"
64
66
  };
65
67
  const dependencies = {
66
- "@ckeditor/ckeditor5-react": "~9.5.0",
67
- "@strapi/design-system": "2.0.0-rc.18",
68
- "@strapi/icons": "2.0.0-rc.18",
69
- ckeditor5: "~45.2.0",
68
+ "@ckeditor/ckeditor5-react": "~11.0.1",
69
+ "@strapi/design-system": "2.1.2",
70
+ "@strapi/icons": "2.1.2",
71
+ ckeditor5: "~47.4.0",
70
72
  lodash: "4.17.21",
71
73
  "sanitize-html": "2.13.0",
72
74
  yup: "0.32.9"
73
75
  };
74
76
  const devDependencies = {
75
77
  "@release-it/conventional-changelog": "10.0.0",
76
- "@strapi/sdk-plugin": "5.3.2",
77
- "@strapi/strapi": "5.11.0",
78
- "@strapi/typescript-utils": "5.11.0",
79
- "@types/react": "^18.3.12",
80
- "@types/react-dom": "^18.3.1",
81
- "@types/sanitize-html": "2.13.0",
82
- "@typescript-eslint/eslint-plugin": "7.0.0",
83
- "@typescript-eslint/parser": "7.0.0",
84
- eslint: "8.2.0",
85
- "eslint-config-airbnb": "19.0.4",
86
- "eslint-config-airbnb-typescript": "18.0.0",
87
- "eslint-config-prettier": "9.1.0",
88
- "eslint-plugin-import": "2.25.3",
89
- "eslint-plugin-jsx-a11y": "6.10.2",
90
- "eslint-plugin-prettier": "5.2.1",
91
- "eslint-plugin-react": "7.28.0",
92
- "eslint-plugin-react-hooks": "4.3.0",
93
- prettier: "3.4.0",
94
- react: "18.3.1",
95
- "react-dom": "18.3.1",
96
- "react-router-dom": "6.30.0",
97
- "release-it": "18.1.2",
98
- "styled-components": "6.1.15",
99
- typescript: "5.6.3"
78
+ "@strapi/sdk-plugin": "5.4.0",
79
+ "@strapi/strapi": "5.33.4",
80
+ "@strapi/typescript-utils": "5.33.4",
81
+ "@types/react": "^18.0.0",
82
+ "@types/react-dom": "^18.0.0",
83
+ "@types/sanitize-html": "^2.13.0",
84
+ "@typescript-eslint/eslint-plugin": "^7.0.0",
85
+ "@typescript-eslint/parser": "^7.0.0",
86
+ eslint: "^8.2.0",
87
+ "eslint-config-airbnb": "^19.0.4",
88
+ "eslint-config-airbnb-typescript": "^18.0.0",
89
+ "eslint-config-prettier": "^9.1.0",
90
+ "eslint-plugin-import": "^2.25.3",
91
+ "eslint-plugin-jsx-a11y": "^6.10.2",
92
+ "eslint-plugin-prettier": "^5.2.1",
93
+ "eslint-plugin-react": "^7.28.0",
94
+ "eslint-plugin-react-hooks": "^4.3.0",
95
+ prettier: "^3.4.0",
96
+ "release-it": "^18.1.2",
97
+ typescript: "5.6.3",
98
+ react: "^18.0.0",
99
+ "react-dom": "^18.0.0",
100
+ "react-router-dom": "^6.0.0",
101
+ "styled-components": "^6.0.0"
100
102
  };
101
103
  const peerDependencies = {
102
104
  "@strapi/strapi": "^5.0.0",
@@ -106,7 +108,7 @@ const peerDependencies = {
106
108
  "styled-components": "^6.0.0"
107
109
  };
108
110
  const engines = {
109
- node: ">=18.0.0 <=22.x.x",
111
+ node: ">=20.0.0 <=24.x.x",
110
112
  npm: ">=6.0.0"
111
113
  };
112
114
  const license = "MIT";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@_sh/strapi-plugin-ckeditor",
3
- "version": "6.0.3",
3
+ "version": "7.0.0",
4
4
  "description": "Integrates CKEditor 5 into your Strapi project as a fully customizable custom field. (Community Edition)",
5
5
  "keywords": [
6
6
  "strapi",
@@ -61,43 +61,45 @@
61
61
  "test:ts:front": "run -T tsc -p admin/tsconfig.json",
62
62
  "test:ts:back": "run -T tsc -p server/tsconfig.json",
63
63
  "release": "release-it",
64
- "release:info": "release-it --changelog"
64
+ "release:info": "release-it --changelog",
65
+ "lint:ts": "eslint . --ext ts,tsx --report-unused-disable-directives",
66
+ "lint:ts:fix": "eslint . --ext ts,tsx --report-unused-disable-directives --fix"
65
67
  },
66
68
  "dependencies": {
67
- "@ckeditor/ckeditor5-react": "~9.5.0",
68
- "@strapi/design-system": "2.0.0-rc.18",
69
- "@strapi/icons": "2.0.0-rc.18",
70
- "ckeditor5": "~45.2.0",
69
+ "@ckeditor/ckeditor5-react": "~11.0.1",
70
+ "@strapi/design-system": "2.1.2",
71
+ "@strapi/icons": "2.1.2",
72
+ "ckeditor5": "~47.4.0",
71
73
  "lodash": "4.17.21",
72
74
  "sanitize-html": "2.13.0",
73
75
  "yup": "0.32.9"
74
76
  },
75
77
  "devDependencies": {
76
78
  "@release-it/conventional-changelog": "10.0.0",
77
- "@strapi/sdk-plugin": "5.3.2",
78
- "@strapi/strapi": "5.11.0",
79
- "@strapi/typescript-utils": "5.11.0",
80
- "@types/react": "^18.3.12",
81
- "@types/react-dom": "^18.3.1",
82
- "@types/sanitize-html": "2.13.0",
83
- "@typescript-eslint/eslint-plugin": "7.0.0",
84
- "@typescript-eslint/parser": "7.0.0",
85
- "eslint": "8.2.0",
86
- "eslint-config-airbnb": "19.0.4",
87
- "eslint-config-airbnb-typescript": "18.0.0",
88
- "eslint-config-prettier": "9.1.0",
89
- "eslint-plugin-import": "2.25.3",
90
- "eslint-plugin-jsx-a11y": "6.10.2",
91
- "eslint-plugin-prettier": "5.2.1",
92
- "eslint-plugin-react": "7.28.0",
93
- "eslint-plugin-react-hooks": "4.3.0",
94
- "prettier": "3.4.0",
95
- "react": "18.3.1",
96
- "react-dom": "18.3.1",
97
- "react-router-dom": "6.30.0",
98
- "release-it": "18.1.2",
99
- "styled-components": "6.1.15",
100
- "typescript": "5.6.3"
79
+ "@strapi/sdk-plugin": "5.4.0",
80
+ "@strapi/strapi": "5.33.4",
81
+ "@strapi/typescript-utils": "5.33.4",
82
+ "@types/react": "^18.0.0",
83
+ "@types/react-dom": "^18.0.0",
84
+ "@types/sanitize-html": "^2.13.0",
85
+ "@typescript-eslint/eslint-plugin": "^7.0.0",
86
+ "@typescript-eslint/parser": "^7.0.0",
87
+ "eslint": "^8.2.0",
88
+ "eslint-config-airbnb": "^19.0.4",
89
+ "eslint-config-airbnb-typescript": "^18.0.0",
90
+ "eslint-config-prettier": "^9.1.0",
91
+ "eslint-plugin-import": "^2.25.3",
92
+ "eslint-plugin-jsx-a11y": "^6.10.2",
93
+ "eslint-plugin-prettier": "^5.2.1",
94
+ "eslint-plugin-react": "^7.28.0",
95
+ "eslint-plugin-react-hooks": "^4.3.0",
96
+ "prettier": "^3.4.0",
97
+ "release-it": "^18.1.2",
98
+ "typescript": "5.6.3",
99
+ "react": "^18.0.0",
100
+ "react-dom": "^18.0.0",
101
+ "react-router-dom": "^6.0.0",
102
+ "styled-components": "^6.0.0"
101
103
  },
102
104
  "peerDependencies": {
103
105
  "@strapi/strapi": "^5.0.0",
@@ -107,7 +109,7 @@
107
109
  "styled-components": "^6.0.0"
108
110
  },
109
111
  "engines": {
110
- "node": ">=18.0.0 <=22.x.x",
112
+ "node": ">=20.0.0 <=24.x.x",
111
113
  "npm": ">=6.0.0"
112
114
  },
113
115
  "license": "MIT"