From 3b0ea51f5f9d8853a27ee23fb57fc75d05b7175f Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Fri, 2 Aug 2024 00:20:17 +0300 Subject: [PATCH 01/22] docs: Add a few details about CKEditor --- docs/1l1f6WZbaBEZ.html | 60 +++ docs/1pOWnHdGAuWR.html | 60 +++ docs/3eTu21fjtZkj.html | 60 +++ docs/3jc1nUXyteo0.html | 60 +++ docs/4FXLAtcPhZFo.html | 60 +++ docs/4yYHqKbLovVX.html | 60 +++ docs/6x42mhlfLo0o.html | 60 +++ docs/8jWguCtuKsAt.html | 60 +++ docs/B8hxg4e66cVL.html | 60 +++ docs/BhE2WFknKKHG.html | 60 +++ docs/C09Dou56ffMe.html | 60 +++ docs/FJ4VR6G2M6VD.html | 60 +++ docs/FSZoX3cJlJE7.html | 60 +++ docs/GMta9hBHsXHQ.html | 60 +++ docs/IuxV242YGaN5.html | 60 +++ docs/KRC2O84LekPz.html | 60 +++ docs/KbwD5mDpD4CV.html | 60 +++ docs/MUGBo4n67kBI.html | 835 ++++++++++++++++++++++++++++++++++++++++ docs/PHqgH8FCfcod.html | 60 +++ docs/QSkfVssHIngA.html | 60 +++ docs/QXCi6Y1SYulw.html | 60 +++ docs/QYMncZf5Bu3D.html | 60 +++ docs/U5RtMeGPeZ29.html | 60 +++ docs/UDBwK5Fhr2CT.html | 60 +++ docs/UTB518X6X9Uh.html | 60 +++ docs/VS22Hq5PBFNf.html | 60 +++ docs/VbDoDdiHEemi.html | 60 +++ docs/Vy1PbjSkUast.html | 60 +++ docs/WKn3hLGmKmiH.html | 852 +++++++++++++++++++++++++++++++++++++++++ docs/X4N03xLYEWnN.html | 60 +++ docs/XxqZW6JjkW2g.html | 60 +++ docs/Z9N9OKBXXLFW.html | 60 +++ docs/ZlxZh8NH5frM.html | 60 +++ docs/biDJ9KgbWLgt.html | 60 +++ docs/btM6L9JtG301.html | 60 +++ docs/bzQfhyzDo3Xz.html | 60 +++ docs/cemIoFLfEGPO.html | 60 +++ docs/d3dnvVOhur16.html | 60 +++ docs/hkrBX8KE1HQl.html | 60 +++ docs/icQBu8R1ij57.html | 834 ++++++++++++++++++++++++++++++++++++++++ docs/inGKXCChkVYX.html | 60 +++ docs/jvdjFBOCCrOa.html | 60 +++ docs/kAfgZERKtVhU.html | 62 ++- docs/mPGbEmYGitWe.html | 60 +++ docs/rU1hxvgqlA9x.html | 60 +++ docs/s5gsYTbPQr6c.html | 65 ++++ docs/wCxCJB3hhojs.html | 60 +++ docs/wxCwZ1P2SGCx.html | 60 +++ docs/xtBYDVZPb0gr.html | 60 +++ docs/y2ido6E6tZ0V.html | 60 +++ docs/zCDxk5VFdsqg.html | 60 +++ docs/zpR91YHYs6lL.html | 833 ++++++++++++++++++++++++++++++++++++++++ 52 files changed, 6240 insertions(+), 1 deletion(-) create mode 100644 docs/MUGBo4n67kBI.html create mode 100644 docs/WKn3hLGmKmiH.html create mode 100644 docs/icQBu8R1ij57.html create mode 100644 docs/zpR91YHYs6lL.html diff --git a/docs/1l1f6WZbaBEZ.html b/docs/1l1f6WZbaBEZ.html index c4eff1b6b..d2e8c3924 100644 --- a/docs/1l1f6WZbaBEZ.html +++ b/docs/1l1f6WZbaBEZ.html @@ -277,6 +277,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/1pOWnHdGAuWR.html b/docs/1pOWnHdGAuWR.html index 82df12d2b..43efb41f2 100644 --- a/docs/1pOWnHdGAuWR.html +++ b/docs/1pOWnHdGAuWR.html @@ -312,6 +312,66 @@ module.exports = new MyWidget();

    parentWidget() can + + +

  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/3eTu21fjtZkj.html b/docs/3eTu21fjtZkj.html index ad130b303..b71857435 100644 --- a/docs/3eTu21fjtZkj.html +++ b/docs/3eTu21fjtZkj.html @@ -288,6 +288,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/3jc1nUXyteo0.html b/docs/3jc1nUXyteo0.html index 47e09b254..39ee0ed82 100644 --- a/docs/3jc1nUXyteo0.html +++ b/docs/3jc1nUXyteo0.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/4FXLAtcPhZFo.html b/docs/4FXLAtcPhZFo.html index b8bdc61de..e32f4377c 100644 --- a/docs/4FXLAtcPhZFo.html +++ b/docs/4FXLAtcPhZFo.html @@ -284,6 +284,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/4yYHqKbLovVX.html b/docs/4yYHqKbLovVX.html index 847bbd871..fca1bfba9 100644 --- a/docs/4yYHqKbLovVX.html +++ b/docs/4yYHqKbLovVX.html @@ -303,6 +303,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/6x42mhlfLo0o.html b/docs/6x42mhlfLo0o.html index a3bb85452..3149fba73 100644 --- a/docs/6x42mhlfLo0o.html +++ b/docs/6x42mhlfLo0o.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/8jWguCtuKsAt.html b/docs/8jWguCtuKsAt.html index aa0814cd8..6d845c16e 100644 --- a/docs/8jWguCtuKsAt.html +++ b/docs/8jWguCtuKsAt.html @@ -301,6 +301,66 @@ module.exports = new ToDoListWidget();

    The implementation is in < + + +

  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/B8hxg4e66cVL.html b/docs/B8hxg4e66cVL.html index 6815d7b2c..2d2e330df 100644 --- a/docs/B8hxg4e66cVL.html +++ b/docs/B8hxg4e66cVL.html @@ -353,6 +353,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/BhE2WFknKKHG.html b/docs/BhE2WFknKKHG.html index 14bfb5dc3..f34dcf1f8 100644 --- a/docs/BhE2WFknKKHG.html +++ b/docs/BhE2WFknKKHG.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/C09Dou56ffMe.html b/docs/C09Dou56ffMe.html index 8881a4484..fa3c94613 100644 --- a/docs/C09Dou56ffMe.html +++ b/docs/C09Dou56ffMe.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/FJ4VR6G2M6VD.html b/docs/FJ4VR6G2M6VD.html index e7fca712e..9d7ac0869 100644 --- a/docs/FJ4VR6G2M6VD.html +++ b/docs/FJ4VR6G2M6VD.html @@ -277,6 +277,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/FSZoX3cJlJE7.html b/docs/FSZoX3cJlJE7.html index c54116d45..45b704d1e 100644 --- a/docs/FSZoX3cJlJE7.html +++ b/docs/FSZoX3cJlJE7.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/GMta9hBHsXHQ.html b/docs/GMta9hBHsXHQ.html index d91cea14d..f1cee5cd8 100644 --- a/docs/GMta9hBHsXHQ.html +++ b/docs/GMta9hBHsXHQ.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/IuxV242YGaN5.html b/docs/IuxV242YGaN5.html index 814c2657b..c9c418a23 100644 --- a/docs/IuxV242YGaN5.html +++ b/docs/IuxV242YGaN5.html @@ -277,6 +277,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/KRC2O84LekPz.html b/docs/KRC2O84LekPz.html index 04f6c4ed0..56a2ea347 100644 --- a/docs/KRC2O84LekPz.html +++ b/docs/KRC2O84LekPz.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/KbwD5mDpD4CV.html b/docs/KbwD5mDpD4CV.html index 30850c9f2..58b06cdea 100644 --- a/docs/KbwD5mDpD4CV.html +++ b/docs/KbwD5mDpD4CV.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/MUGBo4n67kBI.html b/docs/MUGBo4n67kBI.html new file mode 100644 index 000000000..54ce1b705 --- /dev/null +++ b/docs/MUGBo4n67kBI.html @@ -0,0 +1,835 @@ + + + + + + + + + + + + + + + + + + + + + + + Environment setup + + +
    +
    + + + + +

    Environment setup

    + + + + +
    +

    To set up the repository:

    git clone https://github.com/TriliumNext/trilium-ckeditor5.git
    +cd trilium-ckeditor5.git
    +yarn install

    To trigger the build run:

    yarn build
    +
    + + + +
    + + + + + + +
    + + diff --git a/docs/PHqgH8FCfcod.html b/docs/PHqgH8FCfcod.html index e08d70229..e7bd1f015 100644 --- a/docs/PHqgH8FCfcod.html +++ b/docs/PHqgH8FCfcod.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/QSkfVssHIngA.html b/docs/QSkfVssHIngA.html index 49c423f33..a0b3a9fbd 100644 --- a/docs/QSkfVssHIngA.html +++ b/docs/QSkfVssHIngA.html @@ -277,6 +277,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/QXCi6Y1SYulw.html b/docs/QXCi6Y1SYulw.html index 1c838e676..1f760cea8 100644 --- a/docs/QXCi6Y1SYulw.html +++ b/docs/QXCi6Y1SYulw.html @@ -327,6 +327,66 @@ await library_loader.requireLibrary(library_loader.I18NEXT);

    Make + + +

  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/QYMncZf5Bu3D.html b/docs/QYMncZf5Bu3D.html index 10186d161..d57d258a3 100644 --- a/docs/QYMncZf5Bu3D.html +++ b/docs/QYMncZf5Bu3D.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/U5RtMeGPeZ29.html b/docs/U5RtMeGPeZ29.html index 1dc8a2275..b38b57fc0 100644 --- a/docs/U5RtMeGPeZ29.html +++ b/docs/U5RtMeGPeZ29.html @@ -288,6 +288,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/UDBwK5Fhr2CT.html b/docs/UDBwK5Fhr2CT.html index 99ed28907..a5ec6ac73 100644 --- a/docs/UDBwK5Fhr2CT.html +++ b/docs/UDBwK5Fhr2CT.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/UTB518X6X9Uh.html b/docs/UTB518X6X9Uh.html index 2f1482888..bfd2e0c96 100644 --- a/docs/UTB518X6X9Uh.html +++ b/docs/UTB518X6X9Uh.html @@ -283,6 +283,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/VS22Hq5PBFNf.html b/docs/VS22Hq5PBFNf.html index dd41f7c03..fdea454f9 100644 --- a/docs/VS22Hq5PBFNf.html +++ b/docs/VS22Hq5PBFNf.html @@ -293,6 +293,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/VbDoDdiHEemi.html b/docs/VbDoDdiHEemi.html index a974e39ea..d9925814a 100644 --- a/docs/VbDoDdiHEemi.html +++ b/docs/VbDoDdiHEemi.html @@ -303,6 +303,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/Vy1PbjSkUast.html b/docs/Vy1PbjSkUast.html index 5d7ddb85b..dd01eb54b 100644 --- a/docs/Vy1PbjSkUast.html +++ b/docs/Vy1PbjSkUast.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/WKn3hLGmKmiH.html b/docs/WKn3hLGmKmiH.html new file mode 100644 index 000000000..28b902c09 --- /dev/null +++ b/docs/WKn3hLGmKmiH.html @@ -0,0 +1,852 @@ + + + + + + + + + + + + + + + + + + + + + + + CKEditor + + +
    +
    + + + + +

    CKEditor

    + + + + + + + + +
    + + + + + + +
    + + diff --git a/docs/X4N03xLYEWnN.html b/docs/X4N03xLYEWnN.html index f1ae7774d..2b686480d 100644 --- a/docs/X4N03xLYEWnN.html +++ b/docs/X4N03xLYEWnN.html @@ -284,6 +284,66 @@ the module (for instance, using `npm rebuild` or `npm install`).

    + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/XxqZW6JjkW2g.html b/docs/XxqZW6JjkW2g.html index c70a57ec2..3307c8c4f 100644 --- a/docs/XxqZW6JjkW2g.html +++ b/docs/XxqZW6JjkW2g.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/Z9N9OKBXXLFW.html b/docs/Z9N9OKBXXLFW.html index 7743e4c8e..5e0d2fc76 100644 --- a/docs/Z9N9OKBXXLFW.html +++ b/docs/Z9N9OKBXXLFW.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/ZlxZh8NH5frM.html b/docs/ZlxZh8NH5frM.html index d0542d77f..d3233c4d6 100644 --- a/docs/ZlxZh8NH5frM.html +++ b/docs/ZlxZh8NH5frM.html @@ -308,6 +308,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/biDJ9KgbWLgt.html b/docs/biDJ9KgbWLgt.html index ebb33ce4c..cf6e6e58b 100644 --- a/docs/biDJ9KgbWLgt.html +++ b/docs/biDJ9KgbWLgt.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/btM6L9JtG301.html b/docs/btM6L9JtG301.html index 6dcbcf35e..a16f503c9 100644 --- a/docs/btM6L9JtG301.html +++ b/docs/btM6L9JtG301.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/bzQfhyzDo3Xz.html b/docs/bzQfhyzDo3Xz.html index 4225a2f8a..8312fae02 100644 --- a/docs/bzQfhyzDo3Xz.html +++ b/docs/bzQfhyzDo3Xz.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/cemIoFLfEGPO.html b/docs/cemIoFLfEGPO.html index 7a40fd466..5e065bb86 100644 --- a/docs/cemIoFLfEGPO.html +++ b/docs/cemIoFLfEGPO.html @@ -277,6 +277,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/d3dnvVOhur16.html b/docs/d3dnvVOhur16.html index c38af46b0..b4c7f4352 100644 --- a/docs/d3dnvVOhur16.html +++ b/docs/d3dnvVOhur16.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/hkrBX8KE1HQl.html b/docs/hkrBX8KE1HQl.html index e1ceec7cf..b6f423fd2 100644 --- a/docs/hkrBX8KE1HQl.html +++ b/docs/hkrBX8KE1HQl.html @@ -306,6 +306,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/icQBu8R1ij57.html b/docs/icQBu8R1ij57.html new file mode 100644 index 000000000..1bc5b8f8c --- /dev/null +++ b/docs/icQBu8R1ij57.html @@ -0,0 +1,834 @@ + + + + + + + + + + + + + + + + + + + + + + + Building & updating + + +
    +
    + + + + +

    Building & updating

    + + + + +
    +
    cd packages/ckeditor5-build-balloon-block
    +yarn build

    This will trigger a change in the build directory.

    Then go to packages/ckeditor5-build-balloon-block/build and copy ckeditor.js and ckeditor.js.map to libraries/ckeditor in the Notes repository.

    Commit the change on both sides.

    Then run the server and check type CKEDITOR_VERSION in the browser/Electron console to ensure that the correct version is used. Do a basic sanity check as well.

    +
    + + + +
    + + + + + + +
    + + diff --git a/docs/inGKXCChkVYX.html b/docs/inGKXCChkVYX.html index c47c36e22..359b8ffa2 100644 --- a/docs/inGKXCChkVYX.html +++ b/docs/inGKXCChkVYX.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/jvdjFBOCCrOa.html b/docs/jvdjFBOCCrOa.html index 5fa501e1e..8605df464 100644 --- a/docs/jvdjFBOCCrOa.html +++ b/docs/jvdjFBOCCrOa.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/kAfgZERKtVhU.html b/docs/kAfgZERKtVhU.html index 5a25d3964..8d3a0ce21 100644 --- a/docs/kAfgZERKtVhU.html +++ b/docs/kAfgZERKtVhU.html @@ -38,7 +38,7 @@
    -
    Column NameData TypeNullityDefault valueDescription
    noteIdTextNon-null The unique ID of the note (e.g. 2LJrKqIhr0Pe).
    titleTextNon-null"note"The title of the note, as defined by the user.
    isProtectedIntegerNon-null01 if the entity is protected, 0 otherwise.
    typeTextNon-null"text"The type of note (i.e. text, file, code, relationMap, mermaid, canvas).
    mimeTextNon-null"text/html"The MIME type of the note (e.g. text/html).
    isDeletedIntegerNullable01 if the entity is deleted, 0 otherwise.
    deleteIdTextNon-nullnull 
    dateCreatedTextNon-null Localized creation date (e.g. 2023-11-08 18:43:44.204+0200)
    dateModifiedTextNon-null Localized modification date (e.g. 2023-11-08 18:43:44.204+0200)
    utcDateCreatedTextNon-null Creation date in UTC format (e.g. 2023-11-08 16:43:44.204Z)
    utcDateModifiedTextNon-null Modification date in UTC format (e.g. 2023-11-08 16:43:44.204Z)
    blobIdTextNullablenullThe corresponding ID from blobs. Although it can theoretically be NULL, haven't found any such note yet.
    +
    Column NameData TypeNullityDefault valueDescription
    noteIdTextNon-null The unique ID of the note (e.g. 2LJrKqIhr0Pe).
    titleTextNon-null"note"The title of the note, as defined by the user.
    isProtectedIntegerNon-null01 if the entity is protected, 0 otherwise.
    typeTextNon-null"text"The type of note (i.e. text, file, code, relationMap, mermaid, canvas).
    mimeTextNon-null"text/html"The MIME type of the note (e.g. text/html).. Note that it can be an empty string in some circumstances, but not null.
    isDeletedIntegerNullable01 if the entity is deleted, 0 otherwise.
    deleteIdTextNon-nullnull 
    dateCreatedTextNon-null Localized creation date (e.g. 2023-11-08 18:43:44.204+0200)
    dateModifiedTextNon-null Localized modification date (e.g. 2023-11-08 18:43:44.204+0200)
    utcDateCreatedTextNon-null Creation date in UTC format (e.g. 2023-11-08 16:43:44.204Z)
    utcDateModifiedTextNon-null Modification date in UTC format (e.g. 2023-11-08 16:43:44.204Z)
    blobIdTextNullablenullThe corresponding ID from blobs. Although it can theoretically be NULL, haven't found any such note yet.
    @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/mPGbEmYGitWe.html b/docs/mPGbEmYGitWe.html index b883f40f6..a66680a97 100644 --- a/docs/mPGbEmYGitWe.html +++ b/docs/mPGbEmYGitWe.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/rU1hxvgqlA9x.html b/docs/rU1hxvgqlA9x.html index 641613530..82d9956c8 100644 --- a/docs/rU1hxvgqlA9x.html +++ b/docs/rU1hxvgqlA9x.html @@ -288,6 +288,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/s5gsYTbPQr6c.html b/docs/s5gsYTbPQr6c.html index 18e95a3c4..2d1df9452 100644 --- a/docs/s5gsYTbPQr6c.html +++ b/docs/s5gsYTbPQr6c.html @@ -66,6 +66,11 @@ class="type-text">Testing compatibility +
  • + CKEditor +
  • + @@ -305,6 +310,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/wCxCJB3hhojs.html b/docs/wCxCJB3hhojs.html index 1d02ef64e..8e8531d17 100644 --- a/docs/wCxCJB3hhojs.html +++ b/docs/wCxCJB3hhojs.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/wxCwZ1P2SGCx.html b/docs/wxCwZ1P2SGCx.html index 455546f6f..46c9ff17e 100644 --- a/docs/wxCwZ1P2SGCx.html +++ b/docs/wxCwZ1P2SGCx.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/xtBYDVZPb0gr.html b/docs/xtBYDVZPb0gr.html index ac41df32f..15a4e47c4 100644 --- a/docs/xtBYDVZPb0gr.html +++ b/docs/xtBYDVZPb0gr.html @@ -288,6 +288,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/y2ido6E6tZ0V.html b/docs/y2ido6E6tZ0V.html index 293bdb444..bb5a06a85 100644 --- a/docs/y2ido6E6tZ0V.html +++ b/docs/y2ido6E6tZ0V.html @@ -279,6 +279,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/zCDxk5VFdsqg.html b/docs/zCDxk5VFdsqg.html index 91edae0b1..07830f63a 100644 --- a/docs/zCDxk5VFdsqg.html +++ b/docs/zCDxk5VFdsqg.html @@ -333,6 +333,66 @@ + + +
  • + +

    + + + + CKEditor + +

    + + + + +
  • diff --git a/docs/zpR91YHYs6lL.html b/docs/zpR91YHYs6lL.html new file mode 100644 index 000000000..b151a390f --- /dev/null +++ b/docs/zpR91YHYs6lL.html @@ -0,0 +1,833 @@ + + + + + + + + + + + + + + + + + + + + + + + Differences from upstream + + +
    +
    + + + + +

    Differences from upstream

    + + + + +
    +
    • Embeds isaul32/ckeditor5-math, which is a third-party plugin for adding math support. CKEditor itself also has a math plugin with MathType and ChemType but it's premium-only.
    • Zadam left a TODO in findandreplaceUI: // FIXME: keyboard shortcut doesn't work: https://github.com/ckeditor/ckeditor5/issues/10645
    +
    + + + +
    + + + + + + +
    + + From ab25778e7ec208aee0298c3c21a2a70da5f80a90 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 3 Aug 2024 21:35:16 +0300 Subject: [PATCH 02/22] client: Embed SVG directly --- src/public/app/widgets/buttons/global_menu.js | 38 ++++++++++++++----- src/public/stylesheets/theme-dark.css | 4 -- 2 files changed, 28 insertions(+), 14 deletions(-) diff --git a/src/public/app/widgets/buttons/global_menu.js b/src/public/app/widgets/buttons/global_menu.js index 4c3f9f49d..03bdc97a4 100644 --- a/src/public/app/widgets/buttons/global_menu.js +++ b/src/public/app/widgets/buttons/global_menu.js @@ -15,20 +15,22 @@ const TPL = ` min-width: 20em; } - .global-menu-button { - background-image: url("${window.glob.assetPath}/images/icon-black.svg"); - background-repeat: no-repeat; - background-position: 40% 50%; - background-size: 45px; + .global-menu-button { width: 100%; height: 100%; position: relative; } - .global-menu-button:hover { - background-image: url("${window.glob.assetPath}/images/icon-color.svg"); - border: 0; - } + .global-menu-button:hover { border: 0; } + .global-menu-button:hover > svg path.st0 { fill:#95C980; } + .global-menu-button:hover > svg path.st1 { fill:#72B755; } + .global-menu-button:hover > svg path.st2 { fill:#4FA52B; } + .global-menu-button:hover > svg path.st3 { fill:#EE8C89; } + .global-menu-button:hover > svg path.st4 { fill:#E96562; } + .global-menu-button:hover > svg path.st5 { fill:#E33F3B; } + .global-menu-button:hover > svg path.st6 { fill:#EFB075; } + .global-menu-button:hover > svg path.st7 { fill:#E99547; } + .global-menu-button:hover > svg path.st8 { fill:#E47B19; } .global-menu-button-update-available { position: absolute; @@ -88,11 +90,27 @@ const TPL = ` left: 0; top: 5px; } - + diff --git a/src/public/stylesheets/theme-dark.css b/src/public/stylesheets/theme-dark.css index 3391eaa44..8c01fb5a5 100644 --- a/src/public/stylesheets/theme-dark.css +++ b/src/public/stylesheets/theme-dark.css @@ -73,10 +73,6 @@ --mermaid-theme: dark; } -body .global-menu-button { - background-image: url("../images/icon-grey.svg"); -} - body ::-webkit-calendar-picker-indicator { filter: invert(1); } From deb2f389df6134570f24b7cd757d01aa14830507 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 3 Aug 2024 21:37:46 +0300 Subject: [PATCH 03/22] client: Use correct color --- src/public/app/widgets/buttons/global_menu.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/public/app/widgets/buttons/global_menu.js b/src/public/app/widgets/buttons/global_menu.js index 03bdc97a4..6a9aa0574 100644 --- a/src/public/app/widgets/buttons/global_menu.js +++ b/src/public/app/widgets/buttons/global_menu.js @@ -20,6 +20,10 @@ const TPL = ` height: 100%; position: relative; } + + .global-menu-button > svg path { + fill: var(--launcher-pane-text-color); + } .global-menu-button:hover { border: 0; } .global-menu-button:hover > svg path.st0 { fill:#95C980; } From 96aecf8544c2dc0e5599e252ab5bbd9a17cf7ee3 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 3 Aug 2024 21:40:07 +0300 Subject: [PATCH 04/22] client: Match original size icon slightly --- src/public/app/widgets/buttons/global_menu.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/public/app/widgets/buttons/global_menu.js b/src/public/app/widgets/buttons/global_menu.js index 6a9aa0574..c68316c1a 100644 --- a/src/public/app/widgets/buttons/global_menu.js +++ b/src/public/app/widgets/buttons/global_menu.js @@ -19,6 +19,7 @@ const TPL = ` width: 100%; height: 100%; position: relative; + padding: 6px; } .global-menu-button > svg path { @@ -26,6 +27,9 @@ const TPL = ` } .global-menu-button:hover { border: 0; } + .global-menu-button:hover > svg path { + transition: 200ms ease-in-out fill; + } .global-menu-button:hover > svg path.st0 { fill:#95C980; } .global-menu-button:hover > svg path.st1 { fill:#72B755; } .global-menu-button:hover > svg path.st2 { fill:#4FA52B; } From 80289b805915f6f426b653d687b1d6173f39f284 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 3 Aug 2024 21:43:49 +0300 Subject: [PATCH 05/22] client: Fix icon jumping on hover --- src/public/app/widgets/buttons/global_menu.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/public/app/widgets/buttons/global_menu.js b/src/public/app/widgets/buttons/global_menu.js index c68316c1a..7203cb690 100644 --- a/src/public/app/widgets/buttons/global_menu.js +++ b/src/public/app/widgets/buttons/global_menu.js @@ -20,6 +20,7 @@ const TPL = ` height: 100%; position: relative; padding: 6px; + border: 0; } .global-menu-button > svg path { From 7906c8b64f069ec20293710b47ed3f449ed75ddd Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 3 Aug 2024 21:55:38 +0300 Subject: [PATCH 06/22] Remove unused icons --- images/app-icons/png/16x16-bw.png | Bin 706 -> 0 bytes images/app-icons/png/16x16.png | Bin 782 -> 0 bytes images/app-icons/png/24x24.png | Bin 972 -> 0 bytes images/app-icons/png/32x32.png | Bin 1153 -> 0 bytes images/app-icons/png/48x48.png | Bin 1654 -> 0 bytes images/app-icons/png/512x512.png | Bin 41086 -> 0 bytes images/app-icons/png/64x64.png | Bin 10398 -> 0 bytes images/app-icons/png/96x96.png | Bin 12869 -> 0 bytes images/icon-black.png | Bin 1030 -> 0 bytes images/icon-color.png | Bin 1292 -> 0 bytes images/icon-grey.png | Bin 6036 -> 0 bytes 11 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 images/app-icons/png/16x16-bw.png delete mode 100644 images/app-icons/png/16x16.png delete mode 100644 images/app-icons/png/24x24.png delete mode 100644 images/app-icons/png/32x32.png delete mode 100644 images/app-icons/png/48x48.png delete mode 100644 images/app-icons/png/512x512.png delete mode 100644 images/app-icons/png/64x64.png delete mode 100644 images/app-icons/png/96x96.png delete mode 100644 images/icon-black.png delete mode 100644 images/icon-color.png delete mode 100644 images/icon-grey.png diff --git a/images/app-icons/png/16x16-bw.png b/images/app-icons/png/16x16-bw.png deleted file mode 100644 index 4096ee579ea509838548292581e405fa86e8f4c6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 706 zcmV;z0zLhSP)EX>4Tx04R}tkv&MmKpe$i(@Onlaj=7kLx$>PK~%(1t5Adrp;l;o12rOiLp`5<5%ypW>NMI35kRU=q6(y8mBSx!EiiH&I$2<6kT)#vvg=bb;{@U#SB#pQP7X zTJ#9$-v%zOTbi;5TgF}~)6010qNS#tmY z4c7nw4c7reD4Tcy000McNlirueSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{005dvL_t(I%VS`m5HORd-i?8QfuDha;WEX>4Tx04R}tkv&MmKpe$i(@Onlaj=7kLx$>PK~%(1t5Adrp;l;o12rOiLp`5<5%ypW>NMI35kRU=q6(y8mBSx!EiiH&I$2<6kT)#vvg=bb;{@U#SB#pQP7X zTJ#9$-v%zOTbi;5TgF}~)6010qNS#tmY z4c7nw4c7reD4Tcy000McNlirueSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{008DmL_t(I%VS`mC-7gY?dHE!+Xz{Vkw}gIaY(T;k*N6q znlvK|0|NuYlWNK73=9kz$TBjm&(U4i&A`A=io{>BG5YFn#wXR1=*}}_U|=}Uz`($e zttGUOfq@~Ofq|iyfq|hINzJc~(O20S7#J9spf>d&NuGz&Cm0wQR&R{H%7~`<8B8-q zAfmfQru8`^au`4jBOW}qx7K`YZ~Y&i8YVoN|1&T!2te67BpLA7-dYsOOo!5!Np-;& zC_R&qH?bNZd+_LYDDxOu20#sgh4_C428N#`8-Qd8Hvk diff --git a/images/app-icons/png/24x24.png b/images/app-icons/png/24x24.png deleted file mode 100644 index cdf30015305eade3139df60944767e884908bec4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 972 zcmV;-12g=IP)EX>4Tx04R}tkv&MmKpe$i(@Onlaj=7kLx$>PK~%(1t5Adrp;l;o12rOiLp`5<5%ypW>NMI35kRU=q6(y8mBSx!EiiH&I$2<6kT)#vvg=bb;{@U#SB#pQP7X zTJ#9$-v%zOTbi;5TgF}~)6010qNS#tmY z4c7nw4c7reD4Tcy000McNlirueSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{00E>)L_t(Y$K{o=OT$nQ#(xPGK?ku8CD0B|LhB+94iU0w z#X*XoB4iiDE-I)HIyiI@{0oZc(oKbch>8eRD!3F8vI_}xa_ORWsY?ovn6$NxgZP$v z@7;IbUGCjo;IA*K7voGZH3XajGr%Ws0<4?5)#%AVrkIKXZ*5@9rf!`|U64-$4*}{Y zU>q29&li1OgkvZYumki12l0IM!vpb>zXMs|2$&KTrfw}r0`WX>=@(W!UzObG7lCs@ zH4>C6Q@11l*(I+Bk-Pflqn&vOT9O0Ej-l)U5g%Lym=l~7nnhvimXs-`8UgVPe=AeR zP$ED*z+e^F2gWv%QGgY<90z=`L#A%k0{g%*lpA2y$M6=2Z6u>P;0~y@N=w^D6LK!D ziFm&HoGGTR#MA+!rf$7<)v1o5L>xnj0oaCE zNxO3Mrz1x0Ao^oJysfFbVST|;&{zt~K|$ExduCAY4icsEmT-I#_OD?+@}w)X!rgOd u4icqu1&DgCAAjW^YisJ7t*H(E&H4f#dvc-WOT?l80000EX>4Tx04R}tkv&MmKpe$i(@Onlaj=7kLx$>PK~%(1t5Adrp;l;o12rOiLp`5<5%ypW>NMI35kRU=q6(y8mBSx!EiiH&I$2<6kT)#vvg=bb;{@U#SB#pQP7X zTJ#9$-v%zOTbi;5TgF}~)6010qNS#tmY z4c7nw4c7reD4Tcy000McNlirueSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{00LP_L_t(o!|j((XcIvc#(xRb3KrBHl(oA^(FjdYC`C{s z1`pMX5<$em3f`np^i=e)2p)_FwI>gvUIYzZJh-0xb6V<3!O(-ah()22)xFe{wpbE~ zmx&D1-Hn87MCgNsnR##C_syF(^LAiO{;{OG?XXnI9|7(II~CP)V8S-NFNqK+Rr2G& z~AbmXd3C$jVf*4d5^^1MCIrw&`Vo<(PS|qrf9CBHz;900&~6?g08HbD3oz z1H6l{%h{&)p`%(La$^zL5TgF3mxDoZ6i0xn6wU9zaohA}yH<>ROB)7`0Y8BUdO2v+ ziiH=z3BWfTcWY0pVXatb0s-(6I0s-jZb!b-9f1E5&FL1n7@tX;K&@CXfc{o?E9yhN zh=3!t>mdX;Crw~TYVQfF&WY!MBoiTHo029lC$;wjD~kR{(gY4F{VPg8NR)u#xGUl> zrzO`ElZC`{z;N6W@K$u!i)z@C&pmq=)QW|(z(a*xs%NLbaNI`%@ZQ?{?!T7b6bqo- Tw838S00000NkvXXu0mjfOh^kB diff --git a/images/app-icons/png/48x48.png b/images/app-icons/png/48x48.png deleted file mode 100644 index da66c56f64aacdda06c4d181e9b2ee1cb174f19c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1654 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� 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 O04fR^^5wFY!T$%<5MZ|e diff --git a/images/icon-black.png b/images/icon-black.png deleted file mode 100644 index 545b2492c8a16677afd883fd4a5ffddbead9fc77..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1030 zcmV+h1o``kP)EX>4Tx04R}tkv&MmKpe$i(@Onlaj=7kLx$>PK~%(1t5Adrp;l;o12rOiLp`5<5%ypW>NMI35kRU=q6(y8mBSx!EiiH&I$2<6kT)#vvg=bb;{@U#SB#pQP7X zTJ#9$-v%zOTbi;5TgF}~)6010qNS#tmY z4c7nw4c7reD4Tcy000McNlirueSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{00G`fL_t(o!|j;OD@0Kgz<-8ef#f4avtc_68zo9MQq-)* z-h!1Z{Q*+4u+o&3gpFpSEMy@y8#FQtMM@%}386;D$N1V@b-TSc@4hkbJu;_mGxyFt z=lFw3w&C%L!iNFn79Ur+R{L+6EKf9 zAdEaXoKKiF3xFgrlw~U~trlnpHh?$a1K0(^CUbpRK=y$Ekg)(Zm57GBM--hUlX=ZR zRKs4inMdp#!~scH{q0_i>qJ_}2xd~6a0hGwi$F|lnVGRt1E8cBd(wc37{PRDC{6%D z;940!R)8|1e`R3fUFok|9blbpngQw*ugO4uU{1qMOgD7THH^K8D<>iPW#V%TsMpY+ zx0_G;G`&?RvT_BG61rBQ-Tjk9x2XZ;m-0|&mU%n*%Dy$gO_qiFrMXqWfpWm7oUABX zfpHP4VX1uC76<(lDE6|J3J6au0LzkRO1uL41_&zKnDPQ<&m<4Y5$K6`%z$Rygz3=$ zdd=0iF9)3trEgRd``rXOQ~HBm|8?>!+w*L<0(3&s%Hq>r1C=X_#|^yZy0j?}C(`#L zudffat-2XyvRsG@HfoT`e}#;SiZWDqkMnQj3%(O!1Zkg6TL1t607*qoM6N<$f>>L~ A3;+NC diff --git a/images/icon-color.png b/images/icon-color.png deleted file mode 100644 index 249aceef343049d5d73990698d6213adc601de95..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1292 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 ku)KZRb#m93`=>JtvcMW}KCd Date: Sat, 3 Aug 2024 22:20:05 +0300 Subject: [PATCH 07/22] build: Create script to build icons for the application --- bin/create-icons.sh | 18 ++++++ images/app-icons/ios/apple-touch-icon.png | Bin 19100 -> 14446 bytes images/app-icons/mac/icon.icns | Bin 82210 -> 62085 bytes images/app-icons/png/128x128.png | Bin 16344 -> 9520 bytes images/app-icons/png/256x256-dev.png | Bin 24380 -> 15094 bytes images/app-icons/png/256x256.png | Bin 24381 -> 14670 bytes images/app-icons/win/icon.ico | Bin 113456 -> 114244 bytes images/icon-black.svg | 15 ++--- images/icon-color.svg | 36 ++++++++---- images/icon-grey.svg | 12 ---- images/icon-purple.svg | 17 ++++++ images/icon-white.svg | 5 ++ images/icon.svg | 67 ---------------------- 13 files changed, 70 insertions(+), 100 deletions(-) create mode 100755 bin/create-icons.sh delete mode 100644 images/icon-grey.svg create mode 100644 images/icon-purple.svg create mode 100644 images/icon-white.svg delete mode 100644 images/icon.svg diff --git a/bin/create-icons.sh b/bin/create-icons.sh new file mode 100755 index 000000000..7be41a922 --- /dev/null +++ b/bin/create-icons.sh @@ -0,0 +1,18 @@ +#!/usr/bin/env bash + +script_dir=$(realpath $(dirname $0)) +cd "${script_dir}/../images/app-icons" +magick -background none "../icon-color.svg" -resize 180x180 "./ios/apple-touch-icon.png" + +# Build PNGs +magick -background none "../icon-color.svg" -resize "128x128" "./png/128x128.png" +magick -background none "../icon-color.svg" -resize "256x256" "./png/256x256.png" +magick -background none "../icon-purple.svg" -resize "256x256" "./png/256x256-dev.png" + +# Build Mac .icns +magick -background none "../icon-color.svg" -resize "512x512" "./png/512x512.png" +icnsutil compose -f "mac/icon.icns" "./png/512x512.png" +rm "./png/512x512.png" + +# Build Windows icon +magick -background none "../icon-color.svg" -define icon:auto-resize=16,32,48,64,128,256 "./win/icon.ico"; \ No newline at end of file diff --git a/images/app-icons/ios/apple-touch-icon.png b/images/app-icons/ios/apple-touch-icon.png index fe1e29941cb05b60cca0f6c23f549198a9c94691..3a4cc364147b080523fca42e83efc1451abc7255 100644 GIT binary patch literal 14446 zcmb7rWl$Vl6YeZ5zQE!Riv~$>3j~MYytv!q1P>N`aSfK>9s8E?WXTV76D{e{>4Z=j>T97RS@xnCH}TuxmX z0KAz101*NJcQ2<9y8z(M2>|=103ehK03^d4tQZ0&T@LL z0D#l|zX9rZDzX3ofmV5G3C&LnM_HbkMl!e0Vq?R$4Gyao0!ib-bj&hQMT9ajL9n?t zllBNY859}l;~rfr%6BZeT0{sdI{0uUqSe?=$Z(fglr7i8(d$slUK%4Uj)!9Jl4ZSk*@GqY1;ll znQ3~f5beI^po)hbvY8Ue()F-xh#tmBR4y+bNIEeRlB~Y_RfB-C^|s-`oO;2;DR}`k z7BARAuNY^?UiQ@9%SrYsQb<{{dHSOf;TCx1P}!55y}80 z9#<7`&hB*3FSTs@rwx2{A5Qg%(e32=%f?^2_%BN*`FZj`U9GBlBw<1fAv06|r-4Au z_1seQ%`Uos62vFR@j1=vN1VXCcCZzVR zky}wsmSK-zreC5i(#uI=7Nh)rhhS6)fBp&i!2>TePSSsx|9I%eup1$o>Am^~hTd3% z7RniS<%{OwI9J^^sW>+5Ey9JGZr?2`SG-1_{m~AIY7R*g?HeHvRv0QzisHfJ+ZpbS zX-iCeV4(i{<7{y;nHWE-Q6OGYUTEOetx2d7;To#U#SK;C`L7hXwjSN$vP1P+9FKWJ zqpcRlzLyh8{2aZiMC(ML8l=YTsD`lWeX}2F<<&>!Uj@WDRAJN10}+O?%AYrAM9GEz zfaf1YmtfHuI02AXB7zOY&2wrF@;+nGb-0X}z~?+`fLE%Tjyg1hQ!TZt#V3PBn2G}9 zPHHqQjuLsXYCPR2G-eSSb-eB3t$phyNyBUK-g2~rKNia{$Iaj}zorBP?D~1A%0(O| z2RGChSnnCwx`EdA%818h$od=`*-tj+8(l>6sShF-4lf+I9^Eo7g63E>14o!Ee%WkH za03Xr4lXnQvSjFs&>pY209>RHo+oE)|4%(Be-cbUQmK>Xg|$O}FPcp*k~~${ys#k* z{HOwEjnD)do{eafNV#zuRQ*PjCxNFhsCdI_PI0@Cwm*_g3PD6ByuZX-U;0r8EzKgJ2*`qp2|;@;w4isbw+_ zox6E~58EOFxWB5%kWM?PQ15;Wz{?zw`LjsFl}| zDNhe~MY6%f6XrZChT!lc7dp+8BB5-|G0wKkArTYH{TkO_kiPLP z3Z`)**1sOT6{)#?H$v|43s)7LA6tR|kCLqUaQvv)DYxlO zX@@cKp%rw|+ob=%kpD}oZx&9J3#Q-iJVi=W7$|yp^EJ92R<5TUZwSsLC816=jw=iU zy;G9h)Yc9zl*j2nGVxoYZ{lNLp2JFM3NxHh+=`OZL5`(!IQ8G-D>fr1qMd~leJCoD zE1_l3|7E7eb)QqlJ0n7xPSP)`~!Ksk<)NM*D|A&4!1ea$;ChV8E^Nm^Rm|L_aJ;kJl_AQCyxYaT->=lYG z25+ci@rA~--kvuVNopWlju=|u#dnOWd1Z{W6q7B_t?|xx1k>S`i1}t- zAwv{CH*vf3wdYU@#o{iidm9;mAj?EF(*%p!$IZV#R}n6*U^EF&S$tppfligc4y6ip zEh#z=4~NNR4@uh;flvkPIpYCNqTC~pZT8tlDEf$I8(()e zRYk=D8dGUbWSxg|LtQ$=mKKIU@>|rHTF@}u%8l6I&xS|2>*x2fc|>HD%@f=IktVO# z^_6Xk`meFKY!s1bKN|zQRD)uXt%o?{9}*+UnCH8J+TOqn3xQfjpIawev4FIFeQ%9a zBQK{co4fonhbJ5*A4TrN^c|JQH{VNSXC0}9o_)Rlr-R|y!!OS7?MYZQ{+lg2xWHpuTL(FJn366oa7o_Ps4pdk2w>HY&cWRWP{E0qC=VE$-rkR^)i7Q-?eYd0> zXUDZ4Ro1mKj;Fv^sO6c%rJ0_q9{_)kQr_W?4F7q`P zHYU4K&;4M~u(VWfV{mMF^}11-LU$*Jsas!Yy`Ec}Q))*z@0_Z@m`L?QYxFXDbBc~F z$FmE99klV^_bCpLeZ$l|QV{8Uvwz6(y-I1(ZSp`D0+lBn^g!7$YDY76uXnS>xz$7% zj3h~=RMe_YYOkOO8YXzOa*mlJz~H$JL3Q5SIW{~Av)A#28B;9t2Wwkuj< zwP|QRseF8=d5t#i7zb2gA#y?vBIjFP^yk_A3b({@g5 zh43qtIi1#VBp|}m9RY3wuj%GG`73k1?$D4a6I=h9>xRzZ_G+`9BQ)=?)rTb5dK0{J zg5b3kT@XuoyOIle&Qgo_0ciO(yuKB6Z>qaw`O1OLOF%B>RQn4CQaH8SPbyVElkPI4 zqHOKmzx!1wpfwHH5_6J}lsI2}Ib2WNDoE&aIzV>gY-iVibYlV3`^DD2A3czGc6}gy zDNV1)Ov!SD_(G?%Yf4C1sPr9Gi%NSkrR3i?n==Ju;Bf09ogPS?>|MX(dPMuL;|qJs zuw;ta^mPK~!mFhPuJ=BAMZW#}DrOvIzD2_dHVtE^r%J$coSq@tXQ~yYl-Pn3DwFoR zL2G>&86pUK4Gj2H_{9E*I_-LreI_-G^^VDD1Y;yssbf*{JiQkkQ1R@Rylm7S1fb}# zc+clwdxl?GYoElhwVkeY@FRD`T)alNCTHfq`9U@7>HE{O3|=RV&X*E zJuiTr1rY}g70QRNK9DgWj_>>bo3cVe0J>&0fQgJ)lJTi4GSeOp&r(&ySr^nw$a3~c zEAjC6ecFHE!MM+hBVi?Mww1gEen*KH84`BKtrBBIfcTs9&IPHeha^Dd;iDW6Pnoc? zl^c520l*f}Dn&_%XQe+Y@*cQCJ!UClL%ElEg=tC8{3HH)DR$X{?_AdwY?#~&;tNrCu-6&$h4Qo3d+v=~H z%u*-(>jx_yyH`zGzSigTPlvAv@80^w_}O{zXjag39QKr3%sC|a##c*{OdK?k*ijvX zvAbP++Smapx`pm*SPhRH9U&LGQToi{dhS3Q$W)|VQ>q&~I(Ul8s%+wtMm-jv#{_VwpZa zjsDTU%&4tiu%AKyD#mnXEzcd1_8YAvvnj_buUTV8F+g|V?mGLBj;!)p-`yP?e%wu>qib3nosEUH zsa|M03+q2EXU3x%EU5n3;P3-K5uM_qfE=OEHPdnV+AD)rGvN2=MAiWqwD;0Xd@z zIY9l-)v>I!+R+Ba*VJXJeg$YWQZAF~8m1F{U8&*|fWV0<>AhT}%ocuUv--c=a5wtP z;#pf=y7$MN>`KFh$NiCB(P_swwbN2|gyyRL5!3sQV@1Z;2VE;qtFM%u-nOFTLMoQL zJQr(^@3-PXM<7<#3Hfg03!)(TjgEs?$#0Lau>j;CTO7m~j+^lS2#K#zI8Rq1&KZx4 z4zw82YHT@6Wk6xq*vhkdmoFKAFO&PQIj4QG%NaUN&hvMt-b!>=sfW@~__`C%NX)d- z3F`-$hIIhp_C*#oBb&?l91}Yp>z{QCF_YL&7teivLbEUbiO+lsB(-J^EdSmW;ac)& zX3NhAqCu`Qdajp5|EiPCG1vYXLha&_MOa9|^S8aU_8=}%+^%WP-<)f}Pq~)6zq&~_ z28O3U(YBvE66Qw^^B3wT(sZK|p&A@7n&h}JW8Sm;71F(EA-|K<7?NuVmFhI8zy z3yvCR)|3X!Wu~9!OX@DY*|=WPhx}{S5n`ClDUZbq__k2odX~0@TZ`y$4}Wy;*@7%6 z4PIo#e-;)mAmN}Fb^(!@?|N6EvY8;jUx++^#}L6b8?P1WGC<)^uznwUx<^SMmY){~ z!{)|s%WG`p;1S0u%>N_5_9_K=AT=vxfA_x}lt`E(({pmoL2Oa9!1AP;?o+VgxNFvr zCA}}o!+3R4%WDvC=h71N$HJQ+eW;;$ch?&us2Z5rUbI zP*SijQpXg?X@oov2lcZtC+GKPdj(-C9*uSzrO}5%#?M-%A88Cz&VBs9x#{v5UkZ^! z;7#&u?prC_zDM6M1wD< z>;@D1d3m8q0v-=Fdh5AxL{^sc6Y%9}wS1g$tPjpcLp_EWKRx`4SFKtb=@QZ?y^|c* zr=OB?3rW3q$Wyl6`fK&CBusZh2X}Qn;OXur$S!V#XtLoG+~wpqzR7U|UBRR8V98st ztv3CbxC{fw^+2r zM!7|wad>>_9}gA1P*bN<6zpHAAlw!GW5~BkRU3ICq|)Ojc>AkRPVpW9j-wFyAM!F@ z-W6BordO->5AArwo2&pG1HOI-z4qz2P!^x#o3Tr4%a)6RFSIn~oJzL!y(62yqIpi( zD_r(n9!Uh2rge>Ix9@h76gq(FJKfTI&iq|Iuy6WDec`fX2o- z-Wh*OW~lG>!vet>g~8)4t5tS9RQk`s(`|F2R=DP<{r7De5AxQJzSA$HuHeWZmf>1Q zTcevb{%M1l`Qb}EmYTiqvhn`~;2Y}hVY0d7q>T~~aFHSEYvx9d%c4cBKUQ0t;8psm z^_0XCoHZGk&QYvc69_UVpXZ@fp^dN!_@dpw?+y7WnWc-R1qt zi})<<*t4U4HcErkXTghCJe)sHKEoE9q#5?dXeZMew{SI0omH3qvt0Dg^Sidd|MxcE zd!d?6+ZB)OYKUP3E*xEk${%e1<4d_KM`~^gX zibPDAshfgXm`N>XUakDLnZR5#^G=4-NsLT&p>Zp3zO^PayIqbAaOb{`-G*R zvW8Z_b7XolG5;`A9d%h-yYE@@>@-VZz1@1K<)}+p^Y9x%TmGCn@g&d1{Mu)&-a5Xn z&m;XWYHNC-|Fa9P@4e$3k4JFkuVn{|zR_2-uY7N*wF8S=yMAc3Z73w!Wue&?T24=G zNVl9h*OVU9+v4oUR^_1Ka(#|$rOZVYd4;-mP8iWw#U;M8{P_OePqrL^Q@_-qbF|s# zAUq69%=43Mzw?dsn{;KN75`iKB=#NYW0^CzQ;bLdSQGxl!nk$*I1Mq0iyQ#zGMh zjmC;m80Q)F#B~o@SJp|Bu{-;(EcbYBiiTEIhJBob zvnHCvEZ?M%;UxP_^?nXgIugx;PW)u=ViadiLb8wLC!ej6&n9v=i96OPc)472`qIP~ zpfjb(>km$?e3!4q>t^*dhPO+o+BQRP4eYz;o4NkPY)`%B?a7F*Qs*o{k;j(?vp=V; z{bzb9!YDsCA@NxwZhNXM)>f-_Z0;L;v6jEVe)5Qf)fby52|g4oQJuoTQlq zi_NQqbE8trgA9zS89!xw3`;s_;o1GP<4K6RsH^d_6{9!|nVD}3%)Q~6ux`=$t}Yi; zl|f@4Uyw3ZElyB*8LG04@I{h`bO+3o=|oG!4`)oYF#C+ zeDD>g0U3}=b&dg-WCEM<}kX;m(hgFF+`8Gj!xi7Fm zrhw!>Ya+q2E~&T9*V;oS0qTO&?OY$MmdJ)bv|vRWFNI46u!lV0>k0(*Af&n}z1PN( z(}J5idBj@;5W>wgg4lfFMi5qa{2z!<18==sF&-0Rp7kf11g&P5@WLDu@?hXXl9mS! zDJoy1+Sqa*Mpa|5At`4_U}~B)OC*c*0BxPNDkYsNNRkRRF8UQGPfw!qn6Pp&o5!1? zkk90gdU7NTLy9!MD}?1uYF9}0T_uS1+8{#u5B>~MSXIEeZeT?zh;8DGF1%X zSjy4BkGBeJn*YhQYrz1X?+JwW=Bk1Krk&C2NOG!2{D=My(ymumAH= z@(b=w@dbw^05raIkv?Ph+)KlidMG3L99}Ur`ufY9M`A;t9^YJPqlpr+-=}=rFTOn7 z#<8HH?qq!j6*5!|fuv<3>4|LSw}8Ky11;8F9p%cz03~>hAChQ^w#HWwJQM}rJ~mt1 zk~+$7t4I@S*2le0^6}91;NmAn-&C+Qwo4!7&@Ikn2&@$oc``#qaJg5oKl`xxU;KK@ znbP{XC&q8(taeCS5+w&XkmnmglaA#yYgR40gC1SlgC_MXd-jRL9iLXY)gC=<-bqe4 zgDOx}u{aYrVVRq%JP!Ckw)yEIzuqT47Q_T3iC#_L(cTCXIEMAHJYTMSsx#(Ctzhlq z{#$(P+kcI`l~q}n4tDyr-T`HR%Qts(XJXZ_VOh$(m7=(r4s6fjWb12b;5=Dpy!kCr zyXMYeCE_>s9A#*SrdhRP0p%m(mo6iw<3r(A!%eip*FVD1HW~N-nFgV!I<6VHuX9_U z_;kL4>ze8X4#5?t1LevK%D;^$#RhN?p4hfxM9v*f49dA*xxJ;ucG$tr?BXN|9X0Q3 z$$B}_dOy?#<%qDUKE?4K$Y;gwo#lc65!P7IcNKL^YmiKb|c3%bN16A5Mg_(*szNVnN>>G~m+_1Unho`kavzHx!j8Dl5dy!=v@>amju6ZuEB zU8XVqfn)bngFG#bE?NK6sLORB?#-YmErGtBr`H`7s9+Jp{`WTVK#5DSSHB`xj#k< zQ;J|$0{Ee1f+w0$9c>C#S<1Jx7hSSG!*!-@(pz8(E-h0RIvpU`cS z(o9O6eYnD+VZ)ZdwWmtz#j*_w0m)%m=#~Z~a&jeiA2BG$X9Y!QNzD0uBd0~A0831| zs~MGv<<*dsNgZ^|O}W1Q)KBb)DkhDGc`XA01tfm@zuEv3{KmF>h#Cpw&n#2ehy)wyx^}Bs1JZBczv4yh=dKhf2xw#=`%iMl$M<799 zgY9Qemm3j2fADK-HYP7r-2fu}w*@olib!;<4Rr+;X7K=qny9vrF*O-!xeQQrA;aZ> zE{wANeb6zAvgiQ`F^kcNksBWMvz~6-XMDJzw^2_QQBnWV`2MKYZk`VuL8?^XwR)+p z<|%idBrvlSz%b(|=$93DDGLr)CP6fV4E?$$(`GA|8&Cn~E^30+TZ#wySE*V80ody$ z4W=shHc6~*zTuju8Z#w1I*!jYovAQ}5He&vm-r+^6+VJAq4Egy39n;>;YK2<)RyGT z1Hci7yxQsd?bWzVzr~9~R|VIlgS7R<2cFzn7;!>e-JbMm z$407!Cg-7ErMSkAl30=|lIm?~5&r=jKEVE~nl@Pp;tn>`C3J~rbmaCCPJGpL*!Q?E zqEAB#iw)F7*p5F}FD&EZ$Enz0c7=`=Nde>t4&-><_&ukt`GGf7Uh)7d~MYRdR2svupnH(!BeRRJnZBy+6 zj8enwOC{aOe~GU{kG_M@YaeP~Z%-ppYmgQgKh*-qX5;234&^D1ZSl0LjzRCywF@|g zdQHw;Iy2umpS6?B^c&gB#>D0FQnm>r=9w9vbi5PJpyC1w>{I5jcS8&&!B^2p`1%;= zll>Sp!q#q{X#gwxuCcz;Gk+PUG}H<&qsBZKrd*$rRWVnmO?~^(-vLy>0?>lJhJq@hyw>~bIPik+ z8HtyH*BUaxQ%^KO(ojiFyVEhUPx#_qF6MWX9oC>vs4@2+Y97X3 zdEz{do7VB;F9~$aMX)rBoIF6b&Fo z)Om;UR3r2qDU4}yUj$Om;o`ZpB#<=VDb+&wNu>eJ}Z8|DFMFU2Uz!_nI zwor(NBhBF!ESuQ%?OnYEYym}(H*v_1)LRGThrql6jYKtpYy7oQdWo&1E#Vy_fL4iA zMH2ign*d}8Uc=nl<0)Vy1o5Pu@+z?ReFXjk8Y982xk-a;a!Y5wkswB+EKKjGg=wTb z4s;SBS>Skp7PSMEk10+R@fYat^kZ7(Mj(OSqSgSGq?rWbpctftflV2o83_@&B(w2k zerRIXna@+ZLcpPU*LOlUj)F%JhBPJ^#AFE_dXK*HB~2`9g6YCll{~Aof8fVgB2Zoa zSMzGZ4m!G)-yNk&x(rFLKU@*XNn*YCg{4V1$PJ$2$&C=S|epJyQ~j52mKUn1jctp z7#SQYsr#PKRs>t=GmO`KDl+K%RkD!Q zCj6;Skb&#qUDS^;0;&+czn6#OH2E#i2z4h9=lTc1YvCX8VSNIcjy90$Fl z`ab5dFYimzXUXvc{CEGbLQEUIDhU_Nk+1^CvEh20;$5apok8+I4~)}JSt%Vufg~?8 zWFn8aKr3UYT<1S6N~K+$#>YSIe`HQ6ar5xhzd^-NI&OEH%Q`Fp735sN7qi0`l37~~ z?YIO#WOtjQq`Ao1e9DvD*vp88$qv0|*{xp}j_bLP9Q*di2U&qs+>4zuxTB{O%`fe8 z{~gKLV@3;)ceVONW4R#e0+HSfg#0vwZIvcT(oAKLm z*0Mh&=64F>buf||dl&(0a3)a$&Q?wReqNyS{ZU+i;a-1EozlLg&MUUPA@*P<5OERv zjuj+%s3n~7Z*3kK&<@VEOWmtrLU2GQKSL<3YuGBLepacz}U5hX7_B^ek0jZ^%4Ufwl|bBF29$7=NDc@&Rj5xG$1V-e4L z;HgU@*Zn`#551U0L~I?uD09P>2v|_oUiB(2(Cy}geg3qqv8EN$Ovl;@p$g|O*J*8dE0ozL^Npy)V* zh!U*nZx0k0r^t=d=idK~R^<5)y*Z!vOLIVKUb9cf?TY26d9&43v0o!@om@YtBwMC; ze9QA{^+L)WRLjf9d;gk>{zO@0fM(%*3n2^{W=w&7lV;e(qpSZ4;Ku4$C>=!2L`7l(!N!(ZPiD4!xQv?_U$%9w8buW!&Zs>&`oQOeQ!^Y2BmWehTeVs7 zKkKY(k?UtL05OcbZQ==$_^`l>-W{E$bXJuYwP2yB=sv)lf3E9`;H(4d-hlE*JsP>< z64unKb08VwF6LoW^pn3xs}zxI@+g3Olctez7cl|hiu8=hVy2V8CBP>KNh5Xq;Og*a zp#(GPNMXZXkKEIx*lp|8Khv_1;MyT%Sa#jW;dX3pdE=`u>v|XFHd&DGfw5j09#i!A z7o4=HU~^Vf7XiTxl;-0O3>1ZFsdEV}gOgId1JAkh!Q&pzpSf&=xdsOJciVQUiXB`i z6g@#<^{xNHljO#`P3K#@wxoR)s0wV=4hX>GX~S#uh(Hc4p96TP*a}R`=ia1yhRCt8 zgi0ufLi^!!Fi_G;)l}=c+~|(qajj16@ai$oGyjp30K=Pfcxi*sElnQj=4FGZ?ssmo zDuDrF7k&Ce1*w8b;ZN{Jfv(e4)4@GA@)CE(E+V#E9+PJE6qV++d@wDttS)8;yp0vcGSvO*gwMx4@4^taA<0jj%vloYBA&D>M5^Cw< zj&7kkWX)gaP8cyZNU}H=U0KC{?s!(rd52@=oQJ4trGneNwGfD4>zY4o`j-7WB>&wa zvW^+`c@A>BtO zrbNCnA?s)ssaRoAvaY0( z?jDlmhM=sm$^bE|-DAh1V@Je1s7h==PMvd;dW%Nr#b1G_xnvj@8)CIPDStI+?Z{0dDtawMcBH$DfE%Ram zLEeG}uM(aSiM{@M^UD+pGzB6mZv&9R;l(_2anGejo&$|;zn1>9nOzQ4+W3vl72T@- zFLCsWDsL(cvS)ZqZ#aNuzMZKsyApzr;r&UjEGxbTa@G2@jBT}RZzZnteXO`G=dZ6n z8}p?=;>Tb~{L=7lpQhOe{g)t}9X<`-Qtk{AU^DV0P+-_yr>(m39vNQyw&>&*>=#g; z#wyhTL5fW-CLE{{;-3=K#)Mm2JAKW+XjYwef!dcMJ4r<^Ge?3&z+0iILJ-|5^&e5jcsB_d{BtA;<^@;Qg#c$93i2O>EkpNihAlw&;UwyE__FqA+e61YM0(p2(BjQ%dIX`b2_yMeqqPZNxS8G@|Q zop6;=8uW5d*A6`0Dah+E)3_k4mTodU>O~XlXm=YR(eNn7RW8 z(3pvM7?%~945U!`%?3OE1#~LgU;jjG6?GhSoNIicYfRnQMhgt~U+<6!uw;))3=X|o`;ZS#8nIW~$pJZ8nr0}vX9|6V$ zsLf%A`8MT><>#a!{el-1%-h4X-K4>~6oDZ?-J>1Z@ z5&1WFE^d?ErNBtrgO>j$3LOD`x8IrmIY#-wRu%+8)R$~e9qO6&p zyM9C3w~L>a#?$qaWN6O$r}V?=3mkzpbM7>pp-7T#a$#p+gn#Yvd+b`%f>h#D$q+Jm57Z}j~@>TpAhatyeQ{chcB01=OJylAOHKae#x=lZ#d$RoeN#7(c=$Fudr(XJrRPFKl6>1J_M48h>IHXv zU-@`Trz;38xSnaoJGlLg#o}^Jb>P96NW;e@EfAfA6Tm}Wm`{vqQGG)S7U32xzhKt4 zLBP{b$b{|NZIyK-7{Cq z2c_Q;7F!f3r`=dr)`2K^l-rxBnwqhi+_&h`lnj?o{%$38@UAAfW0R?A8QCf_Wy+1` zOFK4TNh`l$rf!e6zh7~|+Q3ekX!41BRngW$RL_@Gk&W>R|AN`JX%pY{e551I(D-}F zc7g*((RUFGQdsv5Oyt`6amF=HyUF{1k29CJXN^dkTzg~i5C83`OneRJoumL5_51KZ z$-dTmcWfNNZQ-PfGz@D3gL=5Hp3CqbSbyZf)eME3==HS1a3j;A_xzIoB7J9z&3$(MSVi^s7MTk|!Y;mWrBD-ZVhQDg$5LHfmG zi9bFvGXgPfRiD4gjc`q89SlOW4!GjNmINS zwtn2L85tdQz|_izMW?Eha{HF!I|VV1-U$6&7b|TCdbeuepJ7TNuZhB0PnP+L{8#)< zL8r~<`@X?2SN4(%dY%7S1zG-xWhHi_Q)LSh$;x_fbi^S;ch;jDl^)Sl)O6=`bvS}( ze%9QRtzb^beT6OodFv;n+36FPI4wqecEe`Q_~E0OV!_0i+$^%+b#s#cRMbm046>x}VH~77Ide zI0j3m8f4x*_1Q?jvHwA#{>1m#pW$vl>&N=|iRcx+8;a>{a7A$_lXu|X$PJm-KTU(B zmBFO{XwA0|8!Y|kTb|q0_hd^2)#fTBIT6D@aKwLBkO%c-8xEKhoZl|LPyDD*nD#}3 zJT4sbd9C%1!~UnKR{>4wU+Fh)p)eqH;X`T|Mv%Ypj3(8qFTa0ib4&_bfWS3Jvm-3n zxO%l#bZ5PlT6YOdC<(c2a_7s}@O`RtiDZncM;#fz?&_~{%cv~jhHmNKAw{h2wfDOO zwl<&pqWO<*TsdAmhujsCDnykz)^4q0D=Nc)Z~es*yXi!rcY`D9(?5w{8?i<07bOZ} zo!@EkFBo$7JOg^BN-F}3Ncm1$+KfJ3my& z5G#H`u*g*JN#$`z>h+0&54R6K0UQSuJ5ieZ`ZY&p9zr*_S=dVo)?@)P-+?5MPvNWZG zvU|#I+MiJ%$W7%$R_5lc!&aVnu>>vWQ>!L(#~R^g`%X?3b&+3U<;K5II@(I`pT?V9 zh)zuuKx0wfI*>Q&N>4uAvpN_{|G%k+VeJ{2D|krxZQRw;OLrfcn~biThLe?>C;X!& l;OXhfZtH00Y7Td{WOw>#opJn*{C};0@-iyY6_Tbw{|EbA`da`1 literal 19100 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 aQgHsW9#^SS4ETl`LQYy)s#d}z^#1~D@c>r< diff --git a/images/app-icons/mac/icon.icns b/images/app-icons/mac/icon.icns index dc07588f1d704aedcf270664ab0240f00770f298..c4e0fc6cc9b69cdb44e3e5e2cce11d675e57d500 100644 GIT binary patch literal 62085 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%0D#oh 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 I-rvUm0OdO#pa1{> diff --git a/images/app-icons/png/128x128.png b/images/app-icons/png/128x128.png index c5b5795d8f80487cb598cb9858f4f91fb6aa1113..0370ffd52d0de823b93dc3b6fd793e998793cd5f 100644 GIT binary patch literal 9520 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 IapS=M0V{ioMgRZ+ literal 16344 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 a9!VwLJ(qxX8UhpZ5X+M`W<@7RQU3?6d$BG6 diff --git a/images/app-icons/png/256x256.png b/images/app-icons/png/256x256.png index f6afe82f803216b790a16658874b018ee7931447..8208b2ced25d0c9715799e3fbd2d112258e397b3 100644 GIT binary patch literal 14670 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 literal 24381 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 diff --git a/images/app-icons/win/icon.ico b/images/app-icons/win/icon.ico index 46b97e62f959eb1d6f7e9a11293f6b4fb7837109..398e3854e623f28bb0387bb14bf555487ce96a0e 100644 GIT binary patch literal 114244 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 literal 113456 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 a!z{Wh$r7QO9N^t7z~08$`h_Jn;eP - - - - - - - - - - + + + TrilliumNext Notes + \ No newline at end of file diff --git a/images/icon-color.svg b/images/icon-color.svg index bd266dab6..8e33632d2 100644 --- a/images/icon-color.svg +++ b/images/icon-color.svg @@ -1,12 +1,28 @@ - - - - - + + + TrilliumNext Notes + - - - + + + + + + + + + + + - - \ No newline at end of file + diff --git a/images/icon-grey.svg b/images/icon-grey.svg deleted file mode 100644 index 92bc0906e..000000000 --- a/images/icon-grey.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/images/icon-purple.svg b/images/icon-purple.svg new file mode 100644 index 000000000..f3ec070f0 --- /dev/null +++ b/images/icon-purple.svg @@ -0,0 +1,17 @@ + + + TrilliumNext Notes + + + + + + + + + + + + + + \ No newline at end of file diff --git a/images/icon-white.svg b/images/icon-white.svg new file mode 100644 index 000000000..6be20face --- /dev/null +++ b/images/icon-white.svg @@ -0,0 +1,5 @@ + + + TrilliumNext Notes + + \ No newline at end of file diff --git a/images/icon.svg b/images/icon.svg deleted file mode 100644 index d99dac1fd..000000000 --- a/images/icon.svg +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - - - image/svg+xml - - - - - - - - - - - From a94c2c45b7d9d70ea332e7b26b1b80618d6ed932 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 3 Aug 2024 22:25:10 +0300 Subject: [PATCH 08/22] build: Build Squirrel splash image as well --- bin/create-icons.sh | 5 ++++- images/app-icons/win/setup-banner.gif | Bin 8690 -> 6848 bytes images/app-icons/win/setup-banner.xcf | Bin 20970 -> 0 bytes 3 files changed, 4 insertions(+), 1 deletion(-) delete mode 100644 images/app-icons/win/setup-banner.xcf diff --git a/bin/create-icons.sh b/bin/create-icons.sh index 7be41a922..55e835783 100755 --- a/bin/create-icons.sh +++ b/bin/create-icons.sh @@ -15,4 +15,7 @@ icnsutil compose -f "mac/icon.icns" "./png/512x512.png" rm "./png/512x512.png" # Build Windows icon -magick -background none "../icon-color.svg" -define icon:auto-resize=16,32,48,64,128,256 "./win/icon.ico"; \ No newline at end of file +magick -background none "../icon-color.svg" -define icon:auto-resize=16,32,48,64,128,256 "./win/icon.ico" + +# Build Squirrel splash image +magick "./png/256x256.png" -background "#ffffff" -gravity center -extent 640x480 "./win/setup-banner.gif" \ No newline at end of file diff --git a/images/app-icons/win/setup-banner.gif b/images/app-icons/win/setup-banner.gif index fb2447b641cb222324a5ff62169457cb5183cb55..4d3b86f103259ed816db7bc7f63b5289a7b5e5ae 100644 GIT binary patch delta 6482 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 From 48ac02a1a7d0cf5077c032abeb66c6c261458ed4 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 3 Aug 2024 22:33:33 +0300 Subject: [PATCH 09/22] Update logo in demo document --- db/demo.zip | Bin 905246 -> 899815 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/db/demo.zip b/db/demo.zip index 696ac619f0a5912c93bab93c79e7be28dfc8fd8b..f3be60cef6d508fb66016166f8d01708e5036518 100644 GIT binary patch delta 80436 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 @)7_D+-a|!t25GUD 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 Date: Sat, 3 Aug 2024 23:21:15 +0300 Subject: [PATCH 10/22] Update non-rendering emoji See https://emojipedia.org/right-thought-bubble --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c3d80c4f9..75e8d0b93 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ See [screenshots](https://triliumnext.github.io/Docs/Wiki/screenshot-tour) for q [The original Trilium project is in maintenance mode](https://github.com/zadam/trilium/issues/4620) -## 🗭 Discuss with us +## 💬 Discuss with us Feel free to join our official discussions and community. We are focused on the development on Trilium, and would love to hear what features, suggestions, or issues you may have! From efc5ac0e9b3bd04ab7be1e9d8b26dd4961e17af0 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 3 Aug 2024 23:36:02 +0300 Subject: [PATCH 11/22] ci: Add workflow_dispatch to main --- .github/workflows/main.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 1d9552f96..f8a2afde6 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -5,9 +5,11 @@ on: - 'develop' - 'feature/update**' - 'feature/server_esm**' + - 'feature/new_icon' paths-ignore: - 'docs/**' - 'bin/**' + workflow_dispatch: concurrency: group: ${{ github.workflow }}-${{ github.ref }} From c0a26889e46e7a94c8ab93f357b5c37f2008b5df Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 4 Aug 2024 10:46:28 +0300 Subject: [PATCH 12/22] Document #run=mobileStartup (fixes #290) --- src/public/app/widgets/attribute_widgets/attribute_detail.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/public/app/widgets/attribute_widgets/attribute_detail.js b/src/public/app/widgets/attribute_widgets/attribute_detail.js index e12d592fc..0ffac8fd7 100644 --- a/src/public/app/widgets/attribute_widgets/attribute_detail.js +++ b/src/public/app/widgets/attribute_widgets/attribute_detail.js @@ -190,8 +190,9 @@ const ATTR_HELP = { "excludeFromExport": "notes (with their sub-tree) won't be included in any note export", "run": `defines on which events script should run. Possible values are:

    `, From 880b0420ccf883b264d1a5378320589b1f730de1 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 4 Aug 2024 14:15:35 +0300 Subject: [PATCH 13/22] client: Update icon in CKEditor --- libraries/ckeditor/ckeditor.js | 2 +- libraries/ckeditor/ckeditor.js.map | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libraries/ckeditor/ckeditor.js b/libraries/ckeditor/ckeditor.js index 3b5fc0094..2cb19aefd 100644 --- a/libraries/ckeditor/ckeditor.js +++ b/libraries/ckeditor/ckeditor.js @@ -3,5 +3,5 @@ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved. * For licensing, see LICENSE.md. */ -function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.BalloonEditor=e():t.BalloonEditor=e()}(self,(()=>(()=>{var t={9246:(t,e,n)=>{const i=n(6931),o={};for(const t of Object.keys(i))o[i[t]]=t;const r={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};t.exports=r;for(const t of Object.keys(r)){if(!("channels"in r[t]))throw new Error("missing channels property: "+t);if(!("labels"in r[t]))throw new Error("missing channel labels property: "+t);if(r[t].labels.length!==r[t].channels)throw new Error("channel and label counts mismatch: "+t);const{channels:e,labels:n}=r[t];delete r[t].channels,delete r[t].labels,Object.defineProperty(r[t],"channels",{value:e}),Object.defineProperty(r[t],"labels",{value:n})}r.rgb.hsl=function(t){const e=t[0]/255,n=t[1]/255,i=t[2]/255,o=Math.min(e,n,i),r=Math.max(e,n,i),s=r-o;let a,c;r===o?a=0:e===r?a=(n-i)/s:n===r?a=2+(i-e)/s:i===r&&(a=4+(e-n)/s),a=Math.min(60*a,360),a<0&&(a+=360);const l=(o+r)/2;return c=r===o?0:l<=.5?s/(r+o):s/(2-r-o),[a,100*c,100*l]},r.rgb.hsv=function(t){let e,n,i,o,r;const s=t[0]/255,a=t[1]/255,c=t[2]/255,l=Math.max(s,a,c),d=l-Math.min(s,a,c),h=function(t){return(l-t)/6/d+.5};return 0===d?(o=0,r=0):(r=d/l,e=h(s),n=h(a),i=h(c),s===l?o=i-n:a===l?o=1/3+e-i:c===l&&(o=2/3+n-e),o<0?o+=1:o>1&&(o-=1)),[360*o,100*r,100*l]},r.rgb.hwb=function(t){const e=t[0],n=t[1];let i=t[2];const o=r.rgb.hsl(t)[0],s=1/255*Math.min(e,Math.min(n,i));return i=1-1/255*Math.max(e,Math.max(n,i)),[o,100*s,100*i]},r.rgb.cmyk=function(t){const e=t[0]/255,n=t[1]/255,i=t[2]/255,o=Math.min(1-e,1-n,1-i);return[100*((1-e-o)/(1-o)||0),100*((1-n-o)/(1-o)||0),100*((1-i-o)/(1-o)||0),100*o]},r.rgb.keyword=function(t){const e=o[t];if(e)return e;let n,r=1/0;for(const e of Object.keys(i)){const o=i[e],c=(a=o,((s=t)[0]-a[0])**2+(s[1]-a[1])**2+(s[2]-a[2])**2);c.04045?((e+.055)/1.055)**2.4:e/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92,i=i>.04045?((i+.055)/1.055)**2.4:i/12.92;return[100*(.4124*e+.3576*n+.1805*i),100*(.2126*e+.7152*n+.0722*i),100*(.0193*e+.1192*n+.9505*i)]},r.rgb.lab=function(t){const e=r.rgb.xyz(t);let n=e[0],i=e[1],o=e[2];n/=95.047,i/=100,o/=108.883,n=n>.008856?n**(1/3):7.787*n+16/116,i=i>.008856?i**(1/3):7.787*i+16/116,o=o>.008856?o**(1/3):7.787*o+16/116;return[116*i-16,500*(n-i),200*(i-o)]},r.hsl.rgb=function(t){const e=t[0]/360,n=t[1]/100,i=t[2]/100;let o,r,s;if(0===n)return s=255*i,[s,s,s];o=i<.5?i*(1+n):i+n-i*n;const a=2*i-o,c=[0,0,0];for(let t=0;t<3;t++)r=e+1/3*-(t-1),r<0&&r++,r>1&&r--,s=6*r<1?a+6*(o-a)*r:2*r<1?o:3*r<2?a+(o-a)*(2/3-r)*6:a,c[t]=255*s;return c},r.hsl.hsv=function(t){const e=t[0];let n=t[1]/100,i=t[2]/100,o=n;const r=Math.max(i,.01);i*=2,n*=i<=1?i:2-i,o*=r<=1?r:2-r;return[e,100*(0===i?2*o/(r+o):2*n/(i+n)),100*((i+n)/2)]},r.hsv.rgb=function(t){const e=t[0]/60,n=t[1]/100;let i=t[2]/100;const o=Math.floor(e)%6,r=e-Math.floor(e),s=255*i*(1-n),a=255*i*(1-n*r),c=255*i*(1-n*(1-r));switch(i*=255,o){case 0:return[i,c,s];case 1:return[a,i,s];case 2:return[s,i,c];case 3:return[s,a,i];case 4:return[c,s,i];case 5:return[i,s,a]}},r.hsv.hsl=function(t){const e=t[0],n=t[1]/100,i=t[2]/100,o=Math.max(i,.01);let r,s;s=(2-n)*i;const a=(2-n)*o;return r=n*o,r/=a<=1?a:2-a,r=r||0,s/=2,[e,100*r,100*s]},r.hwb.rgb=function(t){const e=t[0]/360;let n=t[1]/100,i=t[2]/100;const o=n+i;let r;o>1&&(n/=o,i/=o);const s=Math.floor(6*e),a=1-i;r=6*e-s,1&s&&(r=1-r);const c=n+r*(a-n);let l,d,h;switch(s){default:case 6:case 0:l=a,d=c,h=n;break;case 1:l=c,d=a,h=n;break;case 2:l=n,d=a,h=c;break;case 3:l=n,d=c,h=a;break;case 4:l=c,d=n,h=a;break;case 5:l=a,d=n,h=c}return[255*l,255*d,255*h]},r.cmyk.rgb=function(t){const e=t[0]/100,n=t[1]/100,i=t[2]/100,o=t[3]/100;return[255*(1-Math.min(1,e*(1-o)+o)),255*(1-Math.min(1,n*(1-o)+o)),255*(1-Math.min(1,i*(1-o)+o))]},r.xyz.rgb=function(t){const e=t[0]/100,n=t[1]/100,i=t[2]/100;let o,r,s;return o=3.2406*e+-1.5372*n+-.4986*i,r=-.9689*e+1.8758*n+.0415*i,s=.0557*e+-.204*n+1.057*i,o=o>.0031308?1.055*o**(1/2.4)-.055:12.92*o,r=r>.0031308?1.055*r**(1/2.4)-.055:12.92*r,s=s>.0031308?1.055*s**(1/2.4)-.055:12.92*s,o=Math.min(Math.max(0,o),1),r=Math.min(Math.max(0,r),1),s=Math.min(Math.max(0,s),1),[255*o,255*r,255*s]},r.xyz.lab=function(t){let e=t[0],n=t[1],i=t[2];e/=95.047,n/=100,i/=108.883,e=e>.008856?e**(1/3):7.787*e+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,i=i>.008856?i**(1/3):7.787*i+16/116;return[116*n-16,500*(e-n),200*(n-i)]},r.lab.xyz=function(t){let e,n,i;n=(t[0]+16)/116,e=t[1]/500+n,i=n-t[2]/200;const o=n**3,r=e**3,s=i**3;return n=o>.008856?o:(n-16/116)/7.787,e=r>.008856?r:(e-16/116)/7.787,i=s>.008856?s:(i-16/116)/7.787,e*=95.047,n*=100,i*=108.883,[e,n,i]},r.lab.lch=function(t){const e=t[0],n=t[1],i=t[2];let o;o=360*Math.atan2(i,n)/2/Math.PI,o<0&&(o+=360);return[e,Math.sqrt(n*n+i*i),o]},r.lch.lab=function(t){const e=t[0],n=t[1],i=t[2]/360*2*Math.PI;return[e,n*Math.cos(i),n*Math.sin(i)]},r.rgb.ansi16=function(t,e=null){const[n,i,o]=t;let s=null===e?r.rgb.hsv(t)[2]:e;if(s=Math.round(s/50),0===s)return 30;let a=30+(Math.round(o/255)<<2|Math.round(i/255)<<1|Math.round(n/255));return 2===s&&(a+=60),a},r.hsv.ansi16=function(t){return r.rgb.ansi16(r.hsv.rgb(t),t[2])},r.rgb.ansi256=function(t){const e=t[0],n=t[1],i=t[2];if(e===n&&n===i)return e<8?16:e>248?231:Math.round((e-8)/247*24)+232;return 16+36*Math.round(e/255*5)+6*Math.round(n/255*5)+Math.round(i/255*5)},r.ansi16.rgb=function(t){let e=t%10;if(0===e||7===e)return t>50&&(e+=3.5),e=e/10.5*255,[e,e,e];const n=.5*(1+~~(t>50));return[(1&e)*n*255,(e>>1&1)*n*255,(e>>2&1)*n*255]},r.ansi256.rgb=function(t){if(t>=232){const e=10*(t-232)+8;return[e,e,e]}let e;t-=16;return[Math.floor(t/36)/5*255,Math.floor((e=t%36)/6)/5*255,e%6/5*255]},r.rgb.hex=function(t){const e=(((255&Math.round(t[0]))<<16)+((255&Math.round(t[1]))<<8)+(255&Math.round(t[2]))).toString(16).toUpperCase();return"000000".substring(e.length)+e},r.hex.rgb=function(t){const e=t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!e)return[0,0,0];let n=e[0];3===e[0].length&&(n=n.split("").map((t=>t+t)).join(""));const i=parseInt(n,16);return[i>>16&255,i>>8&255,255&i]},r.rgb.hcg=function(t){const e=t[0]/255,n=t[1]/255,i=t[2]/255,o=Math.max(Math.max(e,n),i),r=Math.min(Math.min(e,n),i),s=o-r;let a,c;return a=s<1?r/(1-s):0,c=s<=0?0:o===e?(n-i)/s%6:o===n?2+(i-e)/s:4+(e-n)/s,c/=6,c%=1,[360*c,100*s,100*a]},r.hsl.hcg=function(t){const e=t[1]/100,n=t[2]/100,i=n<.5?2*e*n:2*e*(1-n);let o=0;return i<1&&(o=(n-.5*i)/(1-i)),[t[0],100*i,100*o]},r.hsv.hcg=function(t){const e=t[1]/100,n=t[2]/100,i=e*n;let o=0;return i<1&&(o=(n-i)/(1-i)),[t[0],100*i,100*o]},r.hcg.rgb=function(t){const e=t[0]/360,n=t[1]/100,i=t[2]/100;if(0===n)return[255*i,255*i,255*i];const o=[0,0,0],r=e%1*6,s=r%1,a=1-s;let c=0;switch(Math.floor(r)){case 0:o[0]=1,o[1]=s,o[2]=0;break;case 1:o[0]=a,o[1]=1,o[2]=0;break;case 2:o[0]=0,o[1]=1,o[2]=s;break;case 3:o[0]=0,o[1]=a,o[2]=1;break;case 4:o[0]=s,o[1]=0,o[2]=1;break;default:o[0]=1,o[1]=0,o[2]=a}return c=(1-n)*i,[255*(n*o[0]+c),255*(n*o[1]+c),255*(n*o[2]+c)]},r.hcg.hsv=function(t){const e=t[1]/100,n=e+t[2]/100*(1-e);let i=0;return n>0&&(i=e/n),[t[0],100*i,100*n]},r.hcg.hsl=function(t){const e=t[1]/100,n=t[2]/100*(1-e)+.5*e;let i=0;return n>0&&n<.5?i=e/(2*n):n>=.5&&n<1&&(i=e/(2*(1-n))),[t[0],100*i,100*n]},r.hcg.hwb=function(t){const e=t[1]/100,n=e+t[2]/100*(1-e);return[t[0],100*(n-e),100*(1-n)]},r.hwb.hcg=function(t){const e=t[1]/100,n=1-t[2]/100,i=n-e;let o=0;return i<1&&(o=(n-i)/(1-i)),[t[0],100*i,100*o]},r.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]},r.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]},r.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]},r.gray.hsl=function(t){return[0,0,t[0]]},r.gray.hsv=r.gray.hsl,r.gray.hwb=function(t){return[0,100,t[0]]},r.gray.cmyk=function(t){return[0,0,0,t[0]]},r.gray.lab=function(t){return[t[0],0,0]},r.gray.hex=function(t){const e=255&Math.round(t[0]/100*255),n=((e<<16)+(e<<8)+e).toString(16).toUpperCase();return"000000".substring(n.length)+n},r.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]}},9047:(t,e,n)=>{const i=n(9246),o=n(802),r={};Object.keys(i).forEach((t=>{r[t]={},Object.defineProperty(r[t],"channels",{value:i[t].channels}),Object.defineProperty(r[t],"labels",{value:i[t].labels});const e=o(t);Object.keys(e).forEach((n=>{const i=e[n];r[t][n]=function(t){const e=function(...e){const n=e[0];if(null==n)return n;n.length>1&&(e=n);const i=t(e);if("object"==typeof i)for(let t=i.length,e=0;e1&&(e=n),t(e))};return"conversion"in t&&(e.conversion=t.conversion),e}(i)}))})),t.exports=r},802:(t,e,n)=>{const i=n(9246);function o(t){const e=function(){const t={},e=Object.keys(i);for(let n=e.length,i=0;i{"use strict";t.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},4597:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-math-form{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:nowrap}@media screen and (max-width:600px){.ck.ck-math-form{flex-wrap:wrap}.ck.ck-math-form .ck-math-view,.ck.ck-math-form .ck-math-view .ck-label,.ck.ck-math-form .ck-math-view .ck-labeled-view{flex-basis:100%}.ck.ck-math-form .ck-button{flex-basis:50%}}.ck-math-tex.ck-placeholder:before{display:none!important}.ck.ck-toolbar-container{z-index:calc(var(--ck-z-panel) + 2)}.ck.ck-math-form{padding:var(--ck-spacing-standard)}.ck.ck-math-form:focus{outline:none}[dir=ltr] .ck.ck-math-form>:not(:first-child),[dir=rtl] .ck.ck-math-form>:not(:last-child){margin-left:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-math-form{padding:0}.ck.ck-math-form .ck-labeled-input{margin:var(--ck-spacing-standard) var(--ck-spacing-standard) 0}.ck.ck-math-form .ck-labeled-input .ck-input-text{min-width:0;width:100%}.ck.ck-math-form .ck-label,.ck.ck-math-form .ck-math-view .ck-button,.ck.ck-math-form .ck-math-view .ck.ck-math-preview{margin:var(--ck-spacing-standard) var(--ck-spacing-standard) 0}.ck.ck-math-form>.ck-button{border:0;border-radius:0;border-top:1px solid var(--ck-color-base-border);margin-top:var(--ck-spacing-standard);padding:var(--ck-spacing-standard)}[dir=ltr] .ck.ck-math-form>.ck-button{margin-left:0}[dir=ltr] .ck.ck-math-form>.ck-button:first-of-type{border-right:1px solid var(--ck-color-base-border)}[dir=rtl] .ck.ck-math-form>.ck-button{margin-left:0}[dir=rtl] .ck.ck-math-form>.ck-button:last-of-type{border-right:1px solid var(--ck-color-base-border)}}","",{version:3,sources:["webpack://./../../node_modules/@isaul32/ckeditor5-math/theme/mathform.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-math/mathform.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAAA,iBAEC,sBAAuB,CADvB,YAAa,CAEb,kBAAmB,CACnB,gBAsBD,CAnBC,oCAPD,iBAQE,cAkBF,CATG,wHACC,eACD,CAGD,4BACC,cACD,CACD,CAGD,mCACC,sBACD,CAEA,yBACC,mCACD,CC/BA,iBACI,kCAsEJ,CApEI,uBAEF,YACD,CASC,2FACC,sCACD,CCdD,oCDHD,iBAqBE,SAkDF,CAhDE,mCACC,8DAMD,CAJC,kDACC,WAAY,CACZ,UACD,CAYA,wHACC,8DACD,CAGD,4BAKC,QAAS,CADT,eAAgB,CAEhB,gDAAiD,CAJjD,qCAAsC,CADtC,kCAsBD,CAvBA,sCASE,aAcF,CAZE,oDACC,kDACD,CAbF,sCAiBE,aAMF,CAJE,mDACC,kDACD,CC9DH",sourcesContent:[".ck.ck-math-form {\n\tdisplay: flex;\n\talign-items: flex-start;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\tpadding: var(--ck-spacing-standard);\n\n\t@media screen and (max-width: 600px) {\n\t\tflex-wrap: wrap;\n\n\t\t& .ck-math-view {\n\t\t\tflex-basis: 100%;\n\n\t\t\t& .ck-labeled-view {\n\t\t\t\tflex-basis: 100%;\n\t\t\t}\n\n\t\t\t& .ck-label {\n\t\t\t\tflex-basis: 100%;\n\t\t\t}\n\t\t}\n\n\t\t& .ck-button {\n\t\t\tflex-basis: 50%;\n\t\t}\n\t}\n}\n\n.ck-math-tex.ck-placeholder::before {\n\tdisplay: none !important;\n}\n\n.ck.ck-toolbar-container {\n\tz-index: calc(var(--ck-z-panel) + 2);\n}\n",'@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-math-form {\n padding: var(--ck-spacing-standard);\n\n &:focus {\n\t\t/* https://github.com/ckeditor/ckeditor5-link/issues/90 */\n\t\toutline: none;\n\t}\n\n @mixin ck-dir ltr {\n\t\t& > :not(:first-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-dir rtl {\n\t\t& > :not(:last-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-media-phone {\n\t\tpadding: 0;\n\n\t\t& .ck-labeled-input {\n\t\t\tmargin: var(--ck-spacing-standard) var(--ck-spacing-standard) 0;\n\n\t\t\t& .ck-input-text {\n\t\t\t\tmin-width: 0;\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t}\n\n & .ck-label {\n margin: var(--ck-spacing-standard) var(--ck-spacing-standard) 0;\n }\n\n\t\t& .ck-math-view {\n\t\t\t& .ck-button {\n\t\t\t\tmargin: var(--ck-spacing-standard) var(--ck-spacing-standard) 0;\n\t\t\t}\n\n\t\t\t& .ck.ck-math-preview {\n\t\t\t\tmargin: var(--ck-spacing-standard) var(--ck-spacing-standard) 0;\n\t\t\t}\n\t\t}\n\n\t\t& > .ck-button {\n\t\t\tpadding: var(--ck-spacing-standard);\n\t\t\tmargin-top: var(--ck-spacing-standard);\n\n\t\t\tborder-radius: 0;\n\t\t\tborder: 0;\n\t\t\tborder-top: 1px solid var(--ck-color-base-border);\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: 0;\n\n\t\t\t\t&:first-of-type {\n\t\t\t\t\tborder-right: 1px solid var(--ck-color-base-border);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-left: 0;\n\n\t\t\t\t&:last-of-type {\n\t\t\t\t\tborder-right: 1px solid var(--ck-color-base-border);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},4199:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content code{background-color:hsla(0,0%,78%,.3);border-radius:2px;padding:.15em}.ck.ck-editor__editable .ck-code_selected{background-color:hsla(0,0%,78%,.5)}","",{version:3,sources:["webpack://./../ckeditor5-basic-styles/theme/code.css"],names:[],mappings:"AAKA,iBACC,kCAAuC,CAEvC,iBAAkB,CADlB,aAED,CAEA,0CACC,kCACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content code {\n\tbackground-color: hsla(0, 0%, 78%, 0.3);\n\tpadding: .15em;\n\tborder-radius: 2px;\n}\n\n.ck.ck-editor__editable .ck-code_selected {\n\tbackground-color: hsla(0, 0%, 78%, 0.5);\n}\n"],sourceRoot:""}]);const a=s},8708:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content blockquote{border-left:5px solid #ccc;font-style:italic;margin-left:0;margin-right:0;overflow:hidden;padding-left:1.5em;padding-right:1.5em}.ck-content[dir=rtl] blockquote{border-left:0;border-right:5px solid #ccc}","",{version:3,sources:["webpack://./../ckeditor5-block-quote/theme/blockquote.css"],names:[],mappings:"AAKA,uBAWC,0BAAsC,CADtC,iBAAkB,CAFlB,aAAc,CACd,cAAe,CAPf,eAAgB,CAIhB,kBAAmB,CADnB,mBAOD,CAEA,gCACC,aAAc,CACd,2BACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content blockquote {\n\t/* See #12 */\n\toverflow: hidden;\n\n\t/* https://github.com/ckeditor/ckeditor5-block-quote/issues/15 */\n\tpadding-right: 1.5em;\n\tpadding-left: 1.5em;\n\n\tmargin-left: 0;\n\tmargin-right: 0;\n\tfont-style: italic;\n\tborder-left: solid 5px hsl(0, 0%, 80%);\n}\n\n.ck-content[dir="rtl"] blockquote {\n\tborder-left: 0;\n\tborder-right: solid 5px hsl(0, 0%, 80%);\n}\n'],sourceRoot:""}]);const a=s},9826:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-block-toolbar-button{transform:translateX(calc(var(--ck-spacing-large)*-1))}","",{version:3,sources:["webpack://./theme/theme.css"],names:[],mappings:"AAMA,4BACC,sDACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* Give the block toolbar button some space, moving it a few pixels away from the editable area. */\n.ck.ck-block-toolbar-button {\n\ttransform: translateX( calc(-1 * var(--ck-spacing-large)) );\n}\n"],sourceRoot:""}]);const a=s},7793:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position{display:inline;pointer-events:none;position:relative}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span{position:absolute;width:0}.ck.ck-editor__editable .ck-widget:-webkit-drag>.ck-widget__selection-handle,.ck.ck-editor__editable .ck-widget:-webkit-drag>.ck-widget__type-around{display:none}.ck.ck-clipboard-drop-target-line{pointer-events:none;position:absolute}:root{--ck-clipboard-drop-target-dot-width:12px;--ck-clipboard-drop-target-dot-height:8px;--ck-clipboard-drop-target-color:var(--ck-color-focus-border)}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span{background:var(--ck-clipboard-drop-target-color);border:1px solid var(--ck-clipboard-drop-target-color);bottom:calc(var(--ck-clipboard-drop-target-dot-height)*-.5);margin-left:-1px;top:calc(var(--ck-clipboard-drop-target-dot-height)*-.5)}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span:after{border-color:var(--ck-clipboard-drop-target-color) transparent transparent transparent;border-style:solid;border-width:calc(var(--ck-clipboard-drop-target-dot-height)) calc(var(--ck-clipboard-drop-target-dot-width)*.5) 0 calc(var(--ck-clipboard-drop-target-dot-width)*.5);content:"";display:block;height:0;left:50%;position:absolute;top:calc(var(--ck-clipboard-drop-target-dot-height)*-.5);transform:translateX(-50%);width:0}.ck.ck-editor__editable .ck-widget.ck-clipboard-drop-target-range{outline:var(--ck-widget-outline-thickness) solid var(--ck-clipboard-drop-target-color)!important}.ck.ck-editor__editable .ck-widget:-webkit-drag{zoom:.6;outline:none!important}.ck.ck-clipboard-drop-target-line{background:var(--ck-clipboard-drop-target-color);border:1px solid var(--ck-clipboard-drop-target-color);height:0;margin-top:-1px}.ck.ck-clipboard-drop-target-line:before{border-style:solid;content:"";height:0;position:absolute;top:calc(var(--ck-clipboard-drop-target-dot-width)*-.5);width:0}[dir=ltr] .ck.ck-clipboard-drop-target-line:before{border-color:transparent transparent transparent var(--ck-clipboard-drop-target-color);border-width:calc(var(--ck-clipboard-drop-target-dot-width)*.5) 0 calc(var(--ck-clipboard-drop-target-dot-width)*.5) var(--ck-clipboard-drop-target-dot-height);left:-1px}[dir=rtl] .ck.ck-clipboard-drop-target-line:before{border-color:transparent var(--ck-clipboard-drop-target-color) transparent transparent;border-width:calc(var(--ck-clipboard-drop-target-dot-width)*.5) var(--ck-clipboard-drop-target-dot-height) calc(var(--ck-clipboard-drop-target-dot-width)*.5) 0;right:-1px}',"",{version:3,sources:["webpack://./../ckeditor5-clipboard/theme/clipboard.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-clipboard/clipboard.css"],names:[],mappings:"AASC,8DACC,cAAe,CAEf,mBAAoB,CADpB,iBAOD,CAJC,mEACC,iBAAkB,CAClB,OACD,CAWA,qJACC,YACD,CAIF,kCAEC,mBAAoB,CADpB,iBAED,CC9BA,MACC,yCAA0C,CAC1C,yCAA0C,CAC1C,6DACD,CAOE,mEAIC,gDAAiD,CADjD,sDAAuD,CAFvD,2DAA8D,CAI9D,gBAAiB,CAHjB,wDAqBD,CAfC,yEAWC,sFAAuF,CAEvF,kBAAmB,CADnB,qKAA0K,CAX1K,UAAW,CAIX,aAAc,CAFd,QAAS,CAIT,QAAS,CADT,iBAAkB,CAElB,wDAA2D,CAE3D,0BAA2B,CAR3B,OAYD,CAOF,kEACC,gGACD,CAKA,gDACC,OAAS,CACT,sBACD,CAGD,kCAGC,gDAAiD,CADjD,sDAAuD,CADvD,QAAS,CAGT,eAwBD,CAtBC,yCAMC,kBAAmB,CALnB,UAAW,CAIX,QAAS,CAHT,iBAAkB,CAClB,uDAA0D,CAC1D,OAiBD,CArBA,mDAYE,sFAAuF,CADvF,+JAAoK,CAFpK,SAYF,CArBA,mDAmBE,sFAAuF,CADvF,+JAAmK,CAFnK,UAKF",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor__editable {\n\t/*\n\t * Vertical drop target (in text).\n\t */\n\t& .ck.ck-clipboard-drop-target-position {\n\t\tdisplay: inline;\n\t\tposition: relative;\n\t\tpointer-events: none;\n\n\t\t& span {\n\t\t\tposition: absolute;\n\t\t\twidth: 0;\n\t\t}\n\t}\n\n\t/*\n\t * Styles of the widget being dragged (its preview).\n\t */\n\t& .ck-widget:-webkit-drag {\n\t\t& > .ck-widget__selection-handle {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t& > .ck-widget__type-around {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n\n.ck.ck-clipboard-drop-target-line {\n\tposition: absolute;\n\tpointer-events: none;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_dir.css\";\n\n:root {\n\t--ck-clipboard-drop-target-dot-width: 12px;\n\t--ck-clipboard-drop-target-dot-height: 8px;\n\t--ck-clipboard-drop-target-color: var(--ck-color-focus-border);\n}\n\n.ck.ck-editor__editable {\n\t/*\n\t * Vertical drop target (in text).\n\t */\n\t& .ck.ck-clipboard-drop-target-position {\n\t\t& span {\n\t\t\tbottom: calc(-.5 * var(--ck-clipboard-drop-target-dot-height));\n\t\t\ttop: calc(-.5 * var(--ck-clipboard-drop-target-dot-height));\n\t\t\tborder: 1px solid var(--ck-clipboard-drop-target-color);\n\t\t\tbackground: var(--ck-clipboard-drop-target-color);\n\t\t\tmargin-left: -1px;\n\n\t\t\t/* The triangle above the marker */\n\t\t\t&::after {\n\t\t\t\tcontent: '';\n\t\t\t\twidth: 0;\n\t\t\t\theight: 0;\n\n\t\t\t\tdisplay: block;\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: 50%;\n\t\t\t\ttop: calc(-.5 * var(--ck-clipboard-drop-target-dot-height));\n\n\t\t\t\ttransform: translateX(-50%);\n\t\t\t\tborder-color: var(--ck-clipboard-drop-target-color) transparent transparent transparent;\n\t\t\t\tborder-width: calc(var(--ck-clipboard-drop-target-dot-height)) calc(.5 * var(--ck-clipboard-drop-target-dot-width)) 0 calc(.5 * var(--ck-clipboard-drop-target-dot-width));\n\t\t\t\tborder-style: solid;\n\t\t\t}\n\t\t}\n\t}\n\n\t/*\n\t * Styles of the widget that it a drop target.\n\t */\n\t& .ck-widget.ck-clipboard-drop-target-range {\n\t\toutline: var(--ck-widget-outline-thickness) solid var(--ck-clipboard-drop-target-color) !important;\n\t}\n\n\t/*\n\t * Styles of the widget being dragged (its preview).\n\t */\n\t& .ck-widget:-webkit-drag {\n\t\tzoom: 0.6;\n\t\toutline: none !important;\n\t}\n}\n\n.ck.ck-clipboard-drop-target-line {\n\theight: 0;\n\tborder: 1px solid var(--ck-clipboard-drop-target-color);\n\tbackground: var(--ck-clipboard-drop-target-color);\n\tmargin-top: -1px;\n\n\t&::before {\n\t\tcontent: '';\n\t\tposition: absolute;\n\t\ttop: calc(-.5 * var(--ck-clipboard-drop-target-dot-width));\n\t\twidth: 0;\n\t\theight: 0;\n\t\tborder-style: solid;\n\n\t\t@mixin ck-dir ltr {\n\t\t\tleft: -1px;\n\n\t\t\tborder-width: calc(.5 * var(--ck-clipboard-drop-target-dot-width)) 0 calc(.5 * var(--ck-clipboard-drop-target-dot-width)) var(--ck-clipboard-drop-target-dot-height);\n\t\t\tborder-color: transparent transparent transparent var(--ck-clipboard-drop-target-color);\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\tright: -1px;\n\n\t\t\tborder-width:calc(.5 * var(--ck-clipboard-drop-target-dot-width)) var(--ck-clipboard-drop-target-dot-height) calc(.5 * var(--ck-clipboard-drop-target-dot-width)) 0;\n\t\t\tborder-color: transparent var(--ck-clipboard-drop-target-color) transparent transparent;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},6610:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content pre{background:hsla(0,0%,78%,.3);border:1px solid #c4c4c4;border-radius:2px;color:#353535;direction:ltr;font-style:normal;min-width:200px;padding:1em;tab-size:4;text-align:left;white-space:pre-wrap}.ck-content pre code{background:unset;border-radius:0;padding:0}.ck.ck-editor__editable pre{position:relative}.ck.ck-editor__editable pre[data-language]:after{content:attr(data-language);position:absolute}:root{--ck-color-code-block-label-background:#757575}.ck.ck-editor__editable pre[data-language]:after{background:var(--ck-color-code-block-label-background);color:#fff;font-family:var(--ck-font-face);font-size:10px;line-height:16px;padding:var(--ck-spacing-tiny) var(--ck-spacing-medium);right:10px;top:-1px;white-space:nowrap}.ck.ck-code-block-dropdown .ck-dropdown__panel{max-height:250px;overflow-x:hidden;overflow-y:auto}","",{version:3,sources:["webpack://./../ckeditor5-code-block/theme/codeblock.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-code-block/codeblock.css"],names:[],mappings:"AAKA,gBAGC,4BAAiC,CACjC,wBAAiC,CACjC,iBAAkB,CAHlB,aAAwB,CAOxB,aAAc,CAMd,iBAAkB,CAGlB,eAAgB,CAjBhB,WAAY,CAUZ,UAAW,CAHX,eAAgB,CAIhB,oBAaD,CALC,qBACC,gBAAiB,CAEjB,eAAgB,CADhB,SAED,CAGD,4BACC,iBAMD,CAJC,iDACC,2BAA4B,CAC5B,iBACD,CCjCD,MACC,8CACD,CAEA,iDAGC,sDAAuD,CAMvD,UAAuB,CAHvB,+BAAgC,CADhC,cAAe,CAEf,gBAAiB,CACjB,uDAAwD,CANxD,UAAW,CADX,QAAS,CAST,kBACD,CAEA,+CAEC,gBAAiB,CAEjB,iBAAkB,CADlB,eAED",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content pre {\n\tpadding: 1em;\n\tcolor: hsl(0, 0%, 20.8%);\n\tbackground: hsla(0, 0%, 78%, 0.3);\n\tborder: 1px solid hsl(0, 0%, 77%);\n\tborder-radius: 2px;\n\n\t/* Code block are language direction–agnostic. */\n\ttext-align: left;\n\tdirection: ltr;\n\n\ttab-size: 4;\n\twhite-space: pre-wrap;\n\n\t/* Don't inherit the style, e.g. when in a block quote. */\n\tfont-style: normal;\n\n\t/* Don't let the code be squashed e.g. when in a table cell. */\n\tmin-width: 200px;\n\n\t& code {\n\t\tbackground: unset;\n\t\tpadding: 0;\n\t\tborder-radius: 0;\n\t}\n}\n\n.ck.ck-editor__editable pre {\n\tposition: relative;\n\n\t&[data-language]::after {\n\t\tcontent: attr(data-language);\n\t\tposition: absolute;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-code-block-label-background: hsl(0, 0%, 46%);\n}\n\n.ck.ck-editor__editable pre[data-language]::after {\n\ttop: -1px;\n\tright: 10px;\n\tbackground: var(--ck-color-code-block-label-background);\n\n\tfont-size: 10px;\n\tfont-family: var(--ck-font-face);\n\tline-height: 16px;\n\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-medium);\n\tcolor: hsl(0, 0%, 100%);\n\twhite-space: nowrap;\n}\n\n.ck.ck-code-block-dropdown .ck-dropdown__panel {\n\t/* There could be dozens of languages available. Use scroll to prevent a 10e6px dropdown. */\n\tmax-height: 250px;\n\toverflow-y: auto;\n\toverflow-x: hidden;\n}\n"],sourceRoot:""}]);const a=s},4098:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck .ck-placeholder,.ck.ck-placeholder{position:relative}.ck .ck-placeholder:before,.ck.ck-placeholder:before{content:attr(data-placeholder);left:0;pointer-events:none;position:absolute;right:0}.ck.ck-read-only .ck-placeholder:before{display:none}.ck.ck-reset_all .ck-placeholder{position:relative}@media (forced-colors:active){.ck .ck-placeholder,.ck.ck-placeholder{forced-color-adjust:preserve-parent-color}}.ck .ck-placeholder:before,.ck.ck-placeholder:before{cursor:text}@media (forced-colors:none){.ck .ck-placeholder:before,.ck.ck-placeholder:before{color:var(--ck-color-engine-placeholder-text)}}@media (forced-colors:active){.ck .ck-placeholder:before,.ck.ck-placeholder:before{font-style:italic;margin-left:1px}}","",{version:3,sources:["webpack://./../ckeditor5-engine/theme/placeholder.css","webpack://./../ckeditor5-ui/theme/mixins/_mediacolors.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-engine/placeholder.css"],names:[],mappings:"AAMA,uCAEC,iBAWD,CATC,qDAIC,8BAA+B,CAF/B,MAAO,CAKP,mBAAoB,CANpB,iBAAkB,CAElB,OAKD,CAKA,wCACC,YACD,CAQD,iCACC,iBACD,CC7BC,8BACC,uCCOA,yCDLA,CACD,CCOA,qDACC,WAmBD,CDvBA,4BACC,qDCMC,6CDJD,CACD,CAZA,8BACC,qDCsBC,iBAAkB,CAMlB,eD1BD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* See ckeditor/ckeditor5#936. */\n.ck.ck-placeholder,\n.ck .ck-placeholder {\n\tposition: relative;\n\n\t&::before {\n\t\tposition: absolute;\n\t\tleft: 0;\n\t\tright: 0;\n\t\tcontent: attr(data-placeholder);\n\n\t\t/* See ckeditor/ckeditor5#469. */\n\t\tpointer-events: none;\n\t}\n}\n\n/* See ckeditor/ckeditor5#1987. */\n.ck.ck-read-only .ck-placeholder {\n\t&::before {\n\t\tdisplay: none;\n\t}\n}\n\n/*\n * Rules for the `ck-placeholder` are loaded before the rules for `ck-reset_all` in the base CKEditor 5 DLL build.\n * This fix overwrites the incorrectly set `position: static` from `ck-reset_all`.\n * See https://github.com/ckeditor/ckeditor5/issues/11418.\n */\n.ck.ck-reset_all .ck-placeholder {\n\tposition: relative;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-forced-colors {\n\t@media (forced-colors: active) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n\n@define-mixin ck-media-default-colors {\n\t@media (forced-colors: none) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_mediacolors.css";\n\n/* See ckeditor/ckeditor5#936. */\n.ck.ck-placeholder, .ck .ck-placeholder {\n\t@mixin ck-media-forced-colors {\n\t\t/*\n\t\t * This is needed for Edge on Windows to use the right color for the placeholder content (::before).\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/14907.\n\t\t */\n\t\tforced-color-adjust: preserve-parent-color;\n\t}\n\n\t&::before {\n\t\tcursor: text;\n\n\t\t@mixin ck-media-default-colors {\n\t\t\tcolor: var(--ck-color-engine-placeholder-text);\n\t\t}\n\n\t\t@mixin ck-media-forced-colors {\n\t\t\t/*\n\t\t\t * In the high contrast mode there is no telling between regular and placeholder text. Using\n\t\t\t * italic text to address that issue. See https://github.com/ckeditor/ckeditor5/issues/14907.\n\t\t\t */\n\t\t\tfont-style: italic;\n\n\t\t\t/*\n\t\t\t * Without this margin, the caret will not show up and blink when the user puts the selection\n\t\t\t * in the placeholder (Edge on Windows). See https://github.com/ckeditor/ckeditor5/issues/14907.\n\t\t\t */\n\t\t\tmargin-left: 1px;\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},8264:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-editor__editable span[data-ck-unsafe-element]{display:none}","",{version:3,sources:["webpack://./../ckeditor5-engine/theme/renderer.css"],names:[],mappings:"AAMA,qDACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* Elements marked by the Renderer as hidden should be invisible in the editor. */\n.ck.ck-editor__editable span[data-ck-unsafe-element] {\n\tdisplay: none;\n}\n"],sourceRoot:""}]);const a=s},4341:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-find-result{background:var(--ck-color-highlight-background);color:var(--ck-color-text)}.ck-find-result_selected{background:#ff9633}","",{version:3,sources:["webpack://./../ckeditor5-find-and-replace/theme/findandreplace.css"],names:[],mappings:"AAKA,gBACC,+CAAgD,CAChD,0BACD,CAEA,yBACC,kBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-find-result {\n\tbackground: var(--ck-color-highlight-background);\n\tcolor: var(--ck-color-text);\n}\n\n.ck-find-result_selected {\n\tbackground: hsl(29, 100%, 60%);\n}\n"],sourceRoot:""}]);const a=s},9627:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-find-and-replace-form{max-width:100%;& .ck-find-and-replace-form__inputs,.ck-find-and-replace-form__actions{display:flex}& .ck-find-and-replace-form__inputs.ck-find-and-replace-form__inputs .ck-results-counter,.ck-find-and-replace-form__actions.ck-find-and-replace-form__inputs .ck-results-counter{position:absolute}}.ck.ck-find-and-replace-form{width:400px}.ck.ck-find-and-replace-form:focus{outline:none}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions,.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs{align-content:stretch;align-items:center;flex:1 1 auto;flex-direction:row;flex-wrap:wrap;margin:0;padding:var(--ck-spacing-large)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions>.ck-button,.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-button{flex:0 0 auto}[dir=ltr] .ck.ck-find-and-replace-form .ck-find-and-replace-form__actions>*+*,[dir=ltr] .ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>*+*{margin-left:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-find-and-replace-form .ck-find-and-replace-form__actions>*+*,[dir=rtl] .ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>*+*{margin-right:var(--ck-spacing-standard)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions .ck-labeled-field-view,.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs .ck-labeled-field-view{flex:1 1 auto}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions .ck-labeled-field-view .ck-input,.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs .ck-labeled-field-view .ck-input{min-width:50px;width:100%}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs{align-items:flex-start}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-button-prev>.ck-icon{transform:rotate(90deg)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-button-next>.ck-icon{transform:rotate(-90deg)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs .ck-results-counter{top:50%;transform:translateY(-50%)}[dir=ltr] .ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs .ck-results-counter{right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs .ck-results-counter{left:var(--ck-spacing-standard)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs .ck-results-counter{color:var(--ck-color-base-border)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-labeled-field-replace{flex:0 0 100%;padding-top:var(--ck-spacing-standard)}[dir=ltr] .ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-labeled-field-replace{margin-left:0}[dir=rtl] .ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-labeled-field-replace{margin-right:0}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions{flex-wrap:wrap;justify-content:flex-end;margin-top:calc(var(--ck-spacing-large)*-1)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions>.ck-button-find{font-weight:700}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions>.ck-button-find .ck-button__label{padding-left:var(--ck-spacing-large);padding-right:var(--ck-spacing-large)}.ck.ck-find-and-replace-form .ck-switchbutton{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;width:100%}@media screen and (max-width:600px){.ck.ck-find-and-replace-form{max-width:100%;width:300px}.ck.ck-find-and-replace-form.ck-find-and-replace-form__input{flex-wrap:wrap}.ck.ck-find-and-replace-form.ck-find-and-replace-form__input .ck-labeled-field-view{flex:1 0 auto;margin-bottom:var(--ck-spacing-standard);width:100%}.ck.ck-find-and-replace-form.ck-find-and-replace-form__input>.ck-button{text-align:center}.ck.ck-find-and-replace-form.ck-find-and-replace-form__input>.ck-button:first-of-type{flex:1 1 auto}[dir=ltr] .ck.ck-find-and-replace-form.ck-find-and-replace-form__input>.ck-button:first-of-type{margin-left:0}[dir=rtl] .ck.ck-find-and-replace-form.ck-find-and-replace-form__input>.ck-button:first-of-type{margin-right:0}.ck.ck-find-and-replace-form.ck-find-and-replace-form__input>.ck-button:first-of-type .ck-button__label{text-align:center;width:100%}.ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view){flex:1 1 auto;flex-wrap:wrap}.ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view)>.ck-button{text-align:center}.ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view)>.ck-button:first-of-type{flex:1 1 auto}[dir=ltr] .ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view)>.ck-button:first-of-type{margin-left:0}[dir=rtl] .ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view)>.ck-button:first-of-type{margin-right:0}.ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view)>.ck-button .ck-button__label{text-align:center;width:100%}}","",{version:3,sources:["webpack://./../ckeditor5-find-and-replace/theme/findandreplaceform.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-find-and-replace/findandreplaceform.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAKA,6BACC,cAAe,CAEf,uEACC,YAMD,CAHC,iLACC,iBACD,CAEF,CCRA,6BACC,WAoHD,CA9GC,mCACC,YACD,CAGA,+HAMC,qBAAsB,CADtB,kBAAmB,CAHnB,aAAc,CACd,kBAAmB,CACnB,cAAe,CAKf,QAAS,CADT,+BA4BD,CAzBC,qJACC,aACD,CAGC,2JACC,sCACD,CAIA,2JACC,uCACD,CAGD,6KACC,aAMD,CAJC,iMAEC,cAAe,CADf,UAED,CAMF,+DAEC,sBAqCD,CAnCC,wFACC,uBACD,CAEA,wFACC,wBACD,CAEA,mFACC,OAAQ,CACR,0BAWD,CAbA,6FAKE,gCAQF,CAbA,6FASE,+BAIF,CAbA,mFAYC,iCACD,CAEA,yFACC,aAAc,CACd,sCASD,CAXA,mGAKE,aAMF,CAXA,mGASE,cAEF,CAID,gEACC,cAAe,CACf,wBAAyB,CACzB,2CAWD,CATC,gFACC,eAOD,CAJC,kGACC,oCAAqC,CACrC,qCACD,CAIF,8CAMC,kBAAmB,CAJnB,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CACjB,6BAA8B,CAJ9B,UAMD,CCtHA,oCD0HA,6BAIC,cAAe,CAHf,WA+DD,CAzDC,6DACC,cA4BD,CA1BC,oFACC,aAAc,CAEd,wCAAyC,CADzC,UAED,CAEA,wEACC,iBAkBD,CAhBC,sFACC,aAcD,CAfA,gGAIE,aAWF,CAfA,gGAQE,cAOF,CAJC,wGAEC,iBAAkB,CADlB,UAED,CAMH,4FAEC,aAAc,CADd,cAuBD,CApBC,uGACC,iBAkBD,CAhBC,qHACC,aASD,CAVA,+HAIE,aAMF,CAVA,+HAQE,cAEF,CAEA,yHAEC,iBAAkB,CADlB,UAED,CCrLH",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-find-and-replace-form {\n\tmax-width: 100%;\n\n\t& .ck-find-and-replace-form__inputs, .ck-find-and-replace-form__actions {\n\t\tdisplay: flex;\n\n\t\t/* The inputs area styles */\n\t\t&.ck-find-and-replace-form__inputs .ck-results-counter {\n\t\t\tposition: absolute;\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-find-and-replace-form {\n\twidth: 400px;\n\n\t/*\n\t * The
    needs tabindex="-1" for proper Esc handling after being clicked\n\t * but the side effect is that this creates a nasty focus outline in some browsers.\n\t */\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t/* Generic styles for the form inputs and actions. */\n\t& .ck-find-and-replace-form__inputs,\n\t& .ck-find-and-replace-form__actions {\n\t\tflex: 1 1 auto;\n\t\tflex-direction: row;\n\t\tflex-wrap: wrap;\n\t\talign-items: center;\n\t\talign-content: stretch;\n\n\t\tpadding: var(--ck-spacing-large);\n\t\tmargin: 0;\n\n\t\t& > .ck-button {\n\t\t\tflex: 0 0 auto;\n\t\t}\n\n\t\t@mixin ck-dir ltr {\n\t\t\t& > * + * {\n\t\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t\t}\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t& > * + * {\n\t\t\t\tmargin-right: var(--ck-spacing-standard);\n\t\t\t}\n\t\t}\n\n\t\t& .ck-labeled-field-view {\n\t\t\tflex: 1 1 auto;\n\n\t\t\t& .ck-input {\n\t\t\t\twidth: 100%;\n\t\t\t\tmin-width: 50px;\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/* Styles specific for inputs area. */\n\t& .ck-find-and-replace-form__inputs {\n\t\t/* To display all controls in line when there\'s an error under the input */\n\t\talign-items: flex-start;\n\n\t\t& > .ck-button-prev > .ck-icon {\n\t\t\ttransform: rotate(90deg);\n\t\t}\n\n\t\t& > .ck-button-next > .ck-icon {\n\t\t\ttransform: rotate(-90deg);\n\t\t}\n\n\t\t& .ck-results-counter {\n\t\t\ttop: 50%;\n\t\t\ttransform: translateY(-50%);\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tright: var(--ck-spacing-standard);\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tleft: var(--ck-spacing-standard);\n\t\t\t}\n\n\t\t\tcolor: var(--ck-color-base-border);\n\t\t}\n\n\t\t& > .ck-labeled-field-replace {\n\t\t\tflex: 0 0 100%;\n\t\t\tpadding-top: var(--ck-spacing-standard);\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: 0;\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-right: 0;\n\t\t\t}\n\t\t}\n\t}\n\n\t/* Styles specific for actions area. */\n\t& .ck-find-and-replace-form__actions {\n\t\tflex-wrap: wrap;\n\t\tjustify-content: flex-end;\n\t\tmargin-top: calc( -1 * var(--ck-spacing-large) );\n\n\t\t& > .ck-button-find {\n\t\t\tfont-weight: bold;\n\n\t\t\t/* Beef the find button up a little. It\'s the main action button in the form */\n\t\t\t& .ck-button__label {\n\t\t\t\tpadding-left: var(--ck-spacing-large);\n\t\t\t\tpadding-right: var(--ck-spacing-large);\n\t\t\t}\n\t\t}\n\t}\n\n\t& .ck-switchbutton {\n\t\twidth: 100%;\n\t\tdisplay: flex;\n\t\tflex-direction: row;\n\t\tflex-wrap: nowrap;\n\t\tjustify-content: space-between;\n\t\talign-items: center;\n\t}\n}\n\n@mixin ck-media-phone {\n\t.ck.ck-find-and-replace-form {\n\t\twidth: 300px;\n\n\t\t/* Don\'t let the form overflow from the dialog (https://github.com/cksource/ckeditor5-commercial/issues/5913) */\n\t\tmax-width: 100%;\n\n\t\t/* Styles specific for inputs area. */\n\t\t&.ck-find-and-replace-form__input {\n\t\t\tflex-wrap: wrap;\n\n\t\t\t& .ck-labeled-field-view {\n\t\t\t\tflex: 1 0 auto;\n\t\t\t\twidth: 100%;\n\t\t\t\tmargin-bottom: var(--ck-spacing-standard);\n\t\t\t}\n\n\t\t\t& > .ck-button {\n\t\t\t\ttext-align: center;\n\n\t\t\t\t&:first-of-type {\n\t\t\t\t\tflex: 1 1 auto;\n\n\t\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\t\tmargin-left: 0;\n\t\t\t\t\t}\n\n\t\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\t\tmargin-right: 0;\n\t\t\t\t\t}\n\n\t\t\t\t\t& .ck-button__label {\n\t\t\t\t\t\twidth: 100%;\n\t\t\t\t\t\ttext-align: center;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/* Styles specific for actions area. */\n\t\t&.ck-find-and-replace-form__actions > :not(.ck-labeled-field-view) {\n\t\t\tflex-wrap: wrap;\n\t\t\tflex: 1 1 auto;\n\n\t\t\t& > .ck-button {\n\t\t\t\ttext-align: center;\n\n\t\t\t\t&:first-of-type {\n\t\t\t\t\tflex: 1 1 auto;\n\n\t\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\t\tmargin-left: 0;\n\t\t\t\t\t}\n\n\t\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\t\tmargin-right: 0;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t& .ck-button__label {\n\t\t\t\t\twidth: 100%;\n\t\t\t\t\ttext-align: center;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},1058:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content .text-tiny{font-size:.7em}.ck-content .text-small{font-size:.85em}.ck-content .text-big{font-size:1.4em}.ck-content .text-huge{font-size:1.8em}","",{version:3,sources:["webpack://./../ckeditor5-font/theme/fontsize.css"],names:[],mappings:"AAUC,uBACC,cACD,CAEA,wBACC,eACD,CAEA,sBACC,eACD,CAEA,uBACC,eACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* The values should be synchronized with the "FONT_SIZE_PRESET_UNITS" object in the "/src/fontsize/utils.js" file. */\n\n/* Styles should be prefixed with the `.ck-content` class.\nSee https://github.com/ckeditor/ckeditor5/issues/6636 */\n.ck-content {\n\t& .text-tiny {\n\t\tfont-size: .7em;\n\t}\n\n\t& .text-small {\n\t\tfont-size: .85em;\n\t}\n\n\t& .text-big {\n\t\tfont-size: 1.4em;\n\t}\n\n\t& .text-huge {\n\t\tfont-size: 1.8em;\n\t}\n}\n'],sourceRoot:""}]);const a=s},6269:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-heading_heading1{font-size:20px}.ck.ck-heading_heading2{font-size:17px}.ck.ck-heading_heading3{font-size:14px}.ck[class*=ck-heading_heading]{font-weight:700}.ck.ck-dropdown.ck-heading-dropdown .ck-dropdown__button .ck-button__label{width:8em}.ck.ck-dropdown.ck-heading-dropdown .ck-dropdown__panel .ck-list__item{min-width:18em}","",{version:3,sources:["webpack://./../ckeditor5-heading/theme/heading.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-heading/heading.css"],names:[],mappings:"AAKA,wBACC,cACD,CAEA,wBACC,cACD,CAEA,wBACC,cACD,CAEA,+BACC,eACD,CCZC,2EACC,SACD,CAEA,uEACC,cACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-heading_heading1 {\n\tfont-size: 20px;\n}\n\n.ck.ck-heading_heading2 {\n\tfont-size: 17px;\n}\n\n.ck.ck-heading_heading3 {\n\tfont-size: 14px;\n}\n\n.ck[class*="ck-heading_heading"] {\n\tfont-weight: bold;\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* Resize dropdown's button label. */\n.ck.ck-dropdown.ck-heading-dropdown {\n\t& .ck-dropdown__button .ck-button__label {\n\t\twidth: 8em;\n\t}\n\n\t& .ck-dropdown__panel .ck-list__item {\n\t\tmin-width: 18em;\n\t}\n}\n"],sourceRoot:""}]);const a=s},2626:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-editor__editable .ck-horizontal-line{display:flow-root}.ck-content hr{background:#dedede;border:0;height:4px;margin:15px 0}","",{version:3,sources:["webpack://./../ckeditor5-horizontal-line/theme/horizontalline.css"],names:[],mappings:"AAMA,yCAEC,iBACD,CAEA,eAGC,kBAA2B,CAC3B,QAAS,CAFT,UAAW,CADX,aAID",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n\n.ck-editor__editable .ck-horizontal-line {\n\t/* Necessary to render properly next to floated objects, e.g. side image case. */\n\tdisplay: flow-root;\n}\n\n.ck-content hr {\n\tmargin: 15px 0;\n\theight: 4px;\n\tbackground: hsl(0, 0%, 87%);\n\tborder: 0;\n}\n"],sourceRoot:""}]);const a=s},265:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content .image{clear:both;display:table;margin:.9em auto;min-width:50px;text-align:center}.ck-content .image img{display:block;height:auto;margin:0 auto;max-width:100%;min-width:100%}.ck-content .image-inline{align-items:flex-start;display:inline-flex;max-width:100%}.ck-content .image-inline picture{display:flex}.ck-content .image-inline img,.ck-content .image-inline picture{flex-grow:1;flex-shrink:1;max-width:100%}.ck.ck-editor__editable .image>figcaption.ck-placeholder:before{overflow:hidden;padding-left:inherit;padding-right:inherit;text-overflow:ellipsis;white-space:nowrap}.ck.ck-editor__editable .image{z-index:1}.ck.ck-editor__editable .image.ck-widget_selected{z-index:2}.ck.ck-editor__editable .image-inline{z-index:1}.ck.ck-editor__editable .image-inline.ck-widget_selected{z-index:2}.ck.ck-editor__editable .image-inline.ck-widget_selected ::selection{display:none}.ck.ck-editor__editable .image-inline img{height:auto}.ck.ck-editor__editable td .image-inline img,.ck.ck-editor__editable th .image-inline img{max-width:none}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/image.css"],names:[],mappings:"AAMC,mBAEC,UAAW,CADX,aAAc,CAOd,gBAAkB,CAGlB,cAAe,CARf,iBA2BD,CAjBC,uBAEC,aAAc,CAad,WAAY,CAVZ,aAAc,CAGd,cAAe,CAGf,cAKD,CAGD,0BAYC,sBAAuB,CANvB,mBAAoB,CAGpB,cAoBD,CAdC,kCACC,YACD,CAGA,gEAGC,WAAY,CACZ,aAAc,CAGd,cACD,CAUD,gEASC,eAAgB,CARhB,oBAAqB,CACrB,qBAAsB,CAQtB,sBAAuB,CAFvB,kBAGD,CAKA,+BACC,SASD,CAHC,kDACC,SACD,CAMD,sCACC,SAkBD,CAZC,yDACC,SAUD,CAHC,qEACC,YACD,CAMF,0CACC,WACD,CAMC,0FACC,cACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content {\n\t& .image {\n\t\tdisplay: table;\n\t\tclear: both;\n\t\ttext-align: center;\n\n\t\t/* Make sure there is some space between the content and the image. Center image by default. */\n\t\t/* The first value should be equal to --ck-spacing-large variable if used in the editor context\n\t \tto avoid the content jumping (See https://github.com/ckeditor/ckeditor5/issues/9825). */\n\t\tmargin: 0.9em auto;\n\n\t\t/* Make sure the caption will be displayed properly (See: https://github.com/ckeditor/ckeditor5/issues/1870). */\n\t\tmin-width: 50px;\n\n\t\t& img {\n\t\t\t/* Prevent unnecessary margins caused by line-height (see #44). */\n\t\t\tdisplay: block;\n\n\t\t\t/* Center the image if its width is smaller than the content\'s width. */\n\t\t\tmargin: 0 auto;\n\n\t\t\t/* Make sure the image never exceeds the size of the parent container (ckeditor/ckeditor5-ui#67). */\n\t\t\tmax-width: 100%;\n\n\t\t\t/* Make sure the image is never smaller than the parent container (See: https://github.com/ckeditor/ckeditor5/issues/9300). */\n\t\t\tmin-width: 100%;\n\n\t\t\t/* Keep proportions of the block image if the height is set and the image is wider than the editor width.\n\t\t\tSee https://github.com/ckeditor/ckeditor5/issues/14542. */\n\t\t\theight: auto;\n\t\t}\n\t}\n\n\t& .image-inline {\n\t\t/*\n\t\t * Normally, the .image-inline would have "display: inline-block" and "img { width: 100% }" (to follow the wrapper while resizing).\n\t\t * Unfortunately, together with "srcset", it gets automatically stretched up to the width of the editing root.\n\t\t * This strange behavior does not happen with inline-flex.\n\t\t */\n\t\tdisplay: inline-flex;\n\n\t\t/* While being resized, don\'t allow the image to exceed the width of the editing root. */\n\t\tmax-width: 100%;\n\n\t\t/* This is required by Safari to resize images in a sensible way. Without this, the browser breaks the ratio. */\n\t\talign-items: flex-start;\n\n\t\t/* When the picture is present it must act as a flex container to let the img resize properly */\n\t\t& picture {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t/* When the picture is present, it must act like a resizable img. */\n\t\t& picture,\n\t\t& img {\n\t\t\t/* This is necessary for the img to span the entire .image-inline wrapper and to resize properly. */\n\t\t\tflex-grow: 1;\n\t\t\tflex-shrink: 1;\n\n\t\t\t/* Prevents overflowing the editing root boundaries when an inline image is very wide. */\n\t\t\tmax-width: 100%;\n\t\t}\n\t}\n}\n\n.ck.ck-editor__editable {\n\t/*\n\t * Inhertit the content styles padding of the
    in case the integration overrides `text-align: center`\n\t * of `.image` (e.g. to the left/right). This ensures the placeholder stays at the padding just like the native\n\t * caret does, and not at the edge of
    .\n\t */\n\t& .image > figcaption.ck-placeholder::before {\n\t\tpadding-left: inherit;\n\t\tpadding-right: inherit;\n\n\t\t/*\n\t\t * Make sure the image caption placeholder doesn\'t overflow the placeholder area.\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/9162.\n\t\t */\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t}\n\n\t/*\n\t * See https://github.com/ckeditor/ckeditor5/issues/15115.\n\t */\n\t& .image {\n\t\tz-index: 1;\n\n\t\t/*\n\t\t * Make sure the selected image always stays on top of its siblings.\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/9108.\n\t\t */\n\t\t&.ck-widget_selected {\n\t\t\tz-index: 2;\n\t\t}\n\t}\n\n\t/*\n\t * See https://github.com/ckeditor/ckeditor5/issues/15115.\n\t */\n\t& .image-inline {\n\t\tz-index: 1;\n\n\t\t/*\n\t\t * Make sure the selected inline image always stays on top of its siblings.\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/9108.\n\t\t */\n\t\t&.ck-widget_selected {\n\t\t\tz-index: 2;\n\n\t\t\t/*\n\t\t\t * Make sure the native browser selection style is not displayed.\n\t\t\t * Inline image widgets have their own styles for the selected state and\n\t\t\t * leaving this up to the browser is asking for a visual collision.\n\t\t\t */\n\t\t\t& ::selection {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n\n\t/* Keep proportions of the inline image if the height is set and the image is wider than the editor width.\n\tSee https://github.com/ckeditor/ckeditor5/issues/14542. */\n\t& .image-inline img {\n\t\theight: auto;\n\t}\n\n\t/* The inline image nested in the table should have its original size if not resized.\n\tSee https://github.com/ckeditor/ckeditor5/issues/9117. */\n\t& td,\n\t& th {\n\t\t& .image-inline img {\n\t\t\tmax-width: none;\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},5247:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-image-caption-background:#f7f7f7;--ck-color-image-caption-text:#333;--ck-color-image-caption-highlighted-background:#fd0}.ck-content .image>figcaption{background-color:var(--ck-color-image-caption-background);caption-side:bottom;color:var(--ck-color-image-caption-text);display:table-caption;font-size:.75em;outline-offset:-1px;padding:.6em;word-break:break-word}@media (forced-colors:active){.ck-content .image>figcaption{background-color:unset;color:unset}}@media (forced-colors:none){.ck.ck-editor__editable .image>figcaption.image__caption_highlighted{animation:ck-image-caption-highlight .6s ease-out}}@media (prefers-reduced-motion:reduce){.ck.ck-editor__editable .image>figcaption.image__caption_highlighted{animation:none}}@keyframes ck-image-caption-highlight{0%{background-color:var(--ck-color-image-caption-highlighted-background)}to{background-color:var(--ck-color-image-caption-background)}}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/imagecaption.css","webpack://./../ckeditor5-ui/theme/mixins/_mediacolors.css"],names:[],mappings:"AAOA,MACC,2CAAoD,CACpD,kCAA8C,CAC9C,oDACD,CAGA,8BAKC,yDAA0D,CAH1D,mBAAoB,CAEpB,wCAAyC,CAHzC,qBAAsB,CAMtB,eAAgB,CAChB,mBAAoB,CAFpB,YAAa,CAHb,qBAYD,CAJC,8BAXD,8BAYE,sBAAuB,CACvB,WAEF,CADC,CCdA,4BACC,qEDmBA,iDCjBA,CACD,CDmBA,uCALD,qEAME,cAEF,CADC,CAGD,sCACC,GACC,qEACD,CAEA,GACC,yDACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_mediacolors.css";\n\n:root {\n\t--ck-color-image-caption-background: hsl(0, 0%, 97%);\n\t--ck-color-image-caption-text: hsl(0, 0%, 20%);\n\t--ck-color-image-caption-highlighted-background: hsl(52deg 100% 50%);\n}\n\n/* Content styles */\n.ck-content .image > figcaption {\n\tdisplay: table-caption;\n\tcaption-side: bottom;\n\tword-break: break-word;\n\tcolor: var(--ck-color-image-caption-text);\n\tbackground-color: var(--ck-color-image-caption-background);\n\tpadding: .6em;\n\tfont-size: .75em;\n\toutline-offset: -1px;\n\n\t/* Improve placeholder rendering in high-constrast mode (https://github.com/ckeditor/ckeditor5/issues/14907). */\n\t@media (forced-colors: active) {\n\t\tbackground-color: unset;\n\t\tcolor: unset;\n\t}\n}\n\n/* Editing styles */\n.ck.ck-editor__editable .image > figcaption.image__caption_highlighted {\n\t@mixin ck-media-default-colors {\n\t\tanimation: ck-image-caption-highlight .6s ease-out;\n\t}\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\tanimation: none;\n\t}\n}\n\n@keyframes ck-image-caption-highlight {\n\t0% {\n\t\tbackground-color: var(--ck-color-image-caption-highlighted-background);\n\t}\n\n\t100% {\n\t\tbackground-color: var(--ck-color-image-caption-background);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-forced-colors {\n\t@media (forced-colors: active) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n\n@define-mixin ck-media-default-colors {\n\t@media (forced-colors: none) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},4642:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-image-custom-resize-form{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:nowrap}.ck.ck-image-custom-resize-form .ck-labeled-field-view{display:inline-block}.ck.ck-image-custom-resize-form .ck-label{display:none}@media screen and (max-width:600px){.ck.ck-image-custom-resize-form{flex-wrap:wrap}.ck.ck-image-custom-resize-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-image-custom-resize-form .ck-button{flex-basis:50%}}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/imagecustomresizeform.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAOA,gCAIC,sBAAuB,CAHvB,YAAa,CACb,kBAAmB,CACnB,gBAsBD,CAnBC,uDACC,oBACD,CAEA,0CACC,YACD,CCbA,oCDCD,gCAeE,cAUF,CARE,uDACC,eACD,CAEA,2CACC,cACD,CCtBD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-image-custom-resize-form {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\talign-items: flex-start;\n\n\t& .ck-labeled-field-view {\n\t\tdisplay: inline-block;\n\t}\n\n\t& .ck-label {\n\t\tdisplay: none;\n\t}\n\n\t@mixin ck-media-phone {\n\t\tflex-wrap: wrap;\n\n\t\t& .ck-labeled-field-view {\n\t\t\tflex-basis: 100%;\n\t\t}\n\n\t\t& .ck-button {\n\t\t\tflex-basis: 50%;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},3350:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-image-insert-url .ck-image-insert-url__action-row{display:grid;grid-template-columns:repeat(2,1fr)}:root{--ck-image-insert-insert-by-url-width:250px}.ck.ck-image-insert-url{--ck-input-width:100%}.ck.ck-image-insert-url .ck-image-insert-url__action-row{grid-column-gap:var(--ck-spacing-large);margin-top:var(--ck-spacing-large)}.ck.ck-image-insert-url .ck-image-insert-url__action-row .ck-button-cancel,.ck.ck-image-insert-url .ck-image-insert-url__action-row .ck-button-save{justify-content:center;min-width:auto}.ck.ck-image-insert-url .ck-image-insert-url__action-row .ck-button .ck-button__label{color:var(--ck-color-text)}.ck.ck-image-insert-form>.ck.ck-button{display:block;padding:var(--ck-list-button-padding);width:100%}[dir=ltr] .ck.ck-image-insert-form>.ck.ck-button{text-align:left}[dir=rtl] .ck.ck-image-insert-form>.ck.ck-button{text-align:right}.ck.ck-image-insert-form>.ck.ck-collapsible:not(:first-child){border-top:1px solid var(--ck-color-base-border)}.ck.ck-image-insert-form>.ck.ck-collapsible:not(:last-child){border-bottom:1px solid var(--ck-color-base-border)}.ck.ck-image-insert-form>.ck.ck-collapsible,.ck.ck-image-insert-form>.ck.ck-image-insert-url{min-width:var(--ck-image-insert-insert-by-url-width)}.ck.ck-image-insert-form>.ck.ck-image-insert-url{padding:var(--ck-spacing-large)}.ck.ck-image-insert-form:focus{outline:none}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/imageinsert.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-image/imageinsert.css"],names:[],mappings:"AAMC,yDACC,YAAa,CACb,mCACD,CCFD,MACC,2CACD,CAEA,wBACC,qBAgBD,CAdC,yDACC,uCAAwC,CACxC,kCAWD,CATC,oJAEC,sBAAuB,CACvB,cACD,CAEA,sFACC,0BACD,CAKD,uCACC,aAAc,CAEd,qCAAsC,CADtC,UAUD,CAZA,iDAME,eAMF,CAZA,iDAUE,gBAEF,CAGC,8DACC,gDACD,CAEA,6DACC,mDACD,CAMD,6FAJC,oDAOD,CAHA,iDAEC,+BACD,CAEA,+BACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-image-insert-url {\n\t& .ck-image-insert-url__action-row {\n\t\tdisplay: grid;\n\t\tgrid-template-columns: repeat(2, 1fr);\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n:root {\n\t--ck-image-insert-insert-by-url-width: 250px;\n}\n\n.ck.ck-image-insert-url {\n\t--ck-input-width: 100%;\n\n\t& .ck-image-insert-url__action-row {\n\t\tgrid-column-gap: var(--ck-spacing-large);\n\t\tmargin-top: var(--ck-spacing-large);\n\n\t\t& .ck-button-save,\n\t\t& .ck-button-cancel {\n\t\t\tjustify-content: center;\n\t\t\tmin-width: auto;\n\t\t}\n\n\t\t& .ck-button .ck-button__label {\n\t\t\tcolor: var(--ck-color-text);\n\t\t}\n\t}\n}\n\n.ck.ck-image-insert-form {\n\t& > .ck.ck-button {\n\t\tdisplay: block;\n\t\twidth: 100%;\n\t\tpadding: var(--ck-list-button-padding);\n\n\t\t@mixin ck-dir ltr {\n\t\t\ttext-align: left;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\ttext-align: right;\n\t\t}\n\t}\n\n\t& > .ck.ck-collapsible {\n\t\t&:not(:first-child) {\n\t\t\tborder-top: 1px solid var(--ck-color-base-border);\n\t\t}\n\n\t\t&:not(:last-child) {\n\t\t\tborder-bottom: 1px solid var(--ck-color-base-border);\n\t\t}\n\n\t\tmin-width: var(--ck-image-insert-insert-by-url-width);\n\t}\n\n\t/* This is the case when there are no other integrations configured than insert by URL */\n\t& > .ck.ck-image-insert-url {\n\t\tmin-width: var(--ck-image-insert-insert-by-url-width);\n\t\tpadding: var(--ck-spacing-large);\n\t}\n\n\t&:focus {\n\t\toutline: none;\n\t}\n}\n'],sourceRoot:""}]);const a=s},7378:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-editor__editable img.image_placeholder{background-size:100% 100%}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/imageplaceholder.css"],names:[],mappings:"AAMC,8CACC,yBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor__editable {\n\t& img.image_placeholder {\n\t\tbackground-size: 100% 100%;\n\t}\n}\n"],sourceRoot:""}]);const a=s},3469:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content img.image_resized{height:auto}.ck-content .image.image_resized{box-sizing:border-box;display:block;max-width:100%}.ck-content .image.image_resized img{width:100%}.ck-content .image.image_resized>figcaption{display:block}.ck.ck-editor__editable td .image-inline.image_resized img,.ck.ck-editor__editable th .image-inline.image_resized img{max-width:100%}[dir=ltr] .ck.ck-button.ck-button_with-text.ck-resize-image-button .ck-button__icon{margin-right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-button.ck-button_with-text.ck-resize-image-button .ck-button__icon{margin-left:var(--ck-spacing-standard)}.ck.ck-dropdown .ck-button.ck-resize-image-button .ck-button__label{width:4em}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/imageresize.css"],names:[],mappings:"AAMA,8BACC,WACD,CAEA,iCAQC,qBAAsB,CADtB,aAAc,CANd,cAkBD,CATC,qCAEC,UACD,CAEA,4CAEC,aACD,CAQC,sHACC,cACD,CAIF,oFACC,uCACD,CAEA,oFACC,sCACD,CAEA,oEACC,SACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* Preserve aspect ratio of the resized image after introducing image height attribute. */\n.ck-content img.image_resized {\n\theight: auto;\n}\n\n.ck-content .image.image_resized {\n\tmax-width: 100%;\n\t/*\n\tThe `
    ` element for resized images must not use `display:table` as browsers do not support `max-width` for it well.\n\tSee https://stackoverflow.com/questions/4019604/chrome-safari-ignoring-max-width-in-table/14420691#14420691 for more.\n\tFortunately, since we control the width, there is no risk that the image will look bad.\n\t*/\n\tdisplay: block;\n\tbox-sizing: border-box;\n\n\t& img {\n\t\t/* For resized images it is the `
    ` element that determines the image width. */\n\t\twidth: 100%;\n\t}\n\n\t& > figcaption {\n\t\t/* The `
    ` element uses `display:block`, so `
    ` also has to. */\n\t\tdisplay: block;\n\t}\n}\n\n.ck.ck-editor__editable {\n\t/* The resized inline image nested in the table should respect its parent size.\n\tSee https://github.com/ckeditor/ckeditor5/issues/9117. */\n\t& td,\n\t& th {\n\t\t& .image-inline.image_resized img {\n\t\t\tmax-width: 100%;\n\t\t}\n\t}\n}\n\n[dir="ltr"] .ck.ck-button.ck-button_with-text.ck-resize-image-button .ck-button__icon {\n\tmargin-right: var(--ck-spacing-standard);\n}\n\n[dir="rtl"] .ck.ck-button.ck-button_with-text.ck-resize-image-button .ck-button__icon {\n\tmargin-left: var(--ck-spacing-standard);\n}\n\n.ck.ck-dropdown .ck-button.ck-resize-image-button .ck-button__label {\n\twidth: 4em;\n}\n'],sourceRoot:""}]);const a=s},6386:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-image-style-spacing:1.5em;--ck-inline-image-style-spacing:calc(var(--ck-image-style-spacing)/2)}.ck-content .image-style-block-align-left,.ck-content .image-style-block-align-right{max-width:calc(100% - var(--ck-image-style-spacing))}.ck-content .image-style-align-left,.ck-content .image-style-align-right{clear:none}.ck-content .image-style-side{float:right;margin-left:var(--ck-image-style-spacing);max-width:50%}.ck-content .image-style-align-left{float:left;margin-right:var(--ck-image-style-spacing)}.ck-content .image-style-align-center{margin-left:auto;margin-right:auto}.ck-content .image-style-align-right{float:right;margin-left:var(--ck-image-style-spacing)}.ck-content .image-style-block-align-right{margin-left:auto;margin-right:0}.ck-content .image-style-block-align-left{margin-left:0;margin-right:auto}.ck-content p+.image-style-align-left,.ck-content p+.image-style-align-right,.ck-content p+.image-style-side{margin-top:0}.ck-content .image-inline.image-style-align-left,.ck-content .image-inline.image-style-align-right{margin-bottom:var(--ck-inline-image-style-spacing);margin-top:var(--ck-inline-image-style-spacing)}.ck-content .image-inline.image-style-align-left{margin-right:var(--ck-inline-image-style-spacing)}.ck-content .image-inline.image-style-align-right{margin-left:var(--ck-inline-image-style-spacing)}.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__action:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover),.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__action:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover){background-color:var(--ck-color-button-on-background)}.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__action:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover):after,.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__action:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover):after{display:none}.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open:hover>.ck-splitbutton__action:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open:hover>.ck-splitbutton__arrow:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open:hover>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover){background-color:var(--ck-color-button-on-hover-background)}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/imagestyle.css"],names:[],mappings:"AAKA,MACC,8BAA+B,CAC/B,qEACD,CAMC,qFAEC,oDACD,CAIA,yEAEC,UACD,CAEA,8BACC,WAAY,CACZ,yCAA0C,CAC1C,aACD,CAEA,oCACC,UAAW,CACX,0CACD,CAEA,sCACC,gBAAiB,CACjB,iBACD,CAEA,qCACC,WAAY,CACZ,yCACD,CAEA,2CAEC,gBAAiB,CADjB,cAED,CAEA,0CACC,aAAc,CACd,iBACD,CAGA,6GAGC,YACD,CAGC,mGAGC,kDAAmD,CADnD,+CAED,CAEA,iDACC,iDACD,CAEA,kDACC,gDACD,CAUC,0lBAGC,qDAKD,CAHC,8nBACC,YACD,CAKD,oVAGC,2DACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-image-style-spacing: 1.5em;\n\t--ck-inline-image-style-spacing: calc(var(--ck-image-style-spacing) / 2);\n}\n\n.ck-content {\n\t/* Provides a minimal side margin for the left and right aligned images, so that the user has a visual feedback\n\tconfirming successful application of the style if image width exceeds the editor's size.\n\tSee https://github.com/ckeditor/ckeditor5/issues/9342 */\n\t& .image-style-block-align-left,\n\t& .image-style-block-align-right {\n\t\tmax-width: calc(100% - var(--ck-image-style-spacing));\n\t}\n\n\t/* Allows displaying multiple floating images in the same line.\n\tSee https://github.com/ckeditor/ckeditor5/issues/9183#issuecomment-804988132 */\n\t& .image-style-align-left,\n\t& .image-style-align-right {\n\t\tclear: none;\n\t}\n\n\t& .image-style-side {\n\t\tfloat: right;\n\t\tmargin-left: var(--ck-image-style-spacing);\n\t\tmax-width: 50%;\n\t}\n\n\t& .image-style-align-left {\n\t\tfloat: left;\n\t\tmargin-right: var(--ck-image-style-spacing);\n\t}\n\n\t& .image-style-align-center {\n\t\tmargin-left: auto;\n\t\tmargin-right: auto;\n\t}\n\n\t& .image-style-align-right {\n\t\tfloat: right;\n\t\tmargin-left: var(--ck-image-style-spacing);\n\t}\n\n\t& .image-style-block-align-right {\n\t\tmargin-right: 0;\n\t\tmargin-left: auto;\n\t}\n\n\t& .image-style-block-align-left {\n\t\tmargin-left: 0;\n\t\tmargin-right: auto;\n\t}\n\n\t/* Simulates margin collapsing with the preceding paragraph, which does not work for the floating elements. */\n\t& p + .image-style-align-left,\n\t& p + .image-style-align-right,\n\t& p + .image-style-side {\n\t\tmargin-top: 0;\n\t}\n\n\t& .image-inline {\n\t\t&.image-style-align-left,\n\t\t&.image-style-align-right {\n\t\t\tmargin-top: var(--ck-inline-image-style-spacing);\n\t\t\tmargin-bottom: var(--ck-inline-image-style-spacing);\n\t\t}\n\n\t\t&.image-style-align-left {\n\t\t\tmargin-right: var(--ck-inline-image-style-spacing);\n\t\t}\n\n\t\t&.image-style-align-right {\n\t\t\tmargin-left: var(--ck-inline-image-style-spacing);\n\t\t}\n\t}\n}\n\n.ck.ck-splitbutton {\n\t/* The button should display as a regular drop-down if the action button\n\tis forced to fire the same action as the arrow button. */\n\t&.ck-splitbutton_flatten {\n\t\t&:hover,\n\t\t&.ck-splitbutton_open {\n\t\t\t& > .ck-splitbutton__action:not(.ck-disabled),\n\t\t\t& > .ck-splitbutton__arrow:not(.ck-disabled),\n\t\t\t& > .ck-splitbutton__arrow:not(.ck-disabled):not(:hover) {\n\t\t\t\tbackground-color: var(--ck-color-button-on-background);\n\n\t\t\t\t&::after {\n\t\t\t\t\tdisplay: none;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&.ck-splitbutton_open:hover {\n\t\t\t& > .ck-splitbutton__action:not(.ck-disabled),\n\t\t\t& > .ck-splitbutton__arrow:not(.ck-disabled),\n\t\t\t& > .ck-splitbutton__arrow:not(.ck-disabled):not(:hover) {\n\t\t\t\tbackground-color: var(--ck-color-button-on-hover-background);\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},7693:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck-image-upload-complete-icon{border-radius:50%;display:block;position:absolute;right:min(var(--ck-spacing-medium),6%);top:min(var(--ck-spacing-medium),6%);z-index:1}.ck-image-upload-complete-icon:after{content:"";position:absolute}:root{--ck-color-image-upload-icon:#fff;--ck-color-image-upload-icon-background:#008a00;--ck-image-upload-icon-size:20;--ck-image-upload-icon-width:2px;--ck-image-upload-icon-is-visible:clamp(0px,100% - 50px,1px)}.ck-image-upload-complete-icon{animation-delay:0ms,3s;animation-duration:.5s,.5s;animation-fill-mode:forwards,forwards;animation-name:ck-upload-complete-icon-show,ck-upload-complete-icon-hide;background:var(--ck-color-image-upload-icon-background);font-size:calc(1px*var(--ck-image-upload-icon-size));height:calc(var(--ck-image-upload-icon-is-visible)*var(--ck-image-upload-icon-size));opacity:0;overflow:hidden;width:calc(var(--ck-image-upload-icon-is-visible)*var(--ck-image-upload-icon-size))}.ck-image-upload-complete-icon:after{animation-delay:.5s;animation-duration:.5s;animation-fill-mode:forwards;animation-name:ck-upload-complete-icon-check;border-right:var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);border-top:var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);box-sizing:border-box;height:0;left:25%;opacity:0;top:50%;transform:scaleX(-1) rotate(135deg);transform-origin:left top;width:0}@media (prefers-reduced-motion:reduce){.ck-image-upload-complete-icon{animation-duration:0ms}.ck-image-upload-complete-icon:after{animation:none;height:.45em;opacity:1;width:.3em}}@keyframes ck-upload-complete-icon-show{0%{opacity:0}to{opacity:1}}@keyframes ck-upload-complete-icon-hide{0%{opacity:1}to{opacity:0}}@keyframes ck-upload-complete-icon-check{0%{height:0;opacity:1;width:0}33%{height:0;width:.3em}to{height:.45em;opacity:1;width:.3em}}',"",{version:3,sources:["webpack://./../ckeditor5-image/theme/imageuploadicon.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-image/imageuploadicon.css"],names:[],mappings:"AAKA,+BAUC,iBAAkB,CATlB,aAAc,CACd,iBAAkB,CAOlB,sCAAwC,CADxC,oCAAsC,CAGtC,SAMD,CAJC,qCACC,UAAW,CACX,iBACD,CChBD,MACC,iCAA8C,CAC9C,+CAA4D,CAG5D,8BAA+B,CAC/B,gCAAiC,CACjC,4DACD,CAEA,+BAWC,sBAA4B,CAN5B,0BAAgC,CADhC,qCAAuC,CADvC,wEAA0E,CAD1E,uDAAwD,CAMxD,oDAAuD,CAWvD,oFAAuF,CAlBvF,SAAU,CAgBV,eAAgB,CAChB,mFAqCD,CAjCC,qCAgBC,mBAAsB,CADtB,sBAAyB,CAEzB,4BAA6B,CAH7B,4CAA6C,CAF7C,sFAAuF,CADvF,oFAAqF,CASrF,qBAAsB,CAdtB,QAAS,CAJT,QAAS,CAGT,SAAU,CADV,OAAQ,CAKR,mCAAoC,CACpC,yBAA0B,CAH1B,OAcD,CAEA,uCA7CD,+BA8CE,sBASF,CAPE,qCACC,cAAe,CAGf,YAAc,CAFd,SAAU,CACV,UAED,CACD,CAGD,wCACC,GACC,SACD,CAEA,GACC,SACD,CACD,CAEA,wCACC,GACC,SACD,CAEA,GACC,SACD,CACD,CAEA,yCACC,GAGC,QAAS,CAFT,SAAU,CACV,OAED,CACA,IAEC,QAAS,CADT,UAED,CACA,GAGC,YAAc,CAFd,SAAU,CACV,UAED,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-image-upload-complete-icon {\n\tdisplay: block;\n\tposition: absolute;\n\n\t/*\n\t * Smaller images should have the icon closer to the border.\n\t * Match the icon position with the linked image indicator brought by the link image feature.\n\t */\n\ttop: min(var(--ck-spacing-medium), 6%);\n\tright: min(var(--ck-spacing-medium), 6%);\n\tborder-radius: 50%;\n\tz-index: 1;\n\n\t&::after {\n\t\tcontent: "";\n\t\tposition: absolute;\n\t}\n}\n','/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-image-upload-icon: hsl(0, 0%, 100%);\n\t--ck-color-image-upload-icon-background: hsl(120, 100%, 27%);\n\n\t/* Match the icon size with the linked image indicator brought by the link image feature. */\n\t--ck-image-upload-icon-size: 20;\n\t--ck-image-upload-icon-width: 2px;\n\t--ck-image-upload-icon-is-visible: clamp(0px, 100% - 50px, 1px);\n}\n\n.ck-image-upload-complete-icon {\n\topacity: 0;\n\tbackground: var(--ck-color-image-upload-icon-background);\n\tanimation-name: ck-upload-complete-icon-show, ck-upload-complete-icon-hide;\n\tanimation-fill-mode: forwards, forwards;\n\tanimation-duration: 500ms, 500ms;\n\n\t/* To make animation scalable. */\n\tfont-size: calc(1px * var(--ck-image-upload-icon-size));\n\n\t/* Hide completed upload icon after 3 seconds. */\n\tanimation-delay: 0ms, 3000ms;\n\n\t/*\n\t * Use CSS math to simulate container queries.\n\t * https://css-tricks.com/the-raven-technique-one-step-closer-to-container-queries/#what-about-showing-and-hiding-things\n\t */\n\toverflow: hidden;\n\twidth: calc(var(--ck-image-upload-icon-is-visible) * var(--ck-image-upload-icon-size));\n\theight: calc(var(--ck-image-upload-icon-is-visible) * var(--ck-image-upload-icon-size));\n\n\t/* This is check icon element made from border-width mixed with animations. */\n\t&::after {\n\t\t/* Because of border transformation we need to "hard code" left position. */\n\t\tleft: 25%;\n\n\t\ttop: 50%;\n\t\topacity: 0;\n\t\theight: 0;\n\t\twidth: 0;\n\n\t\ttransform: scaleX(-1) rotate(135deg);\n\t\ttransform-origin: left top;\n\t\tborder-top: var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);\n\t\tborder-right: var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);\n\n\t\tanimation-name: ck-upload-complete-icon-check;\n\t\tanimation-duration: 500ms;\n\t\tanimation-delay: 500ms;\n\t\tanimation-fill-mode: forwards;\n\n\t\t/* #1095. While reset is not providing proper box-sizing for pseudoelements, we need to handle it. */\n\t\tbox-sizing: border-box;\n\t}\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\tanimation-duration: 0ms;\n\n\t\t&::after {\n\t\t\tanimation: none;\n\t\t\topacity: 1;\n\t\t\twidth: 0.3em;\n\t\t\theight: 0.45em;\n\t\t}\n\t}\n}\n\n@keyframes ck-upload-complete-icon-show {\n\tfrom {\n\t\topacity: 0;\n\t}\n\n\tto {\n\t\topacity: 1;\n\t}\n}\n\n@keyframes ck-upload-complete-icon-hide {\n\tfrom {\n\t\topacity: 1;\n\t}\n\n\tto {\n\t\topacity: 0;\n\t}\n}\n\n@keyframes ck-upload-complete-icon-check {\n\t0% {\n\t\topacity: 1;\n\t\twidth: 0;\n\t\theight: 0;\n\t}\n\t33% {\n\t\twidth: 0.3em;\n\t\theight: 0;\n\t}\n\t100% {\n\t\topacity: 1;\n\t\twidth: 0.3em;\n\t\theight: 0.45em;\n\t}\n}\n'],sourceRoot:""}]);const a=s},1559:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck .ck-upload-placeholder-loader{align-items:center;display:flex;justify-content:center;left:0;position:absolute;top:0}.ck .ck-upload-placeholder-loader:before{content:"";position:relative}:root{--ck-color-upload-placeholder-loader:#b3b3b3;--ck-upload-placeholder-loader-size:32px;--ck-upload-placeholder-image-aspect-ratio:2.8}.ck .ck-image-upload-placeholder{margin:0;width:100%}.ck .ck-image-upload-placeholder.image-inline{width:calc(var(--ck-upload-placeholder-loader-size)*2*var(--ck-upload-placeholder-image-aspect-ratio))}.ck .ck-image-upload-placeholder img{aspect-ratio:var(--ck-upload-placeholder-image-aspect-ratio)}.ck .ck-upload-placeholder-loader{height:100%;width:100%}.ck .ck-upload-placeholder-loader:before{animation:ck-upload-placeholder-loader 1s linear infinite;border-radius:50%;border-right:2px solid transparent;border-top:3px solid var(--ck-color-upload-placeholder-loader);height:var(--ck-upload-placeholder-loader-size);width:var(--ck-upload-placeholder-loader-size)}@keyframes ck-upload-placeholder-loader{to{transform:rotate(1turn)}}',"",{version:3,sources:["webpack://./../ckeditor5-image/theme/imageuploadloader.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-image/imageuploadloader.css"],names:[],mappings:"AAKA,kCAGC,kBAAmB,CADnB,YAAa,CAEb,sBAAuB,CAEvB,MAAO,CALP,iBAAkB,CAIlB,KAOD,CAJC,yCACC,UAAW,CACX,iBACD,CCXD,MACC,4CAAqD,CACrD,wCAAyC,CACzC,8CACD,CAEA,iCAGC,QAAS,CADT,UAgBD,CAbC,8CACC,sGACD,CAEA,qCAOC,4DACD,CAGD,kCAEC,WAAY,CADZ,UAWD,CARC,yCAMC,yDAA0D,CAH1D,iBAAkB,CAElB,kCAAmC,CADnC,8DAA+D,CAF/D,+CAAgD,CADhD,8CAMD,CAGD,wCACC,GACC,uBACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-upload-placeholder-loader {\n\tposition: absolute;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\ttop: 0;\n\tleft: 0;\n\n\t&::before {\n\t\tcontent: '';\n\t\tposition: relative;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-upload-placeholder-loader: hsl(0, 0%, 70%);\n\t--ck-upload-placeholder-loader-size: 32px;\n\t--ck-upload-placeholder-image-aspect-ratio: 2.8;\n}\n\n.ck .ck-image-upload-placeholder {\n\t/* We need to control the full width of the SVG gray background. */\n\twidth: 100%;\n\tmargin: 0;\n\n\t&.image-inline {\n\t\twidth: calc( 2 * var(--ck-upload-placeholder-loader-size) * var(--ck-upload-placeholder-image-aspect-ratio) );\n\t}\n\n\t& img {\n\t\t/*\n\t\t * This is an arbitrary aspect for a 1x1 px GIF to display to the user. Not too tall, not too short.\n\t\t * There's nothing special about this number except that it should make the image placeholder look like\n\t\t * a real image during this short period after the upload started and before the image was read from the\n\t\t * file system (and a rich preview was loaded).\n\t\t */\n\t\taspect-ratio: var(--ck-upload-placeholder-image-aspect-ratio);\n\t}\n}\n\n.ck .ck-upload-placeholder-loader {\n\twidth: 100%;\n\theight: 100%;\n\n\t&::before {\n\t\twidth: var(--ck-upload-placeholder-loader-size);\n\t\theight: var(--ck-upload-placeholder-loader-size);\n\t\tborder-radius: 50%;\n\t\tborder-top: 3px solid var(--ck-color-upload-placeholder-loader);\n\t\tborder-right: 2px solid transparent;\n\t\tanimation: ck-upload-placeholder-loader 1s linear infinite;\n\t}\n}\n\n@keyframes ck-upload-placeholder-loader {\n\tto {\n\t\ttransform: rotate( 360deg );\n\t}\n}\n"],sourceRoot:""}]);const a=s},2267:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-editor__editable .image,.ck.ck-editor__editable .image-inline{position:relative}.ck.ck-editor__editable .image .ck-progress-bar,.ck.ck-editor__editable .image-inline .ck-progress-bar{left:0;position:absolute;top:0}.ck.ck-editor__editable .image-inline.ck-appear,.ck.ck-editor__editable .image.ck-appear{animation:fadeIn .7s}@media (prefers-reduced-motion:reduce){.ck.ck-editor__editable .image-inline.ck-appear,.ck.ck-editor__editable .image.ck-appear{animation:none;opacity:1}}.ck.ck-editor__editable .image .ck-progress-bar,.ck.ck-editor__editable .image-inline .ck-progress-bar{background:var(--ck-color-upload-bar-background);height:2px;transition:width .1s;width:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/imageuploadprogress.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-image/imageuploadprogress.css"],names:[],mappings:"AAMC,qEAEC,iBACD,CAGA,uGAIC,MAAO,CAFP,iBAAkB,CAClB,KAED,CCRC,yFACC,oBAMD,CAJC,uCAHD,yFAKE,cAAe,CADf,SAGF,CADC,CAKF,uGAIC,gDAAiD,CAFjD,UAAW,CAGX,oBAAuB,CAFvB,OAGD,CAGD,kBACC,GAAO,SAAY,CACnB,GAAO,SAAY,CACpB",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor__editable {\n\t& .image,\n\t& .image-inline {\n\t\tposition: relative;\n\t}\n\n\t/* Upload progress bar. */\n\t& .image .ck-progress-bar,\n\t& .image-inline .ck-progress-bar {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 0;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor__editable {\n\t& .image,\n\t& .image-inline {\n\t\t/* Showing animation. */\n\t\t&.ck-appear {\n\t\t\tanimation: fadeIn 700ms;\n\n\t\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\t\topacity: 1;\n\t\t\t\tanimation: none;\n\t\t\t}\n\t\t}\n\t}\n\n\t/* Upload progress bar. */\n\t& .image .ck-progress-bar,\n\t& .image-inline .ck-progress-bar {\n\t\theight: 2px;\n\t\twidth: 0;\n\t\tbackground: var(--ck-color-upload-bar-background);\n\t\ttransition: width 100ms;\n\t}\n}\n\n@keyframes fadeIn {\n\tfrom { opacity: 0; }\n\tto { opacity: 1; }\n}\n"],sourceRoot:""}]);const a=s},4062:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-text-alternative-form{display:flex;flex-direction:row;flex-wrap:nowrap}.ck.ck-text-alternative-form .ck-labeled-field-view{display:inline-block}.ck.ck-text-alternative-form .ck-label{display:none}@media screen and (max-width:600px){.ck.ck-text-alternative-form{flex-wrap:wrap}.ck.ck-text-alternative-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-text-alternative-form .ck-button{flex-basis:50%}}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/textalternativeform.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAOA,6BACC,YAAa,CACb,kBAAmB,CACnB,gBAqBD,CAnBC,oDACC,oBACD,CAEA,uCACC,YACD,CCZA,oCDCD,6BAcE,cAUF,CARE,oDACC,eACD,CAEA,wCACC,cACD,CCrBD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-text-alternative-form {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\n\t& .ck-labeled-field-view {\n\t\tdisplay: inline-block;\n\t}\n\n\t& .ck-label {\n\t\tdisplay: none;\n\t}\n\n\t@mixin ck-media-phone {\n\t\tflex-wrap: wrap;\n\n\t\t& .ck-labeled-field-view {\n\t\t\tflex-basis: 100%;\n\t\t}\n\n\t\t& .ck-button {\n\t\t\tflex-basis: 50%;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},7719:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck .ck-link_selected{background:var(--ck-color-link-selected-background)}.ck .ck-link_selected span.image-inline{outline:var(--ck-widget-outline-thickness) solid var(--ck-color-link-selected-background)}.ck .ck-fake-link-selection{background:var(--ck-color-link-fake-selection)}.ck .ck-fake-link-selection_collapsed{border-right:1px solid var(--ck-color-base-text);height:100%;margin-right:-1px;outline:1px solid hsla(0,0%,100%,.5)}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-link/link.css"],names:[],mappings:"AAMA,sBACC,mDAMD,CAHC,wCACC,yFACD,CAOD,4BACC,8CACD,CAGA,sCAEC,gDAAiD,CADjD,WAAY,CAEZ,iBAAkB,CAClB,oCACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* Class added to span element surrounding currently selected link. */\n.ck .ck-link_selected {\n\tbackground: var(--ck-color-link-selected-background);\n\n\t/* Give linked inline images some outline to let the user know they are also part of the link. */\n\t& span.image-inline {\n\t\toutline: var(--ck-widget-outline-thickness) solid var(--ck-color-link-selected-background);\n\t}\n}\n\n/*\n * Classes used by the "fake visual selection" displayed in the content when an input\n * in the link UI has focus (the browser does not render the native selection in this state).\n */\n.ck .ck-fake-link-selection {\n\tbackground: var(--ck-color-link-fake-selection);\n}\n\n/* A collapsed fake visual selection. */\n.ck .ck-fake-link-selection_collapsed {\n\theight: 100%;\n\tborder-right: 1px solid var(--ck-color-base-text);\n\tmargin-right: -1px;\n\toutline: solid 1px hsla(0, 0%, 100%, .5);\n}\n'],sourceRoot:""}]);const a=s},8762:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-link-actions{display:flex;flex-direction:row;flex-wrap:nowrap}.ck.ck-link-actions .ck-link-actions__preview{display:inline-block}.ck.ck-link-actions .ck-link-actions__preview .ck-button__label{overflow:hidden}@media screen and (max-width:600px){.ck.ck-link-actions{flex-wrap:wrap}.ck.ck-link-actions .ck-link-actions__preview{flex-basis:100%}.ck.ck-link-actions .ck-button:not(.ck-link-actions__preview){flex-basis:50%}}.ck.ck-link-actions .ck-button.ck-link-actions__preview{padding-left:0;padding-right:0}.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label{color:var(--ck-color-link-default);cursor:pointer;max-width:var(--ck-input-width);min-width:3em;padding:0 var(--ck-spacing-medium);text-align:center;text-overflow:ellipsis}.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label:hover{text-decoration:underline}.ck.ck-link-actions .ck-button.ck-link-actions__preview,.ck.ck-link-actions .ck-button.ck-link-actions__preview:active,.ck.ck-link-actions .ck-button.ck-link-actions__preview:focus,.ck.ck-link-actions .ck-button.ck-link-actions__preview:hover{background:none}.ck.ck-link-actions .ck-button.ck-link-actions__preview:active{box-shadow:none}.ck.ck-link-actions .ck-button.ck-link-actions__preview:focus .ck-button__label{text-decoration:underline}[dir=ltr] .ck.ck-link-actions .ck-button:not(:first-child),[dir=rtl] .ck.ck-link-actions .ck-button:not(:last-child){margin-left:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-link-actions .ck-button.ck-link-actions__preview{margin:var(--ck-spacing-standard) var(--ck-spacing-standard) 0}.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label{max-width:100%;min-width:0}[dir=ltr] .ck.ck-link-actions .ck-button:not(.ck-link-actions__preview),[dir=rtl] .ck.ck-link-actions .ck-button:not(.ck-link-actions__preview){margin-left:0}}","",{version:3,sources:["webpack://./../ckeditor5-link/theme/linkactions.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-link/linkactions.css"],names:[],mappings:"AAOA,oBACC,YAAa,CACb,kBAAmB,CACnB,gBAqBD,CAnBC,8CACC,oBAKD,CAHC,gEACC,eACD,CCXD,oCDCD,oBAcE,cAUF,CARE,8CACC,eACD,CAEA,8DACC,cACD,CCrBD,CCIA,wDACC,cAAe,CACf,eAmCD,CAjCC,0EAEC,kCAAmC,CAEnC,cAAe,CAIf,+BAAgC,CAChC,aAAc,CARd,kCAAmC,CASnC,iBAAkB,CAPlB,sBAYD,CAHC,gFACC,yBACD,CAGD,mPAIC,eACD,CAEA,+DACC,eACD,CAGC,gFACC,yBACD,CAWD,qHACC,sCACD,CDtDD,oCC0DC,wDACC,8DAMD,CAJC,0EAEC,cAAe,CADf,WAED,CAGD,gJAME,aAEF,CDzED",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-link-actions {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\n\t& .ck-link-actions__preview {\n\t\tdisplay: inline-block;\n\n\t\t& .ck-button__label {\n\t\t\toverflow: hidden;\n\t\t}\n\t}\n\n\t@mixin ck-media-phone {\n\t\tflex-wrap: wrap;\n\n\t\t& .ck-link-actions__preview {\n\t\t\tflex-basis: 100%;\n\t\t}\n\n\t\t& .ck-button:not(.ck-link-actions__preview) {\n\t\t\tflex-basis: 50%;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n@import "../mixins/_focus.css";\n@import "../mixins/_shadow.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-link-actions {\n\t& .ck-button.ck-link-actions__preview {\n\t\tpadding-left: 0;\n\t\tpadding-right: 0;\n\n\t\t& .ck-button__label {\n\t\t\tpadding: 0 var(--ck-spacing-medium);\n\t\t\tcolor: var(--ck-color-link-default);\n\t\t\ttext-overflow: ellipsis;\n\t\t\tcursor: pointer;\n\n\t\t\t/* Match the box model of the link editor form\'s input so the balloon\n\t\t\tdoes not change width when moving between actions and the form. */\n\t\t\tmax-width: var(--ck-input-width);\n\t\t\tmin-width: 3em;\n\t\t\ttext-align: center;\n\n\t\t\t&:hover {\n\t\t\t\ttext-decoration: underline;\n\t\t\t}\n\t\t}\n\n\t\t&,\n\t\t&:hover,\n\t\t&:focus,\n\t\t&:active {\n\t\t\tbackground: none;\n\t\t}\n\n\t\t&:active {\n\t\t\tbox-shadow: none;\n\t\t}\n\n\t\t&:focus {\n\t\t\t& .ck-button__label {\n\t\t\t\ttext-decoration: underline;\n\t\t\t}\n\t\t}\n\t}\n\n\t@mixin ck-dir ltr {\n\t\t& .ck-button:not(:first-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-dir rtl {\n\t\t& .ck-button:not(:last-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-media-phone {\n\t\t& .ck-button.ck-link-actions__preview {\n\t\t\tmargin: var(--ck-spacing-standard) var(--ck-spacing-standard) 0;\n\n\t\t\t& .ck-button__label {\n\t\t\t\tmin-width: 0;\n\t\t\t\tmax-width: 100%;\n\t\t\t}\n\t\t}\n\n\t\t& .ck-button:not(.ck-link-actions__preview) {\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: 0;\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-left: 0;\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},3817:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-link-form{align-items:flex-start;display:flex}.ck.ck-link-form .ck-label{display:none}@media screen and (max-width:600px){.ck.ck-link-form{flex-wrap:wrap}.ck.ck-link-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-link-form .ck-button{flex-basis:50%}}.ck.ck-link-form_layout-vertical{display:block}.ck.ck-link-form_layout-vertical .ck-button.ck-button-cancel,.ck.ck-link-form_layout-vertical .ck-button.ck-button-save{margin-top:var(--ck-spacing-medium)}.ck.ck-link-form_layout-vertical{min-width:var(--ck-input-width);padding:0}.ck.ck-link-form_layout-vertical .ck-labeled-field-view{margin:var(--ck-spacing-large) var(--ck-spacing-large) var(--ck-spacing-small)}.ck.ck-link-form_layout-vertical .ck-labeled-field-view .ck-input-text{min-width:0;width:100%}.ck.ck-link-form_layout-vertical>.ck-button{border-radius:0;margin:0;padding:var(--ck-spacing-standard);width:50%}.ck.ck-link-form_layout-vertical>.ck-button:not(:focus){border-top:1px solid var(--ck-color-base-border)}[dir=ltr] .ck.ck-link-form_layout-vertical>.ck-button,[dir=rtl] .ck.ck-link-form_layout-vertical>.ck-button{margin-left:0}[dir=rtl] .ck.ck-link-form_layout-vertical>.ck-button:last-of-type{border-right:1px solid var(--ck-color-base-border)}.ck.ck-link-form_layout-vertical .ck.ck-list{margin:var(--ck-spacing-standard) var(--ck-spacing-large)}.ck.ck-link-form_layout-vertical .ck.ck-list .ck-button.ck-switchbutton{padding:0;width:100%}.ck.ck-link-form_layout-vertical .ck.ck-list .ck-button.ck-switchbutton:hover{background:none}","",{version:3,sources:["webpack://./../ckeditor5-link/theme/linkform.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-link/linkform.css"],names:[],mappings:"AAOA,iBAEC,sBAAuB,CADvB,YAkBD,CAfC,2BACC,YACD,CCPA,oCDCD,iBASE,cAUF,CARE,wCACC,eACD,CAEA,4BACC,cACD,CChBD,CDwBD,iCACC,aAYD,CALE,wHAEC,mCACD,CEhCF,iCAEC,+BAAgC,CADhC,SAgDD,CA7CC,wDACC,8EAMD,CAJC,uEACC,WAAY,CACZ,UACD,CAGD,4CAIC,eAAgB,CAFhB,QAAS,CADT,kCAAmC,CAEnC,SAkBD,CAfC,wDACC,gDACD,CARD,4GAeE,aAMF,CAJE,mEACC,kDACD,CAKF,6CACC,yDAUD,CARC,wEACC,SAAU,CACV,UAKD,CAHC,8EACC,eACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-link-form {\n\tdisplay: flex;\n\talign-items: flex-start;\n\n\t& .ck-label {\n\t\tdisplay: none;\n\t}\n\n\t@mixin ck-media-phone {\n\t\tflex-wrap: wrap;\n\n\t\t& .ck-labeled-field-view {\n\t\t\tflex-basis: 100%;\n\t\t}\n\n\t\t& .ck-button {\n\t\t\tflex-basis: 50%;\n\t\t}\n\t}\n}\n\n/*\n * Style link form differently when manual decorators are available.\n * See: https://github.com/ckeditor/ckeditor5-link/issues/186.\n */\n.ck.ck-link-form_layout-vertical {\n\tdisplay: block;\n\n\t/*\n\t * Whether the form is in the responsive mode or not, if there are decorator buttons\n\t * keep the top margin of action buttons medium.\n\t */\n\t& .ck-button {\n\t\t&.ck-button-save,\n\t\t&.ck-button-cancel {\n\t\t\tmargin-top: var(--ck-spacing-medium);\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n/*\n * Style link form differently when manual decorators are available.\n * See: https://github.com/ckeditor/ckeditor5-link/issues/186.\n */\n.ck.ck-link-form_layout-vertical {\n\tpadding: 0;\n\tmin-width: var(--ck-input-width);\n\n\t& .ck-labeled-field-view {\n\t\tmargin: var(--ck-spacing-large) var(--ck-spacing-large) var(--ck-spacing-small);\n\n\t\t& .ck-input-text {\n\t\t\tmin-width: 0;\n\t\t\twidth: 100%;\n\t\t}\n\t}\n\n\t& > .ck-button {\n\t\tpadding: var(--ck-spacing-standard);\n\t\tmargin: 0;\n\t\twidth: 50%;\n\t\tborder-radius: 0;\n\n\t\t&:not(:focus) {\n\t\t\tborder-top: 1px solid var(--ck-color-base-border);\n\t\t}\n\n\t\t@mixin ck-dir ltr {\n\t\t\tmargin-left: 0;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\tmargin-left: 0;\n\n\t\t\t&:last-of-type {\n\t\t\t\tborder-right: 1px solid var(--ck-color-base-border);\n\t\t\t}\n\t\t}\n\t}\n\n\t/* Using additional `.ck` class for stronger CSS specificity than `.ck.ck-link-form > :not(:first-child)`. */\n\t& .ck.ck-list {\n\t\tmargin: var(--ck-spacing-standard) var(--ck-spacing-large);\n\n\t\t& .ck-button.ck-switchbutton {\n\t\t\tpadding: 0;\n\t\t\twidth: 100%;\n\n\t\t\t&:hover {\n\t\t\t\tbackground: none;\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},4808:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck.ck-editor__editable a span.image-inline:after,.ck.ck-editor__editable figure.image>a:after{display:block;position:absolute}:root{--ck-link-image-indicator-icon-size:20;--ck-link-image-indicator-icon-is-visible:clamp(0px,100% - 50px,1px)}.ck.ck-editor__editable a span.image-inline:after,.ck.ck-editor__editable figure.image>a:after{background-color:rgba(0,0,0,.4);background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCI+PHBhdGggZmlsbD0iI2ZmZiIgZD0ibTExLjA3NyAxNSAuOTkxLTEuNDE2YS43NS43NSAwIDEgMSAxLjIyOS44NmwtMS4xNDggMS42NGEuNzUuNzUgMCAwIDEtLjIxNy4yMDYgNS4yNTEgNS4yNTEgMCAwIDEtOC41MDMtNS45NTUuNy43IDAgMCAxIC4xMi0uMjc0bDEuMTQ3LTEuNjM5YS43NS43NSAwIDEgMSAxLjIyOC44Nkw0LjkzMyAxMC43bC4wMDYuMDAzYTMuNzUgMy43NSAwIDAgMCA2LjEzMiA0LjI5NHptNS40OTQtNS4zMzVhLjc1Ljc1IDAgMCAxLS4xMi4yNzRsLTEuMTQ3IDEuNjM5YS43NS43NSAwIDEgMS0xLjIyOC0uODZsLjg2LTEuMjNhMy43NSAzLjc1IDAgMCAwLTYuMTQ0LTQuMzAxbC0uODYgMS4yMjlhLjc1Ljc1IDAgMCAxLTEuMjI5LS44NmwxLjE0OC0xLjY0YS43NS43NSAwIDAgMSAuMjE3LS4yMDYgNS4yNTEgNS4yNTEgMCAwIDEgOC41MDMgNS45NTVtLTQuNTYzLTIuNTMyYS43NS43NSAwIDAgMSAuMTg0IDEuMDQ1bC0zLjE1NSA0LjUwNWEuNzUuNzUgMCAxIDEtMS4yMjktLjg2bDMuMTU1LTQuNTA2YS43NS43NSAwIDAgMSAxLjA0NS0uMTg0Ii8+PC9zdmc+");background-position:50%;background-repeat:no-repeat;background-size:14px;border-radius:100%;content:"";height:calc(var(--ck-link-image-indicator-icon-is-visible)*var(--ck-link-image-indicator-icon-size));overflow:hidden;right:min(var(--ck-spacing-medium),6%);top:min(var(--ck-spacing-medium),6%);width:calc(var(--ck-link-image-indicator-icon-is-visible)*var(--ck-link-image-indicator-icon-size))}',"",{version:3,sources:["webpack://./../ckeditor5-link/theme/linkimage.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-link/linkimage.css"],names:[],mappings:"AASE,+FACC,aAAc,CACd,iBACD,CCPF,MAEC,sCAAuC,CACvC,oEACD,CAME,+FAUC,+BAAqC,CACrC,k2BAA+3B,CAG/3B,uBAA2B,CAD3B,2BAA4B,CAD5B,oBAAqB,CAGrB,kBAAmB,CAdnB,UAAW,CAsBX,oGAAuG,CAFvG,eAAgB,CAbhB,sCAAwC,CADxC,oCAAsC,CAetC,mGAED",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor__editable {\n\t/* Linked image indicator */\n\t& figure.image > a,\n\t& a span.image-inline {\n\t\t&::after {\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t}\n\t}\n}\n\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/* Match the icon size with the upload indicator brought by the image upload feature. */\n\t--ck-link-image-indicator-icon-size: 20;\n\t--ck-link-image-indicator-icon-is-visible: clamp(0px, 100% - 50px, 1px);\n}\n\n.ck.ck-editor__editable {\n\t/* Linked image indicator */\n\t& figure.image > a,\n\t& a span.image-inline {\n\t\t&::after {\n\t\t\tcontent: "";\n\n\t\t\t/*\n\t\t\t * Smaller images should have the icon closer to the border.\n\t\t\t * Match the icon position with the upload indicator brought by the image upload feature.\n\t\t\t */\n\t\t\ttop: min(var(--ck-spacing-medium), 6%);\n\t\t\tright: min(var(--ck-spacing-medium), 6%);\n\n\t\t\tbackground-color: hsla(0, 0%, 0%, .4);\n\t\t\tbackground-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iI2ZmZiIgZD0ibTExLjA3NyAxNSAuOTkxLTEuNDE2YS43NS43NSAwIDEgMSAxLjIyOS44NmwtMS4xNDggMS42NGEuNzQ4Ljc0OCAwIDAgMS0uMjE3LjIwNiA1LjI1MSA1LjI1MSAwIDAgMS04LjUwMy01Ljk1NS43NDEuNzQxIDAgMCAxIC4xMi0uMjc0bDEuMTQ3LTEuNjM5YS43NS43NSAwIDEgMSAxLjIyOC44Nkw0LjkzMyAxMC43bC4wMDYuMDAzYTMuNzUgMy43NSAwIDAgMCA2LjEzMiA0LjI5NGwuMDA2LjAwNHptNS40OTQtNS4zMzVhLjc0OC43NDggMCAwIDEtLjEyLjI3NGwtMS4xNDcgMS42MzlhLjc1Ljc1IDAgMSAxLTEuMjI4LS44NmwuODYtMS4yM2EzLjc1IDMuNzUgMCAwIDAtNi4xNDQtNC4zMDFsLS44NiAxLjIyOWEuNzUuNzUgMCAwIDEtMS4yMjktLjg2bDEuMTQ4LTEuNjRhLjc0OC43NDggMCAwIDEgLjIxNy0uMjA2IDUuMjUxIDUuMjUxIDAgMCAxIDguNTAzIDUuOTU1em0tNC41NjMtMi41MzJhLjc1Ljc1IDAgMCAxIC4xODQgMS4wNDVsLTMuMTU1IDQuNTA1YS43NS43NSAwIDEgMS0xLjIyOS0uODZsMy4xNTUtNC41MDZhLjc1Ljc1IDAgMCAxIDEuMDQ1LS4xODR6Ii8+PC9zdmc+");\n\t\t\tbackground-size: 14px;\n\t\t\tbackground-repeat: no-repeat;\n\t\t\tbackground-position: center;\n\t\t\tborder-radius: 100%;\n\n\t\t\t/*\n\t\t\t* Use CSS math to simulate container queries.\n\t\t\t* https://css-tricks.com/the-raven-technique-one-step-closer-to-container-queries/#what-about-showing-and-hiding-things\n\t\t\t*/\n\t\t\toverflow: hidden;\n\t\t\twidth: calc(var(--ck-link-image-indicator-icon-is-visible) * var(--ck-link-image-indicator-icon-size));\n\t\t\theight: calc(var(--ck-link-image-indicator-icon-is-visible) * var(--ck-link-image-indicator-icon-size));\n\t\t}\n\t}\n}\n\n'],sourceRoot:""}]);const a=s},1232:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-editor__editable .ck-list-bogus-paragraph{display:block}","",{version:3,sources:["webpack://./../ckeditor5-list/theme/documentlist.css"],names:[],mappings:"AAKA,8CACC,aACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-editor__editable .ck-list-bogus-paragraph {\n\tdisplay: block;\n}\n"],sourceRoot:""}]);const a=s},6903:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content ol{list-style-type:decimal}.ck-content ol ol{list-style-type:lower-latin}.ck-content ol ol ol{list-style-type:lower-roman}.ck-content ol ol ol ol{list-style-type:upper-latin}.ck-content ol ol ol ol ol{list-style-type:upper-roman}.ck-content ul{list-style-type:disc}.ck-content ul ul{list-style-type:circle}.ck-content ul ul ul,.ck-content ul ul ul ul{list-style-type:square}","",{version:3,sources:["webpack://./../ckeditor5-list/theme/list.css"],names:[],mappings:"AAKA,eACC,uBAiBD,CAfC,kBACC,2BAaD,CAXC,qBACC,2BASD,CAPC,wBACC,2BAKD,CAHC,2BACC,2BACD,CAMJ,eACC,oBAaD,CAXC,kBACC,sBASD,CAJE,6CACC,sBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content ol {\n\tlist-style-type: decimal;\n\n\t& ol {\n\t\tlist-style-type: lower-latin;\n\n\t\t& ol {\n\t\t\tlist-style-type: lower-roman;\n\n\t\t\t& ol {\n\t\t\t\tlist-style-type: upper-latin;\n\n\t\t\t\t& ol {\n\t\t\t\t\tlist-style-type: upper-roman;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\n.ck-content ul {\n\tlist-style-type: disc;\n\n\t& ul {\n\t\tlist-style-type: circle;\n\n\t\t& ul {\n\t\t\tlist-style-type: square;\n\n\t\t\t& ul {\n\t\t\t\tlist-style-type: square;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},9968:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-list-properties.ck-list-properties_without-styles{padding:var(--ck-spacing-large)}.ck.ck-list-properties.ck-list-properties_without-styles>*{min-width:14em}.ck.ck-list-properties.ck-list-properties_without-styles>*+*{margin-top:var(--ck-spacing-standard)}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-list-styles-list{grid-template-columns:repeat(4,auto)}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-collapsible{border-top:1px solid var(--ck-color-base-border)}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-collapsible>.ck-collapsible__children>*{width:100%}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-collapsible>.ck-collapsible__children>*+*{margin-top:var(--ck-spacing-standard)}.ck.ck-list-properties .ck.ck-numbered-list-properties__start-index .ck-input{min-width:auto;width:100%}.ck.ck-list-properties .ck.ck-numbered-list-properties__reversed-order{background:transparent;margin-bottom:calc(var(--ck-spacing-tiny)*-1);padding-left:0;padding-right:0}.ck.ck-list-properties .ck.ck-numbered-list-properties__reversed-order:active,.ck.ck-list-properties .ck.ck-numbered-list-properties__reversed-order:hover{background:none;border-color:transparent;box-shadow:none}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-list/listproperties.css"],names:[],mappings:"AAOC,yDACC,+BASD,CAPC,2DACC,cAKD,CAHC,6DACC,qCACD,CASD,wFACC,oCACD,CAGA,mFACC,gDAWD,CARE,+GACC,UAKD,CAHC,iHACC,qCACD,CAMJ,8EACC,cAAe,CACf,UACD,CAEA,uEACC,sBAAuB,CAGvB,6CAAgD,CAFhD,cAAe,CACf,eAQD,CALC,2JAGC,eAAgB,CADhB,wBAAyB,CADzB,eAGD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-list-properties {\n\t/* When there are no list styles and there is no collapsible. */\n\t&.ck-list-properties_without-styles {\n\t\tpadding: var(--ck-spacing-large);\n\n\t\t& > * {\n\t\t\tmin-width: 14em;\n\n\t\t\t& + * {\n\t\t\t\tmargin-top: var(--ck-spacing-standard);\n\t\t\t}\n\t\t}\n\t}\n\n\t/*\n\t * When the numbered list property fields (start at, reversed) should be displayed,\n\t * more horizontal space is needed. Reconfigure the style grid to create that space.\n\t */\n\t&.ck-list-properties_with-numbered-properties {\n\t\t& > .ck-list-styles-list {\n\t\t\tgrid-template-columns: repeat( 4, auto );\n\t\t}\n\n\t\t/* When list styles are rendered and property fields are in a collapsible. */\n\t\t& > .ck-collapsible {\n\t\t\tborder-top: 1px solid var(--ck-color-base-border);\n\n\t\t\t& > .ck-collapsible__children {\n\t\t\t\t& > * {\n\t\t\t\t\twidth: 100%;\n\n\t\t\t\t\t& + * {\n\t\t\t\t\t\tmargin-top: var(--ck-spacing-standard);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t& .ck.ck-numbered-list-properties__start-index .ck-input {\n\t\tmin-width: auto;\n\t\twidth: 100%;\n\t}\n\n\t& .ck.ck-numbered-list-properties__reversed-order {\n\t\tbackground: transparent;\n\t\tpadding-left: 0;\n\t\tpadding-right: 0;\n\t\tmargin-bottom: calc(-1 * var(--ck-spacing-tiny));\n\n\t\t&:active, &:hover {\n\t\t\tbox-shadow: none;\n\t\t\tborder-color: transparent;\n\t\t\tbackground: none;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},7141:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-list-styles-list{display:grid}:root{--ck-list-style-button-size:44px}.ck.ck-list-styles-list{column-gap:var(--ck-spacing-medium);grid-template-columns:repeat(3,auto);padding:var(--ck-spacing-large);row-gap:var(--ck-spacing-medium)}.ck.ck-list-styles-list .ck-button{box-sizing:content-box;margin:0;padding:0}.ck.ck-list-styles-list .ck-button,.ck.ck-list-styles-list .ck-button .ck-icon{height:var(--ck-list-style-button-size);width:var(--ck-list-style-button-size)}","",{version:3,sources:["webpack://./../ckeditor5-list/theme/liststyles.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-list/liststyles.css"],names:[],mappings:"AAKA,wBACC,YACD,CCFA,MACC,gCACD,CAEA,wBAGC,mCAAoC,CAFpC,oCAAwC,CAGxC,+BAAgC,CAFhC,gCA4BD,CAxBC,mCAiBC,sBAAuB,CAPvB,QAAS,CANT,SAmBD,CAJC,+EAhBA,uCAAwC,CADxC,sCAoBA",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-list-styles-list {\n\tdisplay: grid;\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-list-style-button-size: 44px;\n}\n\n.ck.ck-list-styles-list {\n\tgrid-template-columns: repeat( 3, auto );\n\trow-gap: var(--ck-spacing-medium);\n\tcolumn-gap: var(--ck-spacing-medium);\n\tpadding: var(--ck-spacing-large);\n\n\t& .ck-button {\n\t\t/* Make the button look like a thumbnail (the icon "takes it all"). */\n\t\twidth: var(--ck-list-style-button-size);\n\t\theight: var(--ck-list-style-button-size);\n\t\tpadding: 0;\n\n\t\t/*\n\t\t * Buttons are aligned by the grid so disable default button margins to not collide with the\n\t\t * gaps in the grid.\n\t\t */\n\t\tmargin: 0;\n\n\t\t/*\n\t\t * Make sure the button border (which is displayed on focus, BTW) does not steal pixels\n\t\t * from the button dimensions and, as a result, decrease the size of the icon\n\t\t * (which becomes blurry as it scales down).\n\t\t */\n\t\tbox-sizing: content-box;\n\n\t\t& .ck-icon {\n\t\t\twidth: var(--ck-list-style-button-size);\n\t\t\theight: var(--ck-list-style-button-size);\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},8991:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,':root{--ck-todo-list-checkmark-size:16px}.ck-content .todo-list{list-style:none}.ck-content .todo-list li{margin-bottom:5px;position:relative}.ck-content .todo-list li .todo-list{margin-top:5px}.ck-content .todo-list .todo-list__label>input{-webkit-appearance:none;border:0;display:inline-block;height:var(--ck-todo-list-checkmark-size);left:-25px;margin-left:0;margin-right:-15px;position:relative;right:0;vertical-align:middle;width:var(--ck-todo-list-checkmark-size)}.ck-content[dir=rtl] .todo-list .todo-list__label>input{left:0;margin-left:-15px;margin-right:0;right:-25px}.ck-content .todo-list .todo-list__label>input:before{border:1px solid #333;border-radius:2px;box-sizing:border-box;content:"";display:block;height:100%;position:absolute;transition:box-shadow .25s ease-in-out;width:100%}@media (prefers-reduced-motion:reduce){.ck-content .todo-list .todo-list__label>input:before{transition:none}}.ck-content .todo-list .todo-list__label>input:after{border-color:transparent;border-style:solid;border-width:0 calc(var(--ck-todo-list-checkmark-size)/8) calc(var(--ck-todo-list-checkmark-size)/8) 0;box-sizing:content-box;content:"";display:block;height:calc(var(--ck-todo-list-checkmark-size)/2.6);left:calc(var(--ck-todo-list-checkmark-size)/3);pointer-events:none;position:absolute;top:calc(var(--ck-todo-list-checkmark-size)/5.3);transform:rotate(45deg);width:calc(var(--ck-todo-list-checkmark-size)/5.3)}.ck-content .todo-list .todo-list__label>input[checked]:before{background:#26ab33;border-color:#26ab33}.ck-content .todo-list .todo-list__label>input[checked]:after{border-color:#fff}.ck-content .todo-list .todo-list__label .todo-list__label__description{vertical-align:middle}.ck-content .todo-list .todo-list__label.todo-list__label_without-description input[type=checkbox]{position:absolute}.ck-editor__editable.ck-content .todo-list .todo-list__label>input,.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input{cursor:pointer}.ck-editor__editable.ck-content .todo-list .todo-list__label>input:hover:before,.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input:hover:before{box-shadow:0 0 0 5px rgba(0,0,0,.1)}.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input{-webkit-appearance:none;border:0;display:inline-block;height:var(--ck-todo-list-checkmark-size);left:-25px;margin-left:0;margin-right:-15px;position:relative;right:0;vertical-align:middle;width:var(--ck-todo-list-checkmark-size)}.ck-editor__editable.ck-content[dir=rtl] .todo-list .todo-list__label>span[contenteditable=false]>input{left:0;margin-left:-15px;margin-right:0;right:-25px}.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input:before{border:1px solid #333;border-radius:2px;box-sizing:border-box;content:"";display:block;height:100%;position:absolute;transition:box-shadow .25s ease-in-out;width:100%}@media (prefers-reduced-motion:reduce){.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input:before{transition:none}}.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input:after{border-color:transparent;border-style:solid;border-width:0 calc(var(--ck-todo-list-checkmark-size)/8) calc(var(--ck-todo-list-checkmark-size)/8) 0;box-sizing:content-box;content:"";display:block;height:calc(var(--ck-todo-list-checkmark-size)/2.6);left:calc(var(--ck-todo-list-checkmark-size)/3);pointer-events:none;position:absolute;top:calc(var(--ck-todo-list-checkmark-size)/5.3);transform:rotate(45deg);width:calc(var(--ck-todo-list-checkmark-size)/5.3)}.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input[checked]:before{background:#26ab33;border-color:#26ab33}.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input[checked]:after{border-color:#fff}.ck-editor__editable.ck-content .todo-list .todo-list__label.todo-list__label_without-description input[type=checkbox]{position:absolute}',"",{version:3,sources:["webpack://./../ckeditor5-list/theme/todolist.css"],names:[],mappings:"AAKA,MACC,kCACD,CA4EA,uBACC,eAwBD,CAtBC,0BAEC,iBAAkB,CADlB,iBAMD,CAHC,qCACC,cACD,CAIA,+CAtFD,uBAAwB,CAQxB,QAAS,CAPT,oBAAqB,CAGrB,yCAA0C,CAO1C,UAAW,CAGX,aAAc,CAFd,kBAAmB,CAVnB,iBAAkB,CAWlB,OAAQ,CARR,qBAAsB,CAFtB,wCAqFC,CAFA,wDApEA,MAAO,CAGP,iBAAkB,CAFlB,cAAe,CACf,WAoEA,CAhED,sDAOC,qBAAiC,CACjC,iBAAkB,CALlB,qBAAsB,CACtB,UAAW,CAHX,aAAc,CAKd,WAAY,CAJZ,iBAAkB,CAOlB,sCAAwC,CAJxC,UASD,CAHC,uCAXD,sDAYE,eAEF,CADC,CAGD,qDAaC,wBAAyB,CADzB,kBAAmB,CAEnB,sGAA+G,CAX/G,sBAAuB,CAEvB,UAAW,CAJX,aAAc,CAUd,mDAAwD,CAHxD,+CAAoD,CAJpD,mBAAoB,CAFpB,iBAAkB,CAOlB,gDAAqD,CAMrD,uBAAwB,CALxB,kDAMD,CAGC,+DACC,kBAA8B,CAC9B,oBACD,CAEA,8DACC,iBACD,CAwBA,wEACC,qBACD,CAEA,mGACC,iBACD,CAYD,kKAEC,cAKD,CAHC,4LACC,mCACD,CAMD,+FAxHA,uBAAwB,CAQxB,QAAS,CAPT,oBAAqB,CAGrB,yCAA0C,CAO1C,UAAW,CAGX,aAAc,CAFd,kBAAmB,CAVnB,iBAAkB,CAWlB,OAAQ,CARR,qBAAsB,CAFtB,wCAuHA,CAFA,wGAtGC,MAAO,CAGP,iBAAkB,CAFlB,cAAe,CACf,WAsGD,CAlGA,sGAOC,qBAAiC,CACjC,iBAAkB,CALlB,qBAAsB,CACtB,UAAW,CAHX,aAAc,CAKd,WAAY,CAJZ,iBAAkB,CAOlB,sCAAwC,CAJxC,UASD,CAHC,uCAXD,sGAYE,eAEF,CADC,CAGD,qGAaC,wBAAyB,CADzB,kBAAmB,CAEnB,sGAA+G,CAX/G,sBAAuB,CAEvB,UAAW,CAJX,aAAc,CAUd,mDAAwD,CAHxD,+CAAoD,CAJpD,mBAAoB,CAFpB,iBAAkB,CAOlB,gDAAqD,CAMrD,uBAAwB,CALxB,kDAMD,CAGC,+GACC,kBAA8B,CAC9B,oBACD,CAEA,8GACC,iBACD,CA2DA,uHACC,iBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-todo-list-checkmark-size: 16px;\n}\n\n@define-mixin todo-list-checkbox {\n\t-webkit-appearance: none;\n\tdisplay: inline-block;\n\tposition: relative;\n\twidth: var(--ck-todo-list-checkmark-size);\n\theight: var(--ck-todo-list-checkmark-size);\n\tvertical-align: middle;\n\n\t/* Needed on iOS */\n\tborder: 0;\n\n\t/* LTR styles */\n\tleft: -25px;\n\tmargin-right: -15px;\n\tright: 0;\n\tmargin-left: 0;\n\n\t/* RTL styles */\n\t@nest [dir=rtl]& {\n\t\tleft: 0;\n\t\tmargin-right: 0;\n\t\tright: -25px;\n\t\tmargin-left: -15px;\n\t}\n\n\t&::before {\n\t\tdisplay: block;\n\t\tposition: absolute;\n\t\tbox-sizing: border-box;\n\t\tcontent: '';\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tborder: 1px solid hsl(0, 0%, 20%);\n\t\tborder-radius: 2px;\n\t\ttransition: 250ms ease-in-out box-shadow;\n\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\ttransition: none;\n\t\t}\n\t}\n\n\t&::after {\n\t\tdisplay: block;\n\t\tposition: absolute;\n\t\tbox-sizing: content-box;\n\t\tpointer-events: none;\n\t\tcontent: '';\n\n\t\t/* Calculate tick position, size and border-width proportional to the checkmark size. */\n\t\tleft: calc( var(--ck-todo-list-checkmark-size) / 3 );\n\t\ttop: calc( var(--ck-todo-list-checkmark-size) / 5.3 );\n\t\twidth: calc( var(--ck-todo-list-checkmark-size) / 5.3 );\n\t\theight: calc( var(--ck-todo-list-checkmark-size) / 2.6 );\n\t\tborder-style: solid;\n\t\tborder-color: transparent;\n\t\tborder-width: 0 calc( var(--ck-todo-list-checkmark-size) / 8 ) calc( var(--ck-todo-list-checkmark-size) / 8 ) 0;\n\t\ttransform: rotate(45deg);\n\t}\n\n\t&[checked] {\n\t\t&::before {\n\t\t\tbackground: hsl(126, 64%, 41%);\n\t\t\tborder-color: hsl(126, 64%, 41%);\n\t\t}\n\n\t\t&::after {\n\t\t\tborder-color: hsl(0, 0%, 100%);\n\t\t}\n\t}\n}\n\n/*\n * To-do list content styles.\n */\n.ck-content .todo-list {\n\tlist-style: none;\n\n\t& li {\n\t\tposition: relative;\n\t\tmargin-bottom: 5px;\n\n\t\t& .todo-list {\n\t\t\tmargin-top: 5px;\n\t\t}\n\t}\n\n\t& .todo-list__label {\n\t\t& > input {\n\t\t\t@mixin todo-list-checkbox;\n\t\t}\n\n\t\t& .todo-list__label__description {\n\t\t\tvertical-align: middle;\n\t\t}\n\n\t\t&.todo-list__label_without-description input[type=checkbox] {\n\t\t\tposition: absolute;\n\t\t}\n\t}\n}\n\n/*\n * To-do list editing view styles.\n */\n.ck-editor__editable.ck-content .todo-list .todo-list__label {\n\t/*\n\t * To-do list should be interactive only during the editing\n\t * (https://github.com/ckeditor/ckeditor5/issues/2090).\n\t */\n\t& > input,\n\t& > span[contenteditable=false] > input {\n\t\tcursor: pointer;\n\n\t\t&:hover::before {\n\t\t\tbox-shadow: 0 0 0 5px hsla(0, 0%, 0%, 0.1);\n\t\t}\n\t}\n\n\t/*\n\t * Document Lists - editing view has an additional span around checkbox.\n\t */\n\t& > span[contenteditable=false] > input {\n\t\t@mixin todo-list-checkbox;\n\t}\n\n\t&.todo-list__label_without-description {\n\t\t& input[type=checkbox] {\n\t\t\tposition: absolute;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},9409:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-mention-background:rgba(153,0,48,.1);--ck-color-mention-text:#990030}.ck-content .mention{background:var(--ck-color-mention-background);color:var(--ck-color-mention-text)}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-mention/mention.css"],names:[],mappings:"AAKA,MACC,+CAAwD,CACxD,+BACD,CAEA,qBACC,6CAA8C,CAC9C,kCACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-mention-background: hsla(341, 100%, 30%, 0.1);\n\t--ck-color-mention-text: hsl(341, 100%, 30%);\n}\n\n.ck-content .mention {\n\tbackground: var(--ck-color-mention-background);\n\tcolor: var(--ck-color-mention-text);\n}\n"],sourceRoot:""}]);const a=s},9055:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-mention-list-max-height:300px}.ck.ck-mentions{max-height:var(--ck-mention-list-max-height);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.ck.ck-mentions>.ck-list__item{flex-shrink:0;overflow:hidden}","",{version:3,sources:["webpack://./../ckeditor5-mention/theme/mentionui.css"],names:[],mappings:"AAKA,MACC,kCACD,CAEA,gBACC,4CAA6C,CAM7C,iBAAkB,CAJlB,eAAgB,CAMhB,2BAQD,CAJC,+BAEC,aAAc,CADd,eAED",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-mention-list-max-height: 300px;\n}\n\n.ck.ck-mentions {\n\tmax-height: var(--ck-mention-list-max-height);\n\n\toverflow-y: auto;\n\n\t/* Prevent unnecessary horizontal scrollbar in Safari\n\thttps://github.com/ckeditor/ckeditor5-mention/issues/41 */\n\toverflow-x: hidden;\n\n\toverscroll-behavior: contain;\n\n\t/* Prevent unnecessary vertical scrollbar in Safari\n\thttps://github.com/ckeditor/ckeditor5-mention/issues/41 */\n\t& > .ck-list__item {\n\t\toverflow: hidden;\n\t\tflex-shrink: 0;\n\t}\n}\n"],sourceRoot:""}]);const a=s},8868:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-character-grid{max-width:100%}.ck.ck-character-grid .ck-character-grid__tiles{display:grid}:root{--ck-character-grid-tile-size:24px}.ck.ck-character-grid{max-height:200px;overflow-x:hidden;overflow-y:auto;width:350px}@media screen and (max-width:600px){.ck.ck-character-grid{width:190px}}.ck.ck-character-grid .ck-character-grid__tiles{grid-template-columns:repeat(10,1fr);margin:var(--ck-spacing-standard) var(--ck-spacing-large);grid-gap:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-character-grid .ck-character-grid__tiles{grid-template-columns:repeat(5,1fr)}}.ck.ck-character-grid .ck-character-grid__tile{border:0;font-size:1.2em;height:var(--ck-character-grid-tile-size);min-height:var(--ck-character-grid-tile-size);min-width:var(--ck-character-grid-tile-size);padding:0;transition:box-shadow .2s ease;width:var(--ck-character-grid-tile-size)}@media (prefers-reduced-motion:reduce){.ck.ck-character-grid .ck-character-grid__tile{transition:none}}.ck.ck-character-grid .ck-character-grid__tile:focus:not(.ck-disabled),.ck.ck-character-grid .ck-character-grid__tile:hover:not(.ck-disabled){border:0;box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-focus-border)}.ck.ck-character-grid .ck-character-grid__tile .ck-button__label{line-height:var(--ck-character-grid-tile-size);text-align:center;width:100%}","",{version:3,sources:["webpack://./../ckeditor5-special-characters/theme/charactergrid.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-special-characters/charactergrid.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAKA,sBACC,cAKD,CAHC,gDACC,YACD,CCFD,MACC,kCACD,CAEA,sBAIC,gBAAiB,CAFjB,iBAAkB,CADlB,eAAgB,CAEhB,WA6CD,CCtDC,oCDMD,sBAOE,WAyCF,CCpDC,CDcA,gDACC,oCAAsC,CACtC,yDAA0D,CAC1D,mCAKD,CCxBA,oCDgBA,gDAME,mCAEF,CCtBA,CDwBA,+CAQC,QAAS,CAHT,eAAgB,CAHhB,yCAA0C,CAE1C,6CAA8C,CAD9C,4CAA6C,CAG7C,SAAU,CACV,8BAA+B,CAN/B,wCA0BD,CAjBC,uCAVD,+CAWE,eAgBF,CAfC,CAEA,8IAGC,QAAS,CACT,iGACD,CAGA,iEACC,8CAA+C,CAE/C,iBAAkB,CADlB,UAED",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-character-grid {\n\tmax-width: 100%;\n\n\t& .ck-character-grid__tiles {\n\t\tdisplay: grid;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n@import "../mixins/_rounded.css";\n\n:root {\n\t--ck-character-grid-tile-size: 24px;\n}\n\n.ck.ck-character-grid {\n\toverflow-y: auto;\n\toverflow-x: hidden;\n\twidth: 350px;\n\tmax-height: 200px;\n\n\t@mixin ck-media-phone {\n\t\twidth: 190px;\n\t}\n\n\t& .ck-character-grid__tiles {\n\t\tgrid-template-columns: repeat(10, 1fr);\n\t\tmargin: var(--ck-spacing-standard) var(--ck-spacing-large);\n\t\tgrid-gap: var(--ck-spacing-standard);\n\n\t\t@mixin ck-media-phone {\n\t\t\tgrid-template-columns: repeat(5, 1fr);\n\t\t}\n\t}\n\n\t& .ck-character-grid__tile {\n\t\twidth: var(--ck-character-grid-tile-size);\n\t\theight: var(--ck-character-grid-tile-size);\n\t\tmin-width: var(--ck-character-grid-tile-size);\n\t\tmin-height: var(--ck-character-grid-tile-size);\n\t\tfont-size: 1.2em;\n\t\tpadding: 0;\n\t\ttransition: .2s ease box-shadow;\n\t\tborder: 0;\n\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\ttransition: none;\n\t\t}\n\n\t\t&:focus:not( .ck-disabled ),\n\t\t&:hover:not( .ck-disabled ) {\n\t\t\t/* Disable the default .ck-button\'s border ring. */\n\t\t\tborder: 0;\n\t\t\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-focus-border);\n\t\t}\n\n\t\t/* Make sure the glyph is rendered in the center of the button */\n\t\t& .ck-button__label {\n\t\t\tline-height: var(--ck-character-grid-tile-size);\n\t\t\twidth: 100%;\n\t\t\ttext-align: center;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},128:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-character-info{border-top:1px solid var(--ck-color-base-border);display:flex;justify-content:space-between;padding:var(--ck-spacing-small) var(--ck-spacing-large)}.ck.ck-character-info>*{font-size:var(--ck-font-size-small);text-transform:uppercase}.ck.ck-character-info .ck-character-info__name{max-width:280px;overflow:hidden;text-overflow:ellipsis}.ck.ck-character-info .ck-character-info__code{opacity:.6}@media screen and (max-width:600px){.ck.ck-character-info{max-width:190px}}","",{version:3,sources:["webpack://./../ckeditor5-special-characters/theme/characterinfo.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-special-characters/characterinfo.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAKA,sBCIC,gDAAiD,CDHjD,YAAa,CACb,6BAA8B,CCC9B,uDDAD,CCGC,wBAEC,mCAAoC,CADpC,wBAED,CAEA,+CACC,eAAgB,CAEhB,eAAgB,CADhB,sBAED,CAEA,+CACC,UACD,CClBA,oCDCD,sBAoBE,eAEF,CCrBC",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-character-info {\n\tdisplay: flex;\n\tjustify-content: space-between;\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-character-info {\n\tpadding: var(--ck-spacing-small) var(--ck-spacing-large);\n\tborder-top: 1px solid var(--ck-color-base-border);\n\n\t& > * {\n\t\ttext-transform: uppercase;\n\t\tfont-size: var(--ck-font-size-small);\n\t}\n\n\t& .ck-character-info__name {\n\t\tmax-width: 280px;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t}\n\n\t& .ck-character-info__code {\n\t\topacity: .6;\n\t}\n\n\t@mixin ck-media-phone {\n\t\tmax-width: 190px;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},4272:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-special-characters-navigation>.ck-label{max-width:160px;overflow:hidden;text-overflow:ellipsis}.ck.ck-special-characters-navigation>.ck-dropdown .ck-dropdown__panel{max-height:250px;overflow-x:hidden;overflow-y:auto}@media screen and (max-width:600px){.ck.ck-special-characters-navigation{max-width:190px}.ck.ck-special-characters-navigation>.ck-form__header__label{overflow:hidden;text-overflow:ellipsis}}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-special-characters/specialcharacters.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAUC,+CACC,eAAgB,CAEhB,eAAgB,CADhB,sBAED,CAEA,sEAEC,gBAAiB,CAEjB,iBAAkB,CADlB,eAED,CCfA,oCDED,qCAgBE,eAOF,CALE,6DAEC,eAAgB,CADhB,sBAED,CCrBD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-special-characters-navigation {\n\n\t& > .ck-label {\n\t\tmax-width: 160px;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t}\n\n\t& > .ck-dropdown .ck-dropdown__panel {\n\t\t/* There could be dozens of categories available. Use scroll to prevent a 10e6px dropdown. */\n\t\tmax-height: 250px;\n\t\toverflow-y: auto;\n\t\toverflow-x: hidden;\n\t}\n\n\t@mixin ck-media-phone {\n\t\tmax-width: 190px;\n\n\t\t& > .ck-form__header__label {\n\t\t\ttext-overflow: ellipsis;\n\t\t\toverflow: hidden;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},5506:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-input-color{display:flex;flex-direction:row-reverse;width:100%}.ck.ck-input-color>input.ck.ck-input-text{flex-grow:1;min-width:auto}.ck.ck-input-color>div.ck.ck-dropdown{min-width:auto}.ck.ck-input-color>div.ck.ck-dropdown>.ck-input-color__button .ck-dropdown__arrow{display:none}.ck.ck-input-color .ck.ck-input-color__button{display:flex}.ck.ck-input-color .ck.ck-input-color__button .ck.ck-input-color__button__preview{overflow:hidden;position:relative}.ck.ck-input-color .ck.ck-input-color__button .ck.ck-input-color__button__preview>.ck.ck-input-color__button__preview__no-color-indicator{display:block;position:absolute}[dir=ltr] .ck.ck-input-color>.ck.ck-input-text{border-bottom-right-radius:0;border-top-right-radius:0}[dir=rtl] .ck.ck-input-color>.ck.ck-input-text{border-bottom-left-radius:0;border-top-left-radius:0}.ck.ck-input-color>.ck.ck-input-text:focus{z-index:0}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button{padding:0}[dir=ltr] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button{border-bottom-left-radius:0;border-top-left-radius:0}[dir=ltr] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button:not(:focus){border-left:1px solid transparent}[dir=rtl] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button{border-bottom-right-radius:0;border-top-right-radius:0}[dir=rtl] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button:not(:focus){border-right:1px solid transparent}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button.ck-disabled{background:var(--ck-color-input-disabled-background)}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview{border-radius:0}.ck-rounded-corners .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview,.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview{border:1px solid var(--ck-color-input-border);height:20px;width:20px}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview>.ck.ck-input-color__button__preview__no-color-indicator{background:red;border-radius:2px;height:150%;left:50%;top:-30%;transform:rotate(45deg);transform-origin:50%;width:8%}.ck.ck-input-color .ck.ck-input-color__remove-color{border-bottom-left-radius:0;border-bottom-right-radius:0;padding:calc(var(--ck-spacing-standard)/2) var(--ck-spacing-standard);width:100%}.ck.ck-input-color .ck.ck-input-color__remove-color:not(:focus){border-bottom:1px solid var(--ck-color-input-border)}[dir=ltr] .ck.ck-input-color .ck.ck-input-color__remove-color{border-top-right-radius:0}[dir=rtl] .ck.ck-input-color .ck.ck-input-color__remove-color{border-top-left-radius:0}.ck.ck-input-color .ck.ck-input-color__remove-color .ck.ck-icon{margin-right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-input-color .ck.ck-input-color__remove-color .ck.ck-icon{margin-left:var(--ck-spacing-standard);margin-right:0}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/colorinput.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/colorinput.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAKA,mBAEC,YAAa,CACb,0BAA2B,CAF3B,UAgCD,CA5BC,0CAEC,WAAY,CADZ,cAED,CAEA,sCACC,cAMD,CAHC,kFACC,YACD,CAGD,8CAEC,YAWD,CATC,kFAEC,eAAgB,CADhB,iBAOD,CAJC,0IAEC,aAAc,CADd,iBAED,CC1BF,+CAGE,4BAA6B,CAD7B,yBAcF,CAhBA,+CAQE,2BAA4B,CAD5B,wBASF,CAHC,2CACC,SACD,CAIA,wEACC,SA0CD,CA3CA,kFAKE,2BAA4B,CAD5B,wBAuCF,CApCE,8FACC,iCACD,CATF,kFAcE,4BAA6B,CAD7B,yBA8BF,CA3BE,8FACC,kCACD,CAGD,oFACC,oDACD,CAEA,4GC1CF,eD2DE,CAjBA,+PCtCD,qCDuDC,CAjBA,4GAKC,6CAA8C,CAD9C,WAAY,CADZ,UAcD,CAVC,oKAKC,cAA6B,CAC7B,iBAAkB,CAHlB,WAAY,CADZ,QAAS,CADT,QAAS,CAMT,uBAAwB,CACxB,oBAAqB,CAJrB,QAKD,CAKH,oDAIC,2BAA4B,CAC5B,4BAA6B,CAH7B,qEAAwE,CADxE,UA0BD,CApBC,gEACC,oDACD,CATD,8DAYE,yBAeF,CA3BA,8DAgBE,wBAWF,CARC,gEACC,uCAMD,CAPA,0EAKE,sCAAuC,CADvC,cAGF",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-input-color {\n\twidth: 100%;\n\tdisplay: flex;\n\tflex-direction: row-reverse;\n\n\t& > input.ck.ck-input-text {\n\t\tmin-width: auto;\n\t\tflex-grow: 1;\n\t}\n\n\t& > div.ck.ck-dropdown {\n\t\tmin-width: auto;\n\n\t\t/* This dropdown has no arrow but a color preview instead. */\n\t\t& > .ck-input-color__button .ck-dropdown__arrow {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t& .ck.ck-input-color__button {\n\t\t/* Resolving issue with misaligned buttons on Safari (see #10589) */\n\t\tdisplay: flex;\n\n\t\t& .ck.ck-input-color__button__preview {\n\t\t\tposition: relative;\n\t\t\toverflow: hidden;\n\n\t\t\t& > .ck.ck-input-color__button__preview__no-color-indicator {\n\t\t\t\tposition: absolute;\n\t\t\t\tdisplay: block;\n\t\t\t}\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n@import "../mixins/_rounded.css";\n\n.ck.ck-input-color {\n\t& > .ck.ck-input-text {\n\t\t@mixin ck-dir ltr {\n\t\t\tborder-top-right-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\tborder-top-left-radius: 0;\n\t\t\tborder-bottom-left-radius: 0;\n\t\t}\n\n\t\t/* Make sure the focused input is always on top of the dropdown button so its\n\t\t outline and border are never cropped (also when the input is read-only). */\n\t\t&:focus {\n\t\t\tz-index: 0;\n\t\t}\n\t}\n\n\t& > .ck.ck-dropdown {\n\t\t& > .ck.ck-button.ck-input-color__button {\n\t\t\tpadding: 0;\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tborder-top-left-radius: 0;\n\t\t\t\tborder-bottom-left-radius: 0;\n\n\t\t\t\t&:not(:focus) {\n\t\t\t\t\tborder-left: 1px solid transparent;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tborder-top-right-radius: 0;\n\t\t\t\tborder-bottom-right-radius: 0;\n\n\t\t\t\t&:not(:focus) {\n\t\t\t\t\tborder-right: 1px solid transparent;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&.ck-disabled {\n\t\t\t\tbackground: var(--ck-color-input-disabled-background);\n\t\t\t}\n\n\t\t\t& > .ck.ck-input-color__button__preview {\n\t\t\t\t@mixin ck-rounded-corners;\n\n\t\t\t\twidth: 20px;\n\t\t\t\theight: 20px;\n\t\t\t\tborder: 1px solid var(--ck-color-input-border);\n\n\t\t\t\t& > .ck.ck-input-color__button__preview__no-color-indicator {\n\t\t\t\t\ttop: -30%;\n\t\t\t\t\tleft: 50%;\n\t\t\t\t\theight: 150%;\n\t\t\t\t\twidth: 8%;\n\t\t\t\t\tbackground: hsl(0, 100%, 50%);\n\t\t\t\t\tborder-radius: 2px;\n\t\t\t\t\ttransform: rotate(45deg);\n\t\t\t\t\ttransform-origin: 50%;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t& .ck.ck-input-color__remove-color {\n\t\twidth: 100%;\n\t\tpadding: calc(var(--ck-spacing-standard) / 2) var(--ck-spacing-standard);\n\n\t\tborder-bottom-left-radius: 0;\n\t\tborder-bottom-right-radius: 0;\n\n\t\t&:not(:focus) {\n\t\t\tborder-bottom: 1px solid var(--ck-color-input-border);\n\t\t}\n\n\t\t@mixin ck-dir ltr {\n\t\t\tborder-top-right-radius: 0;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\tborder-top-left-radius: 0;\n\t\t}\n\n\t\t& .ck.ck-icon {\n\t\t\tmargin-right: var(--ck-spacing-standard);\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-right: 0;\n\t\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},4043:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-form{padding:0 0 var(--ck-spacing-large)}.ck.ck-form:focus{outline:none}.ck.ck-form .ck.ck-input-text{min-width:100%;width:0}.ck.ck-form .ck.ck-dropdown{min-width:100%}.ck.ck-form .ck.ck-dropdown .ck-dropdown__button:not(:focus){border:1px solid var(--ck-color-base-border)}.ck.ck-form .ck.ck-dropdown .ck-dropdown__button .ck-button__label{width:100%}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/form.css"],names:[],mappings:"AAKA,YACC,mCAyBD,CAvBC,kBAEC,YACD,CAEA,8BACC,cAAe,CACf,OACD,CAEA,4BACC,cAWD,CARE,6DACC,4CACD,CAEA,mEACC,UACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-form {\n\tpadding: 0 0 var(--ck-spacing-large);\n\n\t&:focus {\n\t\t/* See: https://github.com/ckeditor/ckeditor5/issues/4773 */\n\t\toutline: none;\n\t}\n\n\t& .ck.ck-input-text {\n\t\tmin-width: 100%;\n\t\twidth: 0;\n\t}\n\n\t& .ck.ck-dropdown {\n\t\tmin-width: 100%;\n\n\t\t& .ck-dropdown__button {\n\t\t\t&:not(:focus) {\n\t\t\t\tborder: 1px solid var(--ck-color-base-border);\n\t\t\t}\n\n\t\t\t& .ck-button__label {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},2655:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-form__row{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between}.ck.ck-form__row>:not(.ck-label){flex-grow:1}.ck.ck-form__row.ck-table-form__action-row .ck-button-cancel,.ck.ck-form__row.ck-table-form__action-row .ck-button-save{justify-content:center}.ck.ck-form__row{padding:var(--ck-spacing-standard) var(--ck-spacing-large) 0}[dir=ltr] .ck.ck-form__row>:not(.ck-label)+*{margin-left:var(--ck-spacing-large)}[dir=rtl] .ck.ck-form__row>:not(.ck-label)+*{margin-right:var(--ck-spacing-large)}.ck.ck-form__row>.ck-label{min-width:100%;width:100%}.ck.ck-form__row.ck-table-form__action-row{margin-top:var(--ck-spacing-large)}.ck.ck-form__row.ck-table-form__action-row .ck-button .ck-button__label{color:var(--ck-color-text)}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/formrow.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/formrow.css"],names:[],mappings:"AAKA,iBACC,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CACjB,6BAaD,CAVC,iCACC,WACD,CAGC,wHAEC,sBACD,CCbF,iBACC,4DA2BD,CAvBE,6CAEE,mCAMF,CARA,6CAME,oCAEF,CAGD,2BAEC,cAAe,CADf,UAED,CAEA,2CACC,kCAKD,CAHC,wEACC,0BACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-form__row {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\tjustify-content: space-between;\n\n\t/* Ignore labels that work as fieldset legends */\n\t& > *:not(.ck-label) {\n\t\tflex-grow: 1;\n\t}\n\n\t&.ck-table-form__action-row {\n\t\t& .ck-button-save,\n\t\t& .ck-button-cancel {\n\t\t\tjustify-content: center;\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-form__row {\n\tpadding: var(--ck-spacing-standard) var(--ck-spacing-large) 0;\n\n\t/* Ignore labels that work as fieldset legends */\n\t& > *:not(.ck-label) {\n\t\t& + * {\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: var(--ck-spacing-large);\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-right: var(--ck-spacing-large);\n\t\t\t}\n\t\t}\n\t}\n\n\t& > .ck-label {\n\t\twidth: 100%;\n\t\tmin-width: 100%;\n\t}\n\n\t&.ck-table-form__action-row {\n\t\tmargin-top: var(--ck-spacing-large);\n\n\t\t& .ck-button .ck-button__label {\n\t\t\tcolor: var(--ck-color-text);\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},5032:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck .ck-insert-table-dropdown__grid{display:flex;flex-direction:row;flex-wrap:wrap}:root{--ck-insert-table-dropdown-padding:10px;--ck-insert-table-dropdown-box-height:11px;--ck-insert-table-dropdown-box-width:12px;--ck-insert-table-dropdown-box-margin:1px}.ck .ck-insert-table-dropdown__grid{padding:var(--ck-insert-table-dropdown-padding) var(--ck-insert-table-dropdown-padding) 0;width:calc(var(--ck-insert-table-dropdown-box-width)*10 + var(--ck-insert-table-dropdown-box-margin)*20 + var(--ck-insert-table-dropdown-padding)*2)}.ck .ck-insert-table-dropdown__label,.ck[dir=rtl] .ck-insert-table-dropdown__label{text-align:center}.ck .ck-insert-table-dropdown-grid-box{border:1px solid var(--ck-color-base-border);border-radius:1px;margin:var(--ck-insert-table-dropdown-box-margin);min-height:var(--ck-insert-table-dropdown-box-height);min-width:var(--ck-insert-table-dropdown-box-width);outline:none;transition:none}@media (prefers-reduced-motion:reduce){.ck .ck-insert-table-dropdown-grid-box{transition:none}}.ck .ck-insert-table-dropdown-grid-box:focus{box-shadow:none}.ck .ck-insert-table-dropdown-grid-box.ck-on{background:var(--ck-color-focus-outer-shadow);border-color:var(--ck-color-focus-border)}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/inserttable.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/inserttable.css"],names:[],mappings:"AAKA,oCACC,YAAa,CACb,kBAAmB,CACnB,cACD,CCJA,MACC,uCAAwC,CACxC,0CAA2C,CAC3C,yCAA0C,CAC1C,yCACD,CAEA,oCAGC,yFAA0F,CAD1F,oJAED,CAEA,mFAEC,iBACD,CAEA,uCAIC,4CAA6C,CAC7C,iBAAkB,CAFlB,iDAAkD,CADlD,qDAAsD,CADtD,mDAAoD,CAKpD,YAAa,CACb,eAcD,CAZC,uCATD,uCAUE,eAWF,CAVC,CAEA,6CACC,eACD,CAEA,6CAEC,6CAA8C,CAD9C,yCAED",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-insert-table-dropdown__grid {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: wrap;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-insert-table-dropdown-padding: 10px;\n\t--ck-insert-table-dropdown-box-height: 11px;\n\t--ck-insert-table-dropdown-box-width: 12px;\n\t--ck-insert-table-dropdown-box-margin: 1px;\n}\n\n.ck .ck-insert-table-dropdown__grid {\n\t/* The width of a container should match 10 items in a row so there will be a 10x10 grid. */\n\twidth: calc(var(--ck-insert-table-dropdown-box-width) * 10 + var(--ck-insert-table-dropdown-box-margin) * 20 + var(--ck-insert-table-dropdown-padding) * 2);\n\tpadding: var(--ck-insert-table-dropdown-padding) var(--ck-insert-table-dropdown-padding) 0;\n}\n\n.ck .ck-insert-table-dropdown__label,\n.ck[dir=rtl] .ck-insert-table-dropdown__label {\n\ttext-align: center;\n}\n\n.ck .ck-insert-table-dropdown-grid-box {\n\tmin-width: var(--ck-insert-table-dropdown-box-width);\n\tmin-height: var(--ck-insert-table-dropdown-box-height);\n\tmargin: var(--ck-insert-table-dropdown-box-margin);\n\tborder: 1px solid var(--ck-color-base-border);\n\tborder-radius: 1px;\n\toutline: none;\n\ttransition: none;\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\ttransition: none;\n\t}\n\n\t&:focus {\n\t\tbox-shadow: none;\n\t}\n\n\t&.ck-on {\n\t\tborder-color: var(--ck-color-focus-border);\n\t\tbackground: var(--ck-color-focus-outer-shadow);\n\t}\n}\n\n"],sourceRoot:""}]);const a=s},2329:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content .table{display:table;margin:.9em auto}.ck-content .table table{border:1px double #b3b3b3;border-collapse:collapse;border-spacing:0;height:100%;width:100%}.ck-content .table table td,.ck-content .table table th{border:1px solid #bfbfbf;min-width:2em;padding:.4em}.ck-content .table table th{background:rgba(0,0,0,.05);font-weight:700}.ck-content[dir=rtl] .table th{text-align:right}.ck-content[dir=ltr] .table th{text-align:left}.ck-editor__editable .ck-table-bogus-paragraph{display:inline-block;width:100%}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/table.css"],names:[],mappings:"AAKA,mBAKC,aAAc,CADd,gBAiCD,CA9BC,yBAYC,yBAAkC,CAVlC,wBAAyB,CACzB,gBAAiB,CAKjB,WAAY,CADZ,UAsBD,CAfC,wDAQC,wBAAiC,CANjC,aAAc,CACd,YAMD,CAEA,4BAEC,0BAA+B,CAD/B,eAED,CAMF,+BACC,gBACD,CAEA,+BACC,eACD,CAEA,+CAKC,oBAAqB,CAMrB,UACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content .table {\n\t/* Give the table widget some air and center it horizontally */\n\t/* The first value should be equal to --ck-spacing-large variable if used in the editor context\n\tto avoid the content jumping (See https://github.com/ckeditor/ckeditor5/issues/9825). */\n\tmargin: 0.9em auto;\n\tdisplay: table;\n\n\t& table {\n\t\t/* The table cells should have slight borders */\n\t\tborder-collapse: collapse;\n\t\tborder-spacing: 0;\n\n\t\t/* Table width and height are set on the parent
    . Make sure the table inside stretches\n\t\tto the full dimensions of the container (https://github.com/ckeditor/ckeditor5/issues/6186). */\n\t\twidth: 100%;\n\t\theight: 100%;\n\n\t\t/* The outer border of the table should be slightly darker than the inner lines.\n\t\tAlso see https://github.com/ckeditor/ckeditor5-table/issues/50. */\n\t\tborder: 1px double hsl(0, 0%, 70%);\n\n\t\t& td,\n\t\t& th {\n\t\t\tmin-width: 2em;\n\t\t\tpadding: .4em;\n\n\t\t\t/* The border is inherited from .ck-editor__nested-editable styles, so theoretically it\'s not necessary here.\n\t\t\tHowever, the border is a content style, so it should use .ck-content (so it works outside the editor).\n\t\t\tHence, the duplication. See https://github.com/ckeditor/ckeditor5/issues/6314 */\n\t\t\tborder: 1px solid hsl(0, 0%, 75%);\n\t\t}\n\n\t\t& th {\n\t\t\tfont-weight: bold;\n\t\t\tbackground: hsla(0, 0%, 0%, 5%);\n\t\t}\n\t}\n}\n\n/* Text alignment of the table header should match the editor settings and override the native browser styling,\nwhen content is available outside the editor. See https://github.com/ckeditor/ckeditor5/issues/6638 */\n.ck-content[dir="rtl"] .table th {\n\ttext-align: right;\n}\n\n.ck-content[dir="ltr"] .table th {\n\ttext-align: left;\n}\n\n.ck-editor__editable .ck-table-bogus-paragraph {\n\t/*\n\t * Use display:inline-block to force Chrome/Safari to limit text mutations to this element.\n\t * See https://github.com/ckeditor/ckeditor5/issues/6062.\n\t */\n\tdisplay: inline-block;\n\n\t/*\n\t * Inline HTML elements nested in the span should always be dimensioned in relation to the whole cell width.\n\t * See https://github.com/ckeditor/ckeditor5/issues/9117.\n\t */\n\twidth: 100%;\n}\n'],sourceRoot:""}]);const a=s},4143:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-selector-caption-background:#f7f7f7;--ck-color-selector-caption-text:#333;--ck-color-selector-caption-highlighted-background:#fd0}.ck-content .table>figcaption{background-color:var(--ck-color-selector-caption-background);caption-side:top;color:var(--ck-color-selector-caption-text);display:table-caption;font-size:.75em;outline-offset:-1px;padding:.6em;text-align:center;word-break:break-word}@media (forced-colors:active){.ck-content .table>figcaption{background-color:unset;color:unset}}@media (forced-colors:none){.ck.ck-editor__editable .table>figcaption.table__caption_highlighted{animation:ck-table-caption-highlight .6s ease-out}}.ck.ck-editor__editable .table>figcaption.ck-placeholder:before{overflow:hidden;padding-left:inherit;padding-right:inherit;text-overflow:ellipsis;white-space:nowrap}@keyframes ck-table-caption-highlight{0%{background-color:var(--ck-color-selector-caption-highlighted-background)}to{background-color:var(--ck-color-selector-caption-background)}}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/tablecaption.css","webpack://./../ckeditor5-ui/theme/mixins/_mediacolors.css"],names:[],mappings:"AAOA,MACC,8CAAuD,CACvD,qCAAiD,CACjD,uDACD,CAGA,8BAMC,4DAA6D,CAJ7D,gBAAiB,CAGjB,2CAA4C,CAJ5C,qBAAsB,CAOtB,eAAgB,CAChB,mBAAoB,CAFpB,YAAa,CAHb,iBAAkB,CADlB,qBAaD,CCxBC,8BACC,8BDoBA,sBAAuB,CACvB,WCnBA,CACD,CAIA,4BDqBC,qEACC,iDACD,CCnBD,CDsBA,gEASC,eAAgB,CARhB,oBAAqB,CACrB,qBAAsB,CAQtB,sBAAuB,CAFvB,kBAGD,CAGD,sCACC,GACC,wEACD,CAEA,GACC,4DACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_mediacolors.css";\n\n:root {\n\t--ck-color-selector-caption-background: hsl(0, 0%, 97%);\n\t--ck-color-selector-caption-text: hsl(0, 0%, 20%);\n\t--ck-color-selector-caption-highlighted-background: hsl(52deg 100% 50%);\n}\n\n/* Content styles */\n.ck-content .table > figcaption {\n\tdisplay: table-caption;\n\tcaption-side: top;\n\tword-break: break-word;\n\ttext-align: center;\n\tcolor: var(--ck-color-selector-caption-text);\n\tbackground-color: var(--ck-color-selector-caption-background);\n\tpadding: .6em;\n\tfont-size: .75em;\n\toutline-offset: -1px;\n\n\t/* Improve placeholder rendering in high-constrast mode (https://github.com/ckeditor/ckeditor5/issues/14907). */\n\t@mixin ck-media-forced-colors {\n\t\tbackground-color: unset;\n\t\tcolor: unset;\n\t}\n}\n\n/* Editing styles */\n.ck.ck-editor__editable .table > figcaption {\n\t@mixin ck-media-default-colors {\n\t\t&.table__caption_highlighted {\n\t\t\tanimation: ck-table-caption-highlight .6s ease-out;\n\t\t}\n\t}\n\n\t&.ck-placeholder::before {\n\t\tpadding-left: inherit;\n\t\tpadding-right: inherit;\n\n\t\t/*\n\t\t * Make sure the table caption placeholder doesn\'t overflow the placeholder area.\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/9162.\n\t\t */\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n\n@keyframes ck-table-caption-highlight {\n\t0% {\n\t\tbackground-color: var(--ck-color-selector-caption-highlighted-background);\n\t}\n\n\t100% {\n\t\tbackground-color: var(--ck-color-selector-caption-background);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-forced-colors {\n\t@media (forced-colors: active) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n\n@define-mixin ck-media-default-colors {\n\t@media (forced-colors: none) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},8986:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row{flex-wrap:wrap}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar:first-of-type{flex-grow:0.57}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar:last-of-type{flex-grow:0.43}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar .ck-button{flex-grow:1}.ck.ck-table-cell-properties-form{width:320px}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__padding-row{align-self:flex-end;padding:0;width:25%}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar{background:none;margin-top:var(--ck-spacing-standard)}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/tablecellproperties.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/tablecellproperties.css"],names:[],mappings:"AAOE,6FACC,cAiBD,CAdE,0HAEC,cACD,CAEA,yHAEC,cACD,CAEA,uHACC,WACD,CClBJ,kCACC,WAkBD,CAfE,2FACC,mBAAoB,CACpB,SAAU,CACV,SACD,CAGC,4GACC,eAAgB,CAGhB,qCACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-table-cell-properties-form {\n\t& .ck-form__row {\n\t\t&.ck-table-cell-properties-form__alignment-row {\n\t\t\tflex-wrap: wrap;\n\n\t\t\t& .ck.ck-toolbar {\n\t\t\t\t&:first-of-type {\n\t\t\t\t\t/* 4 buttons out of 7 (h-alignment + v-alignment) = 0.57 */\n\t\t\t\t\tflex-grow: 0.57;\n\t\t\t\t}\n\n\t\t\t\t&:last-of-type {\n\t\t\t\t\t/* 3 buttons out of 7 (h-alignment + v-alignment) = 0.43 */\n\t\t\t\t\tflex-grow: 0.43;\n\t\t\t\t}\n\n\t\t\t\t& .ck-button {\n\t\t\t\t\tflex-grow: 1;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-table-cell-properties-form {\n\twidth: 320px;\n\n\t& .ck-form__row {\n\t\t&.ck-table-cell-properties-form__padding-row {\n\t\t\talign-self: flex-end;\n\t\t\tpadding: 0;\n\t\t\twidth: 25%;\n\t\t}\n\n\t\t&.ck-table-cell-properties-form__alignment-row {\n\t\t\t& .ck.ck-toolbar {\n\t\t\t\tbackground: none;\n\n\t\t\t\t/* Compensate for missing input label that would push the margin (toolbar has no inputs). */\n\t\t\t\tmargin-top: var(--ck-spacing-standard);\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},8795:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-selector-column-resizer-hover:var(--ck-color-base-active);--ck-table-column-resizer-width:7px;--ck-table-column-resizer-position-offset:calc(var(--ck-table-column-resizer-width)*-0.5 - 0.5px)}.ck-content .table .ck-table-resized{table-layout:fixed}.ck-content .table table{overflow:hidden}.ck-content .table td,.ck-content .table th{overflow-wrap:break-word;position:relative}.ck.ck-editor__editable .table .ck-table-column-resizer{bottom:0;cursor:col-resize;position:absolute;right:var(--ck-table-column-resizer-position-offset);top:0;user-select:none;width:var(--ck-table-column-resizer-width);z-index:var(--ck-z-default)}.ck.ck-editor__editable .table[draggable] .ck-table-column-resizer,.ck.ck-editor__editable.ck-column-resize_disabled .table .ck-table-column-resizer{display:none}.ck.ck-editor__editable .table .ck-table-column-resizer:hover,.ck.ck-editor__editable .table .ck-table-column-resizer__active{background-color:var(--ck-color-selector-column-resizer-hover);bottom:-999999px;opacity:.25;top:-999999px}.ck.ck-editor__editable[dir=rtl] .table .ck-table-column-resizer{left:var(--ck-table-column-resizer-position-offset);right:unset}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/tablecolumnresize.css"],names:[],mappings:"AAKA,MACC,oEAAqE,CACrE,mCAAoC,CAIpC,iGACD,CAEA,qCACC,kBACD,CAEA,yBACC,eACD,CAEA,4CAIC,wBAAyB,CACzB,iBACD,CAEA,wDAGC,QAAS,CAGT,iBAAkB,CALlB,iBAAkB,CAGlB,oDAAqD,CAFrD,KAAM,CAKN,gBAAiB,CAFjB,0CAA2C,CAG3C,2BACD,CAQA,qJACC,YACD,CAEA,8HAEC,8DAA+D,CAO/D,gBAAiB,CANjB,WAAa,CAKb,aAED,CAEA,iEACC,mDAAoD,CACpD,WACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-selector-column-resizer-hover: var(--ck-color-base-active);\n\t--ck-table-column-resizer-width: 7px;\n\n\t/* The offset used for absolute positioning of the resizer element, so that it is placed exactly above the cell border.\n\t The value is: minus half the width of the resizer decreased additionaly by the half the width of the border (0.5px). */\n\t--ck-table-column-resizer-position-offset: calc(var(--ck-table-column-resizer-width) * -0.5 - 0.5px);\n}\n\n.ck-content .table .ck-table-resized {\n\ttable-layout: fixed;\n}\n\n.ck-content .table table {\n\toverflow: hidden;\n}\n\n.ck-content .table td,\n.ck-content .table th {\n\t/* To prevent text overflowing beyond its cell when columns are resized by resize handler\n\t(https://github.com/ckeditor/ckeditor5/pull/14379#issuecomment-1589460978). */\n\toverflow-wrap: break-word;\n\tposition: relative;\n}\n\n.ck.ck-editor__editable .table .ck-table-column-resizer {\n\tposition: absolute;\n\ttop: 0;\n\tbottom: 0;\n\tright: var(--ck-table-column-resizer-position-offset);\n\twidth: var(--ck-table-column-resizer-width);\n\tcursor: col-resize;\n\tuser-select: none;\n\tz-index: var(--ck-z-default);\n}\n\n.ck.ck-editor__editable.ck-column-resize_disabled .table .ck-table-column-resizer {\n\tdisplay: none;\n}\n\n/* The resizer elements, which are extended to an extremely high height, break the drag & drop feature in Chrome. To make it work again,\n all resizers must be hidden while the table is dragged. */\n.ck.ck-editor__editable .table[draggable] .ck-table-column-resizer {\n\tdisplay: none;\n}\n\n.ck.ck-editor__editable .table .ck-table-column-resizer:hover,\n.ck.ck-editor__editable .table .ck-table-column-resizer__active {\n\tbackground-color: var(--ck-color-selector-column-resizer-hover);\n\topacity: 0.25;\n\t/* The resizer element resides in each cell so to occupy the entire height of the table, which is unknown from a CSS point of view,\n\t it is extended to an extremely high height. Even for screens with a very high pixel density, the resizer will fulfill its role as\n\t it should, i.e. for a screen of 476 ppi the total height of the resizer will take over 350 sheets of A4 format, which is totally\n\t unrealistic height for a single table. */\n\ttop: -999999px;\n\tbottom: -999999px;\n}\n\n.ck.ck-editor__editable[dir=rtl] .table .ck-table-column-resizer {\n\tleft: var(--ck-table-column-resizer-position-offset);\n\tright: unset;\n}\n"],sourceRoot:""}]);const a=s},8137:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-selector-focused-cell-background:rgba(158,201,250,.3)}.ck-widget.table td.ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck-widget.table td.ck-editor__nested-editable:focus,.ck-widget.table th.ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck-widget.table th.ck-editor__nested-editable:focus{background:var(--ck-color-selector-focused-cell-background);border-style:none;outline:1px solid var(--ck-color-focus-border);outline-offset:-1px}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/tableediting.css"],names:[],mappings:"AAKA,MACC,gEACD,CAKE,8QAGC,2DAA4D,CAK5D,iBAAkB,CAClB,8CAA+C,CAC/C,mBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-selector-focused-cell-background: hsla(212, 90%, 80%, .3);\n}\n\n.ck-widget.table {\n\t& td,\n\t& th {\n\t\t&.ck-editor__nested-editable.ck-editor__nested-editable_focused,\n\t\t&.ck-editor__nested-editable:focus {\n\t\t\t/* A very slight background to highlight the focused cell */\n\t\t\tbackground: var(--ck-color-selector-focused-cell-background);\n\n\t\t\t/* Fixes the problem where surrounding cells cover the focused cell's border.\n\t\t\tIt does not fix the problem in all places but the UX is improved.\n\t\t\tSee https://github.com/ckeditor/ckeditor5-table/issues/29. */\n\t\t\tborder-style: none;\n\t\t\toutline: 1px solid var(--ck-color-focus-border);\n\t\t\toutline-offset: -1px; /* progressive enhancement - no IE support */\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},1623:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck.ck-table-form .ck-form__row.ck-table-form__background-row,.ck.ck-table-form .ck-form__row.ck-table-form__border-row{flex-wrap:wrap}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row{align-items:center;flex-wrap:wrap}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-labeled-field-view{align-items:center;display:flex;flex-direction:column-reverse}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-labeled-field-view .ck.ck-dropdown,.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimension-operator{flex-grow:0}.ck.ck-table-form .ck.ck-labeled-field-view{position:relative}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{bottom:calc(var(--ck-table-properties-error-arrow-size)*-1);left:50%;position:absolute;transform:translate(-50%,100%);z-index:1}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status:after{content:"";left:50%;position:absolute;top:calc(var(--ck-table-properties-error-arrow-size)*-1);transform:translateX(-50%)}:root{--ck-table-properties-error-arrow-size:6px;--ck-table-properties-min-error-width:150px}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-labeled-field-view>.ck-label{font-size:var(--ck-font-size-tiny);text-align:center}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-style,.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-width{max-width:80px;min-width:80px;width:80px}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row{padding:0}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__height,.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__width{margin:0}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimension-operator{align-self:flex-end;display:inline-block;height:var(--ck-ui-component-min-height);line-height:var(--ck-ui-component-min-height);margin:0 var(--ck-spacing-small)}.ck.ck-table-form .ck.ck-labeled-field-view{padding-top:var(--ck-spacing-standard)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{border-radius:0}.ck-rounded-corners .ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status,.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{background:var(--ck-color-base-error);color:var(--ck-color-base-background);min-width:var(--ck-table-properties-min-error-width);padding:var(--ck-spacing-small) var(--ck-spacing-medium);text-align:center}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status:after{border-color:transparent transparent var(--ck-color-base-error) transparent;border-style:solid;border-width:0 var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{animation:ck-table-form-labeled-view-status-appear .15s ease both}@media (prefers-reduced-motion:reduce){.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{animation:none}}.ck.ck-table-form .ck.ck-labeled-field-view .ck-input.ck-error:not(:focus)+.ck.ck-labeled-field-view__status{display:none}@keyframes ck-table-form-labeled-view-status-appear{0%{opacity:0}to{opacity:1}}',"",{version:3,sources:["webpack://./../ckeditor5-table/theme/tableform.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/tableform.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAWE,wHACC,cACD,CAEA,8DAEC,kBAAmB,CADnB,cAgBD,CAbC,qFAGC,kBAAmB,CAFnB,YAAa,CACb,6BAMD,CAEA,sMACC,WACD,CAIF,4CAEC,iBAoBD,CAlBC,8EAGC,2DAAgE,CADhE,QAAS,CADT,iBAAkB,CAGlB,8BAA+B,CAG/B,SAUD,CAPC,oFACC,UAAW,CAGX,QAAS,CAFT,iBAAkB,CAClB,wDAA6D,CAE7D,0BACD,CChDH,MACC,0CAA2C,CAC3C,2CACD,CAMI,2FACC,kCAAmC,CACnC,iBACD,CAGD,8KAIC,cAAe,CADf,cAAe,CADf,UAGD,CAGD,8DACC,SAcD,CAZC,yMAEC,QACD,CAEA,iGACC,mBAAoB,CACpB,oBAAqB,CACrB,wCAAyC,CACzC,6CAA8C,CAC9C,gCACD,CAIF,4CACC,sCA6BD,CA3BC,8ECxCD,eD6DC,CArBA,mMCpCA,qCDyDA,CArBA,8EAGC,qCAAsC,CACtC,qCAAsC,CAEtC,oDAAqD,CADrD,wDAAyD,CAEzD,iBAcD,CAXC,oFACC,2EAA4E,CAE5E,kBAAmB,CADnB,kJAED,CAdD,8EAgBC,iEAKD,CAHC,uCAlBD,8EAmBE,cAEF,CADC,CAID,6GACC,YACD,CAIF,oDACC,GACC,SACD,CAEA,GACC,SACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-table-form {\n\t& .ck-form__row {\n\t\t&.ck-table-form__border-row {\n\t\t\tflex-wrap: wrap;\n\t\t}\n\n\t\t&.ck-table-form__background-row {\n\t\t\tflex-wrap: wrap;\n\t\t}\n\n\t\t&.ck-table-form__dimensions-row {\n\t\t\tflex-wrap: wrap;\n\t\t\talign-items: center;\n\n\t\t\t& .ck-labeled-field-view {\n\t\t\t\tdisplay: flex;\n\t\t\t\tflex-direction: column-reverse;\n\t\t\t\talign-items: center;\n\n\t\t\t\t& .ck.ck-dropdown {\n\t\t\t\t\tflex-grow: 0;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t& .ck-table-form__dimension-operator {\n\t\t\t\tflex-grow: 0;\n\t\t\t}\n\t\t}\n\t}\n\n\t& .ck.ck-labeled-field-view {\n\t\t/* Allow absolute positioning of the status (error) balloons. */\n\t\tposition: relative;\n\n\t\t& .ck.ck-labeled-field-view__status {\n\t\t\tposition: absolute;\n\t\t\tleft: 50%;\n\t\t\tbottom: calc( -1 * var(--ck-table-properties-error-arrow-size) );\n\t\t\ttransform: translate(-50%,100%);\n\n\t\t\t/* Make sure the balloon status stays on top of other form elements. */\n\t\t\tz-index: 1;\n\n\t\t\t/* The arrow pointing towards the field. */\n\t\t\t&::after {\n\t\t\t\tcontent: "";\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: calc( -1 * var(--ck-table-properties-error-arrow-size) );\n\t\t\t\tleft: 50%;\n\t\t\t\ttransform: translateX( -50% );\n\t\t\t}\n\t\t}\n\t}\n}\n','/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../mixins/_rounded.css";\n\n:root {\n\t--ck-table-properties-error-arrow-size: 6px;\n\t--ck-table-properties-min-error-width: 150px;\n}\n\n.ck.ck-table-form {\n\t& .ck-form__row {\n\t\t&.ck-table-form__border-row {\n\t\t\t& .ck-labeled-field-view {\n\t\t\t\t& > .ck-label {\n\t\t\t\t\tfont-size: var(--ck-font-size-tiny);\n\t\t\t\t\ttext-align: center;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t& .ck-table-form__border-style,\n\t\t\t& .ck-table-form__border-width {\n\t\t\t\twidth: 80px;\n\t\t\t\tmin-width: 80px;\n\t\t\t\tmax-width: 80px;\n\t\t\t}\n\t\t}\n\n\t\t&.ck-table-form__dimensions-row {\n\t\t\tpadding: 0;\n\n\t\t\t& .ck-table-form__dimensions-row__width,\n\t\t\t& .ck-table-form__dimensions-row__height {\n\t\t\t\tmargin: 0\n\t\t\t}\n\n\t\t\t& .ck-table-form__dimension-operator {\n\t\t\t\talign-self: flex-end;\n\t\t\t\tdisplay: inline-block;\n\t\t\t\theight: var(--ck-ui-component-min-height);\n\t\t\t\tline-height: var(--ck-ui-component-min-height);\n\t\t\t\tmargin: 0 var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\t}\n\n\t& .ck.ck-labeled-field-view {\n\t\tpadding-top: var(--ck-spacing-standard);\n\n\t\t& .ck.ck-labeled-field-view__status {\n\t\t\t@mixin ck-rounded-corners;\n\n\t\t\tbackground: var(--ck-color-base-error);\n\t\t\tcolor: var(--ck-color-base-background);\n\t\t\tpadding: var(--ck-spacing-small) var(--ck-spacing-medium);\n\t\t\tmin-width: var(--ck-table-properties-min-error-width);\n\t\t\ttext-align: center;\n\n\t\t\t/* The arrow pointing towards the field. */\n\t\t\t&::after {\n\t\t\t\tborder-color: transparent transparent var(--ck-color-base-error) transparent;\n\t\t\t\tborder-width: 0 var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size);\n\t\t\t\tborder-style: solid;\n\t\t\t}\n\n\t\t\tanimation: ck-table-form-labeled-view-status-appear .15s ease both;\n\n\t\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\t\tanimation: none;\n\t\t\t}\n\t\t}\n\n\t\t/* Hide the error balloon when the field is blurred. Makes the experience much more clear. */\n\t\t& .ck-input.ck-error:not(:focus) + .ck.ck-labeled-field-view__status {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n\n@keyframes ck-table-form-labeled-view-status-appear {\n\t0% {\n\t\topacity: 0;\n\t}\n\n\t100% {\n\t\topacity: 1;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},5562:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row{align-content:baseline;flex-basis:0;flex-wrap:wrap}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar .ck-toolbar__items{flex-wrap:nowrap}.ck.ck-table-properties-form{width:320px}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row{align-self:flex-end;padding:0}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar{background:none;margin-top:var(--ck-spacing-standard)}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar .ck-toolbar__items>*{width:40px}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/tableproperties.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/tableproperties.css"],names:[],mappings:"AAOE,mFAGC,sBAAuB,CADvB,YAAa,CADb,cAOD,CAHC,qHACC,gBACD,CCTH,6BACC,WAmBD,CAhBE,mFACC,mBAAoB,CACpB,SAYD,CAVC,kGACC,eAAgB,CAGhB,qCAKD,CAHC,uHACC,UACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-table-properties-form {\n\t& .ck-form__row {\n\t\t&.ck-table-properties-form__alignment-row {\n\t\t\tflex-wrap: wrap;\n\t\t\tflex-basis: 0;\n\t\t\talign-content: baseline;\n\n\t\t\t& .ck.ck-toolbar .ck-toolbar__items {\n\t\t\t\tflex-wrap: nowrap;\n\t\t\t}\n\t\t}\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-table-properties-form {\n\twidth: 320px;\n\n\t& .ck-form__row {\n\t\t&.ck-table-properties-form__alignment-row {\n\t\t\talign-self: flex-end;\n\t\t\tpadding: 0;\n\n\t\t\t& .ck.ck-toolbar {\n\t\t\t\tbackground: none;\n\n\t\t\t\t/* Compensate for missing input label that would push the margin (toolbar has no inputs). */\n\t\t\t\tmargin-top: var(--ck-spacing-standard);\n\n\t\t\t\t& .ck-toolbar__items > * {\n\t\t\t\t\twidth: 40px;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},8423:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,':root{--ck-table-selected-cell-background:rgba(158,207,250,.3)}.ck.ck-editor__editable .table table td.ck-editor__editable_selected,.ck.ck-editor__editable .table table th.ck-editor__editable_selected{box-shadow:unset;caret-color:transparent;outline:unset;position:relative}.ck.ck-editor__editable .table table td.ck-editor__editable_selected:after,.ck.ck-editor__editable .table table th.ck-editor__editable_selected:after{background-color:var(--ck-table-selected-cell-background);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.ck.ck-editor__editable .table table td.ck-editor__editable_selected ::selection,.ck.ck-editor__editable .table table td.ck-editor__editable_selected:focus,.ck.ck-editor__editable .table table th.ck-editor__editable_selected ::selection,.ck.ck-editor__editable .table table th.ck-editor__editable_selected:focus{background-color:transparent}.ck.ck-editor__editable .table table td.ck-editor__editable_selected .ck-widget,.ck.ck-editor__editable .table table th.ck-editor__editable_selected .ck-widget{outline:unset}.ck.ck-editor__editable .table table td.ck-editor__editable_selected .ck-widget>.ck-widget__selection-handle,.ck.ck-editor__editable .table table th.ck-editor__editable_selected .ck-widget>.ck-widget__selection-handle{display:none}',"",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/tableselection.css"],names:[],mappings:"AAKA,MACC,wDACD,CAGC,0IAKC,gBAAiB,CAFjB,uBAAwB,CACxB,aAAc,CAFd,iBAiCD,CA3BC,sJAGC,yDAA0D,CAK1D,QAAS,CAPT,UAAW,CAKX,MAAO,CAJP,mBAAoB,CAEpB,iBAAkB,CAGlB,OAAQ,CAFR,KAID,CAEA,wTAEC,4BACD,CAMA,gKACC,aAKD,CAHC,0NACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-table-selected-cell-background: hsla(208, 90%, 80%, .3);\n}\n\n.ck.ck-editor__editable .table table {\n\t& td.ck-editor__editable_selected,\n\t& th.ck-editor__editable_selected {\n\t\tposition: relative;\n\t\tcaret-color: transparent;\n\t\toutline: unset;\n\t\tbox-shadow: unset;\n\n\t\t/* https://github.com/ckeditor/ckeditor5/issues/6446 */\n\t\t&:after {\n\t\t\tcontent: '';\n\t\t\tpointer-events: none;\n\t\t\tbackground-color: var(--ck-table-selected-cell-background);\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\tright: 0;\n\t\t\tbottom: 0;\n\t\t}\n\n\t\t& ::selection,\n\t\t&:focus {\n\t\t\tbackground-color: transparent;\n\t\t}\n\n\t\t/*\n\t\t * To reduce the amount of noise, all widgets in the table selection have no outline and no selection handle.\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/9491.\n\t\t */\n\t\t& .ck-widget {\n\t\t\toutline: unset;\n\n\t\t\t& > .ck-widget__selection-handle {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},1801:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-aria-live-announcer{left:-10000px;position:absolute;top:-10000px}.ck.ck-aria-live-region-list{list-style-type:none}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/arialiveannouncer/arialiveannouncer.css"],names:[],mappings:"AAKA,2BAEC,aAAc,CADd,iBAAkB,CAElB,YACD,CAEA,6BACC,oBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-aria-live-announcer {\n\tposition: absolute;\n\tleft: -10000px;\n\ttop: -10000px;\n}\n\n.ck.ck-aria-live-region-list {\n\tlist-style-type: none;\n}\n"],sourceRoot:""}]);const a=s},5727:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-autocomplete{position:relative}.ck.ck-autocomplete>.ck-search__results{position:absolute;z-index:var(--ck-z-panel)}.ck.ck-autocomplete>.ck-search__results.ck-search__results_n{bottom:100%}.ck.ck-autocomplete>.ck-search__results.ck-search__results_s{bottom:auto;top:100%}.ck.ck-autocomplete>.ck-search__results{border-radius:0}.ck-rounded-corners .ck.ck-autocomplete>.ck-search__results,.ck.ck-autocomplete>.ck-search__results.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-autocomplete>.ck-search__results{background:var(--ck-color-base-background);border:1px solid var(--ck-color-dropdown-panel-border);box-shadow:var(--ck-drop-shadow),0 0;max-height:200px;min-width:auto;overflow-y:auto}.ck.ck-autocomplete>.ck-search__results.ck-search__results_n{border-bottom-left-radius:0;border-bottom-right-radius:0;margin-bottom:-1px}.ck.ck-autocomplete>.ck-search__results.ck-search__results_s{border-top-left-radius:0;border-top-right-radius:0;margin-top:-1px}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/autocomplete/autocomplete.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/autocomplete/autocomplete.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,oBACC,iBAeD,CAbC,wCACC,iBAAkB,CAClB,yBAUD,CARC,6DACC,WACD,CAEA,6DAEC,WAAY,CADZ,QAED,CCVD,wCCEA,eDuBA,CAzBA,uHCMC,qCDmBD,CAzBA,wCAMC,0CAA2C,CAC3C,sDAAuD,CEPxD,oCAA8B,CFI7B,gBAAiB,CAIjB,cAAe,CAHf,eAoBD,CAfC,6DACC,2BAA4B,CAC5B,4BAA6B,CAG7B,kBACD,CAEA,6DACC,wBAAyB,CACzB,yBAA0B,CAG1B,eACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-autocomplete {\n\tposition: relative;\n\n\t& > .ck-search__results {\n\t\tposition: absolute;\n\t\tz-index: var(--ck-z-panel);\n\n\t\t&.ck-search__results_n {\n\t\t\tbottom: 100%;\n\t\t}\n\n\t\t&.ck-search__results_s {\n\t\t\ttop: 100%;\n\t\t\tbottom: auto;\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css";\n@import "@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css";\n\n.ck.ck-autocomplete {\n\t& > .ck-search__results {\n\t\t@mixin ck-rounded-corners;\n\t\t@mixin ck-drop-shadow;\n\n\t\tmax-height: 200px;\n\t\toverflow-y: auto;\n\t\tbackground: var(--ck-color-base-background);\n\t\tborder: 1px solid var(--ck-color-dropdown-panel-border);\n\t\tmin-width: auto;\n\n\t\t&.ck-search__results_n {\n\t\t\tborder-bottom-left-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\n\t\t\t/* Prevent duplicated borders between the input and the results pane. */\n\t\t\tmargin-bottom: -1px;\n\t\t}\n\n\t\t&.ck-search__results_s {\n\t\t\tborder-top-left-radius: 0;\n\t\t\tborder-top-right-radius: 0;\n\n\t\t\t/* Prevent duplicated borders between the input and the results pane. */\n\t\t\tmargin-top: -1px;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},9715:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-button,a.ck.ck-button{align-items:center;display:inline-flex;position:relative;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}[dir=ltr] .ck.ck-button,[dir=ltr] a.ck.ck-button{justify-content:left}[dir=rtl] .ck.ck-button,[dir=rtl] a.ck.ck-button{justify-content:right}.ck.ck-button .ck-button__label,a.ck.ck-button .ck-button__label{display:none}.ck.ck-button.ck-button_with-text .ck-button__label,a.ck.ck-button.ck-button_with-text .ck-button__label{display:inline-block}.ck.ck-button:not(.ck-button_with-text),a.ck.ck-button:not(.ck-button_with-text){justify-content:center}.ck.ck-button,a.ck.ck-button{background:var(--ck-color-button-default-background)}.ck.ck-button:not(.ck-disabled):hover,a.ck.ck-button:not(.ck-disabled):hover{background:var(--ck-color-button-default-hover-background)}.ck.ck-button:not(.ck-disabled):active,a.ck.ck-button:not(.ck-disabled):active{background:var(--ck-color-button-default-active-background)}.ck.ck-button.ck-disabled,a.ck.ck-button.ck-disabled{background:var(--ck-color-button-default-disabled-background)}.ck.ck-button,a.ck.ck-button{border-radius:0}.ck-rounded-corners .ck.ck-button,.ck-rounded-corners a.ck.ck-button,.ck.ck-button.ck-rounded-corners,a.ck.ck-button.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-button,a.ck.ck-button{-webkit-appearance:none;border:1px solid transparent;cursor:default;font-size:inherit;line-height:1;min-height:var(--ck-ui-component-min-height);min-width:var(--ck-ui-component-min-height);padding:var(--ck-spacing-tiny);text-align:center;transition:box-shadow .2s ease-in-out,border .2s ease-in-out;vertical-align:middle;white-space:nowrap}@media (prefers-reduced-motion:reduce){.ck.ck-button,a.ck.ck-button{transition:none}}.ck.ck-button:active,.ck.ck-button:focus,a.ck.ck-button:active,a.ck.ck-button:focus{border:var(--ck-focus-ring);box-shadow:var(--ck-focus-outer-shadow),0 0;outline:none}.ck.ck-button .ck-button__icon use,.ck.ck-button .ck-button__icon use *,a.ck.ck-button .ck-button__icon use,a.ck.ck-button .ck-button__icon use *{color:inherit}.ck.ck-button .ck-button__label,a.ck.ck-button .ck-button__label{color:inherit;cursor:inherit;font-size:inherit;font-weight:inherit;vertical-align:middle}[dir=ltr] .ck.ck-button .ck-button__label,[dir=ltr] a.ck.ck-button .ck-button__label{text-align:left}[dir=rtl] .ck.ck-button .ck-button__label,[dir=rtl] a.ck.ck-button .ck-button__label{text-align:right}.ck.ck-button .ck-button__keystroke,a.ck.ck-button .ck-button__keystroke{color:inherit}[dir=ltr] .ck.ck-button .ck-button__keystroke,[dir=ltr] a.ck.ck-button .ck-button__keystroke{margin-left:var(--ck-spacing-large)}[dir=rtl] .ck.ck-button .ck-button__keystroke,[dir=rtl] a.ck.ck-button .ck-button__keystroke{margin-right:var(--ck-spacing-large)}.ck.ck-button .ck-button__keystroke,a.ck.ck-button .ck-button__keystroke{opacity:.5}.ck.ck-button.ck-disabled:active,.ck.ck-button.ck-disabled:focus,a.ck.ck-button.ck-disabled:active,a.ck.ck-button.ck-disabled:focus{box-shadow:var(--ck-focus-disabled-outer-shadow),0 0}.ck.ck-button.ck-disabled .ck-button__icon,.ck.ck-button.ck-disabled .ck-button__label,a.ck.ck-button.ck-disabled .ck-button__icon,a.ck.ck-button.ck-disabled .ck-button__label{opacity:var(--ck-disabled-opacity)}.ck.ck-button.ck-disabled .ck-button__keystroke,a.ck.ck-button.ck-disabled .ck-button__keystroke{opacity:.3}.ck.ck-button.ck-button_with-text,a.ck.ck-button.ck-button_with-text{padding:var(--ck-spacing-tiny) var(--ck-spacing-standard)}[dir=ltr] .ck.ck-button.ck-button_with-text .ck-button__icon,[dir=ltr] a.ck.ck-button.ck-button_with-text .ck-button__icon{margin-left:calc(var(--ck-spacing-small)*-1);margin-right:var(--ck-spacing-small)}[dir=rtl] .ck.ck-button.ck-button_with-text .ck-button__icon,[dir=rtl] a.ck.ck-button.ck-button_with-text .ck-button__icon{margin-left:var(--ck-spacing-small);margin-right:calc(var(--ck-spacing-small)*-1)}.ck.ck-button.ck-button_with-keystroke .ck-button__label,a.ck.ck-button.ck-button_with-keystroke .ck-button__label{flex-grow:1}.ck.ck-button.ck-on,a.ck.ck-button.ck-on{background:var(--ck-color-button-on-background)}.ck.ck-button.ck-on:not(.ck-disabled):hover,a.ck.ck-button.ck-on:not(.ck-disabled):hover{background:var(--ck-color-button-on-hover-background)}.ck.ck-button.ck-on:not(.ck-disabled):active,a.ck.ck-button.ck-on:not(.ck-disabled):active{background:var(--ck-color-button-on-active-background)}.ck.ck-button.ck-on.ck-disabled,a.ck.ck-button.ck-on.ck-disabled{background:var(--ck-color-button-on-disabled-background)}.ck.ck-button.ck-on,a.ck.ck-button.ck-on{color:var(--ck-color-button-on-color)}.ck.ck-button.ck-button-save,a.ck.ck-button.ck-button-save{color:var(--ck-color-button-save)}.ck.ck-button.ck-button-cancel,a.ck.ck-button.ck-button-cancel{color:var(--ck-color-button-cancel)}.ck.ck-button-action,a.ck.ck-button-action{background:var(--ck-color-button-action-background)}.ck.ck-button-action:not(.ck-disabled):hover,a.ck.ck-button-action:not(.ck-disabled):hover{background:var(--ck-color-button-action-hover-background)}.ck.ck-button-action:not(.ck-disabled):active,a.ck.ck-button-action:not(.ck-disabled):active{background:var(--ck-color-button-action-active-background)}.ck.ck-button-action.ck-disabled,a.ck.ck-button-action.ck-disabled{background:var(--ck-color-button-action-disabled-background)}.ck.ck-button-action,a.ck.ck-button-action{color:var(--ck-color-button-action-text)}.ck.ck-button-bold,a.ck.ck-button-bold{font-weight:700}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/button/button.css","webpack://./../ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/button/button.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/mixins/_button.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_disabled.css"],names:[],mappings:"AAQA,6BAMC,kBAAmB,CADnB,mBAAoB,CADpB,iBAAkB,CCHlB,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBD0BD,CA9BA,iDASE,oBAqBF,CA9BA,iDAaE,qBAiBF,CAdC,iEACC,YACD,CAGC,yGACC,oBACD,CAID,iFACC,sBACD,CEzBD,6BCAC,oDD+ID,CC5IE,6EACC,0DACD,CAEA,+EACC,2DACD,CAID,qDACC,6DACD,CDfD,6BEDC,eFgJD,CA/IA,wIEGE,qCF4IF,CA/IA,6BA6BC,uBAAwB,CANxB,4BAA6B,CAjB7B,cAAe,CAcf,iBAAkB,CAHlB,aAAc,CAJd,4CAA6C,CAD7C,2CAA4C,CAJ5C,8BAA+B,CAC/B,iBAAkB,CAiBlB,4DAA8D,CAnB9D,qBAAsB,CAFtB,kBA0ID,CAhHC,uCA/BD,6BAgCE,eA+GF,CA9GC,CAEA,oFGpCA,2BAA2B,CCF3B,2CAA8B,CDC9B,YHyCA,CAIC,kJAEC,aACD,CAGD,iEAIC,aAAc,CACd,cAAe,CAHf,iBAAkB,CAClB,mBAAoB,CAMpB,qBASD,CAlBA,qFAYE,eAMF,CAlBA,qFAgBE,gBAEF,CAEA,yEACC,aAWD,CAZA,6FAIE,mCAQF,CAZA,6FAQE,oCAIF,CAZA,yEAWC,UACD,CAIC,oIIxFD,oDJ4FC,CAOA,gLKnGD,kCLqGC,CAEA,iGACC,UACD,CAGD,qEACC,yDAcD,CAXC,2HAEE,4CAA+C,CAC/C,oCAOF,CAVA,2HAQE,mCAAoC,CADpC,6CAGF,CAKA,mHACC,WACD,CAID,yCClIA,+CDsIA,CCnIC,yFACC,qDACD,CAEA,2FACC,sDACD,CAID,iEACC,wDACD,CDmHA,yCAGC,qCACD,CAEA,2DACC,iCACD,CAEA,+DACC,mCACD,CAID,2CClJC,mDDuJD,CCpJE,2FACC,yDACD,CAEA,6FACC,0DACD,CAID,mEACC,4DACD,CDmID,2CAIC,wCACD,CAEA,uCAEC,eACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../mixins/_unselectable.css";\n@import "../../mixins/_dir.css";\n\n.ck.ck-button,\na.ck.ck-button {\n\t@mixin ck-unselectable;\n\n\tposition: relative;\n\tdisplay: inline-flex;\n\talign-items: center;\n\n\t@mixin ck-dir ltr {\n\t\tjustify-content: left;\n\t}\n\n\t@mixin ck-dir rtl {\n\t\tjustify-content: right;\n\t}\n\n\t& .ck-button__label {\n\t\tdisplay: none;\n\t}\n\n\t&.ck-button_with-text {\n\t\t& .ck-button__label {\n\t\t\tdisplay: inline-block;\n\t\t}\n\t}\n\n\t/* Center the icon horizontally in a button without text. */\n\t&:not(.ck-button_with-text) {\n\t\tjustify-content: center;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Makes element unselectable.\n */\n@define-mixin ck-unselectable {\n\t-moz-user-select: none;\n\t-webkit-user-select: none;\n\t-ms-user-select: none;\n\tuser-select: none\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_focus.css";\n@import "../../../mixins/_shadow.css";\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_rounded.css";\n@import "../../mixins/_button.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-button,\na.ck.ck-button {\n\t@mixin ck-button-colors --ck-color-button-default;\n\t@mixin ck-rounded-corners;\n\n\twhite-space: nowrap;\n\tcursor: default;\n\tvertical-align: middle;\n\tpadding: var(--ck-spacing-tiny);\n\ttext-align: center;\n\n\t/* A very important piece of styling. Go to variable declaration to learn more. */\n\tmin-width: var(--ck-ui-component-min-height);\n\tmin-height: var(--ck-ui-component-min-height);\n\n\t/* Normalize the height of the line. Removing this will break consistent height\n\tamong text and text-less buttons (with icons). */\n\tline-height: 1;\n\n\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\tfont-size: inherit;\n\n\t/* Avoid flickering when the foucs border shows up. */\n\tborder: 1px solid transparent;\n\n\t/* Apply some smooth transition to the box-shadow and border. */\n\ttransition: box-shadow .2s ease-in-out, border .2s ease-in-out;\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/189 */\n\t-webkit-appearance: none;\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\ttransition: none;\n\t}\n\n\t&:active,\n\t&:focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-focus-outer-shadow);\n\t}\n\n\t/* Allow icon coloring using the text "color" property. */\n\t& .ck-button__icon {\n\t\t& use,\n\t\t& use * {\n\t\t\tcolor: inherit;\n\t\t}\n\t}\n\n\t& .ck-button__label {\n\t\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\t\tfont-size: inherit;\n\t\tfont-weight: inherit;\n\t\tcolor: inherit;\n\t\tcursor: inherit;\n\n\t\t/* Must be consistent with .ck-icon\'s vertical align. Otherwise, buttons with and\n\t\twithout labels (but with icons) have different sizes in Chrome */\n\t\tvertical-align: middle;\n\n\t\t@mixin ck-dir ltr {\n\t\t\ttext-align: left;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\ttext-align: right;\n\t\t}\n\t}\n\n\t& .ck-button__keystroke {\n\t\tcolor: inherit;\n\n\t\t@mixin ck-dir ltr {\n\t\t\tmargin-left: var(--ck-spacing-large);\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\tmargin-right: var(--ck-spacing-large);\n\t\t}\n\n\t\topacity: .5;\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/70 */\n\t&.ck-disabled {\n\t\t&:active,\n\t\t&:focus {\n\t\t\t/* The disabled button should have a slightly less visible shadow when focused. */\n\t\t\t@mixin ck-box-shadow var(--ck-focus-disabled-outer-shadow);\n\t\t}\n\n\t\t& .ck-button__icon {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/98 */\n\t\t& .ck-button__label {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t& .ck-button__keystroke {\n\t\t\topacity: .3;\n\t\t}\n\t}\n\n\t&.ck-button_with-text {\n\t\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-standard);\n\n\t\t/* stylelint-disable-next-line no-descending-specificity */\n\t\t& .ck-button__icon {\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: calc(-1 * var(--ck-spacing-small));\n\t\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-right: calc(-1 * var(--ck-spacing-small));\n\t\t\t\tmargin-left: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\t}\n\n\t&.ck-button_with-keystroke {\n\t\t/* stylelint-disable-next-line no-descending-specificity */\n\t\t& .ck-button__label {\n\t\t\tflex-grow: 1;\n\t\t}\n\t}\n\n\t/* A style of the button which is currently on, e.g. its feature is active. */\n\t&.ck-on {\n\t\t@mixin ck-button-colors --ck-color-button-on;\n\n\t\tcolor: var(--ck-color-button-on-color);\n\t}\n\n\t&.ck-button-save {\n\t\tcolor: var(--ck-color-button-save);\n\t}\n\n\t&.ck-button-cancel {\n\t\tcolor: var(--ck-color-button-cancel);\n\t}\n}\n\n/* A style of the button which handles the primary action. */\n.ck.ck-button-action,\na.ck.ck-button-action {\n\t@mixin ck-button-colors --ck-color-button-action;\n\n\tcolor: var(--ck-color-button-action-text);\n}\n\n.ck.ck-button-bold,\na.ck.ck-button-bold {\n\tfont-weight: bold;\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements a button of given background color.\n *\n * @param {String} $background - Background color of the button.\n * @param {String} $border - Border color of the button.\n */\n@define-mixin ck-button-colors $prefix {\n\tbackground: var($(prefix)-background);\n\n\t&:not(.ck-disabled) {\n\t\t&:hover {\n\t\t\tbackground: var($(prefix)-hover-background);\n\t\t}\n\n\t\t&:active {\n\t\t\tbackground: var($(prefix)-active-background);\n\t\t}\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/98 */\n\t&.ck-disabled {\n\t\tbackground: var($(prefix)-disabled-background);\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A visual style of focused element's border.\n */\n@define-mixin ck-focus-ring {\n\t/* Disable native outline. */\n\toutline: none;\n\tborder: var(--ck-focus-ring)\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A class which indicates that an element holding it is disabled.\n */\n@define-mixin ck-disabled {\n\topacity: var(--ck-disabled-opacity);\n}\n"],sourceRoot:""}]);const a=s},4391:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-button.ck-switchbutton .ck-button__toggle,.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{display:block}:root{--ck-switch-button-toggle-width:2.6153846154em;--ck-switch-button-toggle-inner-size:calc(1.07692em + 1px);--ck-switch-button-translation:calc(var(--ck-switch-button-toggle-width) - var(--ck-switch-button-toggle-inner-size) - 2px);--ck-switch-button-inner-hover-shadow:0 0 0 5px var(--ck-color-switch-button-inner-shadow)}.ck.ck-button.ck-switchbutton,.ck.ck-button.ck-switchbutton.ck-on:active,.ck.ck-button.ck-switchbutton.ck-on:focus,.ck.ck-button.ck-switchbutton.ck-on:hover,.ck.ck-button.ck-switchbutton:active,.ck.ck-button.ck-switchbutton:focus,.ck.ck-button.ck-switchbutton:hover{background:transparent;color:inherit}[dir=ltr] .ck.ck-button.ck-switchbutton .ck-button__label{margin-right:calc(var(--ck-spacing-large)*2)}[dir=rtl] .ck.ck-button.ck-switchbutton .ck-button__label{margin-left:calc(var(--ck-spacing-large)*2)}.ck.ck-button.ck-switchbutton .ck-button__toggle{border-radius:0}.ck-rounded-corners .ck.ck-button.ck-switchbutton .ck-button__toggle,.ck.ck-button.ck-switchbutton .ck-button__toggle.ck-rounded-corners{border-radius:var(--ck-border-radius)}[dir=ltr] .ck.ck-button.ck-switchbutton .ck-button__toggle{margin-left:auto}[dir=rtl] .ck.ck-button.ck-switchbutton .ck-button__toggle{margin-right:auto}.ck.ck-button.ck-switchbutton .ck-button__toggle{background:var(--ck-color-switch-button-off-background);border:1px solid transparent;transition:background .4s ease,box-shadow .2s ease-in-out,outline .2s ease-in-out;width:var(--ck-switch-button-toggle-width)}.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{border-radius:0}.ck-rounded-corners .ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner,.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner.ck-rounded-corners{border-radius:var(--ck-border-radius);border-radius:calc(var(--ck-border-radius)*.5)}.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{background:var(--ck-color-switch-button-inner-background);height:var(--ck-switch-button-toggle-inner-size);transition:all .3s ease;width:var(--ck-switch-button-toggle-inner-size)}@media (prefers-reduced-motion:reduce){.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{transition:none}}.ck.ck-button.ck-switchbutton .ck-button__toggle:hover{background:var(--ck-color-switch-button-off-hover-background)}.ck.ck-button.ck-switchbutton .ck-button__toggle:hover .ck-button__toggle__inner{box-shadow:var(--ck-switch-button-inner-hover-shadow)}.ck.ck-button.ck-switchbutton.ck-disabled .ck-button__toggle{opacity:var(--ck-disabled-opacity)}.ck.ck-button.ck-switchbutton:focus{border-color:transparent;box-shadow:none;outline:none}.ck.ck-button.ck-switchbutton:focus .ck-button__toggle{box-shadow:0 0 0 1px var(--ck-color-base-background),0 0 0 5px var(--ck-color-focus-outer-shadow);outline:var(--ck-focus-ring);outline-offset:1px}.ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle{background:var(--ck-color-switch-button-on-background)}.ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle:hover{background:var(--ck-color-switch-button-on-hover-background)}[dir=ltr] .ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle .ck-button__toggle__inner{transform:translateX(var( --ck-switch-button-translation ))}[dir=rtl] .ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle .ck-button__toggle__inner{transform:translateX(calc(var( --ck-switch-button-translation )*-1))}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/button/switchbutton.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/button/switchbutton.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_disabled.css"],names:[],mappings:"AASE,4HACC,aACD,CCCF,MAEC,8CAA+C,CAE/C,0DAAgE,CAChE,2HAIC,CACD,0FACD,CAOC,0QAEC,sBAAuB,CADvB,aAED,CAEA,0DAGE,4CAOF,CAVA,0DAQE,2CAEF,CAEA,iDCpCA,eDgFA,CA5CA,yIChCC,qCD4ED,CA5CA,2DAKE,gBAuCF,CA5CA,2DAUE,iBAkCF,CA5CA,iDAkBC,uDAAwD,CAFxD,4BAA6B,CAD7B,iFAAsF,CAEtF,0CA2BD,CAxBC,2ECxDD,eDuEC,CAfA,6LCpDA,qCAAsC,CDsDpC,8CAaF,CAfA,2EAOC,yDAA0D,CAD1D,gDAAiD,CAIjD,uBAA0B,CAL1B,+CAUD,CAHC,uCAZD,2EAaE,eAEF,CADC,CAGD,uDACC,6DAKD,CAHC,iFACC,qDACD,CAIF,6DEpFA,kCFsFA,CAGA,oCACC,wBAAyB,CAEzB,eAAgB,CADhB,YAQD,CALC,uDACC,iGAAmG,CAEnG,4BAA6B,CAD7B,kBAED,CAKA,uDACC,sDAkBD,CAhBC,6DACC,4DACD,CAEA,2FAKE,2DAMF,CAXA,2FASE,oEAEF",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-button.ck-switchbutton {\n\t& .ck-button__toggle {\n\t\tdisplay: block;\n\n\t\t& .ck-button__toggle__inner {\n\t\t\tdisplay: block;\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_disabled.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n/* Note: To avoid rendering issues (aliasing) but to preserve the responsive nature\nof the component, floating–point numbers have been used which, for the default font size\n(see: --ck-font-size-base), will generate simple integers. */\n:root {\n\t/* 34px at 13px font-size */\n\t--ck-switch-button-toggle-width: 2.6153846154em;\n\t/* 14px at 13px font-size */\n\t--ck-switch-button-toggle-inner-size: calc(1.0769230769em + 1px);\n\t--ck-switch-button-translation: calc(\n\t\tvar(--ck-switch-button-toggle-width) -\n\t\tvar(--ck-switch-button-toggle-inner-size) -\n\t\t2px /* Border */\n\t);\n\t--ck-switch-button-inner-hover-shadow: 0 0 0 5px var(--ck-color-switch-button-inner-shadow);\n}\n\n.ck.ck-button.ck-switchbutton {\n\t/* Unlike a regular button, the switch button text color and background should never change.\n\t * Changing toggle switch (background, outline) is enough to carry the information about the\n\t * state of the entire component (https://github.com/ckeditor/ckeditor5/issues/12519)\n\t */\n\t&, &:hover, &:focus, &:active, &.ck-on:hover, &.ck-on:focus, &.ck-on:active {\n\t\tcolor: inherit;\n\t\tbackground: transparent;\n\t}\n\n\t& .ck-button__label {\n\t\t@mixin ck-dir ltr {\n\t\t\t/* Separate the label from the switch */\n\t\t\tmargin-right: calc(2 * var(--ck-spacing-large));\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t/* Separate the label from the switch */\n\t\t\tmargin-left: calc(2 * var(--ck-spacing-large));\n\t\t}\n\t}\n\n\t& .ck-button__toggle {\n\t\t@mixin ck-rounded-corners;\n\n\t\t@mixin ck-dir ltr {\n\t\t\t/* Make sure the toggle is always to the right as far as possible. */\n\t\t\tmargin-left: auto;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t/* Make sure the toggle is always to the left as far as possible. */\n\t\t\tmargin-right: auto;\n\t\t}\n\n\t\t/* Apply some smooth transition to the box-shadow and border. */\n\t\t/* Gently animate the background color of the toggle switch */\n\t\ttransition: background 400ms ease, box-shadow .2s ease-in-out, outline .2s ease-in-out;\n\t\tborder: 1px solid transparent;\n\t\twidth: var(--ck-switch-button-toggle-width);\n\t\tbackground: var(--ck-color-switch-button-off-background);\n\n\t\t& .ck-button__toggle__inner {\n\t\t\t@mixin ck-rounded-corners {\n\t\t\t\tborder-radius: calc(.5 * var(--ck-border-radius));\n\t\t\t}\n\n\t\t\twidth: var(--ck-switch-button-toggle-inner-size);\n\t\t\theight: var(--ck-switch-button-toggle-inner-size);\n\t\t\tbackground: var(--ck-color-switch-button-inner-background);\n\n\t\t\t/* Gently animate the inner part of the toggle switch */\n\t\t\ttransition: all 300ms ease;\n\n\t\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\t\ttransition: none;\n\t\t\t}\n\t\t}\n\n\t\t&:hover {\n\t\t\tbackground: var(--ck-color-switch-button-off-hover-background);\n\n\t\t\t& .ck-button__toggle__inner {\n\t\t\t\tbox-shadow: var(--ck-switch-button-inner-hover-shadow);\n\t\t\t}\n\t\t}\n\t}\n\n\t&.ck-disabled .ck-button__toggle {\n\t\t@mixin ck-disabled;\n\t}\n\n\t/* Overriding default .ck-button:focus styles + an outline around the toogle */\n\t&:focus {\n\t\tborder-color: transparent;\n\t\toutline: none;\n\t\tbox-shadow: none;\n\n\t\t& .ck-button__toggle {\n\t\t\tbox-shadow: 0 0 0 1px var(--ck-color-base-background), 0 0 0 5px var(--ck-color-focus-outer-shadow);\n\t\t\toutline-offset: 1px;\n\t\t\toutline: var(--ck-focus-ring);\n\t\t}\n\t}\n\n\t/* stylelint-disable-next-line no-descending-specificity */\n\t&.ck-on {\n\t\t& .ck-button__toggle {\n\t\t\tbackground: var(--ck-color-switch-button-on-background);\n\n\t\t\t&:hover {\n\t\t\t\tbackground: var(--ck-color-switch-button-on-hover-background);\n\t\t\t}\n\n\t\t\t& .ck-button__toggle__inner {\n\t\t\t\t/*\n\t\t\t\t* Move the toggle switch to the right. It will be animated.\n\t\t\t\t*/\n\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\ttransform: translateX( var( --ck-switch-button-translation ) );\n\t\t\t\t}\n\n\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\ttransform: translateX( calc( -1 * var( --ck-switch-button-translation ) ) );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A class which indicates that an element holding it is disabled.\n */\n@define-mixin ck-disabled {\n\topacity: var(--ck-disabled-opacity);\n}\n"],sourceRoot:""}]);const a=s},25:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-collapsible.ck-collapsible_collapsed>.ck-collapsible__children{display:none}:root{--ck-collapsible-arrow-size:calc(var(--ck-icon-size)*0.5)}.ck.ck-collapsible>.ck.ck-button{border-radius:0;color:inherit;font-weight:700;padding:var(--ck-list-button-padding);width:100%}.ck.ck-collapsible>.ck.ck-button:focus{background:transparent}.ck.ck-collapsible>.ck.ck-button:active,.ck.ck-collapsible>.ck.ck-button:hover:not(:focus),.ck.ck-collapsible>.ck.ck-button:not(:focus){background:transparent;border-color:transparent;box-shadow:none}.ck.ck-collapsible>.ck.ck-button>.ck-icon{margin-right:var(--ck-spacing-medium);width:var(--ck-collapsible-arrow-size)}.ck.ck-collapsible>.ck-collapsible__children{padding:var(--ck-spacing-medium) var(--ck-spacing-large) var(--ck-spacing-large)}.ck.ck-collapsible.ck-collapsible_collapsed>.ck.ck-button .ck-icon{transform:rotate(-90deg)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/collapsible/collapsible.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/collapsible/collapsible.css"],names:[],mappings:"AAMC,sEACC,YACD,CCHD,MACC,yDACD,CAGC,iCAIC,eAAgB,CAChB,aAAc,CAHd,eAAiB,CACjB,qCAAsC,CAFtC,UAoBD,CAdC,uCACC,sBACD,CAEA,wIACC,sBAAuB,CACvB,wBAAyB,CACzB,eACD,CAEA,0CACC,qCAAsC,CACtC,sCACD,CAGD,6CACC,gFACD,CAGC,mEACC,wBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-collapsible.ck-collapsible_collapsed {\n\t& > .ck-collapsible__children {\n\t\tdisplay: none;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-collapsible-arrow-size: calc(0.5 * var(--ck-icon-size));\n}\n\n.ck.ck-collapsible {\n\t& > .ck.ck-button {\n\t\twidth: 100%;\n\t\tfont-weight: bold;\n\t\tpadding: var(--ck-list-button-padding);\n\t\tborder-radius: 0;\n\t\tcolor: inherit;\n\n\t\t&:focus {\n\t\t\tbackground: transparent;\n\t\t}\n\n\t\t&:active, &:not(:focus), &:hover:not(:focus) {\n\t\t\tbackground: transparent;\n\t\t\tborder-color: transparent;\n\t\t\tbox-shadow: none;\n\t\t}\n\n\t\t& > .ck-icon {\n\t\t\tmargin-right: var(--ck-spacing-medium);\n\t\t\twidth: var(--ck-collapsible-arrow-size);\n\t\t}\n\t}\n\n\t& > .ck-collapsible__children {\n\t\tpadding: var(--ck-spacing-medium) var(--ck-spacing-large) var(--ck-spacing-large);\n\t}\n\n\t&.ck-collapsible_collapsed {\n\t\t& > .ck.ck-button .ck-icon {\n\t\t\ttransform: rotate(-90deg);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},7317:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-color-grid{display:grid}:root{--ck-color-grid-tile-size:24px;--ck-color-color-grid-check-icon:#166fd4}.ck.ck-color-grid{grid-gap:5px;padding:8px}.ck.ck-color-grid__tile{transition:box-shadow .2s ease}@media (forced-colors:none){.ck.ck-color-grid__tile{border:0;height:var(--ck-color-grid-tile-size);min-height:var(--ck-color-grid-tile-size);min-width:var(--ck-color-grid-tile-size);padding:0;width:var(--ck-color-grid-tile-size)}.ck.ck-color-grid__tile.ck-on,.ck.ck-color-grid__tile:focus:not(.ck-disabled),.ck.ck-color-grid__tile:hover:not(.ck-disabled){border:0}.ck.ck-color-grid__tile.ck-color-selector__color-tile_bordered{box-shadow:0 0 0 1px var(--ck-color-base-border)}.ck.ck-color-grid__tile.ck-on{box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-base-text)}.ck.ck-color-grid__tile:focus:not(.ck-disabled),.ck.ck-color-grid__tile:hover:not(.ck-disabled){box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-focus-border)}}@media (forced-colors:active){.ck.ck-color-grid__tile{height:unset;min-height:unset;min-width:unset;padding:0 var(--ck-spacing-small);width:unset}.ck.ck-color-grid__tile .ck-button__label{display:inline-block}}@media (prefers-reduced-motion:reduce){.ck.ck-color-grid__tile{transition:none}}.ck.ck-color-grid__tile.ck-disabled{cursor:unset;transition:unset}.ck.ck-color-grid__tile .ck.ck-icon{color:var(--ck-color-color-grid-check-icon);display:none}.ck.ck-color-grid__tile.ck-on .ck.ck-icon{display:block}.ck.ck-color-grid__label{padding:0 var(--ck-spacing-standard)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/colorgrid/colorgrid.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/colorgrid/colorgrid.css","webpack://./../ckeditor5-ui/theme/mixins/_mediacolors.css"],names:[],mappings:"AAKA,kBACC,YACD,CCCA,MACC,8BAA+B,CAK/B,wCACD,CAEA,kBACC,YAAa,CACb,WACD,CAEA,wBACC,8BAkED,CC3EC,4BACC,wBDgBA,QAAS,CAJT,qCAAsC,CAEtC,yCAA0C,CAD1C,wCAAyC,CAEzC,SAAU,CAJV,oCCTA,CDgBA,8HAIC,QACD,CAEA,+DACC,gDACD,CAEA,8BACC,8FACD,CAEA,gGAEC,iGACD,CCjCD,CAZA,8BACC,wBDqDA,YAAa,CAEb,gBAAiB,CADjB,eAAgB,CAEhB,iCAAkC,CAJlC,WClDA,CDwDA,0CACC,oBACD,CCzDD,CD4DA,uCAhDD,wBAiDE,eAkBF,CAjBC,CAEA,oCACC,YAAa,CACb,gBACD,CAEA,oCAEC,2CAA4C,CAD5C,YAED,CAGC,0CACC,aACD,CAIF,yBACC,oCACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-color-grid {\n\tdisplay: grid;\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_mediacolors.css";\n\n:root {\n\t--ck-color-grid-tile-size: 24px;\n\n\t/* Not using global colors here because these may change but some colors in a pallette\n\t * require special treatment. For instance, this ensures no matter what the UI text color is,\n\t * the check icon will look good on the black color tile. */\n\t--ck-color-color-grid-check-icon: hsl(212, 81%, 46%);\n}\n\n.ck.ck-color-grid {\n\tgrid-gap: 5px;\n\tpadding: 8px;\n}\n\n.ck.ck-color-grid__tile {\n\ttransition: .2s ease box-shadow;\n\n\t@mixin ck-media-default-colors {\n\t\twidth: var(--ck-color-grid-tile-size);\n\t\theight: var(--ck-color-grid-tile-size);\n\t\tmin-width: var(--ck-color-grid-tile-size);\n\t\tmin-height: var(--ck-color-grid-tile-size);\n\t\tpadding: 0;\n\t\tborder: 0;\n\n\t\t&.ck-on,\n\t\t&:focus:not( .ck-disabled ),\n\t\t&:hover:not( .ck-disabled ) {\n\t\t\t/* Disable the default .ck-button\'s border ring. */\n\t\t\tborder: 0;\n\t\t}\n\n\t\t&.ck-color-selector__color-tile_bordered {\n\t\t\tbox-shadow: 0 0 0 1px var(--ck-color-base-border);\n\t\t}\n\n\t\t&.ck-on {\n\t\t\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-base-text);\n\t\t}\n\n\t\t&:focus:not( .ck-disabled ),\n\t\t&:hover:not( .ck-disabled ) {\n\t\t\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-focus-border);\n\t\t}\n\t}\n\n\t/*\n\t * In high contrast mode, the colors are replaced with text labels.\n\t * See https://github.com/ckeditor/ckeditor5/issues/14907.\n\t */\n\t@mixin ck-media-forced-colors {\n\t\twidth: unset;\n\t\theight: unset;\n\t\tmin-width: unset;\n\t\tmin-height: unset;\n\t\tpadding: 0 var(--ck-spacing-small);\n\n\t\t& .ck-button__label {\n\t\t\tdisplay: inline-block;\n\t\t}\n\t}\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\ttransition: none;\n\t}\n\n\t&.ck-disabled {\n\t\tcursor: unset;\n\t\ttransition: unset;\n\t}\n\n\t& .ck.ck-icon {\n\t\tdisplay: none;\n\t\tcolor: var(--ck-color-color-grid-check-icon);\n\t}\n\n\t&.ck-on {\n\t\t& .ck.ck-icon {\n\t\t\tdisplay: block;\n\t\t}\n\t}\n}\n\n.ck.ck-color-grid__label {\n\tpadding: 0 var(--ck-spacing-standard);\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-forced-colors {\n\t@media (forced-colors: active) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n\n@define-mixin ck-media-default-colors {\n\t@media (forced-colors: none) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},1905:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".color-picker-hex-input{width:max-content}.color-picker-hex-input .ck.ck-input{min-width:unset}.ck.ck-color-picker__row{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;margin:var(--ck-spacing-large) 0 0;width:unset}.ck.ck-color-picker__row .ck.ck-labeled-field-view{padding-top:unset}.ck.ck-color-picker__row .ck.ck-input-text{width:unset}.ck.ck-color-picker__row .ck-color-picker__hash-view{padding-right:var(--ck-spacing-medium);padding-top:var(--ck-spacing-tiny)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/colorpicker/colorpicker.css"],names:[],mappings:"AAKA,wBACC,iBAKD,CAHC,qCACC,eACD,CAGD,yBACC,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CACjB,6BAA8B,CAC9B,kCAAmC,CACnC,WAcD,CAZC,mDACC,iBACD,CAEA,2CACC,WACD,CAEA,qDAEC,sCAAuC,CADvC,kCAED",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.color-picker-hex-input {\n\twidth: max-content;\n\n\t& .ck.ck-input {\n\t\tmin-width: unset;\n\t}\n}\n\n.ck.ck-color-picker__row {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\tjustify-content: space-between;\n\tmargin: var(--ck-spacing-large) 0 0;\n\twidth: unset;\n\n\t& .ck.ck-labeled-field-view {\n\t\tpadding-top: unset;\n\t}\n\n\t& .ck.ck-input-text {\n\t\twidth: unset;\n\t}\n\n\t& .ck-color-picker__hash-view {\n\t\tpadding-top: var(--ck-spacing-tiny);\n\t\tpadding-right: var(--ck-spacing-medium);\n\t}\n}\n"],sourceRoot:""}]);const a=s},6309:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker,.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__remove-color{align-items:center;display:flex}[dir=rtl] .ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker,[dir=rtl] .ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__remove-color{justify-content:flex-start}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-selector_action-bar{display:flex;flex-direction:row;justify-content:space-around}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-selector_action-bar .ck-button-cancel,.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-selector_action-bar .ck-button-save{flex:1}.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker,.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__remove-color{width:100%}.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker{border-bottom-left-radius:0;border-bottom-right-radius:0;padding:calc(var(--ck-spacing-standard)/2) var(--ck-spacing-standard)}.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker:not(:focus){border-top:1px solid var(--ck-color-base-border)}[dir=ltr] .ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker .ck.ck-icon{margin-right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker .ck.ck-icon{margin-left:var(--ck-spacing-standard)}.ck.ck-color-selector .ck-color-grids-fragment label.ck.ck-color-grid__label{font-weight:unset}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker{padding:8px}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker .hex-color-picker{height:100px;min-width:180px}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker .hex-color-picker::part(saturation){border-radius:var(--ck-border-radius) var(--ck-border-radius) 0 0}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker .hex-color-picker::part(hue){border-radius:0 0 var(--ck-border-radius) var(--ck-border-radius)}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker .hex-color-picker::part(hue-pointer),.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker .hex-color-picker::part(saturation-pointer){height:15px;width:15px}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-selector_action-bar{padding:0 8px 8px}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/colorselector/colorselector.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/colorselector/colorselector.css"],names:[],mappings:"AAUE,oLAGC,kBAAmB,CADnB,YAMD,CARA,wMAME,0BAEF,CAKA,iFACC,YAAa,CACb,kBAAmB,CACnB,4BAMD,CAJC,oMAEC,MACD,CCrBD,oLAEC,UACD,CAEA,0FAEC,2BAA4B,CAC5B,4BAA6B,CAF7B,qEAiBD,CAbC,sGACC,gDACD,CAEA,gHAEE,uCAMF,CARA,gHAME,sCAEF,CAGD,6EACC,iBACD,CAKA,oEACC,WAoBD,CAlBC,sFACC,YAAa,CACb,eAeD,CAbC,wGACC,iEACD,CAEA,iGACC,iEACD,CAEA,yNAGC,WAAY,CADZ,UAED,CAIF,iFACC,iBACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-color-selector {\n\t/* View fragment with color grids. */\n\t& .ck-color-grids-fragment {\n\t\t& .ck-button.ck-color-selector__remove-color,\n\t\t& .ck-button.ck-color-selector__color-picker {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tjustify-content: flex-start;\n\t\t\t}\n\t\t}\n\t}\n\n\t/* View fragment with a color picker. */\n\t& .ck-color-picker-fragment {\n\t\t& .ck.ck-color-selector_action-bar {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\tjustify-content: space-around;\n\n\t\t\t& .ck-button-save,\n\t\t\t& .ck-button-cancel {\n\t\t\t\tflex: 1\n\t\t\t}\n\t\t}\n\t}\n}\n','/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-color-selector {\n\t/* View fragment with color grids. */\n\t& .ck-color-grids-fragment {\n\t\t& .ck-button.ck-color-selector__remove-color,\n\t\t& .ck-button.ck-color-selector__color-picker {\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t& .ck-button.ck-color-selector__color-picker {\n\t\t\tpadding: calc(var(--ck-spacing-standard) / 2) var(--ck-spacing-standard);\n\t\t\tborder-bottom-left-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\n\t\t\t&:not(:focus) {\n\t\t\t\tborder-top: 1px solid var(--ck-color-base-border);\n\t\t\t}\n\n\t\t\t& .ck.ck-icon {\n\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\tmargin-right: var(--ck-spacing-standard);\n\t\t\t\t}\n\n\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t& label.ck.ck-color-grid__label {\n\t\t\tfont-weight: unset;\n\t\t}\n\t}\n\n\t/* View fragment with a color picker. */\n\t& .ck-color-picker-fragment {\n\t\t& .ck.ck-color-picker {\n\t\t\tpadding: 8px;\n\n\t\t\t& .hex-color-picker {\n\t\t\t\theight: 100px;\n\t\t\t\tmin-width: 180px;\n\n\t\t\t\t&::part(saturation) {\n\t\t\t\t\tborder-radius: var(--ck-border-radius) var(--ck-border-radius) 0 0;\n\t\t\t\t}\n\n\t\t\t\t&::part(hue) {\n\t\t\t\t\tborder-radius: 0 0 var(--ck-border-radius) var(--ck-border-radius);\n\t\t\t\t}\n\n\t\t\t\t&::part(saturation-pointer),\n\t\t\t\t&::part(hue-pointer) {\n\t\t\t\t\twidth: 15px;\n\t\t\t\t\theight: 15px;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t& .ck.ck-color-selector_action-bar {\n\t\t\tpadding: 0 8px 8px;\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},9819:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-dialog-overlay{bottom:0;left:0;overscroll-behavior:none;position:fixed;right:0;top:0;user-select:none}.ck.ck-dialog-overlay.ck-dialog-overlay__transparent{animation:none;background:none;pointer-events:none}.ck.ck-dialog{overscroll-behavior:none;position:absolute;width:fit-content}.ck.ck-dialog .ck.ck-form__header{flex-shrink:0}.ck.ck-dialog .ck.ck-form__header .ck-form__header__label{cursor:grab}.ck.ck-dialog-overlay.ck-dialog-overlay__transparent .ck.ck-dialog{pointer-events:all}:root{--ck-dialog-overlay-background-color:rgba(0,0,0,.5);--ck-dialog-drop-shadow:0px 0px 6px 2px rgba(0,0,0,.15);--ck-dialog-max-width:100vw;--ck-dialog-max-height:90vh;--ck-color-dialog-background:var(--ck-color-base-background);--ck-color-dialog-form-header-border:var(--ck-color-base-border)}.ck.ck-dialog-overlay{animation:ck-dialog-fade-in .3s;background:var(--ck-dialog-overlay-background-color);z-index:var(--ck-z-dialog)}.ck.ck-dialog{border-radius:0}.ck-rounded-corners .ck.ck-dialog,.ck.ck-dialog.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-dialog{box-shadow:var(--ck-drop-shadow),0 0;--ck-drop-shadow:var(--ck-dialog-drop-shadow);background:var(--ck-color-dialog-background);border:1px solid var(--ck-color-base-border);max-height:var(--ck-dialog-max-height);max-width:var(--ck-dialog-max-width)}.ck.ck-dialog .ck.ck-form__header{border-bottom:1px solid var(--ck-color-dialog-form-header-border)}@keyframes ck-dialog-fade-in{0%{background:transparent}to{background:var(--ck-dialog-overlay-background-color)}}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/dialog/dialog.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/dialog/dialog.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,sBAKC,QAAS,CACT,MAAO,CAJP,wBAAyB,CAEzB,cAAe,CAGf,OAAQ,CACR,KAAM,CAPN,gBAcD,CALC,qDAEC,cAAe,CACf,eAAgB,CAFhB,mBAGD,CAGD,cACC,wBAAyB,CAEzB,iBAAkB,CADlB,iBAcD,CAXC,kCACC,aAKD,CAHC,0DACC,WACD,CAVF,mEAcE,kBAEF,CC7BA,MACC,mDAA2D,CAC3D,uDAA8D,CAC9D,2BAA4B,CAC5B,2BAA4B,CAC5B,4DAA6D,CAC7D,gEACD,CAEA,sBACC,+BAAgC,CAChC,oDAAqD,CACrD,0BACD,CAEA,cCbC,eD2BD,CAdA,mECTE,qCDuBF,CAdA,cEfC,oCAA8B,CFmB9B,6CAA8C,CAE9C,4CAA6C,CAG7C,4CAA6C,CAF7C,sCAAuC,CACvC,oCAMD,CAHC,kCACC,iEACD,CAGD,6BACC,GACC,sBACD,CAEA,GACC,oDACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-dialog-overlay {\n\tuser-select: none;\n\toverscroll-behavior: none;\n\n\tposition: fixed;\n\tbottom: 0;\n\tleft: 0;\n\tright: 0;\n\ttop: 0;\n\n\t&.ck-dialog-overlay__transparent {\n\t\tpointer-events: none;\n\t\tanimation: none;\n\t\tbackground: none;\n\t}\n}\n\n.ck.ck-dialog {\n\toverscroll-behavior: none;\n\twidth: fit-content;\n\tposition: absolute;\n\n\t& .ck.ck-form__header {\n\t\tflex-shrink: 0;\n\n\t\t& .ck-form__header__label {\n\t\t\tcursor: grab;\n\t\t}\n\t}\n\n\t@nest .ck.ck-dialog-overlay.ck-dialog-overlay__transparent & {\n\t\tpointer-events: all;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_shadow.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n:root {\n\t--ck-dialog-overlay-background-color: hsla( 0, 0%, 0%, .5 );\n\t--ck-dialog-drop-shadow: 0px 0px 6px 2px hsl(0deg 0% 0% / 15%);\n\t--ck-dialog-max-width: 100vw;\n\t--ck-dialog-max-height: 90vh;\n\t--ck-color-dialog-background: var(--ck-color-base-background);\n\t--ck-color-dialog-form-header-border: var(--ck-color-base-border);\n}\n\n.ck.ck-dialog-overlay {\n\tanimation: ck-dialog-fade-in .3s;\n\tbackground: var(--ck-dialog-overlay-background-color);\n\tz-index: var(--ck-z-dialog);\n}\n\n.ck.ck-dialog {\n\t@mixin ck-rounded-corners;\n\t@mixin ck-drop-shadow;\n\n\t--ck-drop-shadow: var(--ck-dialog-drop-shadow);\n\n\tbackground: var(--ck-color-dialog-background);\n\tmax-height: var(--ck-dialog-max-height);\n\tmax-width: var(--ck-dialog-max-width);\n\tborder: 1px solid var(--ck-color-base-border);\n\n\t& .ck.ck-form__header {\n\t\tborder-bottom: 1px solid var(--ck-color-dialog-form-header-border);\n\t}\n}\n\n@keyframes ck-dialog-fade-in {\n\t0% {\n\t\tbackground: hsla( 0, 0%, 0%, 0 );\n\t}\n\n\t100% {\n\t\tbackground: var(--ck-dialog-overlay-background-color);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},9822:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-dialog .ck.ck-dialog__actions{display:flex;justify-content:flex-end;padding:var(--ck-spacing-large)}.ck.ck-dialog .ck.ck-dialog__actions>*+*{margin-left:var(--ck-spacing-large)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/dialog/dialogactions.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/dialog/dialogactions.css"],names:[],mappings:"AAMC,qCACC,YAAa,CACb,wBAAyB,CCDzB,+BDED,CCAC,yCACC,mCACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-dialog {\n\t& .ck.ck-dialog__actions {\n\t\tdisplay: flex;\n\t\tjustify-content: flex-end;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-dialog {\n\t& .ck.ck-dialog__actions {\n\t\tpadding: var(--ck-spacing-large);\n\n\t\t& > * + * {\n\t\t\tmargin-left: var(--ck-spacing-large);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},8149:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-dropdown-max-width:75vw}.ck.ck-dropdown{display:inline-block;position:relative}.ck.ck-dropdown .ck-dropdown__arrow{pointer-events:none;z-index:var(--ck-z-default)}.ck.ck-dropdown .ck-button.ck-dropdown__button{width:100%}.ck.ck-dropdown .ck-dropdown__panel{display:none;max-width:var(--ck-dropdown-max-width);position:absolute;z-index:var(--ck-z-panel)}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel-visible{display:inline-block}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_n,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_ne,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nme,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nmw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nw{bottom:100%}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_s,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_se,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sme,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_smw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sw{bottom:auto;top:100%}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_ne,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_se{left:0}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sw{right:0}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_n,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_s{left:50%;transform:translateX(-50%)}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nmw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_smw{left:75%;transform:translateX(-75%)}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nme,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sme{left:25%;transform:translateX(-25%)}.ck.ck-toolbar .ck-dropdown__panel{z-index:calc(var(--ck-z-panel) + 1)}:root{--ck-dropdown-arrow-size:calc(var(--ck-icon-size)*0.5)}.ck.ck-dropdown{font-size:inherit}.ck.ck-dropdown .ck-dropdown__arrow{width:var(--ck-dropdown-arrow-size)}[dir=ltr] .ck.ck-dropdown .ck-dropdown__arrow{margin-left:var(--ck-spacing-standard);right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-dropdown .ck-dropdown__arrow{left:var(--ck-spacing-standard);margin-right:var(--ck-spacing-small)}.ck.ck-dropdown.ck-disabled .ck-dropdown__arrow{opacity:var(--ck-disabled-opacity)}[dir=ltr] .ck.ck-dropdown .ck-button.ck-dropdown__button:not(.ck-button_with-text){padding-left:var(--ck-spacing-small)}[dir=rtl] .ck.ck-dropdown .ck-button.ck-dropdown__button:not(.ck-button_with-text){padding-right:var(--ck-spacing-small)}.ck.ck-dropdown .ck-button.ck-dropdown__button .ck-button__label{overflow:hidden;text-overflow:ellipsis;width:7em}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-disabled .ck-button__label{opacity:var(--ck-disabled-opacity)}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on{border-bottom-left-radius:0;border-bottom-right-radius:0}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-dropdown__button_label-width_auto .ck-button__label{width:auto}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-off:active,.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on:active{box-shadow:none}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-off:active:focus,.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on:active:focus{box-shadow:var(--ck-focus-outer-shadow),0 0}.ck.ck-dropdown__panel{border-radius:0}.ck-rounded-corners .ck.ck-dropdown__panel,.ck.ck-dropdown__panel.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-dropdown__panel{background:var(--ck-color-dropdown-panel-background);border:1px solid var(--ck-color-dropdown-panel-border);bottom:0;box-shadow:var(--ck-drop-shadow),0 0;min-width:100%}.ck.ck-dropdown__panel.ck-dropdown__panel_se{border-top-left-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_sw{border-top-right-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_ne{border-bottom-left-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_nw{border-bottom-right-radius:0}.ck.ck-dropdown__panel:focus{outline:none}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/dropdown/dropdown.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/dropdown.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_disabled.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAKA,MACC,4BACD,CAEA,gBACC,oBAAqB,CACrB,iBA2ED,CAzEC,oCACC,mBAAoB,CACpB,2BACD,CAGA,+CACC,UACD,CAEA,oCACC,YAAa,CAEb,sCAAuC,CAEvC,iBAAkB,CAHlB,yBA4DD,CAvDC,+DACC,oBACD,CAEA,mSAKC,WACD,CAEA,mSAUC,WAAY,CADZ,QAED,CAEA,oHAEC,MACD,CAEA,oHAEC,OACD,CAEA,kHAGC,QAAS,CACT,0BACD,CAEA,sHAGC,QAAS,CACT,0BACD,CAEA,sHAGC,QAAS,CACT,0BACD,CAQF,mCACC,mCACD,CCpFA,MACC,sDACD,CAEA,gBAEC,iBA2ED,CAzEC,oCACC,mCACD,CAGC,8CAIC,sCAAuC,CAHvC,gCAID,CAIA,8CACC,+BAAgC,CAGhC,oCACD,CAGD,gDC/BA,kCDiCA,CAIE,mFAEC,oCACD,CAIA,mFAEC,qCACD,CAID,iEAEC,eAAgB,CAChB,sBAAuB,CAFvB,SAGD,CAGA,6EC1DD,kCD4DC,CAGA,qDACC,2BAA4B,CAC5B,4BACD,CAEA,sGACC,UACD,CAGA,yHAEC,eAKD,CAHC,qIE7EF,2CF+EE,CAKH,uBGlFC,eHkHD,CAhCA,qFG9EE,qCH8GF,CAhCA,uBAIC,oDAAqD,CACrD,sDAAuD,CACvD,QAAS,CE1FT,oCAA8B,CF6F9B,cAuBD,CAnBC,6CACC,wBACD,CAEA,6CACC,yBACD,CAEA,6CACC,2BACD,CAEA,6CACC,4BACD,CAEA,6BACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-dropdown-max-width: 75vw;\n}\n\n.ck.ck-dropdown {\n\tdisplay: inline-block;\n\tposition: relative;\n\n\t& .ck-dropdown__arrow {\n\t\tpointer-events: none;\n\t\tz-index: var(--ck-z-default);\n\t}\n\n\t/* Dropdown button should span horizontally, e.g. in vertical toolbars */\n\t& .ck-button.ck-dropdown__button {\n\t\twidth: 100%;\n\t}\n\n\t& .ck-dropdown__panel {\n\t\tdisplay: none;\n\t\tz-index: var(--ck-z-panel);\n\t\tmax-width: var(--ck-dropdown-max-width);\n\n\t\tposition: absolute;\n\n\t\t&.ck-dropdown__panel-visible {\n\t\t\tdisplay: inline-block;\n\t\t}\n\n\t\t&.ck-dropdown__panel_ne,\n\t\t&.ck-dropdown__panel_nw,\n\t\t&.ck-dropdown__panel_n,\n\t\t&.ck-dropdown__panel_nmw,\n\t\t&.ck-dropdown__panel_nme {\n\t\t\tbottom: 100%;\n\t\t}\n\n\t\t&.ck-dropdown__panel_se,\n\t\t&.ck-dropdown__panel_sw,\n\t\t&.ck-dropdown__panel_smw,\n\t\t&.ck-dropdown__panel_sme,\n\t\t&.ck-dropdown__panel_s {\n\t\t\t/*\n\t\t\t * Using transform: translate3d( 0, 100%, 0 ) causes blurry dropdown on Chrome 67-78+ on non-retina displays.\n\t\t\t * See https://github.com/ckeditor/ckeditor5/issues/1053.\n\t\t\t */\n\t\t\ttop: 100%;\n\t\t\tbottom: auto;\n\t\t}\n\n\t\t&.ck-dropdown__panel_ne,\n\t\t&.ck-dropdown__panel_se {\n\t\t\tleft: 0px;\n\t\t}\n\n\t\t&.ck-dropdown__panel_nw,\n\t\t&.ck-dropdown__panel_sw {\n\t\t\tright: 0px;\n\t\t}\n\n\t\t&.ck-dropdown__panel_s,\n\t\t&.ck-dropdown__panel_n {\n\t\t\t/* Positioning panels relative to the center of the button */\n\t\t\tleft: 50%;\n\t\t\ttransform: translateX(-50%);\n\t\t}\n\n\t\t&.ck-dropdown__panel_nmw,\n\t\t&.ck-dropdown__panel_smw {\n\t\t\t/* Positioning panels relative to the middle-west of the button */\n\t\t\tleft: 75%;\n\t\t\ttransform: translateX(-75%);\n\t\t}\n\n\t\t&.ck-dropdown__panel_nme,\n\t\t&.ck-dropdown__panel_sme {\n\t\t\t/* Positioning panels relative to the middle-east of the button */\n\t\t\tleft: 25%;\n\t\t\ttransform: translateX(-25%);\n\t\t}\n\t}\n}\n\n/*\n * Toolbar dropdown panels should be always above the UI (eg. other dropdown panels) from the editor's content.\n * See https://github.com/ckeditor/ckeditor5/issues/7874\n */\n.ck.ck-toolbar .ck-dropdown__panel {\n\tz-index: calc( var(--ck-z-panel) + 1 );\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_shadow.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n:root {\n\t--ck-dropdown-arrow-size: calc(0.5 * var(--ck-icon-size));\n}\n\n.ck.ck-dropdown {\n\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\tfont-size: inherit;\n\n\t& .ck-dropdown__arrow {\n\t\twidth: var(--ck-dropdown-arrow-size);\n\t}\n\n\t@mixin ck-dir ltr {\n\t\t& .ck-dropdown__arrow {\n\t\t\tright: var(--ck-spacing-standard);\n\n\t\t\t/* A space to accommodate the triangle. */\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-dir rtl {\n\t\t& .ck-dropdown__arrow {\n\t\t\tleft: var(--ck-spacing-standard);\n\n\t\t\t/* A space to accommodate the triangle. */\n\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t}\n\t}\n\n\t&.ck-disabled .ck-dropdown__arrow {\n\t\t@mixin ck-disabled;\n\t}\n\n\t& .ck-button.ck-dropdown__button {\n\t\t@mixin ck-dir ltr {\n\t\t\t&:not(.ck-button_with-text) {\n\t\t\t\t/* Make sure dropdowns with just an icon have the right inner spacing */\n\t\t\t\tpadding-left: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t&:not(.ck-button_with-text) {\n\t\t\t\t/* Make sure dropdowns with just an icon have the right inner spacing */\n\t\t\t\tpadding-right: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\n\t\t/* #23 */\n\t\t& .ck-button__label {\n\t\t\twidth: 7em;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/70 */\n\t\t&.ck-disabled .ck-button__label {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5/issues/816 */\n\t\t&.ck-on {\n\t\t\tborder-bottom-left-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\n\t\t&.ck-dropdown__button_label-width_auto .ck-button__label {\n\t\t\twidth: auto;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5/issues/8699 */\n\t\t&.ck-off:active,\n\t\t&.ck-on:active {\n\t\t\tbox-shadow: none;\n\n\t\t\t&:focus {\n\t\t\t\t@mixin ck-box-shadow var(--ck-focus-outer-shadow);\n\t\t\t}\n\t\t}\n\t}\n}\n\n.ck.ck-dropdown__panel {\n\t@mixin ck-rounded-corners;\n\t@mixin ck-drop-shadow;\n\n\tbackground: var(--ck-color-dropdown-panel-background);\n\tborder: 1px solid var(--ck-color-dropdown-panel-border);\n\tbottom: 0;\n\n\t/* Make sure the panel is at least as wide as the drop-down\'s button. */\n\tmin-width: 100%;\n\n\t/* Disabled corner border radius to be consistent with the .dropdown__button\n\thttps://github.com/ckeditor/ckeditor5/issues/816 */\n\t&.ck-dropdown__panel_se {\n\t\tborder-top-left-radius: 0;\n\t}\n\n\t&.ck-dropdown__panel_sw {\n\t\tborder-top-right-radius: 0;\n\t}\n\n\t&.ck-dropdown__panel_ne {\n\t\tborder-bottom-left-radius: 0;\n\t}\n\n\t&.ck-dropdown__panel_nw {\n\t\tborder-bottom-right-radius: 0;\n\t}\n\n\t&:focus {\n\t\toutline: none;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A class which indicates that an element holding it is disabled.\n */\n@define-mixin ck-disabled {\n\topacity: var(--ck-disabled-opacity);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},3629:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-dropdown>.ck-dropdown__panel>.ck-list{border-radius:0}.ck-rounded-corners .ck.ck-dropdown>.ck-dropdown__panel>.ck-list,.ck.ck-dropdown>.ck-dropdown__panel>.ck-list.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0}.ck.ck-dropdown>.ck-dropdown__panel>.ck-list .ck-list__item:first-child>.ck-button{border-radius:0}.ck-rounded-corners .ck.ck-dropdown>.ck-dropdown__panel>.ck-list .ck-list__item:first-child>.ck-button,.ck.ck-dropdown>.ck-dropdown__panel>.ck-list .ck-list__item:first-child>.ck-button.ck-rounded-corners{border-radius:var(--ck-border-radius);border-bottom-left-radius:0;border-bottom-right-radius:0;border-top-left-radius:0}.ck.ck-dropdown>.ck-dropdown__panel>.ck-list .ck-list__item:last-child>.ck-button{border-radius:0}.ck-rounded-corners .ck.ck-dropdown>.ck-dropdown__panel>.ck-list .ck-list__item:last-child>.ck-button,.ck.ck-dropdown>.ck-dropdown__panel>.ck-list .ck-list__item:last-child>.ck-button.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0;border-top-right-radius:0}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/listdropdown.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAOA,6CCIC,eDqBD,CAzBA,iICQE,qCAAsC,CDJtC,wBAqBF,CAfE,mFCND,eDYC,CANA,6MCFA,qCAAsC,CDKpC,2BAA4B,CAC5B,4BAA6B,CAF7B,wBAIF,CAEA,kFCdD,eDmBC,CALA,2MCVA,qCAAsC,CDYpC,wBAAyB,CACzB,yBAEF",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n\n.ck.ck-dropdown > .ck-dropdown__panel > .ck-list {\n\t/* Disabled radius of top-left border to be consistent with .dropdown__button\n\thttps://github.com/ckeditor/ckeditor5/issues/816 */\n\t@mixin ck-rounded-corners {\n\t\tborder-top-left-radius: 0;\n\t}\n\n\t/* Make sure the button belonging to the first/last child of the list goes well with the\n\tborder radius of the entire panel. */\n\t& .ck-list__item {\n\t\t&:first-child > .ck-button {\n\t\t\t@mixin ck-rounded-corners {\n\t\t\t\tborder-top-left-radius: 0;\n\t\t\t\tborder-bottom-left-radius: 0;\n\t\t\t\tborder-bottom-right-radius: 0;\n\t\t\t}\n\t\t}\n\n\t\t&:last-child > .ck-button {\n\t\t\t@mixin ck-rounded-corners {\n\t\t\t\tborder-top-left-radius: 0;\n\t\t\t\tborder-top-right-radius: 0;\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},1792:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck.ck-splitbutton{font-size:inherit}.ck.ck-splitbutton .ck-splitbutton__action:focus{z-index:calc(var(--ck-z-default) + 1)}:root{--ck-color-split-button-hover-background:#ebebeb;--ck-color-split-button-hover-border:#b3b3b3}[dir=ltr] .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__action,[dir=ltr] .ck.ck-splitbutton:hover>.ck-splitbutton__action{border-bottom-right-radius:unset;border-top-right-radius:unset}[dir=rtl] .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__action,[dir=rtl] .ck.ck-splitbutton:hover>.ck-splitbutton__action{border-bottom-left-radius:unset;border-top-left-radius:unset}.ck.ck-splitbutton>.ck-splitbutton__arrow{min-width:unset}[dir=ltr] .ck.ck-splitbutton>.ck-splitbutton__arrow{border-bottom-left-radius:unset;border-top-left-radius:unset}[dir=rtl] .ck.ck-splitbutton>.ck-splitbutton__arrow{border-bottom-right-radius:unset;border-top-right-radius:unset}.ck.ck-splitbutton>.ck-splitbutton__arrow svg{width:var(--ck-dropdown-arrow-size)}.ck.ck-splitbutton>.ck-splitbutton__arrow:not(:focus){border-bottom-width:0;border-top-width:0}.ck.ck-splitbutton.ck-splitbutton_open>.ck-button:not(.ck-on):not(.ck-disabled):not(:hover),.ck.ck-splitbutton:hover>.ck-button:not(.ck-on):not(.ck-disabled):not(:hover){background:var(--ck-color-split-button-hover-background)}.ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):after,.ck.ck-splitbutton:hover>.ck-splitbutton__arrow:not(.ck-disabled):after{background-color:var(--ck-color-split-button-hover-border);content:"";height:100%;position:absolute;width:1px}.ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__arrow:focus:after,.ck.ck-splitbutton:hover>.ck-splitbutton__arrow:focus:after{--ck-color-split-button-hover-border:var(--ck-color-focus-border)}[dir=ltr] .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):after,[dir=ltr] .ck.ck-splitbutton:hover>.ck-splitbutton__arrow:not(.ck-disabled):after{left:-1px}[dir=rtl] .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):after,[dir=rtl] .ck.ck-splitbutton:hover>.ck-splitbutton__arrow:not(.ck-disabled):after{right:-1px}.ck.ck-splitbutton.ck-splitbutton_open{border-radius:0}.ck-rounded-corners .ck.ck-splitbutton.ck-splitbutton_open,.ck.ck-splitbutton.ck-splitbutton_open.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck-rounded-corners .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__action,.ck.ck-splitbutton.ck-splitbutton_open.ck-rounded-corners>.ck-splitbutton__action{border-bottom-left-radius:0}.ck-rounded-corners .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__arrow,.ck.ck-splitbutton.ck-splitbutton_open.ck-rounded-corners>.ck-splitbutton__arrow{border-bottom-right-radius:0}',"",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/dropdown/splitbutton.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/splitbutton.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAKA,mBAEC,iBAKD,CAHC,iDACC,qCACD,CCJD,MACC,gDAAyD,CACzD,4CACD,CAMC,oIAKE,gCAAiC,CADjC,6BASF,CAbA,oIAWE,+BAAgC,CADhC,4BAGF,CAEA,0CAGC,eAiBD,CApBA,oDAQE,+BAAgC,CADhC,4BAaF,CApBA,oDAcE,gCAAiC,CADjC,6BAOF,CAHC,8CACC,mCACD,CAKD,sDAEC,qBAAwB,CADxB,kBAED,CAQC,0KACC,wDACD,CAIA,8JAKC,0DAA2D,CAJ3D,UAAW,CAGX,WAAY,CAFZ,iBAAkB,CAClB,SAGD,CAGA,sIACC,iEACD,CAGC,kLACC,SACD,CAIA,kLACC,UACD,CAMF,uCCzFA,eDmGA,CAVA,qHCrFC,qCD+FD,CARE,qKACC,2BACD,CAEA,mKACC,4BACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-splitbutton {\n\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\tfont-size: inherit;\n\n\t& .ck-splitbutton__action:focus {\n\t\tz-index: calc(var(--ck-z-default) + 1);\n\t}\n}\n\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n\n:root {\n\t--ck-color-split-button-hover-background: hsl(0, 0%, 92%);\n\t--ck-color-split-button-hover-border: hsl(0, 0%, 70%);\n}\n\n.ck.ck-splitbutton {\n\t/*\n\t * Note: ck-rounded and ck-dir mixins don\'t go together (because they both use @nest).\n\t */\n\t&:hover > .ck-splitbutton__action,\n\t&.ck-splitbutton_open > .ck-splitbutton__action {\n\t\t@nest [dir="ltr"] & {\n\t\t\t/* Don\'t round the action button on the right side */\n\t\t\tborder-top-right-radius: unset;\n\t\t\tborder-bottom-right-radius: unset;\n\t\t}\n\n\t\t@nest [dir="rtl"] & {\n\t\t\t/* Don\'t round the action button on the left side */\n\t\t\tborder-top-left-radius: unset;\n\t\t\tborder-bottom-left-radius: unset;\n\t\t}\n\t}\n\n\t& > .ck-splitbutton__arrow {\n\t\t/* It\'s a text-less button and since the icon is positioned absolutely in such situation,\n\t\tit must get some arbitrary min-width. */\n\t\tmin-width: unset;\n\n\t\t@nest [dir="ltr"] & {\n\t\t\t/* Don\'t round the arrow button on the left side */\n\t\t\tborder-top-left-radius: unset;\n\t\t\tborder-bottom-left-radius: unset;\n\t\t}\n\n\t\t@nest [dir="rtl"] & {\n\t\t\t/* Don\'t round the arrow button on the right side */\n\t\t\tborder-top-right-radius: unset;\n\t\t\tborder-bottom-right-radius: unset;\n\t\t}\n\n\t\t& svg {\n\t\t\twidth: var(--ck-dropdown-arrow-size);\n\t\t}\n\t}\n\n\t/* Make sure the divider stretches 100% height of the button\n\thttps://github.com/ckeditor/ckeditor5/issues/10936 */\n\t& > .ck-splitbutton__arrow:not(:focus) {\n\t\tborder-top-width: 0px;\n\t\tborder-bottom-width: 0px;\n\t}\n\n\t/* When the split button is "open" (the arrow is on) or being hovered, it should get some styling\n\tas a whole. The background of both buttons should stand out and there should be a visual\n\tseparation between both buttons. */\n\t&.ck-splitbutton_open,\n\t&:hover {\n\t\t/* When the split button hovered as a whole, not as individual buttons. */\n\t\t& > .ck-button:not(.ck-on):not(.ck-disabled):not(:hover) {\n\t\t\tbackground: var(--ck-color-split-button-hover-background);\n\t\t}\n\n\t\t/* Splitbutton separator needs to be set with the ::after pseudoselector\n\t\tto display properly the borders on focus */\n\t\t& > .ck-splitbutton__arrow:not(.ck-disabled)::after {\n\t\t\tcontent: \'\';\n\t\t\tposition: absolute;\n\t\t\twidth: 1px;\n\t\t\theight: 100%;\n\t\t\tbackground-color: var(--ck-color-split-button-hover-border);\n\t\t}\n\n\t\t/* Make sure the divider between the buttons looks fine when the button is focused */\n\t\t& > .ck-splitbutton__arrow:focus::after {\n\t\t\t--ck-color-split-button-hover-border: var(--ck-color-focus-border);\n\t\t}\n\n\t\t@nest [dir="ltr"] & {\n\t\t\t& > .ck-splitbutton__arrow:not(.ck-disabled)::after {\n\t\t\t\tleft: -1px;\n\t\t\t}\n\t\t}\n\n\t\t@nest [dir="rtl"] & {\n\t\t\t& > .ck-splitbutton__arrow:not(.ck-disabled)::after {\n\t\t\t\tright: -1px;\n\t\t\t}\n\t\t}\n\t}\n\n\t/* Don\'t round the bottom left and right corners of the buttons when "open"\n\thttps://github.com/ckeditor/ckeditor5/issues/816 */\n\t&.ck-splitbutton_open {\n\t\t@mixin ck-rounded-corners {\n\t\t\t& > .ck-splitbutton__action {\n\t\t\t\tborder-bottom-left-radius: 0;\n\t\t\t}\n\n\t\t\t& > .ck-splitbutton__arrow {\n\t\t\t\tborder-bottom-right-radius: 0;\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},1666:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-toolbar-dropdown-max-width:60vw}.ck.ck-toolbar-dropdown>.ck-dropdown__panel{max-width:var(--ck-toolbar-dropdown-max-width);width:max-content}.ck.ck-toolbar-dropdown>.ck-dropdown__panel .ck-button:focus{z-index:calc(var(--ck-z-default) + 1)}.ck.ck-toolbar-dropdown .ck-toolbar{border:0}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/dropdown/toolbardropdown.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/toolbardropdown.css"],names:[],mappings:"AAKA,MACC,oCACD,CAEA,4CAGC,8CAA+C,CAD/C,iBAQD,CAJE,6DACC,qCACD,CCZF,oCACC,QACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-toolbar-dropdown-max-width: 60vw;\n}\n\n.ck.ck-toolbar-dropdown > .ck-dropdown__panel {\n\t/* https://github.com/ckeditor/ckeditor5/issues/5586 */\n\twidth: max-content;\n\tmax-width: var(--ck-toolbar-dropdown-max-width);\n\n\t& .ck-button {\n\t\t&:focus {\n\t\t\tz-index: calc(var(--ck-z-default) + 1);\n\t\t}\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-toolbar-dropdown .ck-toolbar {\n\tborder: 0;\n}\n"],sourceRoot:""}]);const a=s},8527:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-accessibility-help-dialog-max-width:600px;--ck-accessibility-help-dialog-max-height:400px;--ck-accessibility-help-dialog-border-color:#ccced1;--ck-accessibility-help-dialog-code-background-color:#ededed;--ck-accessibility-help-dialog-kbd-shadow-color:#9c9c9c}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content{border:1px solid transparent;max-height:var(--ck-accessibility-help-dialog-max-height);max-width:var(--ck-accessibility-help-dialog-max-width);overflow:auto;padding:var(--ck-spacing-large);user-select:text}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content:focus{border:var(--ck-focus-ring);box-shadow:var(--ck-focus-outer-shadow),0 0;outline:none}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content{*{white-space:normal}}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content .ck-label{display:none}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content h3{font-size:1.2em;font-weight:700}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content h4{font-size:1em;font-weight:700}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content h3,.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content h4,.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content p,.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content table{margin:1em 0}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content dl{border-bottom:none;border-top:1px solid var(--ck-accessibility-help-dialog-border-color);display:grid;grid-template-columns:2fr 1fr}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content dl dd,.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content dl dt{border-bottom:1px solid var(--ck-accessibility-help-dialog-border-color);padding:.4em 0}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content dl dt{grid-column-start:1}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content dl dd{grid-column-start:2;text-align:right}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content code,.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content kbd{background:var(--ck-accessibility-help-dialog-code-background-color);border-radius:2px;display:inline-block;font-size:.9em;line-height:1;padding:.4em;text-align:center;vertical-align:middle}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content code{font-family:monospace}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content kbd{box-shadow:0 1px 1px var(--ck-accessibility-help-dialog-kbd-shadow-color);margin:0 1px;min-width:1.8em}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content kbd+kbd{margin-left:2px}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/editorui/accessibilityhelp.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAQA,MACC,8CAA+C,CAC/C,+CAAgD,CAChD,mDAA8D,CAC9D,4DAAyE,CACzE,uDACD,CAEA,wEAOC,4BAA6B,CAJ7B,yDAA0D,CAD1D,uDAAwD,CAExD,aAAc,CAHd,+BAAgC,CAIhC,gBAgFD,CA5EC,8ECdA,2BAA2B,CCF3B,2CAA8B,CDC9B,YDkBA,CAZD,wEAcC,EACC,kBACD,CAqED,CAlEC,kFACC,YACD,CAEA,2EAEC,eAAgB,CADhB,eAED,CAEA,2EAEC,aAAc,CADd,eAED,CAEA,8SAIC,YACD,CAEA,2EAIC,kBAAmB,CADnB,qEAAsE,CAFtE,YAAa,CACb,6BAiBD,CAbC,4JACC,wEAAyE,CACzE,cACD,CAEA,8EACC,mBACD,CAEA,8EACC,mBAAoB,CACpB,gBACD,CAGD,yJAEC,oEAAqE,CAIrE,iBAAkB,CALlB,oBAAqB,CAOrB,cAAe,CAHf,aAAc,CAFd,YAAa,CAIb,iBAAkB,CAHlB,qBAKD,CAEA,6EACC,qBACD,CAEA,4EAEC,yEAA4E,CAC5E,YAAa,CAFb,eAOD,CAHC,gFACC,eACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_focus.css";\n@import "../../../mixins/_shadow.css";\n\n:root {\n\t--ck-accessibility-help-dialog-max-width: 600px;\n\t--ck-accessibility-help-dialog-max-height: 400px;\n\t--ck-accessibility-help-dialog-border-color: hsl(220, 6%, 81%);\n\t--ck-accessibility-help-dialog-code-background-color: hsl(0deg 0% 92.94%);\n\t--ck-accessibility-help-dialog-kbd-shadow-color: hsl(0deg 0% 61%);\n}\n\n.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content {\n\tpadding: var(--ck-spacing-large);\n\tmax-width: var(--ck-accessibility-help-dialog-max-width);\n\tmax-height: var(--ck-accessibility-help-dialog-max-height);\n\toverflow: auto;\n\tuser-select: text;\n\n\tborder: 1px solid transparent;\n\n\t&:focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-focus-outer-shadow);\n\t}\n\n\t* {\n\t\twhite-space: normal;\n\t}\n\n\t/* Hide the main label of the content container. */\n\t& .ck-label {\n\t\tdisplay: none;\n\t}\n\n\t& h3 {\n\t\tfont-weight: bold;\n\t\tfont-size: 1.2em;\n\t}\n\n\t& h4 {\n\t\tfont-weight: bold;\n\t\tfont-size: 1em;\n\t}\n\n\t& p,\n\t& h3,\n\t& h4,\n\t& table {\n\t\tmargin: 1em 0;\n\t}\n\n\t& dl {\n\t\tdisplay: grid;\n\t\tgrid-template-columns: 2fr 1fr;\n\t\tborder-top: 1px solid var(--ck-accessibility-help-dialog-border-color);\n\t\tborder-bottom: none;\n\n\t\t& dt, & dd {\n\t\t\tborder-bottom: 1px solid var(--ck-accessibility-help-dialog-border-color);\n\t\t\tpadding: .4em 0;\n\t\t}\n\n\t\t& dt {\n\t\t\tgrid-column-start: 1;\n\t\t}\n\n\t\t& dd {\n\t\t\tgrid-column-start: 2;\n\t\t\ttext-align: right;\n\t\t}\n\t}\n\n\t& kbd, & code {\n\t\tdisplay: inline-block;\n\t\tbackground: var(--ck-accessibility-help-dialog-code-background-color);\n\t\tpadding: .4em;\n\t\tvertical-align: middle;\n\t\tline-height: 1;\n\t\tborder-radius: 2px;\n\t\ttext-align: center;\n\t\tfont-size: .9em;\n\t}\n\n\t& code {\n\t\tfont-family: monospace;\n\t}\n\n\t& kbd {\n\t\tmin-width: 1.8em;\n\t\tbox-shadow: 0px 1px 1px var(--ck-accessibility-help-dialog-kbd-shadow-color);\n\t\tmargin: 0 1px;\n\n\t\t& + kbd {\n\t\t\tmargin-left: 2px;\n\t\t}\n\t}\n}\n\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A visual style of focused element's border.\n */\n@define-mixin ck-focus-ring {\n\t/* Disable native outline. */\n\toutline: none;\n\tborder: var(--ck-focus-ring)\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},1185:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-editable-blur-selection:#d9d9d9}.ck.ck-editor__editable:not(.ck-editor__nested-editable){border-radius:0}.ck-rounded-corners .ck.ck-editor__editable:not(.ck-editor__nested-editable),.ck.ck-editor__editable.ck-rounded-corners:not(.ck-editor__nested-editable){border-radius:var(--ck-border-radius)}.ck.ck-editor__editable.ck-focused:not(.ck-editor__nested-editable){border:var(--ck-focus-ring);box-shadow:var(--ck-inner-shadow),0 0;outline:none}.ck.ck-editor__editable_inline{border:1px solid transparent;overflow:auto;padding:0 var(--ck-spacing-standard)}.ck.ck-editor__editable_inline[dir=ltr]{text-align:left}.ck.ck-editor__editable_inline[dir=rtl]{text-align:right}.ck.ck-editor__editable_inline>:first-child{margin-top:var(--ck-spacing-large)}.ck.ck-editor__editable_inline>:last-child{margin-bottom:var(--ck-spacing-large)}.ck.ck-editor__editable_inline.ck-blurred ::selection{background:var(--ck-color-editable-blur-selection)}.ck.ck-balloon-panel.ck-toolbar-container[class*=arrow_n]:after{border-bottom-color:var(--ck-color-panel-background)}.ck.ck-balloon-panel.ck-toolbar-container[class*=arrow_s]:after{border-top-color:var(--ck-color-panel-background)}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/editorui/editorui.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAWA,MACC,0CACD,CAEA,yDCJC,eDWD,CAPA,yJCAE,qCDOF,CAJC,oEEPA,2BAA2B,CCF3B,qCAA8B,CDC9B,YFWA,CAGD,+BAGC,4BAA6B,CAF7B,aAAc,CACd,oCA6BD,CA1BC,wCACC,eACD,CAEA,wCACC,gBACD,CAGA,4CACC,kCACD,CAGA,2CAKC,qCACD,CAGA,sDACC,kDACD,CAKA,gEACC,oDACD,CAIA,gEACC,iDACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_shadow.css";\n@import "../../../mixins/_focus.css";\n@import "../../mixins/_button.css";\n\n:root {\n\t--ck-color-editable-blur-selection: hsl(0, 0%, 85%);\n}\n\n.ck.ck-editor__editable:not(.ck-editor__nested-editable) {\n\t@mixin ck-rounded-corners;\n\n\t&.ck-focused {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-inner-shadow);\n\t}\n}\n\n.ck.ck-editor__editable_inline {\n\toverflow: auto;\n\tpadding: 0 var(--ck-spacing-standard);\n\tborder: 1px solid transparent;\n\n\t&[dir="ltr"] {\n\t\ttext-align: left;\n\t}\n\n\t&[dir="rtl"] {\n\t\ttext-align: right;\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/116 */\n\t& > *:first-child {\n\t\tmargin-top: var(--ck-spacing-large);\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5/issues/847 */\n\t& > *:last-child {\n\t\t/*\n\t\t * This value should match with the default margins of the block elements (like .media or .image)\n\t\t * to avoid a content jumping when the fake selection container shows up (See https://github.com/ckeditor/ckeditor5/issues/9825).\n\t\t */\n\t\tmargin-bottom: var(--ck-spacing-large);\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5/issues/6517 */\n\t&.ck-blurred ::selection {\n\t\tbackground: var(--ck-color-editable-blur-selection);\n\t}\n}\n\n/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/111 */\n.ck.ck-balloon-panel.ck-toolbar-container[class*="arrow_n"] {\n\t&::after {\n\t\tborder-bottom-color: var(--ck-color-panel-background);\n\t}\n}\n\n.ck.ck-balloon-panel.ck-toolbar-container[class*="arrow_s"] {\n\t&::after {\n\t\tborder-top-color: var(--ck-color-panel-background);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A visual style of focused element's border.\n */\n@define-mixin ck-focus-ring {\n\t/* Disable native outline. */\n\toutline: none;\n\tborder: var(--ck-focus-ring)\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},7913:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-form__header{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between}.ck.ck-form__header h2.ck-form__header__label{flex-grow:1}:root{--ck-form-header-height:44px}.ck.ck-form__header{border-bottom:1px solid var(--ck-color-base-border);height:var(--ck-form-header-height);line-height:var(--ck-form-header-height);padding:var(--ck-spacing-small) var(--ck-spacing-large)}[dir=ltr] .ck.ck-form__header>.ck-icon{margin-right:var(--ck-spacing-medium)}[dir=rtl] .ck.ck-form__header>.ck-icon{margin-left:var(--ck-spacing-medium)}.ck.ck-form__header .ck-form__header__label{--ck-font-size-base:15px;font-weight:700}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/formheader/formheader.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/formheader/formheader.css"],names:[],mappings:"AAKA,oBAIC,kBAAmB,CAHnB,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CAEjB,6BAKD,CAHC,8CACC,WACD,CCPD,MACC,4BACD,CAEA,oBAIC,mDAAoD,CAFpD,mCAAoC,CACpC,wCAAyC,CAFzC,uDAmBD,CAdC,uCAEE,qCAMF,CARA,uCAME,oCAEF,CAEA,4CACC,wBAAyB,CACzB,eACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-form__header {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\talign-items: center;\n\tjustify-content: space-between;\n\n\t& h2.ck-form__header__label {\n\t\tflex-grow: 1;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n:root {\n\t--ck-form-header-height: 44px;\n}\n\n.ck.ck-form__header {\n\tpadding: var(--ck-spacing-small) var(--ck-spacing-large);\n\theight: var(--ck-form-header-height);\n\tline-height: var(--ck-form-header-height);\n\tborder-bottom: 1px solid var(--ck-color-base-border);\n\n\t& > .ck-icon {\n\t\t@mixin ck-dir ltr {\n\t\t\tmargin-right: var(--ck-spacing-medium);\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\tmargin-left: var(--ck-spacing-medium);\n\t\t}\n\t}\n\n\t& .ck-form__header__label {\n\t\t--ck-font-size-base: 15px;\n\t\tfont-weight: bold;\n\t}\n}\n'],sourceRoot:""}]);const a=s},9529:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-highlighted-text mark{background:var(--ck-color-highlight-background);font-size:inherit;font-weight:inherit;line-height:inherit;vertical-align:initial}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/highlightedtext/highlightedtext.css"],names:[],mappings:"AAKA,6BACC,+CAAgD,CAIhD,iBAAkB,CAFlB,mBAAoB,CACpB,mBAAoB,CAFpB,sBAID",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-highlighted-text mark {\n\tbackground: var(--ck-color-highlight-background);\n\tvertical-align: initial;\n\tfont-weight: inherit;\n\tline-height: inherit;\n\tfont-size: inherit;\n}\n"],sourceRoot:""}]);const a=s},7621:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-icon{vertical-align:middle}:root{--ck-icon-size:calc(var(--ck-line-height-base)*var(--ck-font-size-normal))}.ck.ck-icon{font-size:.8333350694em;height:var(--ck-icon-size);width:var(--ck-icon-size);will-change:transform}.ck.ck-icon,.ck.ck-icon *{cursor:inherit}.ck.ck-icon.ck-icon_inherit-color,.ck.ck-icon.ck-icon_inherit-color *{color:inherit}.ck.ck-icon.ck-icon_inherit-color :not([fill]){fill:currentColor}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/icon/icon.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/icon/icon.css"],names:[],mappings:"AAKA,YACC,qBACD,CCFA,MACC,0EACD,CAEA,YAKC,uBAAwB,CAHxB,0BAA2B,CAD3B,yBAA0B,CAU1B,qBAoBD,CAlBC,0BALA,cAQA,CAMC,sEACC,aAMD,CAJC,+CAEC,iBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-icon {\n\tvertical-align: middle;\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-icon-size: calc(var(--ck-line-height-base) * var(--ck-font-size-normal));\n}\n\n.ck.ck-icon {\n\twidth: var(--ck-icon-size);\n\theight: var(--ck-icon-size);\n\n\t/* Multiplied by the height of the line in "px" should give SVG "viewport" dimensions */\n\tfont-size: .8333350694em;\n\n\t/* Inherit cursor style (#5). */\n\tcursor: inherit;\n\n\t/* This will prevent blurry icons on Firefox. See #340. */\n\twill-change: transform;\n\n\t& * {\n\t\t/* Inherit cursor style (#5). */\n\t\tcursor: inherit;\n\t}\n\n\t/* Allows dynamic coloring of an icon by inheriting its color from the parent. */\n\t&.ck-icon_inherit-color {\n\t\tcolor: inherit;\n\n\t\t& * {\n\t\t\tcolor: inherit;\n\n\t\t\t&:not([fill]) {\n\t\t\t\t/* Needed by FF. */\n\t\t\t\tfill: currentColor;\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},253:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-input-width:18em;--ck-input-text-width:var(--ck-input-width)}.ck.ck-input{border-radius:0}.ck-rounded-corners .ck.ck-input,.ck.ck-input.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-input{background:var(--ck-color-input-background);border:1px solid var(--ck-color-input-border);min-height:var(--ck-ui-component-min-height);min-width:var(--ck-input-width);padding:var(--ck-spacing-extra-tiny) var(--ck-spacing-medium);transition:box-shadow .1s ease-in-out,border .1s ease-in-out}@media (prefers-reduced-motion:reduce){.ck.ck-input{transition:none}}.ck.ck-input:focus{border:var(--ck-focus-ring);box-shadow:var(--ck-focus-outer-shadow),0 0;outline:none}.ck.ck-input[readonly]{background:var(--ck-color-input-disabled-background);border:1px solid var(--ck-color-input-disabled-border);color:var(--ck-color-input-disabled-text)}.ck.ck-input[readonly]:focus{box-shadow:var(--ck-focus-disabled-outer-shadow),0 0}.ck.ck-input.ck-error{animation:ck-input-shake .3s ease both;border-color:var(--ck-color-input-error-border)}@media (prefers-reduced-motion:reduce){.ck.ck-input.ck-error{animation:none}}.ck.ck-input.ck-error:focus{box-shadow:var(--ck-focus-error-outer-shadow),0 0}@keyframes ck-input-shake{20%{transform:translateX(-2px)}40%{transform:translateX(2px)}60%{transform:translateX(-1px)}80%{transform:translateX(1px)}}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/input/input.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AASA,MACC,qBAAsB,CAGtB,2CACD,CAEA,aCLC,eDmDD,CA9CA,iECDE,qCD+CF,CA9CA,aAGC,2CAA4C,CAC5C,6CAA8C,CAK9C,4CAA6C,CAH7C,+BAAgC,CADhC,6DAA8D,CAO9D,4DAkCD,CAhCC,uCAdD,aAeE,eA+BF,CA9BC,CAEA,mBEvBA,2BAA2B,CCF3B,2CAA8B,CDC9B,YF2BA,CAEA,uBAEC,oDAAqD,CADrD,sDAAuD,CAEvD,yCAMD,CAJC,6BGnCD,oDHsCC,CAGD,sBAEC,sCAAuC,CADvC,+CAUD,CAPC,uCAJD,sBAKE,cAMF,CALC,CAEA,4BGjDD,iDHmDC,CAIF,0BACC,IACC,0BACD,CAEA,IACC,yBACD,CAEA,IACC,0BACD,CAEA,IACC,yBACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_focus.css";\n@import "../../../mixins/_shadow.css";\n\n:root {\n\t--ck-input-width: 18em;\n\n\t/* Backward compatibility. */\n\t--ck-input-text-width: var(--ck-input-width);\n}\n\n.ck.ck-input {\n\t@mixin ck-rounded-corners;\n\n\tbackground: var(--ck-color-input-background);\n\tborder: 1px solid var(--ck-color-input-border);\n\tpadding: var(--ck-spacing-extra-tiny) var(--ck-spacing-medium);\n\tmin-width: var(--ck-input-width);\n\n\t/* This is important to stay of the same height as surrounding buttons */\n\tmin-height: var(--ck-ui-component-min-height);\n\n\t/* Apply some smooth transition to the box-shadow and border. */\n\ttransition: box-shadow .1s ease-in-out, border .1s ease-in-out;\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\ttransition: none;\n\t}\n\n\t&:focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-focus-outer-shadow);\n\t}\n\n\t&[readonly] {\n\t\tborder: 1px solid var(--ck-color-input-disabled-border);\n\t\tbackground: var(--ck-color-input-disabled-background);\n\t\tcolor: var(--ck-color-input-disabled-text);\n\n\t\t&:focus {\n\t\t\t/* The read-only input should have a slightly less visible shadow when focused. */\n\t\t\t@mixin ck-box-shadow var(--ck-focus-disabled-outer-shadow);\n\t\t}\n\t}\n\n\t&.ck-error {\n\t\tborder-color: var(--ck-color-input-error-border);\n\t\tanimation: ck-input-shake .3s ease both;\n\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\tanimation: none;\n\t\t}\n\n\t\t&:focus {\n\t\t\t@mixin ck-box-shadow var(--ck-focus-error-outer-shadow);\n\t\t}\n\t}\n}\n\n@keyframes ck-input-shake {\n\t20% {\n\t\ttransform: translateX(-2px);\n\t}\n\n\t40% {\n\t\ttransform: translateX(2px);\n\t}\n\n\t60% {\n\t\ttransform: translateX(-1px);\n\t}\n\n\t80% {\n\t\ttransform: translateX(1px);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A visual style of focused element's border.\n */\n@define-mixin ck-focus-ring {\n\t/* Disable native outline. */\n\toutline: none;\n\tborder: var(--ck-focus-ring)\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},7801:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-label{display:block}.ck.ck-voice-label{display:none}.ck.ck-label{font-weight:700}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/label/label.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/label/label.css"],names:[],mappings:"AAKA,aACC,aACD,CAEA,mBACC,YACD,CCNA,aACC,eACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-label {\n\tdisplay: block;\n}\n\n.ck.ck-voice-label {\n\tdisplay: none;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-label {\n\tfont-weight: bold;\n}\n"],sourceRoot:""}]);const a=s},4962:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper{display:flex;position:relative}.ck.ck-labeled-field-view .ck.ck-label{display:block;position:absolute}:root{--ck-labeled-field-view-transition:.1s cubic-bezier(0,0,0.24,0.95);--ck-labeled-field-empty-unfocused-max-width:100% - 2 * var(--ck-spacing-medium);--ck-labeled-field-label-default-position-x:var(--ck-spacing-medium);--ck-labeled-field-label-default-position-y:calc(var(--ck-font-size-base)*0.6);--ck-color-labeled-field-label-background:var(--ck-color-base-background)}.ck.ck-labeled-field-view{border-radius:0}.ck-rounded-corners .ck.ck-labeled-field-view,.ck.ck-labeled-field-view.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper{width:100%}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{top:0}[dir=ltr] .ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{left:0;transform:translate(var(--ck-spacing-medium),-6px) scale(.75);transform-origin:0 0}[dir=rtl] .ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{right:0;transform:translate(calc(var(--ck-spacing-medium)*-1),-6px) scale(.75);transform-origin:100% 0}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{background:var(--ck-color-labeled-field-label-background);font-weight:400;line-height:normal;max-width:100%;overflow:hidden;padding:0 calc(var(--ck-font-size-tiny)*.5);pointer-events:none;text-overflow:ellipsis;transition:transform var(--ck-labeled-field-view-transition),padding var(--ck-labeled-field-view-transition),background var(--ck-labeled-field-view-transition)}@media (prefers-reduced-motion:reduce){.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{transition:none}}.ck.ck-labeled-field-view.ck-error .ck-input:not([readonly])+.ck.ck-label,.ck.ck-labeled-field-view.ck-error>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{color:var(--ck-color-base-error)}.ck.ck-labeled-field-view .ck-labeled-field-view__status{font-size:var(--ck-font-size-small);margin-top:var(--ck-spacing-small);white-space:normal}.ck.ck-labeled-field-view .ck-labeled-field-view__status.ck-labeled-field-view__status_error{color:var(--ck-color-base-error)}.ck.ck-labeled-field-view.ck-disabled>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,.ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{color:var(--ck-color-input-disabled-text)}[dir=ltr] .ck.ck-labeled-field-view.ck-disabled.ck-labeled-field-view_empty:not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,[dir=ltr] .ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder):not(.ck-error)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{transform:translate(var(--ck-labeled-field-label-default-position-x),var(--ck-labeled-field-label-default-position-y)) scale(1)}[dir=rtl] .ck.ck-labeled-field-view.ck-disabled.ck-labeled-field-view_empty:not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,[dir=rtl] .ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder):not(.ck-error)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{transform:translate(calc(var(--ck-labeled-field-label-default-position-x)*-1),var(--ck-labeled-field-label-default-position-y)) scale(1)}.ck.ck-labeled-field-view.ck-disabled.ck-labeled-field-view_empty:not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,.ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder):not(.ck-error)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{background:transparent;max-width:calc(var(--ck-labeled-field-empty-unfocused-max-width));padding:0}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck-dropdown>.ck.ck-button{background:transparent}.ck.ck-labeled-field-view.ck-labeled-field-view_empty>.ck.ck-labeled-field-view__input-wrapper>.ck-dropdown>.ck-button>.ck-button__label{opacity:0}.ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck-dropdown+.ck-label{max-width:calc(var(--ck-labeled-field-empty-unfocused-max-width) - var(--ck-dropdown-arrow-size) - var(--ck-spacing-standard))}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/labeledfield/labeledfieldview.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/labeledfield/labeledfieldview.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAMC,mEACC,YAAa,CACb,iBACD,CAEA,uCACC,aAAc,CACd,iBACD,CCND,MACC,kEAAsE,CACtE,gFAAiF,CACjF,oEAAqE,CACrE,8EAAiF,CACjF,yEACD,CAEA,0BCLC,eDmHD,CA9GA,2FCDE,qCD+GF,CA3GC,mEACC,UAwCD,CAtCC,gFACC,KAoCD,CArCA,0FAIE,MAAS,CAGT,6DAA+D,CAF/D,oBAgCF,CArCA,0FAWE,OAAU,CAEV,sEAA0E,CAD1E,uBAyBF,CArCA,gFAkBC,yDAA0D,CAG1D,eAAmB,CADnB,kBAAoB,CAOpB,cAAe,CAFf,eAAgB,CANhB,2CAA8C,CAH9C,mBAAoB,CAQpB,sBAAuB,CAKvB,+JAQD,CAHC,uCAlCD,gFAmCE,eAEF,CADC,CASD,mKACC,gCACD,CAGD,yDACC,mCAAoC,CACpC,kCAAmC,CAInC,kBAKD,CAHC,6FACC,gCACD,CAID,4OAEC,yCACD,CAIA,2XAGE,+HAYF,CAfA,2XAOE,wIAQF,CAfA,uWAaC,sBAAuB,CAFvB,iEAAkE,CAGlE,SACD,CAKA,8FACC,sBACD,CAGA,yIACC,SACD,CAGA,kMACC,8HACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-labeled-field-view {\n\t& > .ck.ck-labeled-field-view__input-wrapper {\n\t\tdisplay: flex;\n\t\tposition: relative;\n\t}\n\n\t& .ck.ck-label {\n\t\tdisplay: block;\n\t\tposition: absolute;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n@import "../../../mixins/_rounded.css";\n\n:root {\n\t--ck-labeled-field-view-transition: .1s cubic-bezier(0, 0, 0.24, 0.95);\n\t--ck-labeled-field-empty-unfocused-max-width: 100% - 2 * var(--ck-spacing-medium);\n\t--ck-labeled-field-label-default-position-x: var(--ck-spacing-medium);\n\t--ck-labeled-field-label-default-position-y: calc(0.6 * var(--ck-font-size-base));\n\t--ck-color-labeled-field-label-background: var(--ck-color-base-background);\n}\n\n.ck.ck-labeled-field-view {\n\t@mixin ck-rounded-corners;\n\n\t& > .ck.ck-labeled-field-view__input-wrapper {\n\t\twidth: 100%;\n\n\t\t& > .ck.ck-label {\n\t\t\ttop: 0px;\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tleft: 0px;\n\t\t\t\ttransform-origin: 0 0;\n\t\t\t\t/* By default, display the label scaled down above the field. */\n\t\t\t\ttransform: translate(var(--ck-spacing-medium), -6px) scale(.75);\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tright: 0px;\n\t\t\t\ttransform-origin: 100% 0;\n\t\t\t\ttransform: translate(calc(-1 * var(--ck-spacing-medium)), -6px) scale(.75);\n\t\t\t}\n\n\t\t\tpointer-events: none;\n\n\t\t\tbackground: var(--ck-color-labeled-field-label-background);\n\t\t\tpadding: 0 calc(.5 * var(--ck-font-size-tiny));\n\t\t\tline-height: initial;\n\t\t\tfont-weight: normal;\n\n\t\t\t/* Prevent overflow when the label is longer than the input */\n\t\t\ttext-overflow: ellipsis;\n\t\t\toverflow: hidden;\n\n\t\t\tmax-width: 100%;\n\n\t\t\ttransition:\n\t\t\t\ttransform var(--ck-labeled-field-view-transition),\n\t\t\t\tpadding var(--ck-labeled-field-view-transition),\n\t\t\t\tbackground var(--ck-labeled-field-view-transition);\n\n\t\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\t\ttransition: none;\n\t\t\t}\n\t\t}\n\t}\n\n\t&.ck-error {\n\t\t& > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label {\n\t\t\tcolor: var(--ck-color-base-error);\n\t\t}\n\n\t\t& .ck-input:not([readonly]) + .ck.ck-label {\n\t\t\tcolor: var(--ck-color-base-error);\n\t\t}\n\t}\n\n\t& .ck-labeled-field-view__status {\n\t\tfont-size: var(--ck-font-size-small);\n\t\tmargin-top: var(--ck-spacing-small);\n\n\t\t/* Let the info wrap to the next line to avoid stretching the layout horizontally.\n\t\tThe status could be very long. */\n\t\twhite-space: normal;\n\n\t\t&.ck-labeled-field-view__status_error {\n\t\t\tcolor: var(--ck-color-base-error);\n\t\t}\n\t}\n\n\t/* Disabled fields and fields that have no focus should fade out. */\n\t&.ck-disabled > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label,\n\t&.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused) > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label {\n\t\tcolor: var(--ck-color-input-disabled-text);\n\t}\n\n\t/* Fields that are disabled or not focused and without a placeholder should have full-sized labels. */\n\t/* stylelint-disable-next-line no-descending-specificity */\n\t&.ck-disabled.ck-labeled-field-view_empty:not(.ck-labeled-field-view_placeholder) > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label,\n\t&.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder):not(.ck-error) > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label {\n\t\t@mixin ck-dir ltr {\n\t\t\ttransform: translate(var(--ck-labeled-field-label-default-position-x), var(--ck-labeled-field-label-default-position-y)) scale(1);\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\ttransform: translate(calc(-1 * var(--ck-labeled-field-label-default-position-x)), var(--ck-labeled-field-label-default-position-y)) scale(1);\n\t\t}\n\n\t\t/* Compensate for the default translate position. */\n\t\tmax-width: calc(var(--ck-labeled-field-empty-unfocused-max-width));\n\n\t\tbackground: transparent;\n\t\tpadding: 0;\n\t}\n\n\t/*------ DropdownView integration ----------------------------------------------------------------------------------- */\n\n\t/* Make sure dropdown\' background color in any of dropdown\'s state does not collide with labeled field. */\n\t& > .ck.ck-labeled-field-view__input-wrapper > .ck-dropdown > .ck.ck-button {\n\t\tbackground: transparent;\n\t}\n\n\t/* When the dropdown is "empty", the labeled field label replaces its label. */\n\t&.ck-labeled-field-view_empty > .ck.ck-labeled-field-view__input-wrapper > .ck-dropdown > .ck-button > .ck-button__label {\n\t\topacity: 0;\n\t}\n\n\t/* Make sure the label of the empty, unfocused input does not cover the dropdown arrow. */\n\t&.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder) > .ck.ck-labeled-field-view__input-wrapper > .ck-dropdown + .ck-label {\n\t\tmax-width: calc(var(--ck-labeled-field-empty-unfocused-max-width) - var(--ck-dropdown-arrow-size) - var(--ck-spacing-standard));\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},5199:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-list{display:flex;flex-direction:column;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.ck.ck-list .ck-list__item,.ck.ck-list .ck-list__separator{display:block}.ck.ck-list .ck-list__item>:focus{position:relative;z-index:var(--ck-z-default)}:root{--ck-list-button-padding:calc(var(--ck-line-height-base)*0.11*var(--ck-font-size-base)) calc(var(--ck-line-height-base)*0.4*var(--ck-font-size-base))}.ck.ck-list{border-radius:0}.ck-rounded-corners .ck.ck-list,.ck.ck-list.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-list{background:var(--ck-color-list-background);list-style-type:none}.ck.ck-list__item{cursor:default;min-width:12em}.ck.ck-list__item>.ck-button{border-radius:0;min-height:unset;width:100%}[dir=ltr] .ck.ck-list__item>.ck-button{text-align:left}[dir=rtl] .ck.ck-list__item>.ck-button{text-align:right}.ck.ck-list__item>.ck-button{padding:var(--ck-list-button-padding)}.ck.ck-list__item>.ck-button:active{box-shadow:none}.ck.ck-list__item>.ck-button.ck-on{background:var(--ck-color-list-button-on-background);color:var(--ck-color-list-button-on-text)}.ck.ck-list__item>.ck-button.ck-on:active{box-shadow:none}.ck.ck-list__item>.ck-button.ck-on:hover:not(.ck-disabled){background:var(--ck-color-list-button-on-background-focus)}.ck.ck-list__item>.ck-button.ck-on:focus:not(.ck-switchbutton):not(.ck-disabled){border-color:var(--ck-color-base-background)}.ck.ck-list__item>.ck-button:hover:not(.ck-disabled){background:var(--ck-color-list-button-hover-background)}.ck.ck-list__item>.ck-switchbutton.ck-on{background:var(--ck-color-list-background);color:inherit}.ck.ck-list__item>.ck-switchbutton.ck-on:hover:not(.ck-disabled){background:var(--ck-color-list-button-hover-background);color:inherit}.ck-list .ck-list__group{padding-top:var(--ck-spacing-medium);:not(.ck-hidden)~&{border-top:1px solid var(--ck-color-base-border)}}.ck-list .ck-list__group>.ck-label{font-size:11px;font-weight:700;padding:var(--ck-spacing-medium) var(--ck-spacing-medium) 0 var(--ck-spacing-medium)}.ck.ck-list__separator{background:var(--ck-color-base-border);height:1px;width:100%}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/list/list.css","webpack://./../ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/list/list.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAOA,YAGC,YAAa,CACb,qBAAsB,CCFtB,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBDaD,CAZC,2DAEC,aACD,CAKA,kCACC,iBAAkB,CAClB,2BACD,CEdD,MACC,qJAGD,CAEA,YCLC,eDUD,CALA,+DCDE,qCDMF,CALA,YAIC,0CAA2C,CAD3C,oBAED,CAEA,kBACC,cAAe,CACf,cA2DD,CAzDC,6BAGC,eAAgB,CAFhB,gBAAiB,CACjB,UAwCD,CA1CA,uCAME,eAoCF,CA1CA,uCAUE,gBAgCF,CA1CA,6BAgBC,qCA0BD,CAxBC,oCACC,eACD,CAEA,mCACC,oDAAqD,CACrD,yCAaD,CAXC,0CACC,eACD,CAEA,2DACC,0DACD,CAEA,iFACC,4CACD,CAGD,qDACC,uDACD,CAMA,yCACC,0CAA2C,CAC3C,aAMD,CAJC,iEACC,uDAAwD,CACxD,aACD,CAKH,yBACC,oCAAqC,CAGrC,mBACC,gDACD,CAOD,CALC,mCACC,cAAe,CACf,eAAiB,CACjB,oFACD,CAGD,uBAGC,sCAAuC,CAFvC,UAAW,CACX,UAED",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../mixins/_unselectable.css";\n\n.ck.ck-list {\n\t@mixin ck-unselectable;\n\n\tdisplay: flex;\n\tflex-direction: column;\n\n\t& .ck-list__item,\n\t& .ck-list__separator {\n\t\tdisplay: block;\n\t}\n\n\t/* Make sure that whatever child of the list item gets focus, it remains on the\n\ttop. Thanks to that, styles like box-shadow, outline, etc. are not masked by\n\tadjacent list items. */\n\t& .ck-list__item > *:focus {\n\t\tposition: relative;\n\t\tz-index: var(--ck-z-default);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Makes element unselectable.\n */\n@define-mixin ck-unselectable {\n\t-moz-user-select: none;\n\t-webkit-user-select: none;\n\t-ms-user-select: none;\n\tuser-select: none\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_shadow.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n:root {\n\t--ck-list-button-padding:\n\t\tcalc(.11 * var(--ck-line-height-base) * var(--ck-font-size-base))\n\t\tcalc(.4 * var(--ck-line-height-base) * var(--ck-font-size-base));\n}\n\n.ck.ck-list {\n\t@mixin ck-rounded-corners;\n\n\tlist-style-type: none;\n\tbackground: var(--ck-color-list-background);\n}\n\n.ck.ck-list__item {\n\tcursor: default;\n\tmin-width: 12em;\n\n\t& > .ck-button {\n\t\tmin-height: unset;\n\t\twidth: 100%;\n\t\tborder-radius: 0;\n\n\t\t@mixin ck-dir ltr {\n\t\t\ttext-align: left;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\ttext-align: right;\n\t\t}\n\n\t\t/* List items should have the same height. Use absolute units to make sure it is so\n\t\t because e.g. different heading styles may have different height\n\t\t https://github.com/ckeditor/ckeditor5-heading/issues/63 */\n\t\tpadding: var(--ck-list-button-padding);\n\n\t\t&:active {\n\t\t\tbox-shadow: none;\n\t\t}\n\n\t\t&.ck-on {\n\t\t\tbackground: var(--ck-color-list-button-on-background);\n\t\t\tcolor: var(--ck-color-list-button-on-text);\n\n\t\t\t&:active {\n\t\t\t\tbox-shadow: none;\n\t\t\t}\n\n\t\t\t&:hover:not(.ck-disabled) {\n\t\t\t\tbackground: var(--ck-color-list-button-on-background-focus);\n\t\t\t}\n\n\t\t\t&:focus:not(.ck-switchbutton):not(.ck-disabled) {\n\t\t\t\tborder-color: var(--ck-color-base-background);\n\t\t\t}\n\t\t}\n\n\t\t&:hover:not(.ck-disabled) {\n\t\t\tbackground: var(--ck-color-list-button-hover-background);\n\t\t}\n\t}\n\n\t/* It\'s unnecessary to change the background/text of a switch toggle; it has different ways\n\tof conveying its state (like the switcher) */\n\t& > .ck-switchbutton {\n\t\t&.ck-on {\n\t\t\tbackground: var(--ck-color-list-background);\n\t\t\tcolor: inherit;\n\n\t\t\t&:hover:not(.ck-disabled) {\n\t\t\t\tbackground: var(--ck-color-list-button-hover-background);\n\t\t\t\tcolor: inherit;\n\t\t\t}\n\t\t}\n\t}\n}\n\n.ck-list .ck-list__group {\n\tpadding-top: var(--ck-spacing-medium);\n\n\t/* The group should have a border when it\'s not the first item. */\n\t*:not(.ck-hidden) ~ & {\n\t\tborder-top: 1px solid var(--ck-color-base-border);\n\t}\n\n\t& > .ck-label {\n\t\tfont-size: 11px;\n\t\tfont-weight: bold;\n\t\tpadding: var(--ck-spacing-medium) var(--ck-spacing-medium) 0 var(--ck-spacing-medium);\n\t}\n}\n\n.ck.ck-list__separator {\n\theight: 1px;\n\twidth: 100%;\n\tbackground: var(--ck-color-base-border);\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},497:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-menu-bar{background:var(--ck-color-base-background);border:1px solid var(--ck-color-toolbar-border);display:flex;flex-wrap:wrap;gap:var(--ck-spacing-small);justify-content:flex-start;padding:var(--ck-spacing-small);width:100%}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/menubar/menubar.css"],names:[],mappings:"AAKA,gBAIC,0CAA2C,CAG3C,+CAAgD,CANhD,YAAa,CACb,cAAe,CAIf,2BAA4B,CAH5B,0BAA2B,CAE3B,+BAAgC,CAGhC,UACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-menu-bar {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tjustify-content: flex-start;\n\tbackground: var(--ck-color-base-background);\n\tpadding: var(--ck-spacing-small);\n\tgap: var(--ck-spacing-small);\n\tborder: 1px solid var(--ck-color-toolbar-border);\n\twidth: 100%;\n}\n"],sourceRoot:""}]);const a=s},4:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-menu-bar__menu{display:block;font-size:inherit;position:relative}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level{max-width:100%}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/menubar/menubarmenu.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/menubar/menubarmenu.css"],names:[],mappings:"AAKA,sBACC,aAAc,CCCd,iBAAkB,CDAlB,iBACD,CCCC,kDACC,cACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-menu-bar__menu {\n\tdisplay: block;\n\tposition: relative;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-menu-bar__menu {\n\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\tfont-size: inherit;\n\n\t&.ck-menu-bar__menu_top-level {\n\t\tmax-width: 100%;\n\t}\n}\n"],sourceRoot:""}]);const a=s},3344:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-menu-bar__menu>.ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow{pointer-events:none;z-index:var(--ck-z-default)}.ck.ck-menu-bar__menu>.ck-menu-bar__menu__button{padding:var(--ck-list-button-padding);width:100%}.ck.ck-menu-bar__menu>.ck-menu-bar__menu__button>.ck-button__label{flex-grow:1;overflow:hidden;text-overflow:ellipsis}.ck.ck-menu-bar__menu>.ck-menu-bar__menu__button.ck-disabled>.ck-button__label{opacity:var(--ck-disabled-opacity)}[dir=ltr] .ck.ck-menu-bar__menu>.ck-menu-bar__menu__button:not(.ck-button_with-text){padding-left:var(--ck-spacing-small)}[dir=rtl] .ck.ck-menu-bar__menu>.ck-menu-bar__menu__button:not(.ck-button_with-text){padding-right:var(--ck-spacing-small)}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level>.ck-menu-bar__menu__button{min-height:unset;padding:var(--ck-spacing-small) var(--ck-spacing-medium)}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level>.ck-menu-bar__menu__button .ck-button__label{line-height:unset;width:unset}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level>.ck-menu-bar__menu__button.ck-on{border-bottom-left-radius:0;border-bottom-right-radius:0}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level>.ck-menu-bar__menu__button .ck-icon{display:none}.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button{border-radius:0}.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button:focus{border-color:transparent;box-shadow:none}.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button:focus:not(.ck-on){background:var(--ck-color-button-default-hover-background)}.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button:not(:has(.ck-button__icon))>.ck-button__label{margin-left:calc(var(--ck-icon-size) - var(--ck-spacing-small))}.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow{width:var(--ck-dropdown-arrow-size)}[dir=ltr] .ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow{transform:rotate(-90deg)}[dir=rtl] .ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow{transform:rotate(90deg)}.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button.ck-disabled>.ck-menu-bar__menu__button__arrow{opacity:var(--ck-disabled-opacity)}[dir=ltr] .ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow{margin-left:var(--ck-spacing-standard);right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow{left:var(--ck-spacing-standard);margin-right:var(--ck-spacing-small)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/menubar/menubarmenubutton.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/menubar/menubarmenubutton.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_disabled.css"],names:[],mappings:"AAMC,mFACC,mBAAoB,CACpB,2BACD,CCIA,iDACC,qCAAsC,CACtC,UAuBD,CArBC,mEACC,WAAY,CACZ,eAAgB,CAChB,sBACD,CAEA,+ECdD,kCDgBC,CAGC,qFACC,oCACD,CAIA,qFACC,qCACD,CAOF,6EAEC,gBAAiB,CADjB,wDAgBD,CAbC,+FAEC,iBAAkB,CADlB,WAED,CAEA,mFACC,2BAA4B,CAC5B,4BACD,CAEA,sFACC,YACD,CAMD,mFACC,eAiDD,CA/CC,yFACC,wBAAyB,CACzB,eAKD,CAHC,qGACC,0DACD,CAID,iIACC,+DACD,CAEA,qHACC,mCASD,CAVA,+HAIE,wBAMF,CAVA,+HAQE,uBAEF,CAEA,iICrFD,kCDuFC,CAGC,+HAIC,sCAAuC,CAHvC,gCAID,CAIA,+HACC,+BAAgC,CAGhC,oCACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-menu-bar__menu {\n\t& > .ck-menu-bar__menu__button > .ck-menu-bar__menu__button__arrow {\n\t\tpointer-events: none;\n\t\tz-index: var(--ck-z-default);\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_disabled.css";\n@import "../../mixins/_button.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-menu-bar__menu {\n\t/*\n\t * All menu buttons.\n\t */\n\t& > .ck-menu-bar__menu__button {\n\t\tpadding: var(--ck-list-button-padding);\n\t\twidth: 100%;\n\n\t\t& > .ck-button__label {\n\t\t\tflex-grow: 1;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t&.ck-disabled > .ck-button__label {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t@mixin ck-dir ltr {\n\t\t\t&:not(.ck-button_with-text) {\n\t\t\t\tpadding-left: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t&:not(.ck-button_with-text) {\n\t\t\t\tpadding-right: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\t}\n\n\t/*\n\t * Top-level menu buttons only.\n\t */\n\t&.ck-menu-bar__menu_top-level > .ck-menu-bar__menu__button {\n\t\tpadding: var(--ck-spacing-small) var(--ck-spacing-medium);\n\t\tmin-height: unset;\n\n\t\t& .ck-button__label {\n\t\t\twidth: unset;\n\t\t\tline-height: unset;\n\t\t}\n\n\t\t&.ck-on {\n\t\t\tborder-bottom-left-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\n\t\t& .ck-icon {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t/*\n\t * Sub-menu buttons.\n\t */\n\t&:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button {\n\t\tborder-radius: 0;\n\n\t\t&:focus {\n\t\t\tborder-color: transparent;\n\t\t\tbox-shadow: none;\n\n\t\t\t&:not(.ck-on) {\n\t\t\t\tbackground: var(--ck-color-button-default-hover-background);\n\t\t\t}\n\t\t}\n\n\t\t/* Spacing in buttons that miss the icon. */\n\t\t&:not(:has(.ck-button__icon)) > .ck-button__label {\n\t\t\tmargin-left: calc(var(--ck-icon-size) - var(--ck-spacing-small));\n\t\t}\n\n\t\t& > .ck-menu-bar__menu__button__arrow {\n\t\t\twidth: var(--ck-dropdown-arrow-size);\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\ttransform: rotate(-90deg);\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\ttransform: rotate(90deg);\n\t\t\t}\n\t\t}\n\n\t\t&.ck-disabled > .ck-menu-bar__menu__button__arrow {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t@mixin ck-dir ltr {\n\t\t\t& > .ck-menu-bar__menu__button__arrow {\n\t\t\t\tright: var(--ck-spacing-standard);\n\n\t\t\t\t/* A space to accommodate the triangle. */\n\t\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t\t}\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t& > .ck-menu-bar__menu__button__arrow {\n\t\t\t\tleft: var(--ck-spacing-standard);\n\n\t\t\t\t/* A space to accommodate the triangle. */\n\t\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A class which indicates that an element holding it is disabled.\n */\n@define-mixin ck-disabled {\n\topacity: var(--ck-disabled-opacity);\n}\n"],sourceRoot:""}]);const a=s},9481:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-menu-bar-menu-item-min-width:18em}.ck.ck-menu-bar__menu .ck.ck-menu-bar__menu__item{min-width:var(--ck-menu-bar-menu-item-min-width)}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/menubar/menubarmenulistitem.css"],names:[],mappings:"AAKA,MACC,sCACD,CAEA,kDACC,gDACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-menu-bar-menu-item-min-width: 18em;\n}\n\n.ck.ck-menu-bar__menu .ck.ck-menu-bar__menu__item {\n\tmin-width: var(--ck-menu-bar-menu-item-min-width);\n}\n"],sourceRoot:""}]);const a=s},977:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button{border-radius:0}.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button>.ck-spinner-container,.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button>.ck-spinner-container .ck-spinner{--ck-toolbar-spinner-size:20px}.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button>.ck-spinner-container{margin-left:calc(var(--ck-spacing-small)*-1);margin-right:var(--ck-spacing-small)}.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button:focus{border-color:transparent;box-shadow:none}.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button:focus:not(.ck-on){background:var(--ck-color-button-default-hover-background)}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level>.ck-menu-bar__menu__panel>ul>.ck-menu-bar__menu__item>.ck-menu-bar__menu__item__button:not(:has(.ck-button__icon))>.ck-button__label{margin-left:calc(var(--ck-icon-size) - var(--ck-spacing-small))}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/menubar/menubarmenulistitembutton.css"],names:[],mappings:"AASC,iEACC,eA0BD,CAxBC,0LAGC,8BACD,CAEA,uFAEC,4CAA+C,CAC/C,oCACD,CAMA,uEACC,wBAAyB,CACzB,eAKD,CAHC,mFACC,0DACD,CASD,uLACC,+DACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-menu-bar__menu {\n\t/*\n\t * List item buttons.\n\t */\n\t& .ck-button.ck-menu-bar__menu__item__button {\n\t\tborder-radius: 0;\n\n\t\t& > .ck-spinner-container,\n\t\t& > .ck-spinner-container .ck-spinner {\n\t\t\t/* These styles correspond to .ck-icon so that the spinner seamlessly replaces the icon. */\n\t\t\t--ck-toolbar-spinner-size: 20px;\n\t\t}\n\n\t\t& > .ck-spinner-container {\n\t\t\t/* These margins are the same as for .ck-icon. */\n\t\t\tmargin-left: calc(-1 * var(--ck-spacing-small));\n\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t}\n\n\t\t/*\n\t\t * Hovered items automatically get focused. Default focus styles look odd\n\t\t * while moving across a huge list of items so let's get rid of them\n\t\t */\n\t\t&:focus {\n\t\t\tborder-color: transparent;\n\t\t\tbox-shadow: none;\n\n\t\t\t&:not(.ck-on) {\n\t\t\t\tbackground: var(--ck-color-button-default-hover-background);\n\t\t\t}\n\t\t}\n\t}\n\n\t/*\n\t * First-level sub-menu item buttons.\n\t */\n\t&.ck-menu-bar__menu_top-level > .ck-menu-bar__menu__panel > ul > .ck-menu-bar__menu__item > .ck-menu-bar__menu__item__button {\n\t\t/* Spacing in buttons that miss the icon. */\n\t\t&:not(:has(.ck-button__icon)) > .ck-button__label {\n\t\t\tmargin-left: calc(var(--ck-icon-size) - var(--ck-spacing-small));\n\t\t}\n\t}\n}\n\n\n"],sourceRoot:""}]);const a=s},9108:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-menu-bar-menu-max-width:75vw;--ck-menu-bar-nested-menu-horizontal-offset:5px}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel{max-width:var(--ck-menu-bar-menu-max-width);position:absolute;z-index:var(--ck-z-panel)}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ne,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_nw{bottom:100%}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_se,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_sw{bottom:auto;top:100%}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ne,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_se{left:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_nw,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_sw{right:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_en,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_es{left:calc(100% - var(--ck-menu-bar-nested-menu-horizontal-offset))}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_es{top:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_en{bottom:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_wn,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ws{right:calc(100% - var(--ck-menu-bar-nested-menu-horizontal-offset))}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ws{top:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_wn{bottom:0}:root{--ck-menu-bar-menu-panel-max-width:75vw}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel{border-radius:0}.ck-rounded-corners .ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel{background:var(--ck-color-dropdown-panel-background);border:1px solid var(--ck-color-dropdown-panel-border);bottom:0;box-shadow:var(--ck-drop-shadow),0 0;height:fit-content;max-width:var(--ck-menu-bar-menu-panel-max-width)}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_es,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_se{border-top-left-radius:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_sw,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ws{border-top-right-radius:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_en,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ne{border-bottom-left-radius:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_nw,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_wn{border-bottom-right-radius:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel:focus{outline:none}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/menubar/menubarmenupanel.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/menubar/menubarmenupanel.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,MACC,iCAAkC,CAClC,+CACD,CAEA,mDAEC,2CAA4C,CAC5C,iBAAkB,CAFlB,yBAkDD,CA9CC,gLAEC,WACD,CAEA,gLAGC,WAAY,CADZ,QAED,CAEA,gLAEC,MACD,CAEA,gLAEC,OACD,CAEA,gLAEC,kEACD,CAEA,wFACC,KACD,CAEA,wFACC,QACD,CAEA,gLAEC,mEACD,CAEA,wFACC,KACD,CAEA,wFACC,QACD,CCpDD,MACC,uCACD,CAEA,mDCDC,eDmCD,CAlCA,6ICGE,qCD+BF,CAlCA,mDAIC,oDAAqD,CACrD,sDAAuD,CACvD,QAAS,CETT,oCAA8B,CFU9B,kBAAmB,CACnB,iDA0BD,CAvBC,gLAEC,wBACD,CAEA,gLAEC,yBACD,CAEA,gLAEC,2BACD,CAEA,gLAEC,4BACD,CAEA,yDACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-menu-bar-menu-max-width: 75vw;\n\t--ck-menu-bar-nested-menu-horizontal-offset: 5px;\n}\n\n.ck.ck-menu-bar__menu > .ck.ck-menu-bar__menu__panel {\n\tz-index: var(--ck-z-panel);\n\tmax-width: var(--ck-menu-bar-menu-max-width);\n\tposition: absolute;\n\n\t&.ck-menu-bar__menu__panel_position_ne,\n\t&.ck-menu-bar__menu__panel_position_nw {\n\t\tbottom: 100%;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_se,\n\t&.ck-menu-bar__menu__panel_position_sw {\n\t\ttop: 100%;\n\t\tbottom: auto;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_ne,\n\t&.ck-menu-bar__menu__panel_position_se {\n\t\tleft: 0px;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_nw,\n\t&.ck-menu-bar__menu__panel_position_sw {\n\t\tright: 0px;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_es,\n\t&.ck-menu-bar__menu__panel_position_en {\n\t\tleft: calc( 100% - var(--ck-menu-bar-nested-menu-horizontal-offset) );\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_es {\n\t\ttop: 0px;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_en {\n\t\tbottom: 0px;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_ws,\n\t&.ck-menu-bar__menu__panel_position_wn {\n\t\tright: calc( 100% - var(--ck-menu-bar-nested-menu-horizontal-offset) );\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_ws {\n\t\ttop: 0px;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_wn {\n\t\tbottom: 0px;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_shadow.css";\n\n:root {\n\t--ck-menu-bar-menu-panel-max-width: 75vw;\n}\n\n.ck.ck-menu-bar__menu > .ck.ck-menu-bar__menu__panel {\n\t@mixin ck-rounded-corners;\n\t@mixin ck-drop-shadow;\n\n\tbackground: var(--ck-color-dropdown-panel-background);\n\tborder: 1px solid var(--ck-color-dropdown-panel-border);\n\tbottom: 0;\n\theight: fit-content;\n\tmax-width: var(--ck-menu-bar-menu-panel-max-width);\n\n\t/* Corner border radius consistent with the button. */\n\t&.ck-menu-bar__menu__panel_position_es,\n\t&.ck-menu-bar__menu__panel_position_se {\n\t\tborder-top-left-radius: 0;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_ws,\n\t&.ck-menu-bar__menu__panel_position_sw {\n\t\tborder-top-right-radius: 0;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_en,\n\t&.ck-menu-bar__menu__panel_position_ne {\n\t\tborder-bottom-left-radius: 0;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_wn,\n\t&.ck-menu-bar__menu__panel_position_nw {\n\t\tborder-bottom-right-radius: 0;\n\t}\n\n\t&:focus {\n\t\toutline: none;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},3710:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,':root{--ck-balloon-panel-arrow-z-index:calc(var(--ck-z-default) - 3)}.ck.ck-balloon-panel{display:none;position:absolute;z-index:var(--ck-z-panel)}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after,.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{content:"";position:absolute}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel[class*=arrow_n]:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel[class*=arrow_n]:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel[class*=arrow_s]:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel[class*=arrow_s]:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel.ck-balloon-panel_visible{display:block}:root{--ck-balloon-border-width:1px;--ck-balloon-arrow-offset:2px;--ck-balloon-arrow-height:10px;--ck-balloon-arrow-half-width:8px;--ck-balloon-arrow-drop-shadow:0 2px 2px var(--ck-color-shadow-drop)}.ck.ck-balloon-panel{border-radius:0}.ck-rounded-corners .ck.ck-balloon-panel,.ck.ck-balloon-panel.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-balloon-panel{background:var(--ck-color-panel-background);border:var(--ck-balloon-border-width) solid var(--ck-color-panel-border);box-shadow:var(--ck-drop-shadow),0 0;min-height:15px}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after,.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{border-style:solid;height:0;width:0}.ck.ck-balloon-panel[class*=arrow_n]:after,.ck.ck-balloon-panel[class*=arrow_n]:before{border-width:0 var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width)}.ck.ck-balloon-panel[class*=arrow_n]:before{border-color:transparent transparent var(--ck-color-panel-border) transparent;margin-top:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_n]:after{border-color:transparent transparent var(--ck-color-panel-background) transparent;margin-top:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel[class*=arrow_s]:after,.ck.ck-balloon-panel[class*=arrow_s]:before{border-width:var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width) 0 var(--ck-balloon-arrow-half-width)}.ck.ck-balloon-panel[class*=arrow_s]:before{border-color:var(--ck-color-panel-border) transparent transparent;filter:drop-shadow(var(--ck-balloon-arrow-drop-shadow));margin-bottom:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_s]:after{border-color:var(--ck-color-panel-background) transparent transparent transparent;margin-bottom:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel[class*=arrow_e]:after,.ck.ck-balloon-panel[class*=arrow_e]:before{border-width:var(--ck-balloon-arrow-half-width) 0 var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height)}.ck.ck-balloon-panel[class*=arrow_e]:before{border-color:transparent transparent transparent var(--ck-color-panel-border);margin-right:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_e]:after{border-color:transparent transparent transparent var(--ck-color-panel-background);margin-right:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel[class*=arrow_w]:after,.ck.ck-balloon-panel[class*=arrow_w]:before{border-width:var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width) 0}.ck.ck-balloon-panel[class*=arrow_w]:before{border-color:transparent var(--ck-color-panel-border) transparent transparent;margin-left:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_w]:after{border-color:transparent var(--ck-color-panel-background) transparent transparent;margin-left:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel.ck-balloon-panel_arrow_n:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_n:before{left:50%;margin-left:calc(var(--ck-balloon-arrow-half-width)*-1);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nw:before{left:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_ne:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_ne:before{right:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_s:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_s:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);left:50%;margin-left:calc(var(--ck-balloon-arrow-half-width)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_sw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_sw:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);left:calc(var(--ck-balloon-arrow-half-width)*2)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_se:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_se:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);right:calc(var(--ck-balloon-arrow-half-width)*2)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_sme:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_sme:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);margin-right:calc(var(--ck-balloon-arrow-half-width)*2);right:25%}.ck.ck-balloon-panel.ck-balloon-panel_arrow_smw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_smw:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);left:25%;margin-left:calc(var(--ck-balloon-arrow-half-width)*2)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nme:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nme:before{margin-right:calc(var(--ck-balloon-arrow-half-width)*2);right:25%;top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nmw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nmw:before{left:25%;margin-left:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_e:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_e:before{margin-top:calc(var(--ck-balloon-arrow-half-width)*-1);right:calc(var(--ck-balloon-arrow-height)*-1);top:50%}.ck.ck-balloon-panel.ck-balloon-panel_arrow_w:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_w:before{left:calc(var(--ck-balloon-arrow-height)*-1);margin-top:calc(var(--ck-balloon-arrow-half-width)*-1);top:50%}',"",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/panel/balloonpanel.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/balloonpanel.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,MAEC,8DACD,CAEA,qBACC,YAAa,CACb,iBAAkB,CAElB,yBAyCD,CAtCE,+GAEC,UAAW,CACX,iBACD,CAEA,wDACC,6CACD,CAEA,uDACC,uDACD,CAIA,4CACC,6CACD,CAEA,2CACC,uDACD,CAIA,4CACC,6CACD,CAEA,2CACC,uDACD,CAGD,8CACC,aACD,CC9CD,MACC,6BAA8B,CAC9B,6BAA8B,CAC9B,8BAA+B,CAC/B,iCAAkC,CAClC,oEACD,CAEA,qBCLC,eDmMD,CA9LA,iFCDE,qCD+LF,CA9LA,qBAMC,2CAA4C,CAC5C,wEAAyE,CEdzE,oCAA8B,CFW9B,eA0LD,CApLE,+GAIC,kBAAmB,CADnB,QAAS,CADT,OAGD,CAIA,uFAEC,mHACD,CAEA,4CACC,6EAA8E,CAC9E,kDACD,CAEA,2CACC,iFAAkF,CAClF,gFACD,CAIA,uFAEC,mHACD,CAEA,4CACC,iEAAkE,CAClE,uDAAwD,CACxD,qDACD,CAEA,2CACC,iFAAkF,CAClF,mFACD,CAIA,uFAEC,mHACD,CAEA,4CACC,6EAA8E,CAC9E,oDACD,CAEA,2CACC,iFAAkF,CAClF,kFACD,CAIA,uFAEC,mHACD,CAEA,4CACC,6EAA8E,CAC9E,mDACD,CAEA,2CACC,iFAAkF,CAClF,iFACD,CAIA,yGAEC,QAAS,CACT,uDAA0D,CAC1D,2CACD,CAIA,2GAEC,+CAAkD,CAClD,2CACD,CAIA,2GAEC,gDAAmD,CACnD,2CACD,CAIA,yGAIC,8CAAiD,CAFjD,QAAS,CACT,uDAED,CAIA,2GAGC,8CAAiD,CADjD,+CAED,CAIA,2GAGC,8CAAiD,CADjD,gDAED,CAIA,6GAIC,8CAAiD,CADjD,uDAA0D,CAD1D,SAGD,CAIA,6GAIC,8CAAiD,CAFjD,QAAS,CACT,sDAED,CAIA,6GAGC,uDAA0D,CAD1D,SAAU,CAEV,2CACD,CAIA,6GAEC,QAAS,CACT,sDAAyD,CACzD,2CACD,CAIA,yGAGC,sDAAyD,CADzD,6CAAgD,CAEhD,OACD,CAIA,yGAEC,4CAA+C,CAC/C,sDAAyD,CACzD,OACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/* Make sure the balloon arrow does not float over its children. */\n\t--ck-balloon-panel-arrow-z-index: calc(var(--ck-z-default) - 3);\n}\n\n.ck.ck-balloon-panel {\n\tdisplay: none;\n\tposition: absolute;\n\n\tz-index: var(--ck-z-panel);\n\n\t&.ck-balloon-panel_with-arrow {\n\t\t&::before,\n\t\t&::after {\n\t\t\tcontent: "";\n\t\t\tposition: absolute;\n\t\t}\n\n\t\t&::before {\n\t\t\tz-index: var(--ck-balloon-panel-arrow-z-index);\n\t\t}\n\n\t\t&::after {\n\t\t\tz-index: calc(var(--ck-balloon-panel-arrow-z-index) + 1);\n\t\t}\n\t}\n\n\t&[class*="arrow_n"] {\n\t\t&::before {\n\t\t\tz-index: var(--ck-balloon-panel-arrow-z-index);\n\t\t}\n\n\t\t&::after {\n\t\t\tz-index: calc(var(--ck-balloon-panel-arrow-z-index) + 1);\n\t\t}\n\t}\n\n\t&[class*="arrow_s"] {\n\t\t&::before {\n\t\t\tz-index: var(--ck-balloon-panel-arrow-z-index);\n\t\t}\n\n\t\t&::after {\n\t\t\tz-index: calc(var(--ck-balloon-panel-arrow-z-index) + 1);\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_visible {\n\t\tdisplay: block;\n\t}\n}\n','/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_shadow.css";\n\n:root {\n\t--ck-balloon-border-width: 1px;\n\t--ck-balloon-arrow-offset: 2px;\n\t--ck-balloon-arrow-height: 10px;\n\t--ck-balloon-arrow-half-width: 8px;\n\t--ck-balloon-arrow-drop-shadow: 0 2px 2px var(--ck-color-shadow-drop);\n}\n\n.ck.ck-balloon-panel {\n\t@mixin ck-rounded-corners;\n\t@mixin ck-drop-shadow;\n\n\tmin-height: 15px;\n\n\tbackground: var(--ck-color-panel-background);\n\tborder: var(--ck-balloon-border-width) solid var(--ck-color-panel-border);\n\n\t&.ck-balloon-panel_with-arrow {\n\t\t&::before,\n\t\t&::after {\n\t\t\twidth: 0;\n\t\t\theight: 0;\n\t\t\tborder-style: solid;\n\t\t}\n\t}\n\n\t&[class*="arrow_n"] {\n\t\t&::before,\n\t\t&::after {\n\t\t\tborder-width: 0 var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width);\n\t\t}\n\n\t\t&::before {\n\t\t\tborder-color: transparent transparent var(--ck-color-panel-border) transparent;\n\t\t\tmargin-top: calc( -1 * var(--ck-balloon-border-width) );\n\t\t}\n\n\t\t&::after {\n\t\t\tborder-color: transparent transparent var(--ck-color-panel-background) transparent;\n\t\t\tmargin-top: calc( var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width) );\n\t\t}\n\t}\n\n\t&[class*="arrow_s"] {\n\t\t&::before,\n\t\t&::after {\n\t\t\tborder-width: var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width) 0 var(--ck-balloon-arrow-half-width);\n\t\t}\n\n\t\t&::before {\n\t\t\tborder-color: var(--ck-color-panel-border) transparent transparent;\n\t\t\tfilter: drop-shadow(var(--ck-balloon-arrow-drop-shadow));\n\t\t\tmargin-bottom: calc( -1 * var(--ck-balloon-border-width) );\n\t\t}\n\n\t\t&::after {\n\t\t\tborder-color: var(--ck-color-panel-background) transparent transparent transparent;\n\t\t\tmargin-bottom: calc( var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width) );\n\t\t}\n\t}\n\n\t&[class*="arrow_e"] {\n\t\t&::before,\n\t\t&::after {\n\t\t\tborder-width: var(--ck-balloon-arrow-half-width) 0 var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height);\n\t\t}\n\n\t\t&::before {\n\t\t\tborder-color: transparent transparent transparent var(--ck-color-panel-border);\n\t\t\tmargin-right: calc( -1 * var(--ck-balloon-border-width) );\n\t\t}\n\n\t\t&::after {\n\t\t\tborder-color: transparent transparent transparent var(--ck-color-panel-background);\n\t\t\tmargin-right: calc( var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width) );\n\t\t}\n\t}\n\n\t&[class*="arrow_w"] {\n\t\t&::before,\n\t\t&::after {\n\t\t\tborder-width: var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width) 0;\n\t\t}\n\n\t\t&::before {\n\t\t\tborder-color: transparent var(--ck-color-panel-border) transparent transparent;\n\t\t\tmargin-left: calc( -1 * var(--ck-balloon-border-width) );\n\t\t}\n\n\t\t&::after {\n\t\t\tborder-color: transparent var(--ck-color-panel-background) transparent transparent;\n\t\t\tmargin-left: calc( var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width) );\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_n {\n\t\t&::before,\n\t\t&::after {\n\t\t\tleft: 50%;\n\t\t\tmargin-left: calc(-1 * var(--ck-balloon-arrow-half-width));\n\t\t\ttop: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_nw {\n\t\t&::before,\n\t\t&::after {\n\t\t\tleft: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\ttop: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_ne {\n\t\t&::before,\n\t\t&::after {\n\t\t\tright: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\ttop: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_s {\n\t\t&::before,\n\t\t&::after {\n\t\t\tleft: 50%;\n\t\t\tmargin-left: calc(-1 * var(--ck-balloon-arrow-half-width));\n\t\t\tbottom: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_sw {\n\t\t&::before,\n\t\t&::after {\n\t\t\tleft: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\tbottom: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_se {\n\t\t&::before,\n\t\t&::after {\n\t\t\tright: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\tbottom: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_sme {\n\t\t&::before,\n\t\t&::after {\n\t\t\tright: 25%;\n\t\t\tmargin-right: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\tbottom: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_smw {\n\t\t&::before,\n\t\t&::after {\n\t\t\tleft: 25%;\n\t\t\tmargin-left: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\tbottom: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_nme {\n\t\t&::before,\n\t\t&::after {\n\t\t\tright: 25%;\n\t\t\tmargin-right: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\ttop: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_nmw {\n\t\t&::before,\n\t\t&::after {\n\t\t\tleft: 25%;\n\t\t\tmargin-left: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\ttop: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_e {\n\t\t&::before,\n\t\t&::after {\n\t\t\tright: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t\tmargin-top: calc(-1 * var(--ck-balloon-arrow-half-width));\n\t\t\ttop: 50%;\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_w {\n\t\t&::before,\n\t\t&::after {\n\t\t\tleft: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t\tmargin-top: calc(-1 * var(--ck-balloon-arrow-half-width));\n\t\t\ttop: 50%;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},991:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck .ck-balloon-rotator__navigation{align-items:center;display:flex;justify-content:center}.ck .ck-balloon-rotator__content .ck-toolbar{justify-content:center}.ck .ck-balloon-rotator__navigation{background:var(--ck-color-toolbar-background);border-bottom:1px solid var(--ck-color-toolbar-border);padding:0 var(--ck-spacing-small)}.ck .ck-balloon-rotator__navigation>*{margin-bottom:var(--ck-spacing-small);margin-right:var(--ck-spacing-small);margin-top:var(--ck-spacing-small)}.ck .ck-balloon-rotator__navigation .ck-balloon-rotator__counter{margin-left:var(--ck-spacing-small);margin-right:var(--ck-spacing-standard)}.ck .ck-balloon-rotator__content .ck.ck-annotation-wrapper{box-shadow:none}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/panel/balloonrotator.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/balloonrotator.css"],names:[],mappings:"AAKA,oCAEC,kBAAmB,CADnB,YAAa,CAEb,sBACD,CAKA,6CACC,sBACD,CCXA,oCACC,6CAA8C,CAC9C,sDAAuD,CACvD,iCAgBD,CAbC,sCAGC,qCAAsC,CAFtC,oCAAqC,CACrC,kCAED,CAGA,iEAIC,mCAAoC,CAHpC,uCAID,CAMA,2DACC,eACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-balloon-rotator__navigation {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n/* Buttons inside a toolbar should be centered when rotator bar is wider.\n * See: https://github.com/ckeditor/ckeditor5-ui/issues/495\n */\n.ck .ck-balloon-rotator__content .ck-toolbar {\n\tjustify-content: center;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-balloon-rotator__navigation {\n\tbackground: var(--ck-color-toolbar-background);\n\tborder-bottom: 1px solid var(--ck-color-toolbar-border);\n\tpadding: 0 var(--ck-spacing-small);\n\n\t/* Let's keep similar appearance to `ck-toolbar`. */\n\t& > * {\n\t\tmargin-right: var(--ck-spacing-small);\n\t\tmargin-top: var(--ck-spacing-small);\n\t\tmargin-bottom: var(--ck-spacing-small);\n\t}\n\n\t/* Gives counter more breath than buttons. */\n\t& .ck-balloon-rotator__counter {\n\t\tmargin-right: var(--ck-spacing-standard);\n\n\t\t/* We need to use smaller margin because of previous button's right margin. */\n\t\tmargin-left: var(--ck-spacing-small);\n\t}\n}\n\n.ck .ck-balloon-rotator__content {\n\n\t/* Disable default annotation shadow inside rotator with fake panels. */\n\t& .ck.ck-annotation-wrapper {\n\t\tbox-shadow: none;\n\t}\n}\n"],sourceRoot:""}]);const a=s},5380:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck .ck-fake-panel{position:absolute;z-index:calc(var(--ck-z-panel) - 1)}.ck .ck-fake-panel div{position:absolute}.ck .ck-fake-panel div:first-child{z-index:2}.ck .ck-fake-panel div:nth-child(2){z-index:1}:root{--ck-balloon-fake-panel-offset-horizontal:6px;--ck-balloon-fake-panel-offset-vertical:6px}.ck .ck-fake-panel div{background:var(--ck-color-panel-background);border:1px solid var(--ck-color-panel-border);border-radius:var(--ck-border-radius);box-shadow:var(--ck-drop-shadow),0 0;height:100%;min-height:15px;width:100%}.ck .ck-fake-panel div:first-child{margin-left:var(--ck-balloon-fake-panel-offset-horizontal);margin-top:var(--ck-balloon-fake-panel-offset-vertical)}.ck .ck-fake-panel div:nth-child(2){margin-left:calc(var(--ck-balloon-fake-panel-offset-horizontal)*2);margin-top:calc(var(--ck-balloon-fake-panel-offset-vertical)*2)}.ck .ck-fake-panel div:nth-child(3){margin-left:calc(var(--ck-balloon-fake-panel-offset-horizontal)*3);margin-top:calc(var(--ck-balloon-fake-panel-offset-vertical)*3)}.ck .ck-balloon-panel_arrow_s+.ck-fake-panel,.ck .ck-balloon-panel_arrow_se+.ck-fake-panel,.ck .ck-balloon-panel_arrow_sw+.ck-fake-panel{--ck-balloon-fake-panel-offset-vertical:-6px}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/panel/fakepanel.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/fakepanel.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,mBACC,iBAAkB,CAGlB,mCACD,CAEA,uBACC,iBACD,CAEA,mCACC,SACD,CAEA,oCACC,SACD,CCfA,MACC,6CAA8C,CAC9C,2CACD,CAGA,uBAKC,2CAA4C,CAC5C,6CAA8C,CAC9C,qCAAsC,CCXtC,oCAA8B,CDc9B,WAAY,CAPZ,eAAgB,CAMhB,UAED,CAEA,mCACC,0DAA2D,CAC3D,uDACD,CAEA,oCACC,kEAAqE,CACrE,+DACD,CACA,oCACC,kEAAqE,CACrE,+DACD,CAGA,yIAGC,4CACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-fake-panel {\n\tposition: absolute;\n\n\t/* Fake panels should be placed under main balloon content. */\n\tz-index: calc(var(--ck-z-panel) - 1);\n}\n\n.ck .ck-fake-panel div {\n\tposition: absolute;\n}\n\n.ck .ck-fake-panel div:nth-child( 1 ) {\n\tz-index: 2;\n}\n\n.ck .ck-fake-panel div:nth-child( 2 ) {\n\tz-index: 1;\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_shadow.css";\n\n:root {\n\t--ck-balloon-fake-panel-offset-horizontal: 6px;\n\t--ck-balloon-fake-panel-offset-vertical: 6px;\n}\n\n/* Let\'s use `.ck-balloon-panel` appearance. See: balloonpanel.css. */\n.ck .ck-fake-panel div {\n\t@mixin ck-drop-shadow;\n\n\tmin-height: 15px;\n\n\tbackground: var(--ck-color-panel-background);\n\tborder: 1px solid var(--ck-color-panel-border);\n\tborder-radius: var(--ck-border-radius);\n\n\twidth: 100%;\n\theight: 100%;\n}\n\n.ck .ck-fake-panel div:nth-child( 1 ) {\n\tmargin-left: var(--ck-balloon-fake-panel-offset-horizontal);\n\tmargin-top: var(--ck-balloon-fake-panel-offset-vertical);\n}\n\n.ck .ck-fake-panel div:nth-child( 2 ) {\n\tmargin-left: calc(var(--ck-balloon-fake-panel-offset-horizontal) * 2);\n\tmargin-top: calc(var(--ck-balloon-fake-panel-offset-vertical) * 2);\n}\n.ck .ck-fake-panel div:nth-child( 3 ) {\n\tmargin-left: calc(var(--ck-balloon-fake-panel-offset-horizontal) * 3);\n\tmargin-top: calc(var(--ck-balloon-fake-panel-offset-vertical) * 3);\n}\n\n/* If balloon is positioned above element, we need to move fake panel to the top. */\n.ck .ck-balloon-panel_arrow_s + .ck-fake-panel,\n.ck .ck-balloon-panel_arrow_se + .ck-fake-panel,\n.ck .ck-balloon-panel_arrow_sw + .ck-fake-panel {\n\t--ck-balloon-fake-panel-offset-vertical: -6px;\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},8298:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-sticky-panel .ck-sticky-panel__content_sticky{position:fixed;top:0;z-index:var(--ck-z-panel)}.ck.ck-sticky-panel .ck-sticky-panel__content_sticky_bottom-limit{position:absolute;top:auto}.ck.ck-sticky-panel .ck-sticky-panel__content_sticky{border-top-left-radius:0;border-top-right-radius:0;border-width:0 1px 1px;box-shadow:var(--ck-drop-shadow),0 0}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/panel/stickypanel.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/stickypanel.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAMC,qDAEC,cAAe,CACf,KAAM,CAFN,yBAGD,CAEA,kEAEC,iBAAkB,CADlB,QAED,CCPA,qDAIC,wBAAyB,CACzB,yBAA0B,CAF1B,sBAAuB,CCFxB,oCDKA",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-sticky-panel {\n\t& .ck-sticky-panel__content_sticky {\n\t\tz-index: var(--ck-z-panel); /* #315 */\n\t\tposition: fixed;\n\t\ttop: 0;\n\t}\n\n\t& .ck-sticky-panel__content_sticky_bottom-limit {\n\t\ttop: auto;\n\t\tposition: absolute;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_shadow.css";\n\n.ck.ck-sticky-panel {\n\t& .ck-sticky-panel__content_sticky {\n\t\t@mixin ck-drop-shadow;\n\n\t\tborder-width: 0 1px 1px;\n\t\tborder-top-left-radius: 0;\n\t\tborder-top-right-radius: 0;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},2722:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck-vertical-form .ck-button:after{bottom:-1px;content:"";position:absolute;right:-1px;top:-1px;width:0;z-index:1}.ck-vertical-form .ck-button:focus:after{display:none}@media screen and (max-width:600px){.ck.ck-responsive-form .ck-button:after{bottom:-1px;content:"";position:absolute;right:-1px;top:-1px;width:0;z-index:1}.ck.ck-responsive-form .ck-button:focus:after{display:none}}.ck-vertical-form>.ck-button:nth-last-child(2):after{border-right:1px solid var(--ck-color-base-border)}.ck.ck-responsive-form{padding:var(--ck-spacing-large)}.ck.ck-responsive-form:focus{outline:none}[dir=ltr] .ck.ck-responsive-form>:not(:first-child),[dir=rtl] .ck.ck-responsive-form>:not(:last-child){margin-left:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-responsive-form{padding:0;width:calc(var(--ck-input-width)*.8)}.ck.ck-responsive-form .ck-labeled-field-view{margin:var(--ck-spacing-large) var(--ck-spacing-large) 0}.ck.ck-responsive-form .ck-labeled-field-view .ck-input-number,.ck.ck-responsive-form .ck-labeled-field-view .ck-input-text{min-width:0;width:100%}.ck.ck-responsive-form .ck-labeled-field-view .ck-labeled-field-view__error{white-space:normal}.ck.ck-responsive-form>.ck-button:nth-last-child(2):after{border-right:1px solid var(--ck-color-base-border)}.ck.ck-responsive-form>.ck-button:last-child,.ck.ck-responsive-form>.ck-button:nth-last-child(2){border-radius:0;margin-top:var(--ck-spacing-large);padding:var(--ck-spacing-standard)}.ck.ck-responsive-form>.ck-button:last-child:not(:focus),.ck.ck-responsive-form>.ck-button:nth-last-child(2):not(:focus){border-top:1px solid var(--ck-color-base-border)}[dir=ltr] .ck.ck-responsive-form>.ck-button:last-child,[dir=ltr] .ck.ck-responsive-form>.ck-button:nth-last-child(2),[dir=rtl] .ck.ck-responsive-form>.ck-button:last-child,[dir=rtl] .ck.ck-responsive-form>.ck-button:nth-last-child(2){margin-left:0}[dir=rtl] .ck.ck-responsive-form>.ck-button:last-child:last-of-type,[dir=rtl] .ck.ck-responsive-form>.ck-button:nth-last-child(2):last-of-type{border-right:1px solid var(--ck-color-base-border)}}',"",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/responsive-form/responsiveform.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/responsive-form/responsiveform.css"],names:[],mappings:"AAQC,mCAMC,WAAY,CALZ,UAAW,CAEX,iBAAkB,CAClB,UAAW,CACX,QAAS,CAHT,OAAQ,CAKR,SACD,CAEA,yCACC,YACD,CCdA,oCDoBE,wCAMC,WAAY,CALZ,UAAW,CAEX,iBAAkB,CAClB,UAAW,CACX,QAAS,CAHT,OAAQ,CAKR,SACD,CAEA,8CACC,YACD,CC9BF,CCAD,qDACC,kDACD,CAEA,uBACC,+BAoED,CAlEC,6BAEC,YACD,CASC,uGACC,sCACD,CDvBD,oCCMD,uBAqBE,SAAU,CACV,oCA+CF,CA7CE,8CACC,wDAYD,CAVC,4HAEC,WAAY,CACZ,UACD,CAGA,4EACC,kBACD,CAKA,0DACC,kDACD,CAGD,iGAIC,eAAgB,CADhB,kCAAmC,CADnC,kCAmBD,CAfC,yHACC,gDACD,CARD,0OAeE,aAMF,CAJE,+IACC,kDACD,CDrEH",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck-vertical-form .ck-button {\n\t&::after {\n\t\tcontent: "";\n\t\twidth: 0;\n\t\tposition: absolute;\n\t\tright: -1px;\n\t\ttop: -1px;\n\t\tbottom: -1px;\n\t\tz-index: 1;\n\t}\n\n\t&:focus::after {\n\t\tdisplay: none;\n\t}\n}\n\n.ck.ck-responsive-form {\n\t@mixin ck-media-phone {\n\t\t& .ck-button {\n\t\t\t&::after {\n\t\t\t\tcontent: "";\n\t\t\t\twidth: 0;\n\t\t\t\tposition: absolute;\n\t\t\t\tright: -1px;\n\t\t\t\ttop: -1px;\n\t\t\t\tbottom: -1px;\n\t\t\t\tz-index: 1;\n\t\t\t}\n\n\t\t\t&:focus::after {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck-vertical-form > .ck-button:nth-last-child(2)::after {\n\tborder-right: 1px solid var(--ck-color-base-border);\n}\n\n.ck.ck-responsive-form {\n\tpadding: var(--ck-spacing-large);\n\n\t&:focus {\n\t\t/* See: https://github.com/ckeditor/ckeditor5/issues/4773 */\n\t\toutline: none;\n\t}\n\n\t@mixin ck-dir ltr {\n\t\t& > :not(:first-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-dir rtl {\n\t\t& > :not(:last-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-media-phone {\n\t\tpadding: 0;\n\t\twidth: calc(.8 * var(--ck-input-width));\n\n\t\t& .ck-labeled-field-view {\n\t\t\tmargin: var(--ck-spacing-large) var(--ck-spacing-large) 0;\n\n\t\t\t& .ck-input-text,\n\t\t\t& .ck-input-number {\n\t\t\t\tmin-width: 0;\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\t/* Let the long error messages wrap in the narrow form. */\n\t\t\t& .ck-labeled-field-view__error {\n\t\t\t\twhite-space: normal;\n\t\t\t}\n\t\t}\n\n\t\t/* Styles for two last buttons in the form (save&cancel, edit&unlink, etc.). */\n\t\t& > .ck-button:nth-last-child(2) {\n\t\t\t&::after {\n\t\t\t\tborder-right: 1px solid var(--ck-color-base-border);\n\t\t\t}\n\t\t}\n\n\t\t& > .ck-button:nth-last-child(1),\n\t\t& > .ck-button:nth-last-child(2) {\n\t\t\tpadding: var(--ck-spacing-standard);\n\t\t\tmargin-top: var(--ck-spacing-large);\n\t\t\tborder-radius: 0;\n\n\t\t\t&:not(:focus) {\n\t\t\t\tborder-top: 1px solid var(--ck-color-base-border);\n\t\t\t}\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: 0;\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-left: 0;\n\n\t\t\t\t&:last-of-type {\n\t\t\t\t\tborder-right: 1px solid var(--ck-color-base-border);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},8107:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-search>.ck-labeled-field-view>.ck-labeled-field-view__input-wrapper>.ck-icon{position:absolute;top:50%;transform:translateY(-50%)}[dir=ltr] .ck.ck-search>.ck-labeled-field-view>.ck-labeled-field-view__input-wrapper>.ck-icon{left:var(--ck-spacing-medium)}[dir=rtl] .ck.ck-search>.ck-labeled-field-view>.ck-labeled-field-view__input-wrapper>.ck-icon{right:var(--ck-spacing-medium)}.ck.ck-search>.ck-labeled-field-view .ck-search__reset{position:absolute;top:50%;transform:translateY(-50%)}.ck.ck-search>.ck-search__results>.ck-search__info>span:first-child{display:block}.ck.ck-search>.ck-search__results>.ck-search__info:not(.ck-hidden)~*{display:none}:root{--ck-search-field-view-horizontal-spacing:calc(var(--ck-icon-size) + var(--ck-spacing-medium))}.ck.ck-search>.ck-labeled-field-view .ck-input{width:100%}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-icon{--ck-labeled-field-label-default-position-x:var(--ck-search-field-view-horizontal-spacing)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-icon>.ck-labeled-field-view__input-wrapper>.ck-icon{opacity:.5;pointer-events:none}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-icon .ck-input{width:100%}[dir=ltr] .ck.ck-search>.ck-labeled-field-view.ck-search__query_with-icon .ck-input,[dir=rtl] .ck.ck-search>.ck-labeled-field-view.ck-search__query_with-icon .ck-input:not(.ck-input-text_empty){padding-left:var(--ck-search-field-view-horizontal-spacing)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset{--ck-labeled-field-empty-unfocused-max-width:100% - 2 * var(--ck-search-field-view-horizontal-spacing)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset.ck-labeled-field-view_empty{--ck-labeled-field-empty-unfocused-max-width:100% - var(--ck-search-field-view-horizontal-spacing) - var(--ck-spacing-medium)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-search__reset{background:none;min-height:auto;min-width:auto;opacity:.5;padding:0}[dir=ltr] .ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-search__reset{right:var(--ck-spacing-medium)}[dir=rtl] .ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-search__reset{left:var(--ck-spacing-medium)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-search__reset:hover{opacity:1}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-input{width:100%}[dir=ltr] .ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-input:not(.ck-input-text_empty),[dir=rtl] .ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-input{padding-right:var(--ck-search-field-view-horizontal-spacing)}.ck.ck-search>.ck-search__results{min-width:100%}.ck.ck-search>.ck-search__results>.ck-search__info{padding:var(--ck-spacing-medium) var(--ck-spacing-large);width:100%}.ck.ck-search>.ck-search__results>.ck-search__info *{white-space:normal}.ck.ck-search>.ck-search__results>.ck-search__info>span:first-child{font-weight:700}.ck.ck-search>.ck-search__results>.ck-search__info>span:last-child{margin-top:var(--ck-spacing-medium)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/search/search.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/search/search.css"],names:[],mappings:"AASE,oFACC,iBAAkB,CAClB,OAAQ,CACR,0BASD,CAZA,8FAME,6BAMF,CAZA,8FAUE,8BAEF,CAEA,uDACC,iBAAkB,CAClB,OAAQ,CACR,0BACD,CAKC,oEACC,aACD,CAGA,qEACC,YACD,CChCH,MACC,8FACD,CAIE,+CACC,UACD,CAEA,gEACC,0FAoBD,CAlBC,+GACC,UAAW,CACX,mBACD,CAEA,0EACC,UAWD,CAJE,kMACC,2DACD,CAKH,iEACC,sGAwCD,CAtCC,6FACC,6HACD,CAEA,mFAIC,eAAgB,CAFhB,eAAgB,CADhB,cAAe,CAIf,UAAW,CACX,SAaD,CAnBA,6FASE,8BAUF,CAnBA,6FAaE,6BAMF,CAHC,yFACC,SACD,CAGD,2EACC,UAWD,CAZA,oMAUE,4DAEF,CAIF,kCACC,cAkBD,CAhBC,mDAEC,wDAAyD,CADzD,UAcD,CAXC,qDACC,kBACD,CAEA,oEACC,eACD,CAEA,mEACC,mCACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-search {\n\t& > .ck-labeled-field-view {\n\t\t& > .ck-labeled-field-view__input-wrapper > .ck-icon {\n\t\t\tposition: absolute;\n\t\t\ttop: 50%;\n\t\t\ttransform: translateY(-50%);\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tleft: var(--ck-spacing-medium);\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tright: var(--ck-spacing-medium);\n\t\t\t}\n\t\t}\n\n\t\t& .ck-search__reset {\n\t\t\tposition: absolute;\n\t\t\ttop: 50%;\n\t\t\ttransform: translateY(-50%);\n\t\t}\n\t}\n\n\t& > .ck-search__results {\n\t\t& > .ck-search__info {\n\t\t\t& > span:first-child {\n\t\t\t\tdisplay: block;\n\t\t\t}\n\n\t\t\t/* Hide the filtered view when nothing was found */\n\t\t\t&:not(.ck-hidden) ~ * {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n}\n','/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n:root {\n\t--ck-search-field-view-horizontal-spacing: calc(var(--ck-icon-size) + var(--ck-spacing-medium));\n}\n\n.ck.ck-search {\n\t& > .ck-labeled-field-view {\n\t\t& .ck-input {\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t&.ck-search__query_with-icon {\n\t\t\t--ck-labeled-field-label-default-position-x: var(--ck-search-field-view-horizontal-spacing);\n\n\t\t\t& > .ck-labeled-field-view__input-wrapper > .ck-icon {\n\t\t\t\topacity: .5;\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\n\t\t\t& .ck-input {\n\t\t\t\twidth: 100%;\n\n\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\tpadding-left: var(--ck-search-field-view-horizontal-spacing);\n\t\t\t\t}\n\n\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\t&:not(.ck-input-text_empty) {\n\t\t\t\t\t\tpadding-left: var(--ck-search-field-view-horizontal-spacing);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&.ck-search__query_with-reset {\n\t\t\t--ck-labeled-field-empty-unfocused-max-width: 100% - 2 * var(--ck-search-field-view-horizontal-spacing);\n\n\t\t\t&.ck-labeled-field-view_empty {\n\t\t\t\t--ck-labeled-field-empty-unfocused-max-width: 100% - var(--ck-search-field-view-horizontal-spacing) - var(--ck-spacing-medium);\n\t\t\t}\n\n\t\t\t& .ck-search__reset {\n\t\t\t\tmin-width: auto;\n\t\t\t\tmin-height: auto;\n\n\t\t\t\tbackground: none;\n\t\t\t\topacity: .5;\n\t\t\t\tpadding: 0;\n\n\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\tright: var(--ck-spacing-medium);\n\t\t\t\t}\n\n\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\tleft: var(--ck-spacing-medium);\n\t\t\t\t}\n\n\t\t\t\t&:hover {\n\t\t\t\t\topacity: 1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t& .ck-input {\n\t\t\t\twidth: 100%;\n\n\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\t&:not(.ck-input-text_empty) {\n\t\t\t\t\t\tpadding-right: var(--ck-search-field-view-horizontal-spacing);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\tpadding-right: var(--ck-search-field-view-horizontal-spacing);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t& > .ck-search__results {\n\t\tmin-width: 100%;\n\n\t\t& > .ck-search__info {\n\t\t\twidth: 100%;\n\t\t\tpadding: var(--ck-spacing-medium) var(--ck-spacing-large);\n\n\t\t\t& * {\n\t\t\t\twhite-space: normal;\n\t\t\t}\n\n\t\t\t& > span:first-child {\n\t\t\t\tfont-weight: bold;\n\t\t\t}\n\n\t\t\t& > span:last-child {\n\t\t\t\tmargin-top: var(--ck-spacing-medium);\n\t\t\t}\n\t\t}\n\t}\n}\n\n'],sourceRoot:""}]);const a=s},109:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-spinner-container{display:block;position:relative}.ck.ck-spinner{left:0;margin:0 auto;position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:1}:root{--ck-toolbar-spinner-size:18px}.ck.ck-spinner-container{animation:rotate 1.5s linear infinite;height:var(--ck-toolbar-spinner-size);width:var(--ck-toolbar-spinner-size)}@media (prefers-reduced-motion:reduce){.ck.ck-spinner-container{animation-duration:3s}}.ck.ck-spinner{border:2px solid var(--ck-color-text);border-radius:50%;border-top:2px solid transparent;height:var(--ck-toolbar-spinner-size);width:var(--ck-toolbar-spinner-size)}@keyframes rotate{to{transform:rotate(1turn)}}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/spinner/spinner.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/spinner/spinner.css"],names:[],mappings:"AASA,yBACC,aAAc,CACd,iBACD,CAEA,eAGC,MAAO,CAEP,aAAc,CAJd,iBAAkB,CAGlB,OAAQ,CAFR,OAAQ,CAIR,0BAA2B,CAC3B,SACD,CCjBA,MACC,8BACD,CAEA,yBAGC,qCAAsC,CADtC,qCAAsC,CADtC,oCAOD,CAHC,uCALD,yBAME,qBAEF,CADC,CAGD,eAKC,qCAA6B,CAF7B,iBAAkB,CAElB,gCAA6B,CAH7B,qCAAsC,CADtC,oCAKD,CAEA,kBACC,GACC,uBACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-toolbar-spinner-size: 18px;\n}\n\n.ck.ck-spinner-container {\n\tdisplay: block;\n\tposition: relative;\n}\n\n.ck.ck-spinner {\n\tposition: absolute;\n\ttop: 50%;\n\tleft: 0;\n\tright: 0;\n\tmargin: 0 auto;\n\ttransform: translateY(-50%);\n\tz-index: 1;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-toolbar-spinner-size: 18px;\n}\n\n.ck.ck-spinner-container {\n\twidth: var(--ck-toolbar-spinner-size);\n\theight: var(--ck-toolbar-spinner-size);\n\tanimation: 1.5s infinite rotate linear;\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\tanimation-duration: 3s;\n\t}\n}\n\n.ck.ck-spinner {\n\twidth: var(--ck-toolbar-spinner-size);\n\theight: var(--ck-toolbar-spinner-size);\n\tborder-radius: 50%;\n\tborder: 2px solid var(--ck-color-text);\n\tborder-top-color: transparent;\n}\n\n@keyframes rotate {\n\tto {\n\t\ttransform: rotate(360deg)\n\t}\n}\n"],sourceRoot:""}]);const a=s},1671:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-textarea{overflow-x:hidden}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/textarea/textarea.css"],names:[],mappings:"AASA,aACC,iBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/*\n * This fixes a problem in Firefox when the initial height of the complement does not match the number of rows.\n * This bug is especially visible when rows=1.\n */\n.ck-textarea {\n\toverflow-x: hidden\n}\n"],sourceRoot:""}]);const a=s},2710:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-block-toolbar-button{position:absolute;z-index:var(--ck-z-default)}:root{--ck-color-block-toolbar-button:var(--ck-color-text);--ck-block-toolbar-button-size:var(--ck-font-size-normal)}.ck.ck-block-toolbar-button{color:var(--ck-color-block-toolbar-button);font-size:var(--ck-block-toolbar-size)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/toolbar/blocktoolbar.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/toolbar/blocktoolbar.css"],names:[],mappings:"AAKA,4BACC,iBAAkB,CAClB,2BACD,CCHA,MACC,oDAAqD,CACrD,yDACD,CAEA,4BACC,0CAA2C,CAC3C,sCACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-block-toolbar-button {\n\tposition: absolute;\n\tz-index: var(--ck-z-default);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-block-toolbar-button: var(--ck-color-text);\n\t--ck-block-toolbar-button-size: var(--ck-font-size-normal);\n}\n\n.ck.ck-block-toolbar-button {\n\tcolor: var(--ck-color-block-toolbar-button);\n\tfont-size: var(--ck-block-toolbar-size);\n}\n"],sourceRoot:""}]);const a=s},9677:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-toolbar{align-items:center;display:flex;flex-flow:row nowrap;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.ck.ck-toolbar>.ck-toolbar__items{align-items:center;display:flex;flex-flow:row wrap;flex-grow:1}.ck.ck-toolbar .ck.ck-toolbar__separator{display:inline-block}.ck.ck-toolbar .ck.ck-toolbar__separator:first-child,.ck.ck-toolbar .ck.ck-toolbar__separator:last-child{display:none}.ck.ck-toolbar .ck-toolbar__line-break{flex-basis:100%}.ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items{flex-wrap:nowrap}.ck.ck-toolbar.ck-toolbar_vertical>.ck-toolbar__items{flex-direction:column}.ck.ck-toolbar.ck-toolbar_floating>.ck-toolbar__items{flex-wrap:nowrap}.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown>.ck-dropdown__button .ck-dropdown__arrow{display:none}.ck.ck-toolbar{border-radius:0}.ck-rounded-corners .ck.ck-toolbar,.ck.ck-toolbar.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-toolbar{background:var(--ck-color-toolbar-background);border:1px solid var(--ck-color-toolbar-border);padding:0 var(--ck-spacing-small)}.ck.ck-toolbar .ck.ck-toolbar__separator{align-self:stretch;background:var(--ck-color-toolbar-border);margin-bottom:var(--ck-spacing-small);margin-top:var(--ck-spacing-small);min-width:1px;width:1px}.ck.ck-toolbar .ck-toolbar__line-break{height:0}.ck.ck-toolbar>.ck-toolbar__items>:not(.ck-toolbar__line-break){margin-right:var(--ck-spacing-small)}.ck.ck-toolbar>.ck-toolbar__items:empty+.ck.ck-toolbar__separator{display:none}.ck.ck-toolbar>.ck-toolbar__items>:not(.ck-toolbar__line-break),.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown{margin-bottom:var(--ck-spacing-small);margin-top:var(--ck-spacing-small)}.ck.ck-toolbar.ck-toolbar_vertical{padding:0}.ck.ck-toolbar.ck-toolbar_vertical>.ck-toolbar__items>.ck{border-radius:0;margin:0;width:100%}.ck.ck-toolbar.ck-toolbar_compact{padding:0}.ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>*{margin:0}.ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>:not(:first-child):not(:last-child){border-radius:0}.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown>.ck.ck-button.ck-dropdown__button{padding-left:var(--ck-spacing-tiny)}.ck.ck-toolbar .ck-toolbar__nested-toolbar-dropdown>.ck-dropdown__panel{min-width:auto}.ck.ck-toolbar .ck-toolbar__nested-toolbar-dropdown>.ck-button>.ck-button__label{max-width:7em;width:auto}.ck.ck-toolbar:focus{outline:none}.ck-toolbar-container .ck.ck-toolbar{border:0}.ck.ck-toolbar[dir=rtl]>.ck-toolbar__items>.ck,[dir=rtl] .ck.ck-toolbar>.ck-toolbar__items>.ck{margin-right:0}.ck.ck-toolbar[dir=rtl]:not(.ck-toolbar_compact)>.ck-toolbar__items>.ck,[dir=rtl] .ck.ck-toolbar:not(.ck-toolbar_compact)>.ck-toolbar__items>.ck{margin-left:var(--ck-spacing-small)}.ck.ck-toolbar[dir=rtl]>.ck-toolbar__items>.ck:last-child,[dir=rtl] .ck.ck-toolbar>.ck-toolbar__items>.ck:last-child{margin-left:0}.ck.ck-toolbar.ck-toolbar_compact[dir=rtl]>.ck-toolbar__items>.ck:first-child,[dir=rtl] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.ck.ck-toolbar.ck-toolbar_compact[dir=rtl]>.ck-toolbar__items>.ck:last-child,[dir=rtl] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:last-child{border-bottom-right-radius:0;border-top-right-radius:0}.ck.ck-toolbar.ck-toolbar_grouping[dir=rtl]>.ck-toolbar__items:not(:empty):not(:only-child),.ck.ck-toolbar[dir=rtl]>.ck.ck-toolbar__separator,[dir=rtl] .ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items:not(:empty):not(:only-child),[dir=rtl] .ck.ck-toolbar>.ck.ck-toolbar__separator{margin-left:var(--ck-spacing-small)}.ck.ck-toolbar[dir=ltr]>.ck-toolbar__items>.ck:last-child,[dir=ltr] .ck.ck-toolbar>.ck-toolbar__items>.ck:last-child{margin-right:0}.ck.ck-toolbar.ck-toolbar_compact[dir=ltr]>.ck-toolbar__items>.ck:first-child,[dir=ltr] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:first-child{border-bottom-right-radius:0;border-top-right-radius:0}.ck.ck-toolbar.ck-toolbar_compact[dir=ltr]>.ck-toolbar__items>.ck:last-child,[dir=ltr] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:last-child{border-bottom-left-radius:0;border-top-left-radius:0}.ck.ck-toolbar.ck-toolbar_grouping[dir=ltr]>.ck-toolbar__items:not(:empty):not(:only-child),.ck.ck-toolbar[dir=ltr]>.ck.ck-toolbar__separator,[dir=ltr] .ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items:not(:empty):not(:only-child),[dir=ltr] .ck.ck-toolbar>.ck.ck-toolbar__separator{margin-right:var(--ck-spacing-small)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/toolbar/toolbar.css","webpack://./../ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/toolbar/toolbar.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAOA,eAKC,kBAAmB,CAFnB,YAAa,CACb,oBAAqB,CCFrB,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBD6CD,CA3CC,kCAGC,kBAAmB,CAFnB,YAAa,CACb,kBAAmB,CAEnB,WAED,CAEA,yCACC,oBAWD,CAJC,yGAEC,YACD,CAGD,uCACC,eACD,CAEA,sDACC,gBACD,CAEA,sDACC,qBACD,CAEA,sDACC,gBACD,CAGC,yFACC,YACD,CE/CF,eCGC,eDwGD,CA3GA,qECOE,qCDoGF,CA3GA,eAGC,6CAA8C,CAE9C,+CAAgD,CADhD,iCAuGD,CApGC,yCACC,kBAAmB,CAGnB,yCAA0C,CAO1C,qCAAsC,CADtC,kCAAmC,CAPnC,aAAc,CADd,SAUD,CAEA,uCACC,QACD,CAGC,gEAEC,oCACD,CAIA,kEACC,YACD,CAGD,gHAIC,qCAAsC,CADtC,kCAED,CAEA,mCAEC,SAaD,CAVC,0DAQC,eAAgB,CAHhB,QAAS,CAHT,UAOD,CAGD,kCAEC,SAWD,CATC,uDAEC,QAMD,CAHC,yFACC,eACD,CASD,kFACC,mCACD,CAMA,wEACC,cACD,CAEA,iFACC,aAAc,CACd,UACD,CAGD,qBACC,YACD,CAtGD,qCAyGE,QAEF,CAYC,+FACC,cACD,CAEA,iJAEC,mCACD,CAEA,qHACC,aACD,CAIC,6JAEC,2BAA4B,CAD5B,wBAED,CAGA,2JAEC,4BAA6B,CAD7B,yBAED,CASD,8RACC,mCACD,CAWA,qHACC,cACD,CAIC,6JAEC,4BAA6B,CAD7B,yBAED,CAGA,2JAEC,2BAA4B,CAD5B,wBAED,CASD,8RACC,oCACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../mixins/_unselectable.css";\n\n.ck.ck-toolbar {\n\t@mixin ck-unselectable;\n\n\tdisplay: flex;\n\tflex-flow: row nowrap;\n\talign-items: center;\n\n\t& > .ck-toolbar__items {\n\t\tdisplay: flex;\n\t\tflex-flow: row wrap;\n\t\talign-items: center;\n\t\tflex-grow: 1;\n\n\t}\n\n\t& .ck.ck-toolbar__separator {\n\t\tdisplay: inline-block;\n\n\t\t/*\n\t\t * A leading or trailing separator makes no sense (separates from nothing on one side).\n\t\t * For instance, it can happen when toolbar items (also separators) are getting grouped one by one and\n\t\t * moved to another toolbar in the dropdown.\n\t\t */\n\t\t&:first-child,\n\t\t&:last-child {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t& .ck-toolbar__line-break {\n\t\tflex-basis: 100%;\n\t}\n\n\t&.ck-toolbar_grouping > .ck-toolbar__items {\n\t\tflex-wrap: nowrap;\n\t}\n\n\t&.ck-toolbar_vertical > .ck-toolbar__items {\n\t\tflex-direction: column;\n\t}\n\n\t&.ck-toolbar_floating > .ck-toolbar__items {\n\t\tflex-wrap: nowrap;\n\t}\n\n\t& > .ck.ck-toolbar__grouped-dropdown {\n\t\t& > .ck-dropdown__button .ck-dropdown__arrow {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Makes element unselectable.\n */\n@define-mixin ck-unselectable {\n\t-moz-user-select: none;\n\t-webkit-user-select: none;\n\t-ms-user-select: none;\n\tuser-select: none\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-toolbar {\n\t@mixin ck-rounded-corners;\n\n\tbackground: var(--ck-color-toolbar-background);\n\tpadding: 0 var(--ck-spacing-small);\n\tborder: 1px solid var(--ck-color-toolbar-border);\n\n\t& .ck.ck-toolbar__separator {\n\t\talign-self: stretch;\n\t\twidth: 1px;\n\t\tmin-width: 1px;\n\t\tbackground: var(--ck-color-toolbar-border);\n\n\t\t/*\n\t\t * These margins make the separators look better in balloon toolbars (when aligned with the "tip").\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/7493.\n\t\t */\n\t\tmargin-top: var(--ck-spacing-small);\n\t\tmargin-bottom: var(--ck-spacing-small);\n\t}\n\n\t& .ck-toolbar__line-break {\n\t\theight: 0;\n\t}\n\n\t& > .ck-toolbar__items {\n\t\t& > *:not(.ck-toolbar__line-break) {\n\t\t\t/* (#11) Separate toolbar items. */\n\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t}\n\n\t\t/* Don\'t display a separator after an empty items container, for instance,\n\t\twhen all items were grouped */\n\t\t&:empty + .ck.ck-toolbar__separator {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t& > .ck-toolbar__items > *:not(.ck-toolbar__line-break),\n\t& > .ck.ck-toolbar__grouped-dropdown {\n\t\t/* Make sure items wrapped to the next line have v-spacing */\n\t\tmargin-top: var(--ck-spacing-small);\n\t\tmargin-bottom: var(--ck-spacing-small);\n\t}\n\n\t&.ck-toolbar_vertical {\n\t\t/* Items in a vertical toolbar span the entire width. */\n\t\tpadding: 0;\n\n\t\t/* Specificity matters here. See https://github.com/ckeditor/ckeditor5-theme-lark/issues/168. */\n\t\t& > .ck-toolbar__items > .ck {\n\t\t\t/* Items in a vertical toolbar should span the horizontal space. */\n\t\t\twidth: 100%;\n\n\t\t\t/* Items in a vertical toolbar should have no margin. */\n\t\t\tmargin: 0;\n\n\t\t\t/* Items in a vertical toolbar span the entire width so rounded corners are pointless. */\n\t\t\tborder-radius: 0;\n\t\t}\n\t}\n\n\t&.ck-toolbar_compact {\n\t\t/* No spacing around items. */\n\t\tpadding: 0;\n\n\t\t& > .ck-toolbar__items > * {\n\t\t\t/* Compact toolbar items have no spacing between them. */\n\t\t\tmargin: 0;\n\n\t\t\t/* "Middle" children should have no rounded corners. */\n\t\t\t&:not(:first-child):not(:last-child) {\n\t\t\t\tborder-radius: 0;\n\t\t\t}\n\t\t}\n\t}\n\n\t& > .ck.ck-toolbar__grouped-dropdown {\n\t\t/*\n\t\t * Dropdown button has asymmetric padding to fit the arrow.\n\t\t * This button has no arrow so let\'s revert that padding back to normal.\n\t\t */\n\t\t& > .ck.ck-button.ck-dropdown__button {\n\t\t\tpadding-left: var(--ck-spacing-tiny);\n\t\t}\n\t}\n\n\t/* A drop-down containing the nested toolbar with configured items. */\n\t& .ck-toolbar__nested-toolbar-dropdown {\n\t\t/* Prevent empty space in the panel when the dropdown label is visible and long but the toolbar has few items. */\n\t\t& > .ck-dropdown__panel {\n\t\t\tmin-width: auto;\n\t\t}\n\n\t\t& > .ck-button > .ck-button__label {\n\t\t\tmax-width: 7em;\n\t\t\twidth: auto;\n\t\t}\n\t}\n\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t@nest .ck-toolbar-container & {\n\t\tborder: 0;\n\t}\n}\n\n/* stylelint-disable */\n\n/*\n * Styles for RTL toolbars.\n *\n * Note: In some cases (e.g. a decoupled editor), the toolbar has its own "dir"\n * because its parent is not controlled by the editor framework.\n */\n[dir="rtl"] .ck.ck-toolbar,\n.ck.ck-toolbar[dir="rtl"] {\n\t& > .ck-toolbar__items > .ck {\n\t\tmargin-right: 0;\n\t}\n\n\t&:not(.ck-toolbar_compact) > .ck-toolbar__items > .ck {\n\t\t/* (#11) Separate toolbar items. */\n\t\tmargin-left: var(--ck-spacing-small);\n\t}\n\n\t& > .ck-toolbar__items > .ck:last-child {\n\t\tmargin-left: 0;\n\t}\n\n\t&.ck-toolbar_compact > .ck-toolbar__items > .ck {\n\t\t/* No rounded corners on the right side of the first child. */\n\t\t&:first-child {\n\t\t\tborder-top-left-radius: 0;\n\t\t\tborder-bottom-left-radius: 0;\n\t\t}\n\n\t\t/* No rounded corners on the left side of the last child. */\n\t\t&:last-child {\n\t\t\tborder-top-right-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\t}\n\n\t/* Separate the the separator form the grouping dropdown when some items are grouped. */\n\t& > .ck.ck-toolbar__separator {\n\t\tmargin-left: var(--ck-spacing-small);\n\t}\n\n\t/* Some spacing between the items and the separator before the grouped items dropdown. */\n\t&.ck-toolbar_grouping > .ck-toolbar__items:not(:empty):not(:only-child) {\n\t\tmargin-left: var(--ck-spacing-small);\n\t}\n}\n\n/*\n * Styles for LTR toolbars.\n *\n * Note: In some cases (e.g. a decoupled editor), the toolbar has its own "dir"\n * because its parent is not controlled by the editor framework.\n */\n[dir="ltr"] .ck.ck-toolbar,\n.ck.ck-toolbar[dir="ltr"] {\n\t& > .ck-toolbar__items > .ck:last-child {\n\t\tmargin-right: 0;\n\t}\n\n\t&.ck-toolbar_compact > .ck-toolbar__items > .ck {\n\t\t/* No rounded corners on the right side of the first child. */\n\t\t&:first-child {\n\t\t\tborder-top-right-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\n\t\t/* No rounded corners on the left side of the last child. */\n\t\t&:last-child {\n\t\t\tborder-top-left-radius: 0;\n\t\t\tborder-bottom-left-radius: 0;\n\t\t}\n\t}\n\n\t/* Separate the the separator form the grouping dropdown when some items are grouped. */\n\t& > .ck.ck-toolbar__separator {\n\t\tmargin-right: var(--ck-spacing-small);\n\t}\n\n\t/* Some spacing between the items and the separator before the grouped items dropdown. */\n\t&.ck-toolbar_grouping > .ck-toolbar__items:not(:empty):not(:only-child) {\n\t\tmargin-right: var(--ck-spacing-small);\n\t}\n}\n\n/* stylelint-enable */\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},9205:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-balloon-panel.ck-tooltip{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;z-index:calc(var(--ck-z-dialog) + 100);--ck-balloon-border-width:0px;--ck-balloon-arrow-offset:0px;--ck-balloon-arrow-half-width:4px;--ck-balloon-arrow-height:4px;--ck-tooltip-text-padding:4px;--ck-color-panel-background:var(--ck-color-tooltip-background);padding:0 var(--ck-spacing-medium)}.ck.ck-balloon-panel.ck-tooltip .ck-tooltip__text{color:var(--ck-color-tooltip-text);font-size:.9em;line-height:1.5}.ck.ck-balloon-panel.ck-tooltip.ck-tooltip_multi-line .ck-tooltip__text{display:inline-block;max-width:200px;padding:var(--ck-tooltip-text-padding) 0;white-space:break-spaces}.ck.ck-balloon-panel.ck-tooltip{box-shadow:none}.ck.ck-balloon-panel.ck-tooltip:before{display:none}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/tooltip/tooltip.css","webpack://./../ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/tooltip/tooltip.css"],names:[],mappings:"AAOA,gCCEC,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBAAgB,CDFhB,sCAAyC,CEFzC,6BAA8B,CAC9B,6BAA8B,CAC9B,iCAAkC,CAClC,6BAA8B,CAC9B,6BAA8B,CAC9B,8DAA+D,CAE/D,kCFJD,CEMC,kDAGC,kCAAmC,CAFnC,cAAe,CACf,eAED,CAEA,wEAEC,oBAAqB,CAErB,eAAgB,CADhB,wCAAyC,CAFzC,wBAID,CArBD,gCAwBC,eAMD,CAHC,uCACC,YACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../mixins/_unselectable.css";\n\n.ck.ck-balloon-panel.ck-tooltip {\n\t@mixin ck-unselectable;\n\n\tz-index: calc( var(--ck-z-dialog) + 100 );\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Makes element unselectable.\n */\n@define-mixin ck-unselectable {\n\t-moz-user-select: none;\n\t-webkit-user-select: none;\n\t-ms-user-select: none;\n\tuser-select: none\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n\n.ck.ck-balloon-panel.ck-tooltip {\n\t--ck-balloon-border-width: 0px;\n\t--ck-balloon-arrow-offset: 0px;\n\t--ck-balloon-arrow-half-width: 4px;\n\t--ck-balloon-arrow-height: 4px;\n\t--ck-tooltip-text-padding: 4px;\n\t--ck-color-panel-background: var(--ck-color-tooltip-background);\n\n\tpadding: 0 var(--ck-spacing-medium);\n\n\t& .ck-tooltip__text {\n\t\tfont-size: .9em;\n\t\tline-height: 1.5;\n\t\tcolor: var(--ck-color-tooltip-text);\n\t}\n\n\t&.ck-tooltip_multi-line .ck-tooltip__text {\n\t\twhite-space: break-spaces;\n\t\tdisplay: inline-block;\n\t\tpadding: var(--ck-tooltip-text-padding) 0;\n\t\tmax-width: 200px;\n\t}\n\n\t/* Reset balloon panel styles */\n\tbox-shadow: none;\n\n\t/* Hide the default shadow of the .ck-balloon-panel tip */\n\t&::before {\n\t\tdisplay: none;\n\t}\n}\n'],sourceRoot:""}]);const a=s},7676:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-hidden{display:none!important}:root{--ck-z-default:1;--ck-z-panel:calc(var(--ck-z-default) + 999);--ck-z-dialog:9999}.ck-transitions-disabled,.ck-transitions-disabled *{transition:none!important}:root{--ck-powered-by-line-height:10px;--ck-powered-by-padding-vertical:2px;--ck-powered-by-padding-horizontal:4px;--ck-powered-by-text-color:#4f4f4f;--ck-powered-by-border-radius:var(--ck-border-radius);--ck-powered-by-background:#fff;--ck-powered-by-border-color:var(--ck-color-focus-border)}.ck.ck-balloon-panel.ck-powered-by-balloon{--ck-border-radius:var(--ck-powered-by-border-radius);background:var(--ck-powered-by-background);box-shadow:none;min-height:unset;z-index:calc(var(--ck-z-panel) - 1)}.ck.ck-balloon-panel.ck-powered-by-balloon .ck.ck-powered-by{line-height:var(--ck-powered-by-line-height)}.ck.ck-balloon-panel.ck-powered-by-balloon .ck.ck-powered-by a{align-items:center;cursor:pointer;display:flex;filter:grayscale(80%);line-height:var(--ck-powered-by-line-height);opacity:.66;padding:var(--ck-powered-by-padding-vertical) var(--ck-powered-by-padding-horizontal)}.ck.ck-balloon-panel.ck-powered-by-balloon .ck.ck-powered-by .ck-powered-by__label{color:var(--ck-powered-by-text-color);cursor:pointer;font-size:7.5px;font-weight:700;letter-spacing:-.2px;line-height:normal;margin-right:4px;padding-left:2px;text-transform:uppercase}.ck.ck-balloon-panel.ck-powered-by-balloon .ck.ck-powered-by .ck-icon{cursor:pointer;display:block}.ck.ck-balloon-panel.ck-powered-by-balloon .ck.ck-powered-by:hover a{filter:grayscale(0);opacity:1}.ck.ck-balloon-panel.ck-powered-by-balloon[class*=position_inside]{border-color:transparent}.ck.ck-balloon-panel.ck-powered-by-balloon[class*=position_border]{border:var(--ck-focus-ring);border-color:var(--ck-powered-by-border-color)}:root{--ck-color-base-foreground:#fafafa;--ck-color-base-background:#fff;--ck-color-base-border:#ccced1;--ck-color-base-action:#53a336;--ck-color-base-focus:#6cb5f9;--ck-color-base-text:#333;--ck-color-base-active:#2977ff;--ck-color-base-active-focus:#0d65ff;--ck-color-base-error:#db3700;--ck-color-focus-border-coordinates:218,81.8%,56.9%;--ck-color-focus-border:hsl(var(--ck-color-focus-border-coordinates));--ck-color-focus-outer-shadow:#cae1fc;--ck-color-focus-disabled-shadow:rgba(119,186,248,.3);--ck-color-focus-error-shadow:rgba(255,64,31,.3);--ck-color-text:var(--ck-color-base-text);--ck-color-shadow-drop:rgba(0,0,0,.15);--ck-color-shadow-drop-active:rgba(0,0,0,.2);--ck-color-shadow-inner:rgba(0,0,0,.1);--ck-color-button-default-background:transparent;--ck-color-button-default-hover-background:#f0f0f0;--ck-color-button-default-active-background:#f0f0f0;--ck-color-button-default-disabled-background:transparent;--ck-color-button-on-background:#f0f7ff;--ck-color-button-on-hover-background:#dbecff;--ck-color-button-on-active-background:#dbecff;--ck-color-button-on-disabled-background:#f0f2f4;--ck-color-button-on-color:#2977ff;--ck-color-button-action-background:var(--ck-color-base-action);--ck-color-button-action-hover-background:#4d9d30;--ck-color-button-action-active-background:#4d9d30;--ck-color-button-action-disabled-background:#7ec365;--ck-color-button-action-text:var(--ck-color-base-background);--ck-color-button-save:#008a00;--ck-color-button-cancel:#db3700;--ck-color-switch-button-off-background:#939393;--ck-color-switch-button-off-hover-background:#7d7d7d;--ck-color-switch-button-on-background:var(--ck-color-button-action-background);--ck-color-switch-button-on-hover-background:#4d9d30;--ck-color-switch-button-inner-background:var(--ck-color-base-background);--ck-color-switch-button-inner-shadow:rgba(0,0,0,.1);--ck-color-dropdown-panel-background:var(--ck-color-base-background);--ck-color-dropdown-panel-border:var(--ck-color-base-border);--ck-color-dialog-background:var(--ck-custom-background);--ck-color-dialog-form-header-border:var(--ck-custom-border);--ck-color-input-background:var(--ck-color-base-background);--ck-color-input-border:var(--ck-color-base-border);--ck-color-input-error-border:var(--ck-color-base-error);--ck-color-input-text:var(--ck-color-base-text);--ck-color-input-disabled-background:#f2f2f2;--ck-color-input-disabled-border:var(--ck-color-base-border);--ck-color-input-disabled-text:#757575;--ck-color-list-background:var(--ck-color-base-background);--ck-color-list-button-hover-background:var(--ck-color-button-default-hover-background);--ck-color-list-button-on-background:var(--ck-color-button-on-color);--ck-color-list-button-on-background-focus:var(--ck-color-button-on-color);--ck-color-list-button-on-text:var(--ck-color-base-background);--ck-color-panel-background:var(--ck-color-base-background);--ck-color-panel-border:var(--ck-color-base-border);--ck-color-toolbar-background:var(--ck-color-base-background);--ck-color-toolbar-border:var(--ck-color-base-border);--ck-color-tooltip-background:var(--ck-color-base-text);--ck-color-tooltip-text:var(--ck-color-base-background);--ck-color-engine-placeholder-text:#707070;--ck-color-upload-bar-background:#6cb5f9;--ck-color-link-default:#0000f0;--ck-color-link-selected-background:rgba(31,176,255,.1);--ck-color-link-fake-selection:rgba(31,176,255,.3);--ck-color-highlight-background:#ff0;--ck-color-light-red:#fcc;--ck-disabled-opacity:.5;--ck-focus-outer-shadow-geometry:0 0 0 3px;--ck-focus-outer-shadow:var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-outer-shadow);--ck-focus-disabled-outer-shadow:var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-disabled-shadow);--ck-focus-error-outer-shadow:var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-error-shadow);--ck-focus-ring:1px solid var(--ck-color-focus-border);--ck-font-size-base:13px;--ck-line-height-base:1.84615;--ck-font-face:Helvetica,Arial,Tahoma,Verdana,Sans-Serif;--ck-font-size-tiny:0.7em;--ck-font-size-small:0.75em;--ck-font-size-normal:1em;--ck-font-size-big:1.4em;--ck-font-size-large:1.8em;--ck-ui-component-min-height:2.3em}.ck-reset_all :not(.ck-reset_all-excluded *),.ck.ck-reset,.ck.ck-reset_all{background:transparent;border:0;box-sizing:border-box;height:auto;margin:0;padding:0;position:static;text-decoration:none;transition:none;vertical-align:middle;width:auto;word-wrap:break-word}.ck-reset_all :not(.ck-reset_all-excluded *),.ck.ck-reset_all{border-collapse:collapse;color:var(--ck-color-text);cursor:auto;float:none;font:normal normal normal var(--ck-font-size-base)/var(--ck-line-height-base) var(--ck-font-face);text-align:left;white-space:nowrap}.ck-reset_all .ck-rtl :not(.ck-reset_all-excluded *){text-align:right}.ck-reset_all iframe:not(.ck-reset_all-excluded *){vertical-align:inherit}.ck-reset_all textarea:not(.ck-reset_all-excluded *){white-space:pre-wrap}.ck-reset_all input[type=password]:not(.ck-reset_all-excluded *),.ck-reset_all input[type=text]:not(.ck-reset_all-excluded *),.ck-reset_all textarea:not(.ck-reset_all-excluded *){cursor:text}.ck-reset_all input[type=password][disabled]:not(.ck-reset_all-excluded *),.ck-reset_all input[type=text][disabled]:not(.ck-reset_all-excluded *),.ck-reset_all textarea[disabled]:not(.ck-reset_all-excluded *){cursor:default}.ck-reset_all fieldset:not(.ck-reset_all-excluded *){border:2px groove #dfdee3;padding:10px}.ck-reset_all button:not(.ck-reset_all-excluded *)::-moz-focus-inner{border:0;padding:0}.ck[dir=rtl],.ck[dir=rtl] .ck{text-align:right}:root{--ck-border-radius:2px;--ck-inner-shadow:2px 2px 3px var(--ck-color-shadow-inner) inset;--ck-drop-shadow:0 1px 2px 1px var(--ck-color-shadow-drop);--ck-drop-shadow-active:0 3px 6px 1px var(--ck-color-shadow-drop-active);--ck-spacing-unit:0.6em;--ck-spacing-large:calc(var(--ck-spacing-unit)*1.5);--ck-spacing-standard:var(--ck-spacing-unit);--ck-spacing-medium:calc(var(--ck-spacing-unit)*0.8);--ck-spacing-small:calc(var(--ck-spacing-unit)*0.5);--ck-spacing-tiny:calc(var(--ck-spacing-unit)*0.3);--ck-spacing-extra-tiny:calc(var(--ck-spacing-unit)*0.16)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/globals/_hidden.css","webpack://./../ckeditor5-ui/theme/globals/_zindex.css","webpack://./../ckeditor5-ui/theme/globals/_transition.css","webpack://./../ckeditor5-ui/theme/globals/_poweredby.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_colors.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_disabled.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_focus.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_fonts.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_reset.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_shadow.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_spacing.css"],names:[],mappings:"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",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A class which hides an element in DOM.\n */\n.ck-hidden {\n\t/* Override selector specificity. Otherwise, all elements with some display\n\tstyle defined will override this one, which is not a desired result. */\n\tdisplay: none !important;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-z-default: 1;\n\t--ck-z-panel: calc( var(--ck-z-default) + 999 );\n\t--ck-z-dialog: 9999;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A class that disables all transitions of the element and its children.\n */\n.ck-transitions-disabled,\n.ck-transitions-disabled * {\n\ttransition: none !important;\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-powered-by-line-height: 10px;\n\t--ck-powered-by-padding-vertical: 2px;\n\t--ck-powered-by-padding-horizontal: 4px;\n\t--ck-powered-by-text-color: hsl(0, 0%, 31%);\n\t--ck-powered-by-border-radius: var(--ck-border-radius);\n\t--ck-powered-by-background: hsl(0, 0%, 100%);\n\t--ck-powered-by-border-color: var(--ck-color-focus-border);\n}\n\n.ck.ck-balloon-panel.ck-powered-by-balloon {\n\t--ck-border-radius: var(--ck-powered-by-border-radius);\n\n\tbox-shadow: none;\n\tbackground: var(--ck-powered-by-background);\n\tmin-height: unset;\n\tz-index: calc( var(--ck-z-panel) - 1 );\n\n\t& .ck.ck-powered-by {\n\t\tline-height: var(--ck-powered-by-line-height);\n\n\t\t& a {\n\t\t\tcursor: pointer;\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\topacity: .66;\n\t\t\tfilter: grayscale(80%);\n\t\t\tline-height: var(--ck-powered-by-line-height);\n\t\t\tpadding: var(--ck-powered-by-padding-vertical) var(--ck-powered-by-padding-horizontal);\n\t\t}\n\n\t\t& .ck-powered-by__label {\n\t\t\tfont-size: 7.5px;\n\t\t\tletter-spacing: -.2px;\n\t\t\tpadding-left: 2px;\n\t\t\ttext-transform: uppercase;\n\t\t\tfont-weight: bold;\n\t\t\tmargin-right: 4px;\n\t\t\tcursor: pointer;\n\t\t\tline-height: normal;\n\t\t\tcolor: var(--ck-powered-by-text-color);\n\n\t\t}\n\n\t\t& .ck-icon {\n\t\t\tdisplay: block;\n\t\t\tcursor: pointer;\n\t\t}\n\n\t\t&:hover {\n\t\t\t& a {\n\t\t\t\tfilter: grayscale(0%);\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t}\n\t}\n\n\t&[class*="position_inside"] {\n\t\tborder-color: transparent;\n\t}\n\n\t&[class*="position_border"] {\n\t\tborder: var(--ck-focus-ring);\n\t\tborder-color: var(--ck-powered-by-border-color);\n\t}\n}\n\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-base-foreground: \t\t\t\t\t\t\t\thsl(0, 0%, 98%);\n\t--ck-color-base-background: \t\t\t\t\t\t\t\thsl(0, 0%, 100%);\n\t--ck-color-base-border: \t\t\t\t\t\t\t\t\thsl(220, 6%, 81%);\n\t--ck-color-base-action: \t\t\t\t\t\t\t\t\thsl(104, 50.2%, 42.5%);\n\t--ck-color-base-focus: \t\t\t\t\t\t\t\t\t\thsl(209, 92%, 70%);\n\t--ck-color-base-text: \t\t\t\t\t\t\t\t\t\thsl(0, 0%, 20%);\n\t--ck-color-base-active: \t\t\t\t\t\t\t\t\thsl(218.1, 100%, 58%);\n\t--ck-color-base-active-focus:\t\t\t\t\t\t\t\thsl(218.2, 100%, 52.5%);\n\t--ck-color-base-error:\t\t\t\t\t\t\t\t\t\thsl(15, 100%, 43%);\n\n\t/* -- Generic colors ------------------------------------------------------------------------ */\n\n\t--ck-color-focus-border-coordinates: \t\t\t\t\t\t218, 81.8%, 56.9%;\n\t--ck-color-focus-border: \t\t\t\t\t\t\t\t\thsl(var(--ck-color-focus-border-coordinates));\n\t--ck-color-focus-outer-shadow:\t\t\t\t\t\t\t\thsl(212.4, 89.3%, 89%);\n\t--ck-color-focus-disabled-shadow:\t\t\t\t\t\t\thsla(209, 90%, 72%,.3);\n\t--ck-color-focus-error-shadow:\t\t\t\t\t\t\t\thsla(9,100%,56%,.3);\n\t--ck-color-text: \t\t\t\t\t\t\t\t\t\t\tvar(--ck-color-base-text);\n\t--ck-color-shadow-drop: \t\t\t\t\t\t\t\t\thsla(0, 0%, 0%, 0.15);\n\t--ck-color-shadow-drop-active:\t\t\t\t\t\t\t\thsla(0, 0%, 0%, 0.2);\n\t--ck-color-shadow-inner: \t\t\t\t\t\t\t\t\thsla(0, 0%, 0%, 0.1);\n\n\t/* -- Buttons ------------------------------------------------------------------------------- */\n\n\t--ck-color-button-default-background: \t\t\t\t\t\ttransparent;\n\t--ck-color-button-default-hover-background: \t\t\t\thsl(0, 0%, 94.1%);\n\t--ck-color-button-default-active-background: \t\t\t\thsl(0, 0%, 94.1%);\n\t--ck-color-button-default-disabled-background: \t\t\t\ttransparent;\n\n\t--ck-color-button-on-background: \t\t\t\t\t\t\thsl(212, 100%, 97.1%);\n\t--ck-color-button-on-hover-background: \t\t\t\t\t\thsl(211.7, 100%, 92.9%);\n\t--ck-color-button-on-active-background: \t\t\t\t\thsl(211.7, 100%, 92.9%);\n\t--ck-color-button-on-disabled-background: \t\t\t\t\thsl(211, 15%, 95%);\n\t--ck-color-button-on-color:\t\t\t\t\t\t\t\t\thsl(218.1, 100%, 58%);\n\n\n\t--ck-color-button-action-background: \t\t\t\t\t\tvar(--ck-color-base-action);\n\t--ck-color-button-action-hover-background: \t\t\t\t\thsl(104, 53.2%, 40.2%);\n\t--ck-color-button-action-active-background: \t\t\t\thsl(104, 53.2%, 40.2%);\n\t--ck-color-button-action-disabled-background: \t\t\t\thsl(104, 44%, 58%);\n\t--ck-color-button-action-text: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\n\t--ck-color-button-save: \t\t\t\t\t\t\t\t\thsl(120, 100%, 27%);\n\t--ck-color-button-cancel: \t\t\t\t\t\t\t\t\thsl(15, 100%, 43%);\n\n\t--ck-color-switch-button-off-background:\t\t\t\t\thsl(0, 0%, 57.6%);\n\t--ck-color-switch-button-off-hover-background:\t\t\t\thsl(0, 0%, 49%);\n\t--ck-color-switch-button-on-background:\t\t\t\t\t\tvar(--ck-color-button-action-background);\n\t--ck-color-switch-button-on-hover-background:\t\t\t\thsl(104, 53.2%, 40.2%);\n\t--ck-color-switch-button-inner-background:\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-switch-button-inner-shadow:\t\t\t\t\t\thsla(0, 0%, 0%, 0.1);\n\n\t/* -- Dropdown ------------------------------------------------------------------------------ */\n\n\t--ck-color-dropdown-panel-background: \t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-dropdown-panel-border: \t\t\t\t\t\t\tvar(--ck-color-base-border);\n\n\t/* -- Dialog -------------------------------------------------------------------------------- */\n\n\t--ck-color-dialog-background: \t\t\t\t\t\t\t\tvar(--ck-custom-background);\n\t--ck-color-dialog-form-header-border: \t\t\t\t\t\tvar(--ck-custom-border);\n\n\t/* -- Input --------------------------------------------------------------------------------- */\n\n\t--ck-color-input-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-input-border: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-border);\n\t--ck-color-input-error-border:\t\t\t\t\t\t\t\tvar(--ck-color-base-error);\n\t--ck-color-input-text: \t\t\t\t\t\t\t\t\t\tvar(--ck-color-base-text);\n\t--ck-color-input-disabled-background: \t\t\t\t\t\thsl(0, 0%, 95%);\n\t--ck-color-input-disabled-border: \t\t\t\t\t\t\tvar(--ck-color-base-border);\n\t--ck-color-input-disabled-text: \t\t\t\t\t\t\thsl(0, 0%, 46%);\n\n\t/* -- List ---------------------------------------------------------------------------------- */\n\n\t--ck-color-list-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-list-button-hover-background: \t\t\t\t\tvar(--ck-color-button-default-hover-background);\n\t--ck-color-list-button-on-background: \t\t\t\t\t\tvar(--ck-color-button-on-color);\n\t--ck-color-list-button-on-background-focus: \t\t\t\tvar(--ck-color-button-on-color);\n\t--ck-color-list-button-on-text:\t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\n\t/* -- Panel --------------------------------------------------------------------------------- */\n\n\t--ck-color-panel-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-panel-border: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-border);\n\n\t/* -- Toolbar ------------------------------------------------------------------------------- */\n\n\t--ck-color-toolbar-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-toolbar-border: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-border);\n\n\t/* -- Tooltip ------------------------------------------------------------------------------- */\n\n\t--ck-color-tooltip-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-text);\n\t--ck-color-tooltip-text: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\n\t/* -- Engine -------------------------------------------------------------------------------- */\n\n\t--ck-color-engine-placeholder-text: \t\t\t\t\t\thsl(0, 0%, 44%);\n\n\t/* -- Upload -------------------------------------------------------------------------------- */\n\n\t--ck-color-upload-bar-background:\t\t \t\t\t\t\thsl(209, 92%, 70%);\n\n\t/* -- Link -------------------------------------------------------------------------------- */\n\n\t--ck-color-link-default:\t\t\t\t\t\t\t\t\thsl(240, 100%, 47%);\n\t--ck-color-link-selected-background:\t\t\t\t\t\thsla(201, 100%, 56%, 0.1);\n\t--ck-color-link-fake-selection:\t\t\t\t\t\t\t\thsla(201, 100%, 56%, 0.3);\n\n\t/* -- Search result highlight ---------------------------------------------------------------- */\n\n\t--ck-color-highlight-background:\t\t\t\t\t\t\thsl(60, 100%, 50%);\n\n\t/* -- Generic colors ------------------------------------------------------------------------- */\n\n\t--ck-color-light-red:\t\t\t\t\t\t\t\t\t\thsl(0, 100%, 90%);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/**\n\t * An opacity value of disabled UI item.\n\t */\n\t--ck-disabled-opacity: .5;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/**\n\t * The geometry of the of focused element's outer shadow.\n\t */\n\t--ck-focus-outer-shadow-geometry: 0 0 0 3px;\n\n\t/**\n\t * A visual style of focused element's outer shadow.\n\t */\n\t--ck-focus-outer-shadow: var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-outer-shadow);\n\n\t/**\n\t * A visual style of focused element's outer shadow (when disabled).\n\t */\n\t--ck-focus-disabled-outer-shadow: var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-disabled-shadow);\n\n\t/**\n\t * A visual style of focused element's outer shadow (when has errors).\n\t */\n\t--ck-focus-error-outer-shadow: var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-error-shadow);\n\n\t/**\n\t * A visual style of focused element's border or outline.\n\t */\n\t--ck-focus-ring: 1px solid var(--ck-color-focus-border);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-font-size-base: 13px;\n\t--ck-line-height-base: 1.84615;\n\t--ck-font-face: Helvetica, Arial, Tahoma, Verdana, Sans-Serif;\n\n\t--ck-font-size-tiny: 0.7em;\n\t--ck-font-size-small: 0.75em;\n\t--ck-font-size-normal: 1em;\n\t--ck-font-size-big: 1.4em;\n\t--ck-font-size-large: 1.8em;\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/* This is super-important. This is **manually** adjusted so a button without an icon\n\tis never smaller than a button with icon, additionally making sure that text-less buttons\n\tare perfect squares. The value is also shared by other components which should stay "in-line"\n\twith buttons. */\n\t--ck-ui-component-min-height: 2.3em;\n}\n\n/**\n * Resets an element, ignoring its children.\n */\n.ck.ck-reset,\n.ck.ck-reset_all,\n.ck-reset_all *:not(.ck-reset_all-excluded *) {\n\tbox-sizing: border-box;\n\twidth: auto;\n\theight: auto;\n\tposition: static;\n\n\t/* Do not include inheritable rules here. */\n\tmargin: 0;\n\tpadding: 0;\n\tborder: 0;\n\tbackground: transparent;\n\ttext-decoration: none;\n\tvertical-align: middle;\n\ttransition: none;\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/105 */\n\tword-wrap: break-word;\n}\n\n/**\n * Resets an element AND its children.\n */\n.ck.ck-reset_all,\n.ck-reset_all *:not(.ck-reset_all-excluded *) {\n\t/* These are rule inherited by all children elements. */\n\tborder-collapse: collapse;\n\tfont: normal normal normal var(--ck-font-size-base)/var(--ck-line-height-base) var(--ck-font-face);\n\tcolor: var(--ck-color-text);\n\ttext-align: left;\n\twhite-space: nowrap;\n\tcursor: auto;\n\tfloat: none;\n}\n\n.ck-reset_all {\n\t& .ck-rtl *:not(.ck-reset_all-excluded *) {\n\t\ttext-align: right;\n\t}\n\n\t& iframe:not(.ck-reset_all-excluded *) {\n\t\t/* For IE */\n\t\tvertical-align: inherit;\n\t}\n\n\t& textarea:not(.ck-reset_all-excluded *) {\n\t\twhite-space: pre-wrap;\n\t}\n\n\t& textarea:not(.ck-reset_all-excluded *),\n\t& input[type="text"]:not(.ck-reset_all-excluded *),\n\t& input[type="password"]:not(.ck-reset_all-excluded *) {\n\t\tcursor: text;\n\t}\n\n\t& textarea[disabled]:not(.ck-reset_all-excluded *),\n\t& input[type="text"][disabled]:not(.ck-reset_all-excluded *),\n\t& input[type="password"][disabled]:not(.ck-reset_all-excluded *) {\n\t\tcursor: default;\n\t}\n\n\t& fieldset:not(.ck-reset_all-excluded *) {\n\t\tpadding: 10px;\n\t\tborder: 2px groove hsl(255, 7%, 88%);\n\t}\n\n\t& button:not(.ck-reset_all-excluded *)::-moz-focus-inner {\n\t\t/* See http://stackoverflow.com/questions/5517744/remove-extra-button-spacing-padding-in-firefox */\n\t\tpadding: 0;\n\t\tborder: 0\n\t}\n}\n\n/**\n * Default UI rules for RTL languages.\n */\n.ck[dir="rtl"],\n.ck[dir="rtl"] .ck {\n\ttext-align: right;\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Default border-radius value.\n */\n:root{\n\t--ck-border-radius: 2px;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/**\n\t * A visual style of element's inner shadow (i.e. input).\n\t */\n\t--ck-inner-shadow: 2px 2px 3px var(--ck-color-shadow-inner) inset;\n\n\t/**\n\t * A visual style of element's drop shadow (i.e. panel).\n\t */\n\t--ck-drop-shadow: 0 1px 2px 1px var(--ck-color-shadow-drop);\n\n\t/**\n\t * A visual style of element's active shadow (i.e. comment or suggestion).\n\t */\n\t--ck-drop-shadow-active: 0 3px 6px 1px var(--ck-color-shadow-drop-active);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-spacing-unit: \t\t\t\t\t\t0.6em;\n\t--ck-spacing-large: \t\t\t\t\tcalc(var(--ck-spacing-unit) * 1.5);\n\t--ck-spacing-standard: \t\t\t\t\tvar(--ck-spacing-unit);\n\t--ck-spacing-medium: \t\t\t\t\tcalc(var(--ck-spacing-unit) * 0.8);\n\t--ck-spacing-small: \t\t\t\t\tcalc(var(--ck-spacing-unit) * 0.5);\n\t--ck-spacing-tiny: \t\t\t\t\t\tcalc(var(--ck-spacing-unit) * 0.3);\n\t--ck-spacing-extra-tiny: \t\t\t\tcalc(var(--ck-spacing-unit) * 0.16);\n}\n"],sourceRoot:""}]);const a=s},695:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-resizer:var(--ck-color-focus-border);--ck-color-resizer-tooltip-background:#262626;--ck-color-resizer-tooltip-text:#f2f2f2;--ck-resizer-border-radius:var(--ck-border-radius);--ck-resizer-tooltip-offset:10px;--ck-resizer-tooltip-height:calc(var(--ck-spacing-small)*2 + 10px)}.ck .ck-widget,.ck .ck-widget.ck-widget_with-selection-handle{position:relative}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{position:absolute}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon{display:block}.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle{visibility:visible}.ck .ck-size-view{background:var(--ck-color-resizer-tooltip-background);border:1px solid var(--ck-color-resizer-tooltip-text);border-radius:var(--ck-resizer-border-radius);color:var(--ck-color-resizer-tooltip-text);display:block;font-size:var(--ck-font-size-tiny);height:var(--ck-resizer-tooltip-height);line-height:var(--ck-resizer-tooltip-height);padding:0 var(--ck-spacing-small)}.ck .ck-size-view.ck-orientation-above-center,.ck .ck-size-view.ck-orientation-bottom-left,.ck .ck-size-view.ck-orientation-bottom-right,.ck .ck-size-view.ck-orientation-top-left,.ck .ck-size-view.ck-orientation-top-right{position:absolute}.ck .ck-size-view.ck-orientation-top-left{left:var(--ck-resizer-tooltip-offset);top:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-top-right{right:var(--ck-resizer-tooltip-offset);top:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-bottom-right{bottom:var(--ck-resizer-tooltip-offset);right:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-bottom-left{bottom:var(--ck-resizer-tooltip-offset);left:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-above-center{left:50%;top:calc(var(--ck-resizer-tooltip-height)*-1);transform:translate(-50%)}:root{--ck-widget-outline-thickness:3px;--ck-widget-handler-icon-size:16px;--ck-widget-handler-animation-duration:200ms;--ck-widget-handler-animation-curve:ease;--ck-color-widget-blurred-border:#dedede;--ck-color-widget-hover-border:#ffc83d;--ck-color-widget-editable-focus-background:var(--ck-color-base-background);--ck-color-widget-drag-handler-icon-color:var(--ck-color-base-background)}.ck .ck-widget{outline-color:transparent;outline-style:solid;outline-width:var(--ck-widget-outline-thickness);transition:outline-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve)}@media (prefers-reduced-motion:reduce){.ck .ck-widget{transition:none}}.ck .ck-widget.ck-widget_selected,.ck .ck-widget.ck-widget_selected:hover{outline:var(--ck-widget-outline-thickness) solid var(--ck-color-focus-border)}.ck .ck-widget:hover{outline-color:var(--ck-color-widget-hover-border)}.ck .ck-editor__nested-editable{border:1px solid transparent}.ck .ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck .ck-editor__nested-editable:focus{border:var(--ck-focus-ring);box-shadow:var(--ck-inner-shadow),0 0;outline:none}@media (forced-colors:none){.ck .ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck .ck-editor__nested-editable:focus{background-color:var(--ck-color-widget-editable-focus-background)}}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{background-color:transparent;border-radius:var(--ck-border-radius) var(--ck-border-radius) 0 0;box-sizing:border-box;left:calc(0px - var(--ck-widget-outline-thickness));opacity:0;padding:4px;top:0;transform:translateY(-100%);transition:background-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),visibility var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve)}@media (prefers-reduced-motion:reduce){.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{transition:none}}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon{color:var(--ck-color-widget-drag-handler-icon-color);height:var(--ck-widget-handler-icon-size);width:var(--ck-widget-handler-icon-size)}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{opacity:0;transition:opacity .3s var(--ck-widget-handler-animation-curve)}@media (prefers-reduced-motion:reduce){.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{transition:none}}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle:hover .ck-icon .ck-icon__selected-indicator{opacity:1}.ck .ck-widget.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle{background-color:var(--ck-color-widget-hover-border);opacity:1}.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle{background-color:var(--ck-color-focus-border);opacity:1}.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator,.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{opacity:1}.ck[dir=rtl] .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{left:auto;right:calc(0px - var(--ck-widget-outline-thickness))}.ck.ck-editor__editable.ck-read-only .ck-widget{transition:none}.ck.ck-editor__editable.ck-read-only .ck-widget:not(.ck-widget_selected){--ck-widget-outline-thickness:0px}.ck.ck-editor__editable.ck-read-only .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle,.ck.ck-editor__editable.ck-read-only .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle:hover{background:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected:hover{outline-color:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle:hover,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle>.ck-widget__selection-handle,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle>.ck-widget__selection-handle:hover{background:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable blockquote>.ck-widget.ck-widget_with-selection-handle:first-child,.ck.ck-editor__editable>.ck-widget.ck-widget_with-selection-handle:first-child{margin-top:calc(1em + var(--ck-widget-handler-icon-size))}","",{version:3,sources:["webpack://./../ckeditor5-widget/theme/widget.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-widget/widget.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css","webpack://./../ckeditor5-ui/theme/mixins/_mediacolors.css"],names:[],mappings:"AAKA,MACC,+CAAgD,CAChD,6CAAsD,CACtD,uCAAgD,CAEhD,kDAAmD,CACnD,gCAAiC,CACjC,kEACD,CAOA,8DAEC,iBAqBD,CAnBC,4EACC,iBAOD,CALC,qFAGC,aACD,CASD,iLACC,kBACD,CAGD,kBACC,qDAAsD,CAEtD,qDAAsD,CACtD,6CAA8C,CAF9C,0CAA2C,CAI3C,aAAc,CADd,kCAAmC,CAGnC,uCAAwC,CACxC,4CAA6C,CAF7C,iCAsCD,CAlCC,8NAKC,iBACD,CAEA,0CAEC,qCAAsC,CADtC,oCAED,CAEA,2CAEC,sCAAuC,CADvC,oCAED,CAEA,8CACC,uCAAwC,CACxC,sCACD,CAEA,6CACC,uCAAwC,CACxC,qCACD,CAGA,8CAEC,QAAS,CADT,6CAAgD,CAEhD,yBACD,CChFD,MACC,iCAAkC,CAClC,kCAAmC,CACnC,4CAA6C,CAC7C,wCAAyC,CAEzC,wCAAiD,CACjD,sCAAkD,CAClD,2EAA4E,CAC5E,yEACD,CAEA,eAGC,yBAA0B,CAD1B,mBAAoB,CADpB,gDAAiD,CAGjD,6GAcD,CAZC,uCAND,eAOE,eAWF,CAVC,CAEA,0EAEC,6EACD,CAEA,qBACC,iDACD,CAGD,gCACC,4BAYD,CARC,yGCnCA,2BAA2B,CCF3B,qCAA8B,CDC9B,YD2CA,CGvCA,4BACC,yGHoCC,iEGlCD,CACD,CHuCA,4EAKC,4BAA6B,CAa7B,iEAAkE,CAhBlE,qBAAsB,CAoBtB,mDAAoD,CAhBpD,SAAU,CALV,WAAY,CAsBZ,KAAM,CAFN,2BAA4B,CAT5B,6SAwCD,CA3BC,uCAzBD,4EA0BE,eA0BF,CAzBC,CAEA,qFAIC,oDAAqD,CADrD,yCAA0C,CAD1C,wCAeD,CAVC,kHACC,SAAU,CAGV,+DAKD,CAHC,uCAND,kHAOE,eAEF,CADC,CAKF,wHACC,SACD,CAID,kFAEC,oDAAqD,CADrD,SAED,CAKC,oMAEC,6CAA8C,CAD9C,SAOD,CAHC,gRACC,SACD,CAOH,qFACC,SAAU,CACV,oDACD,CAGA,gDAEC,eAkBD,CAhBC,yEAOC,iCACD,CAGC,gOAEC,gDACD,CAOD,wIAEC,mDAQD,CALE,ghBAEC,gDACD,CAKH,yKAOC,yDACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-resizer: var(--ck-color-focus-border);\n\t--ck-color-resizer-tooltip-background: hsl(0, 0%, 15%);\n\t--ck-color-resizer-tooltip-text: hsl(0, 0%, 95%);\n\n\t--ck-resizer-border-radius: var(--ck-border-radius);\n\t--ck-resizer-tooltip-offset: 10px;\n\t--ck-resizer-tooltip-height: calc(var(--ck-spacing-small) * 2 + 10px);\n}\n\n.ck .ck-widget {\n\t/* This is neccessary for type around UI to be positioned properly. */\n\tposition: relative;\n}\n\n.ck .ck-widget.ck-widget_with-selection-handle {\n\t/* Make the widget wrapper a relative positioning container for the drag handle. */\n\tposition: relative;\n\n\t& .ck-widget__selection-handle {\n\t\tposition: absolute;\n\n\t\t& .ck-icon {\n\t\t\t/* Make sure the icon in not a subject to font-size or line-height to avoid\n\t\t\tunnecessary spacing around it. */\n\t\t\tdisplay: block;\n\t\t}\n\t}\n\n\t/* Show the selection handle on mouse hover over the widget, but not for nested widgets. */\n\t&:hover > .ck-widget__selection-handle {\n\t\tvisibility: visible;\n\t}\n\n\t/* Show the selection handle when the widget is selected, but not for nested widgets. */\n\t&.ck-widget_selected > .ck-widget__selection-handle {\n\t\tvisibility: visible;\n\t}\n}\n\n.ck .ck-size-view {\n\tbackground: var(--ck-color-resizer-tooltip-background);\n\tcolor: var(--ck-color-resizer-tooltip-text);\n\tborder: 1px solid var(--ck-color-resizer-tooltip-text);\n\tborder-radius: var(--ck-resizer-border-radius);\n\tfont-size: var(--ck-font-size-tiny);\n\tdisplay: block;\n\tpadding: 0 var(--ck-spacing-small);\n\theight: var(--ck-resizer-tooltip-height);\n\tline-height: var(--ck-resizer-tooltip-height);\n\n\t&.ck-orientation-top-left,\n\t&.ck-orientation-top-right,\n\t&.ck-orientation-bottom-right,\n\t&.ck-orientation-bottom-left,\n\t&.ck-orientation-above-center {\n\t\tposition: absolute;\n\t}\n\n\t&.ck-orientation-top-left {\n\t\ttop: var(--ck-resizer-tooltip-offset);\n\t\tleft: var(--ck-resizer-tooltip-offset);\n\t}\n\n\t&.ck-orientation-top-right {\n\t\ttop: var(--ck-resizer-tooltip-offset);\n\t\tright: var(--ck-resizer-tooltip-offset);\n\t}\n\n\t&.ck-orientation-bottom-right {\n\t\tbottom: var(--ck-resizer-tooltip-offset);\n\t\tright: var(--ck-resizer-tooltip-offset);\n\t}\n\n\t&.ck-orientation-bottom-left {\n\t\tbottom: var(--ck-resizer-tooltip-offset);\n\t\tleft: var(--ck-resizer-tooltip-offset);\n\t}\n\n\t/* Class applied if the widget is too small to contain the size label */\n\t&.ck-orientation-above-center {\n\t\ttop: calc(var(--ck-resizer-tooltip-height) * -1);\n\t\tleft: 50%;\n\t\ttransform: translate(-50%);\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../mixins/_focus.css";\n@import "../mixins/_shadow.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_mediacolors.css";\n\n:root {\n\t--ck-widget-outline-thickness: 3px;\n\t--ck-widget-handler-icon-size: 16px;\n\t--ck-widget-handler-animation-duration: 200ms;\n\t--ck-widget-handler-animation-curve: ease;\n\n\t--ck-color-widget-blurred-border: hsl(0, 0%, 87%);\n\t--ck-color-widget-hover-border: hsl(43, 100%, 62%);\n\t--ck-color-widget-editable-focus-background: var(--ck-color-base-background);\n\t--ck-color-widget-drag-handler-icon-color: var(--ck-color-base-background);\n}\n\n.ck .ck-widget {\n\toutline-width: var(--ck-widget-outline-thickness);\n\toutline-style: solid;\n\toutline-color: transparent;\n\ttransition: outline-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\ttransition: none;\n\t}\n\n\t&.ck-widget_selected,\n\t&.ck-widget_selected:hover {\n\t\toutline: var(--ck-widget-outline-thickness) solid var(--ck-color-focus-border);\n\t}\n\n\t&:hover {\n\t\toutline-color: var(--ck-color-widget-hover-border);\n\t}\n}\n\n.ck .ck-editor__nested-editable {\n\tborder: 1px solid transparent;\n\n\t/* The :focus style is applied before .ck-editor__nested-editable_focused class is rendered in the view.\n\tThese styles show a different border for a blink of an eye, so `:focus` need to have same styles applied. */\n\t&.ck-editor__nested-editable_focused,\n\t&:focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-inner-shadow);\n\t\t@mixin ck-media-default-colors {\n\t\t\tbackground-color: var(--ck-color-widget-editable-focus-background);\n\t\t}\n\t}\n}\n\n.ck .ck-widget.ck-widget_with-selection-handle {\n\t& .ck-widget__selection-handle {\n\t\tpadding: 4px;\n\t\tbox-sizing: border-box;\n\n\t\t/* Background and opacity will be animated as the handler shows up or the widget gets selected. */\n\t\tbackground-color: transparent;\n\t\topacity: 0;\n\n\t\t/* Transition:\n\t\t * background-color for the .ck-widget_selected state change,\n\t\t * visibility for hiding the handler,\n\t\t * opacity for the proper look of the icon when the handler disappears. */\n\t\ttransition:\n\t\t\tbackground-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),\n\t\t\tvisibility var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),\n\t\t\topacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\n\t\t/* Make only top corners round. */\n\t\tborder-radius: var(--ck-border-radius) var(--ck-border-radius) 0 0;\n\n\t\t/* Place the drag handler outside the widget wrapper. */\n\t\ttransform: translateY(-100%);\n\t\tleft: calc(0px - var(--ck-widget-outline-thickness));\n\t\ttop: 0;\n\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\ttransition: none;\n\t\t}\n\n\t\t& .ck-icon {\n\t\t\t/* Make sure the dimensions of the icon are independent of the fon-size of the content. */\n\t\t\twidth: var(--ck-widget-handler-icon-size);\n\t\t\theight: var(--ck-widget-handler-icon-size);\n\t\t\tcolor: var(--ck-color-widget-drag-handler-icon-color);\n\n\t\t\t/* The "selected" part of the icon is invisible by default */\n\t\t\t& .ck-icon__selected-indicator {\n\t\t\t\topacity: 0;\n\n\t\t\t\t/* Note: The animation is longer on purpose. Simply feels better. */\n\t\t\t\ttransition: opacity 300ms var(--ck-widget-handler-animation-curve);\n\n\t\t\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\t\t\ttransition: none;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/* Advertise using the look of the icon that once clicked the handler, the widget will be selected. */\n\t\t&:hover .ck-icon .ck-icon__selected-indicator {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\n\t/* Show the selection handler on mouse hover over the widget, but not for nested widgets. */\n\t&:hover > .ck-widget__selection-handle {\n\t\topacity: 1;\n\t\tbackground-color: var(--ck-color-widget-hover-border);\n\t}\n\n\t/* Show the selection handler when the widget is selected, but not for nested widgets. */\n\t&.ck-widget_selected,\n\t&.ck-widget_selected:hover {\n\t\t& > .ck-widget__selection-handle {\n\t\t\topacity: 1;\n\t\t\tbackground-color: var(--ck-color-focus-border);\n\n\t\t\t/* When the widget is selected, notify the user using the proper look of the icon. */\n\t\t\t& .ck-icon .ck-icon__selected-indicator {\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t}\n\t}\n}\n\n/* In a RTL environment, align the selection handler to the right side of the widget */\n/* stylelint-disable-next-line no-descending-specificity */\n.ck[dir="rtl"] .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle {\n\tleft: auto;\n\tright: calc(0px - var(--ck-widget-outline-thickness));\n}\n\n/* https://github.com/ckeditor/ckeditor5/issues/6415 */\n.ck.ck-editor__editable.ck-read-only .ck-widget {\n\t/* Prevent the :hover outline from showing up because of the used outline-color transition. */\n\ttransition: none;\n\n\t&:not(.ck-widget_selected) {\n\t\t/* Disable visual effects of hover/active widget when CKEditor is in readOnly mode.\n\t\t * See: https://github.com/ckeditor/ckeditor5/issues/1261\n\t\t *\n\t\t * Leave the unit because this custom property is used in calc() by other features.\n\t\t * See: https://github.com/ckeditor/ckeditor5/issues/6775\n\t\t */\n\t\t--ck-widget-outline-thickness: 0px;\n\t}\n\n\t&.ck-widget_with-selection-handle {\n\t\t& .ck-widget__selection-handle,\n\t\t& .ck-widget__selection-handle:hover {\n\t\t\tbackground: var(--ck-color-widget-blurred-border);\n\t\t}\n\t}\n}\n\n/* Style the widget when it\'s selected but the editable it belongs to lost focus. */\n/* stylelint-disable-next-line no-descending-specificity */\n.ck.ck-editor__editable.ck-blurred .ck-widget {\n\t&.ck-widget_selected,\n\t&.ck-widget_selected:hover {\n\t\toutline-color: var(--ck-color-widget-blurred-border);\n\n\t\t&.ck-widget_with-selection-handle {\n\t\t\t& > .ck-widget__selection-handle,\n\t\t\t& > .ck-widget__selection-handle:hover {\n\t\t\t\tbackground: var(--ck-color-widget-blurred-border);\n\t\t\t}\n\t\t}\n\t}\n}\n\n.ck.ck-editor__editable > .ck-widget.ck-widget_with-selection-handle:first-child,\n.ck.ck-editor__editable blockquote > .ck-widget.ck-widget_with-selection-handle:first-child {\n\t/* Do not crop selection handler if a widget is a first-child in the blockquote or in the root editable.\n\tIn fact, anything with overflow: hidden.\n\thttps://github.com/ckeditor/ckeditor5-block-quote/issues/28\n\thttps://github.com/ckeditor/ckeditor5-widget/issues/44\n\thttps://github.com/ckeditor/ckeditor5-widget/issues/66 */\n\tmargin-top: calc(1em + var(--ck-widget-handler-icon-size));\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A visual style of focused element's border.\n */\n@define-mixin ck-focus-ring {\n\t/* Disable native outline. */\n\toutline: none;\n\tborder: var(--ck-focus-ring)\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-forced-colors {\n\t@media (forced-colors: active) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n\n@define-mixin ck-media-default-colors {\n\t@media (forced-colors: none) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},4095:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck .ck-widget_with-resizer{position:relative}.ck .ck-widget__resizer{display:none;left:0;pointer-events:none;position:absolute;top:0}.ck-focused .ck-widget_with-resizer.ck-widget_selected>.ck-widget__resizer{display:block}.ck .ck-widget__resizer__handle{pointer-events:all;position:absolute}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-right,.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-left{cursor:nwse-resize}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-left,.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-right{cursor:nesw-resize}:root{--ck-resizer-size:10px;--ck-resizer-offset:calc(var(--ck-resizer-size)/-2 - 2px);--ck-resizer-border-width:1px}.ck .ck-widget__resizer{outline:1px solid var(--ck-color-resizer)}.ck .ck-widget__resizer__handle{background:var(--ck-color-focus-border);border:var(--ck-resizer-border-width) solid #fff;border-radius:var(--ck-resizer-border-radius);height:var(--ck-resizer-size);width:var(--ck-resizer-size)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-left{left:var(--ck-resizer-offset);top:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-right{right:var(--ck-resizer-offset);top:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-right{bottom:var(--ck-resizer-offset);right:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-left{bottom:var(--ck-resizer-offset);left:var(--ck-resizer-offset)}","",{version:3,sources:["webpack://./../ckeditor5-widget/theme/widgetresize.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-widget/widgetresize.css"],names:[],mappings:"AAKA,4BAEC,iBACD,CAEA,wBACC,YAAa,CAMb,MAAO,CAFP,mBAAoB,CAHpB,iBAAkB,CAMlB,KACD,CAGC,2EACC,aACD,CAGD,gCAIC,kBAAmB,CAHnB,iBAcD,CATC,4IAEC,kBACD,CAEA,4IAEC,kBACD,CCpCD,MACC,sBAAuB,CAGvB,yDAAiE,CACjE,6BACD,CAEA,wBACC,yCACD,CAEA,gCAGC,uCAAwC,CACxC,gDAA6D,CAC7D,6CAA8C,CAH9C,6BAA8B,CAD9B,4BAyBD,CAnBC,oEAEC,6BAA8B,CAD9B,4BAED,CAEA,qEAEC,8BAA+B,CAD/B,4BAED,CAEA,wEACC,+BAAgC,CAChC,8BACD,CAEA,uEACC,+BAAgC,CAChC,6BACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-widget_with-resizer {\n\t/* Make the widget wrapper a relative positioning container for the drag handle. */\n\tposition: relative;\n}\n\n.ck .ck-widget__resizer {\n\tdisplay: none;\n\tposition: absolute;\n\n\t/* The wrapper itself should not interfere with the pointer device, only the handles should. */\n\tpointer-events: none;\n\n\tleft: 0;\n\ttop: 0;\n}\n\n.ck-focused .ck-widget_with-resizer.ck-widget_selected {\n\t& > .ck-widget__resizer {\n\t\tdisplay: block;\n\t}\n}\n\n.ck .ck-widget__resizer__handle {\n\tposition: absolute;\n\n\t/* Resizers are the only UI elements that should interfere with a pointer device. */\n\tpointer-events: all;\n\n\t&.ck-widget__resizer__handle-top-left,\n\t&.ck-widget__resizer__handle-bottom-right {\n\t\tcursor: nwse-resize;\n\t}\n\n\t&.ck-widget__resizer__handle-top-right,\n\t&.ck-widget__resizer__handle-bottom-left {\n\t\tcursor: nesw-resize;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-resizer-size: 10px;\n\n\t/* Set the resizer with a 50% offset. */\n\t--ck-resizer-offset: calc( ( var(--ck-resizer-size) / -2 ) - 2px);\n\t--ck-resizer-border-width: 1px;\n}\n\n.ck .ck-widget__resizer {\n\toutline: 1px solid var(--ck-color-resizer);\n}\n\n.ck .ck-widget__resizer__handle {\n\twidth: var(--ck-resizer-size);\n\theight: var(--ck-resizer-size);\n\tbackground: var(--ck-color-focus-border);\n\tborder: var(--ck-resizer-border-width) solid hsl(0, 0%, 100%);\n\tborder-radius: var(--ck-resizer-border-radius);\n\n\t&.ck-widget__resizer__handle-top-left {\n\t\ttop: var(--ck-resizer-offset);\n\t\tleft: var(--ck-resizer-offset);\n\t}\n\n\t&.ck-widget__resizer__handle-top-right {\n\t\ttop: var(--ck-resizer-offset);\n\t\tright: var(--ck-resizer-offset);\n\t}\n\n\t&.ck-widget__resizer__handle-bottom-right {\n\t\tbottom: var(--ck-resizer-offset);\n\t\tright: var(--ck-resizer-offset);\n\t}\n\n\t&.ck-widget__resizer__handle-bottom-left {\n\t\tbottom: var(--ck-resizer-offset);\n\t\tleft: var(--ck-resizer-offset);\n\t}\n}\n"],sourceRoot:""}]);const a=s},8508:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck .ck-widget .ck-widget__type-around__button{display:block;overflow:hidden;position:absolute;z-index:var(--ck-z-default)}.ck .ck-widget .ck-widget__type-around__button svg{left:50%;position:absolute;top:50%;z-index:calc(var(--ck-z-default) + 2)}.ck .ck-widget .ck-widget__type-around__button.ck-widget__type-around__button_before{left:min(10%,30px);top:calc(var(--ck-widget-outline-thickness)*-.5);transform:translateY(-50%)}.ck .ck-widget .ck-widget__type-around__button.ck-widget__type-around__button_after{bottom:calc(var(--ck-widget-outline-thickness)*-.5);right:min(10%,30px);transform:translateY(50%)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:after,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover:after{content:"";display:block;left:1px;position:absolute;top:1px;z-index:calc(var(--ck-z-default) + 1)}.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__fake-caret{display:none;left:0;position:absolute;right:0}.ck .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__fake-caret{left:calc(var(--ck-widget-outline-thickness)*-1);right:calc(var(--ck-widget-outline-thickness)*-1)}.ck .ck-widget.ck-widget_type-around_show-fake-caret_before>.ck-widget__type-around>.ck-widget__type-around__fake-caret{display:block;top:calc(var(--ck-widget-outline-thickness)*-1 - 1px)}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after>.ck-widget__type-around>.ck-widget__type-around__fake-caret{bottom:calc(var(--ck-widget-outline-thickness)*-1 - 1px);display:block}.ck.ck-editor__editable.ck-read-only .ck-widget__type-around,.ck.ck-editor__editable.ck-restricted-editing_mode_restricted .ck-widget__type-around,.ck.ck-editor__editable.ck-widget__type-around_disabled .ck-widget__type-around{display:none}:root{--ck-widget-type-around-button-size:20px;--ck-color-widget-type-around-button-active:var(--ck-color-focus-border);--ck-color-widget-type-around-button-hover:var(--ck-color-widget-hover-border);--ck-color-widget-type-around-button-blurred-editable:var(--ck-color-widget-blurred-border);--ck-color-widget-type-around-button-radar-start-alpha:0;--ck-color-widget-type-around-button-radar-end-alpha:.3;--ck-color-widget-type-around-button-icon:var(--ck-color-base-background)}.ck .ck-widget .ck-widget__type-around__button{background:var(--ck-color-widget-type-around-button);border-radius:100px;height:var(--ck-widget-type-around-button-size);opacity:0;pointer-events:none;transition:opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);width:var(--ck-widget-type-around-button-size)}@media (prefers-reduced-motion:reduce){.ck .ck-widget .ck-widget__type-around__button{transition:none}}.ck .ck-widget .ck-widget__type-around__button svg{height:8px;margin-top:1px;transform:translate(-50%,-50%);transition:transform .5s ease;width:10px}@media (prefers-reduced-motion:reduce){.ck .ck-widget .ck-widget__type-around__button svg{transition:none}}.ck .ck-widget .ck-widget__type-around__button svg *{stroke-dasharray:10;stroke-dashoffset:0;fill:none;stroke:var(--ck-color-widget-type-around-button-icon);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.ck .ck-widget .ck-widget__type-around__button svg line{stroke-dasharray:7}.ck .ck-widget .ck-widget__type-around__button:hover{animation:ck-widget-type-around-button-sonar 1s ease infinite}.ck .ck-widget .ck-widget__type-around__button:hover svg polyline{animation:ck-widget-type-around-arrow-dash 2s linear}.ck .ck-widget .ck-widget__type-around__button:hover svg line{animation:ck-widget-type-around-arrow-tip-dash 2s linear}@media (prefers-reduced-motion:reduce){.ck .ck-widget .ck-widget__type-around__button:hover,.ck .ck-widget .ck-widget__type-around__button:hover svg line,.ck .ck-widget .ck-widget__type-around__button:hover svg polyline{animation:none}}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__button{opacity:1;pointer-events:auto}.ck .ck-widget:not(.ck-widget_selected)>.ck-widget__type-around>.ck-widget__type-around__button{background:var(--ck-color-widget-type-around-button-hover)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover{background:var(--ck-color-widget-type-around-button-active)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:after,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover:after{background:linear-gradient(135deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.3));border-radius:100px;height:calc(var(--ck-widget-type-around-button-size) - 2px);width:calc(var(--ck-widget-type-around-button-size) - 2px)}.ck .ck-widget.ck-widget_with-selection-handle>.ck-widget__type-around>.ck-widget__type-around__button_before{margin-left:20px}.ck .ck-widget .ck-widget__type-around__fake-caret{animation:ck-widget-type-around-fake-caret-pulse 1s linear infinite normal forwards;background:var(--ck-color-base-text);height:1px;outline:1px solid hsla(0,0%,100%,.5);pointer-events:none}.ck .ck-widget.ck-widget_selected.ck-widget_type-around_show-fake-caret_after,.ck .ck-widget.ck-widget_selected.ck-widget_type-around_show-fake-caret_before{outline-color:transparent}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_selected:hover,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_selected:hover{outline-color:var(--ck-color-widget-hover-border)}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_selected.ck-widget_with-resizer>.ck-widget__resizer,.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_selected.ck-widget_with-resizer>.ck-widget__resizer,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle{opacity:0}.ck[dir=rtl] .ck-widget.ck-widget_with-selection-handle .ck-widget__type-around>.ck-widget__type-around__button_before{margin-left:0;margin-right:20px}.ck-editor__nested-editable.ck-editor__editable_selected .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck-editor__nested-editable.ck-editor__editable_selected .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:not(:hover){background:var(--ck-color-widget-type-around-button-blurred-editable)}.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:not(:hover) svg *{stroke:#999}@keyframes ck-widget-type-around-arrow-dash{0%{stroke-dashoffset:10}20%,to{stroke-dashoffset:0}}@keyframes ck-widget-type-around-arrow-tip-dash{0%,20%{stroke-dashoffset:7}40%,to{stroke-dashoffset:0}}@keyframes ck-widget-type-around-button-sonar{0%{box-shadow:0 0 0 0 hsla(var(--ck-color-focus-border-coordinates),var(--ck-color-widget-type-around-button-radar-start-alpha))}50%{box-shadow:0 0 0 5px hsla(var(--ck-color-focus-border-coordinates),var(--ck-color-widget-type-around-button-radar-end-alpha))}to{box-shadow:0 0 0 5px hsla(var(--ck-color-focus-border-coordinates),var(--ck-color-widget-type-around-button-radar-start-alpha))}}@keyframes ck-widget-type-around-fake-caret-pulse{0%{opacity:1}49%{opacity:1}50%{opacity:0}99%{opacity:0}to{opacity:1}}',"",{version:3,sources:["webpack://./../ckeditor5-widget/theme/widgettypearound.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-widget/widgettypearound.css"],names:[],mappings:"AASC,+CACC,aAAc,CAEd,eAAgB,CADhB,iBAAkB,CAElB,2BAwBD,CAtBC,mDAGC,QAAS,CAFT,iBAAkB,CAClB,OAAQ,CAER,qCACD,CAEA,qFAGC,kBAAoB,CADpB,gDAAoD,CAGpD,0BACD,CAEA,oFAEC,mDAAuD,CACvD,mBAAqB,CAErB,yBACD,CAUA,mLACC,UAAW,CACX,aAAc,CAGd,QAAS,CAFT,iBAAkB,CAClB,OAAQ,CAER,qCACD,CAMD,2EACC,YAAa,CAEb,MAAO,CADP,iBAAkB,CAElB,OACD,CAOA,iFACC,gDAAqD,CACrD,iDACD,CAKA,wHAEC,aAAc,CADd,qDAED,CAKA,uHACC,wDAA6D,CAC7D,aACD,CAoBD,mOACC,YACD,CC3GA,MACC,wCAAyC,CACzC,wEAAyE,CACzE,8EAA+E,CAC/E,2FAA4F,CAC5F,wDAAyD,CACzD,uDAAwD,CACxD,yEACD,CAgBC,+CAGC,oDAAqD,CACrD,mBAAoB,CAFpB,+CAAgD,CAVjD,SAAU,CACV,mBAAoB,CAYnB,uMAAyM,CAJzM,8CAwED,CAhEC,uCATD,+CAUE,eA+DF,CA9DC,CAEA,mDAEC,UAAW,CAGX,cAAe,CAFf,8BAA+B,CAC/B,6BAA8B,CAH9B,UAwBD,CAlBC,uCAPD,mDAQE,eAiBF,CAhBC,CAEA,qDACC,mBAAoB,CACpB,mBAAoB,CAEpB,SAAU,CACV,qDAAsD,CACtD,kBAAmB,CACnB,oBAAqB,CACrB,qBACD,CAEA,wDACC,kBACD,CAGD,qDAIC,6DA4BD,CAtBE,kEACC,oDACD,CAEA,8DACC,wDACD,CAGD,uCAQE,qLACC,cACD,CAEF,CASD,uKA7FD,SAAU,CACV,mBA8FC,CAOD,gGACC,0DACD,CAOA,uKAEC,2DAQD,CANC,mLAIC,uEAAkF,CADlF,mBAAoB,CADpB,2DAA4D,CAD5D,0DAID,CAOD,8GACC,gBACD,CAKA,mDAGC,mFAAoF,CAOpF,oCAAqC,CARrC,UAAW,CAOX,oCAAwC,CARxC,mBAUD,CAOC,6JAEC,yBACD,CAUA,yKACC,iDACD,CAMA,uOAxKD,SAAU,CACV,mBAyKC,CAoBA,6yBACC,SACD,CASF,uHACC,aAAc,CACd,iBACD,CAYG,iRAxNF,SAAU,CACV,mBAyNE,CAQH,kIACC,qEAKD,CAHC,wIACC,WACD,CAGD,4CACC,GACC,oBACD,CACA,OACC,mBACD,CACD,CAEA,gDACC,OACC,mBACD,CACA,OACC,mBACD,CACD,CAEA,8CACC,GACC,6HACD,CACA,IACC,6HACD,CACA,GACC,+HACD,CACD,CAEA,kDACC,GACC,SACD,CACA,IACC,SACD,CACA,IACC,SACD,CACA,IACC,SACD,CACA,GACC,SACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-widget {\n\t/*\n\t * Styles of the type around buttons\n\t */\n\t& .ck-widget__type-around__button {\n\t\tdisplay: block;\n\t\tposition: absolute;\n\t\toverflow: hidden;\n\t\tz-index: var(--ck-z-default);\n\n\t\t& svg {\n\t\t\tposition: absolute;\n\t\t\ttop: 50%;\n\t\t\tleft: 50%;\n\t\t\tz-index: calc(var(--ck-z-default) + 2);\n\t\t}\n\n\t\t&.ck-widget__type-around__button_before {\n\t\t\t/* Place it in the middle of the outline */\n\t\t\ttop: calc(-0.5 * var(--ck-widget-outline-thickness));\n\t\t\tleft: min(10%, 30px);\n\n\t\t\ttransform: translateY(-50%);\n\t\t}\n\n\t\t&.ck-widget__type-around__button_after {\n\t\t\t/* Place it in the middle of the outline */\n\t\t\tbottom: calc(-0.5 * var(--ck-widget-outline-thickness));\n\t\t\tright: min(10%, 30px);\n\n\t\t\ttransform: translateY(50%);\n\t\t}\n\t}\n\n\t/*\n\t * Styles for the buttons when:\n\t * - the widget is selected,\n\t * - or the button is being hovered (regardless of the widget state).\n\t */\n\t&.ck-widget_selected > .ck-widget__type-around > .ck-widget__type-around__button,\n\t& > .ck-widget__type-around > .ck-widget__type-around__button:hover {\n\t\t&::after {\n\t\t\tcontent: "";\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\ttop: 1px;\n\t\t\tleft: 1px;\n\t\t\tz-index: calc(var(--ck-z-default) + 1);\n\t\t}\n\t}\n\n\t/*\n\t * Styles for the horizontal "fake caret" which is displayed when the user navigates using the keyboard.\n\t */\n\t& > .ck-widget__type-around > .ck-widget__type-around__fake-caret {\n\t\tdisplay: none;\n\t\tposition: absolute;\n\t\tleft: 0;\n\t\tright: 0;\n\t}\n\n\t/*\n\t * When the widget is hovered the "fake caret" would normally be narrower than the\n\t * extra outline displayed around the widget. Let\'s extend the "fake caret" to match\n\t * the full width of the widget.\n\t */\n\t&:hover > .ck-widget__type-around > .ck-widget__type-around__fake-caret {\n\t\tleft: calc( -1 * var(--ck-widget-outline-thickness) );\n\t\tright: calc( -1 * var(--ck-widget-outline-thickness) );\n\t}\n\n\t/*\n\t * Styles for the horizontal "fake caret" when it should be displayed before the widget (backward keyboard navigation).\n\t */\n\t&.ck-widget_type-around_show-fake-caret_before > .ck-widget__type-around > .ck-widget__type-around__fake-caret {\n\t\ttop: calc( -1 * var(--ck-widget-outline-thickness) - 1px );\n\t\tdisplay: block;\n\t}\n\n\t/*\n\t * Styles for the horizontal "fake caret" when it should be displayed after the widget (forward keyboard navigation).\n\t */\n\t&.ck-widget_type-around_show-fake-caret_after > .ck-widget__type-around > .ck-widget__type-around__fake-caret {\n\t\tbottom: calc( -1 * var(--ck-widget-outline-thickness) - 1px );\n\t\tdisplay: block;\n\t}\n}\n\n/*\n * Integration with the read-only mode of the editor.\n */\n.ck.ck-editor__editable.ck-read-only .ck-widget__type-around {\n\tdisplay: none;\n}\n\n/*\n * Integration with the restricted editing mode (feature) of the editor.\n */\n.ck.ck-editor__editable.ck-restricted-editing_mode_restricted .ck-widget__type-around {\n\tdisplay: none;\n}\n\n/*\n * Integration with the #isEnabled property of the WidgetTypeAround plugin.\n */\n.ck.ck-editor__editable.ck-widget__type-around_disabled .ck-widget__type-around {\n\tdisplay: none;\n}\n','/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-widget-type-around-button-size: 20px;\n\t--ck-color-widget-type-around-button-active: var(--ck-color-focus-border);\n\t--ck-color-widget-type-around-button-hover: var(--ck-color-widget-hover-border);\n\t--ck-color-widget-type-around-button-blurred-editable: var(--ck-color-widget-blurred-border);\n\t--ck-color-widget-type-around-button-radar-start-alpha: 0;\n\t--ck-color-widget-type-around-button-radar-end-alpha: .3;\n\t--ck-color-widget-type-around-button-icon: var(--ck-color-base-background);\n}\n\n@define-mixin ck-widget-type-around-button-visible {\n\topacity: 1;\n\tpointer-events: auto;\n}\n\n@define-mixin ck-widget-type-around-button-hidden {\n\topacity: 0;\n\tpointer-events: none;\n}\n\n.ck .ck-widget {\n\t/*\n\t * Styles of the type around buttons\n\t */\n\t& .ck-widget__type-around__button {\n\t\twidth: var(--ck-widget-type-around-button-size);\n\t\theight: var(--ck-widget-type-around-button-size);\n\t\tbackground: var(--ck-color-widget-type-around-button);\n\t\tborder-radius: 100px;\n\t\ttransition: opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve), background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\n\t\t@mixin ck-widget-type-around-button-hidden;\n\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\ttransition: none;\n\t\t}\n\n\t\t& svg {\n\t\t\twidth: 10px;\n\t\t\theight: 8px;\n\t\t\ttransform: translate(-50%,-50%);\n\t\t\ttransition: transform .5s ease;\n\t\t\tmargin-top: 1px;\n\n\t\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\t\ttransition: none;\n\t\t\t}\n\n\t\t\t& * {\n\t\t\t\tstroke-dasharray: 10;\n\t\t\t\tstroke-dashoffset: 0;\n\n\t\t\t\tfill: none;\n\t\t\t\tstroke: var(--ck-color-widget-type-around-button-icon);\n\t\t\t\tstroke-width: 1.5px;\n\t\t\t\tstroke-linecap: round;\n\t\t\t\tstroke-linejoin: round;\n\t\t\t}\n\n\t\t\t& line {\n\t\t\t\tstroke-dasharray: 7;\n\t\t\t}\n\t\t}\n\n\t\t&:hover {\n\t\t\t/*\n\t\t\t * Display the "sonar" around the button when hovered.\n\t\t\t */\n\t\t\tanimation: ck-widget-type-around-button-sonar 1s ease infinite;\n\n\t\t\t/*\n\t\t\t * Animate active button\'s icon.\n\t\t\t */\n\t\t\t& svg {\n\t\t\t\t& polyline {\n\t\t\t\t\tanimation: ck-widget-type-around-arrow-dash 2s linear;\n\t\t\t\t}\n\n\t\t\t\t& line {\n\t\t\t\t\tanimation: ck-widget-type-around-arrow-tip-dash 2s linear;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\t\tanimation: none;\n\n\t\t\t\t& svg {\n\t\t\t\t\t& polyline {\n\t\t\t\t\t\tanimation: none;\n\t\t\t\t\t}\n\n\t\t\t\t\t& line {\n\t\t\t\t\t\tanimation: none;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/*\n\t * Show type around buttons when the widget gets selected or being hovered.\n\t */\n\t&.ck-widget_selected,\n\t&:hover {\n\t\t& > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\t\t@mixin ck-widget-type-around-button-visible;\n\t\t}\n\t}\n\n\t/*\n\t * Styles for the buttons when the widget is NOT selected (but the buttons are visible\n\t * and still can be hovered).\n\t */\n\t&:not(.ck-widget_selected) > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\tbackground: var(--ck-color-widget-type-around-button-hover);\n\t}\n\n\t/*\n\t * Styles for the buttons when:\n\t * - the widget is selected,\n\t * - or the button is being hovered (regardless of the widget state).\n\t */\n\t&.ck-widget_selected > .ck-widget__type-around > .ck-widget__type-around__button,\n\t& > .ck-widget__type-around > .ck-widget__type-around__button:hover {\n\t\tbackground: var(--ck-color-widget-type-around-button-active);\n\n\t\t&::after {\n\t\t\twidth: calc(var(--ck-widget-type-around-button-size) - 2px);\n\t\t\theight: calc(var(--ck-widget-type-around-button-size) - 2px);\n\t\t\tborder-radius: 100px;\n\t\t\tbackground: linear-gradient(135deg, hsla(0,0%,100%,0) 0%, hsla(0,0%,100%,.3) 100%);\n\t\t}\n\t}\n\n\t/*\n\t * Styles for the "before" button when the widget has a selection handle. Because some space\n\t * is consumed by the handle, the button must be moved slightly to the right to let it breathe.\n\t */\n\t&.ck-widget_with-selection-handle > .ck-widget__type-around > .ck-widget__type-around__button_before {\n\t\tmargin-left: 20px;\n\t}\n\n\t/*\n\t * Styles for the horizontal "fake caret" which is displayed when the user navigates using the keyboard.\n\t */\n\t& .ck-widget__type-around__fake-caret {\n\t\tpointer-events: none;\n\t\theight: 1px;\n\t\tanimation: ck-widget-type-around-fake-caret-pulse linear 1s infinite normal forwards;\n\n\t\t/*\n\t\t * The semi-transparent-outline+background combo improves the contrast\n\t\t * when the background underneath the fake caret is dark.\n\t\t */\n\t\toutline: solid 1px hsla(0, 0%, 100%, .5);\n\t\tbackground: var(--ck-color-base-text);\n\t}\n\n\t/*\n\t * Styles of the widget when the "fake caret" is blinking (e.g. upon keyboard navigation).\n\t * Despite the widget being physically selected in the model, its outline should disappear.\n\t */\n\t&.ck-widget_selected {\n\t\t&.ck-widget_type-around_show-fake-caret_before,\n\t\t&.ck-widget_type-around_show-fake-caret_after {\n\t\t\toutline-color: transparent;\n\t\t}\n\t}\n\n\t&.ck-widget_type-around_show-fake-caret_before,\n\t&.ck-widget_type-around_show-fake-caret_after {\n\t\t/*\n\t\t * When the "fake caret" is visible we simulate that the widget is not selected\n\t\t * (despite being physically selected), so the outline color should be for the\n\t\t * unselected widget.\n\t\t */\n\t\t&.ck-widget_selected:hover {\n\t\t\toutline-color: var(--ck-color-widget-hover-border);\n\t\t}\n\n\t\t/*\n\t\t * Styles of the type around buttons when the "fake caret" is blinking (e.g. upon keyboard navigation).\n\t\t * In this state, the type around buttons would collide with the fake carets so they should disappear.\n\t\t */\n\t\t& > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\t\t@mixin ck-widget-type-around-button-hidden;\n\t\t}\n\n\t\t/*\n\t\t * Fake horizontal caret integration with the selection handle. When the caret is visible, simply\n\t\t * hide the handle because it intersects with the caret (and does not make much sense anyway).\n\t\t */\n\t\t&.ck-widget_with-selection-handle {\n\t\t\t&.ck-widget_selected,\n\t\t\t&.ck-widget_selected:hover {\n\t\t\t\t& > .ck-widget__selection-handle {\n\t\t\t\t\topacity: 0\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/*\n\t\t * Fake horizontal caret integration with the resize UI. When the caret is visible, simply\n\t\t * hide the resize UI because it creates too much noise. It can be visible when the user\n\t\t * hovers the widget, though.\n\t\t */\n\t\t&.ck-widget_selected.ck-widget_with-resizer > .ck-widget__resizer {\n\t\t\topacity: 0\n\t\t}\n\t}\n}\n\n/*\n * Styles for the "before" button when the widget has a selection handle in an RTL environment.\n * The selection handler is aligned to the right side of the widget so there is no need to create\n * additional space for it next to the "before" button.\n */\n.ck[dir="rtl"] .ck-widget.ck-widget_with-selection-handle .ck-widget__type-around > .ck-widget__type-around__button_before {\n\tmargin-left: 0;\n\tmargin-right: 20px;\n}\n\n/*\n * Hide type around buttons when the widget is selected as a child of a selected\n * nested editable (e.g. mulit-cell table selection).\n *\n * See https://github.com/ckeditor/ckeditor5/issues/7263.\n */\n.ck-editor__nested-editable.ck-editor__editable_selected {\n\t& .ck-widget {\n\t\t&.ck-widget_selected,\n\t\t&:hover {\n\t\t\t& > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\t\t\t@mixin ck-widget-type-around-button-hidden;\n\t\t\t}\n\t\t}\n\t}\n}\n\n/*\n * Styles for the buttons when the widget is selected but the user clicked outside of the editor (blurred the editor).\n */\n.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected > .ck-widget__type-around > .ck-widget__type-around__button:not(:hover) {\n\tbackground: var(--ck-color-widget-type-around-button-blurred-editable);\n\n\t& svg * {\n\t\tstroke: hsl(0,0%,60%);\n\t}\n}\n\n@keyframes ck-widget-type-around-arrow-dash {\n\t0% {\n\t\tstroke-dashoffset: 10;\n\t}\n\t20%, 100% {\n\t\tstroke-dashoffset: 0;\n\t}\n}\n\n@keyframes ck-widget-type-around-arrow-tip-dash {\n\t0%, 20% {\n\t\tstroke-dashoffset: 7;\n\t}\n\t40%, 100% {\n\t\tstroke-dashoffset: 0;\n\t}\n}\n\n@keyframes ck-widget-type-around-button-sonar {\n\t0% {\n\t\tbox-shadow: 0 0 0 0 hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-start-alpha));\n\t}\n\t50% {\n\t\tbox-shadow: 0 0 0 5px hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-end-alpha));\n\t}\n\t100% {\n\t\tbox-shadow: 0 0 0 5px hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-start-alpha));\n\t}\n}\n\n@keyframes ck-widget-type-around-fake-caret-pulse {\n\t0% {\n\t\topacity: 1;\n\t}\n\t49% {\n\t\topacity: 1;\n\t}\n\t50% {\n\t\topacity: 0;\n\t}\n\t99% {\n\t\topacity: 0;\n\t}\n\t100% {\n\t\topacity: 1;\n\t}\n}\n'],sourceRoot:""}]);const a=s},935:t=>{"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n=t(e);return e[2]?"@media ".concat(e[2]," {").concat(n,"}"):n})).join("")},e.i=function(t,n,i){"string"==typeof t&&(t=[[null,t,""]]);var o={};if(i)for(var r=0;r{"use strict";function e(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=t&&("undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"]);if(null==n)return;var i,o,r=[],s=!0,a=!1;try{for(n=n.call(t);!(s=(i=n.next()).done)&&(r.push(i.value),!e||r.length!==e);s=!0);}catch(t){a=!0,o=t}finally{try{s||null==n.return||n.return()}finally{if(a)throw o}}return r}(t,e)||function(t,e){if(!t)return;if("string"==typeof t)return n(t,e);var i=Object.prototype.toString.call(t).slice(8,-1);"Object"===i&&t.constructor&&(i=t.constructor.name);if("Map"===i||"Set"===i)return Array.from(t);if("Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return n(t,e)}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function n(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n{"use strict";var i,o=function(){return void 0===i&&(i=Boolean(window&&document&&document.all&&!window.atob)),i},r=function(){var t={};return function(e){if(void 0===t[e]){var n=document.querySelector(e);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}t[e]=n}return t[e]}}(),s=[];function a(t){for(var e=-1,n=0;n{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var i in e)n.o(e,i)&&!n.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.nc=void 0;var i={};return(()=>{"use strict";let t;n.d(i,{default:()=>lO});try{t={window,document}}catch(e){t={window:{},document:{}}}const e=t;const o=function(){try{return navigator.userAgent.toLowerCase()}catch(t){return""}}();var r;const s={isMac:a(o),isWindows:(r=o,r.indexOf("windows")>-1),isGecko:function(t){return!!t.match(/gecko\/\d+/)}(o),isSafari:function(t){return t.indexOf(" applewebkit/")>-1&&-1===t.indexOf("chrome")}(o),isiOS:function(t){return!!t.match(/iphone|ipad/i)||a(t)&&navigator.maxTouchPoints>0}(o),isAndroid:function(t){return t.indexOf("android")>-1}(o),isBlink:function(t){return t.indexOf("chrome/")>-1&&t.indexOf("edge/")<0}(o),get isMediaForcedColors(){return!!e.window.matchMedia&&e.window.matchMedia("(forced-colors: active)").matches},get isMotionReduced(){return!!e.window.matchMedia&&e.window.matchMedia("(prefers-reduced-motion)").matches},features:{isRegExpUnicodePropertySupported:function(){let t=!1;try{t=0==="ć".search(new RegExp("[\\p{L}]","u"))}catch(t){}return t}()}};function a(t){return t.indexOf("macintosh")>-1}function c(t,e,n,i){n=n||function(t,e){return t===e};const o=Array.isArray(t)?t:Array.prototype.slice.call(t),r=Array.isArray(e)?e:Array.prototype.slice.call(e),s=function(t,e,n){const i=l(t,e,n);if(-1===i)return{firstIndex:-1,lastIndexOld:-1,lastIndexNew:-1};const o=d(t,i),r=d(e,i),s=l(o,r,n),a=t.length-s,c=e.length-s;return{firstIndex:i,lastIndexOld:a,lastIndexNew:c}}(o,r,n),a=i?function(t,e){const{firstIndex:n,lastIndexOld:i,lastIndexNew:o}=t;if(-1===n)return Array(e).fill("equal");let r=[];n>0&&(r=r.concat(Array(n).fill("equal")));o-n>0&&(r=r.concat(Array(o-n).fill("insert")));i-n>0&&(r=r.concat(Array(i-n).fill("delete")));o0&&n.push({index:i,type:"insert",values:t.slice(i,r)});o-i>0&&n.push({index:i+(r-i),type:"delete",howMany:o-i});return n}(r,s);return a}function l(t,e,n){for(let i=0;i200||o>200||i+o>300)return h.fastDiff(t,e,n,!0);let r,s;if(ol?-1:1;d[i+h]&&(d[i]=d[i+h].slice(0)),d[i]||(d[i]=[]),d[i].push(o>l?r:s);let m=Math.max(o,l),g=m-i;for(;gl;g--)u[g]=m(g);u[l]=m(l),p++}while(u[l]!==c);return d[l].slice(1)}h.fastDiff=c;const u=function(){return function t(){t.called=!0}};class m{constructor(t,e){this.source=t,this.name=e,this.path=[],this.stop=u(),this.off=u()}}const g=new Array(256).fill("").map(((t,e)=>("0"+e.toString(16)).slice(-2)));function p(){const t=4294967296*Math.random()>>>0,e=4294967296*Math.random()>>>0,n=4294967296*Math.random()>>>0,i=4294967296*Math.random()>>>0;return"e"+g[255&t]+g[t>>8&255]+g[t>>16&255]+g[t>>24&255]+g[255&e]+g[e>>8&255]+g[e>>16&255]+g[e>>24&255]+g[255&n]+g[n>>8&255]+g[n>>16&255]+g[n>>24&255]+g[255&i]+g[i>>8&255]+g[i>>16&255]+g[i>>24&255]}const f={get(t="normal"){return"number"!=typeof t?this[t]||this.normal:t},highest:1e5,high:1e3,normal:0,low:-1e3,lowest:-1e5};function b(t,e){const n=f.get(e.priority);for(let i=0;i{if("object"==typeof e&&null!==e){if(n.has(e))return`[object ${e.constructor.name}]`;n.add(e)}return e},o=e?` ${JSON.stringify(e,i)}`:"",r=A(t);return t+o+r}(t,n)),this.name="CKEditorError",this.context=e,this.data=n}is(t){return"CKEditorError"===t}static rethrowUnexpectedError(t,e){if(t.is&&t.is("CKEditorError"))throw t;const n=new w(t.message,e);throw n.stack=t.stack,n}}function _(t,e){console.warn(...C(t,e))}function A(t){return`\nRead more: ${k}#error-${t}`}function C(t,e){const n=A(t);return e?[t,e,n]:[t,n]}const v="41.4.2",y=new Date(2024,4,17);if(globalThis.CKEDITOR_VERSION)throw new w("ckeditor-duplicated-modules",null);globalThis.CKEDITOR_VERSION=v;const x=Symbol("listeningTo"),E=Symbol("emitterId"),D=Symbol("delegations"),B=S(Object);function S(t){if(!t)return B;return class extends t{on(t,e,n){this.listenTo(this,t,e,n)}once(t,e,n){let i=!1;this.listenTo(this,t,((t,...n)=>{i||(i=!0,t.off(),e.call(this,t,...n))}),n)}off(t,e){this.stopListening(this,t,e)}listenTo(t,e,n,i={}){let o,r;this[x]||(this[x]={});const s=this[x];I(t)||T(t);const a=I(t);(o=s[a])||(o=s[a]={emitter:t,callbacks:{}}),(r=o.callbacks[e])||(r=o.callbacks[e]=[]),r.push(n),function(t,e,n,i,o){e._addEventListener?e._addEventListener(n,i,o):t._addEventListener.call(e,n,i,o)}(this,t,e,n,i)}stopListening(t,e,n){const i=this[x];let o=t&&I(t);const r=i&&o?i[o]:void 0,s=r&&e?r.callbacks[e]:void 0;if(!(!i||t&&!r||e&&!s))if(n){L(this,t,e,n);-1!==s.indexOf(n)&&(1===s.length?delete r.callbacks[e]:L(this,t,e,n))}else if(s){for(;n=s.pop();)L(this,t,e,n);delete r.callbacks[e]}else if(r){for(e in r.callbacks)this.stopListening(t,e);delete i[o]}else{for(o in i)this.stopListening(i[o].emitter);delete this[x]}}fire(t,...e){try{const n=t instanceof m?t:new m(this,t),i=n.name;let o=V(this,i);if(n.path.push(this),o){const t=[n,...e];o=Array.from(o);for(let e=0;e{this[D]||(this[D]=new Map),t.forEach((t=>{const i=this[D].get(t);i?i.set(e,n):this[D].set(t,new Map([[e,n]]))}))}}}stopDelegating(t,e){if(this[D])if(t)if(e){const n=this[D].get(t);n&&n.delete(e)}else this[D].delete(t);else this[D].clear()}_addEventListener(t,e,n){!function(t,e){const n=P(t);if(n[e])return;let i=e,o=null;const r=[];for(;""!==i&&!n[i];)n[i]={callbacks:[],childEvents:[]},r.push(n[i]),o&&n[i].childEvents.push(o),o=i,i=i.substr(0,i.lastIndexOf(":"));if(""!==i){for(const t of r)t.callbacks=n[i].callbacks.slice();n[i].childEvents.push(o)}}(this,t);const i=R(this,t),o={callback:e,priority:f.get(n.priority)};for(const t of i)b(t,o)}_removeEventListener(t,e){const n=R(this,t);for(const t of n)for(let n=0;n-1?V(t,e.substr(0,e.lastIndexOf(":"))):null}function F(t,e,n){for(let[i,o]of t){o?"function"==typeof o&&(o=o(e.name)):o=e.name;const t=new m(e.source,o);t.path=[...e.path],i.fire(t,...n)}}function L(t,e,n,i){e._removeEventListener?e._removeEventListener(n,i):t._removeEventListener.call(e,n,i)}["on","once","off","listenTo","stopListening","fire","delegate","stopDelegating","_addEventListener","_removeEventListener"].forEach((t=>{S[t]=B.prototype[t]}));const O=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)},z=Symbol("observableProperties"),M=Symbol("boundObservables"),N=Symbol("boundProperties"),H=Symbol("decoratedMethods"),j=Symbol("decoratedOriginal"),q=W(S());function W(t){if(!t)return q;return class extends t{set(t,e){if(O(t))return void Object.keys(t).forEach((e=>{this.set(e,t[e])}),this);U(this);const n=this[z];if(t in this&&!n.has(t))throw new w("observable-set-cannot-override",this);Object.defineProperty(this,t,{enumerable:!0,configurable:!0,get:()=>n.get(t),set(e){const i=n.get(t);let o=this.fire(`set:${t}`,t,e,i);void 0===o&&(o=e),i===o&&n.has(t)||(n.set(t,o),this.fire(`change:${t}`,t,o,i))}}),this[t]=e}bind(...t){if(!t.length||!J(t))throw new w("observable-bind-wrong-properties",this);if(new Set(t).size!==t.length)throw new w("observable-bind-duplicate-properties",this);U(this);const e=this[N];t.forEach((t=>{if(e.has(t))throw new w("observable-bind-rebind",this)}));const n=new Map;return t.forEach((t=>{const i={property:t,to:[]};e.set(t,i),n.set(t,i)})),{to:G,toMany:K,_observable:this,_bindProperties:t,_to:[],_bindings:n}}unbind(...t){if(!this[z])return;const e=this[N],n=this[M];if(t.length){if(!J(t))throw new w("observable-unbind-wrong-properties",this);t.forEach((t=>{const i=e.get(t);i&&(i.to.forEach((([t,e])=>{const o=n.get(t),r=o[e];r.delete(i),r.size||delete o[e],Object.keys(o).length||(n.delete(t),this.stopListening(t,"change"))})),e.delete(t))}))}else n.forEach(((t,e)=>{this.stopListening(e,"change")})),n.clear(),e.clear()}decorate(t){U(this);const e=this[t];if(!e)throw new w("observablemixin-cannot-decorate-undefined",this,{object:this,methodName:t});this.on(t,((t,n)=>{t.return=e.apply(this,n)})),this[t]=function(...e){return this.fire(t,e)},this[t][j]=e,this[H]||(this[H]=[]),this[H].push(t)}stopListening(t,e,n){if(!t&&this[H]){for(const t of this[H])this[t]=this[t][j];delete this[H]}super.stopListening(t,e,n)}}}function U(t){t[z]||(Object.defineProperty(t,z,{value:new Map}),Object.defineProperty(t,M,{value:new Map}),Object.defineProperty(t,N,{value:new Map}))}function G(...t){const e=function(...t){if(!t.length)throw new w("observable-bind-to-parse-error",null);const e={to:[]};let n;"function"==typeof t[t.length-1]&&(e.callback=t.pop());return t.forEach((t=>{if("string"==typeof t)n.properties.push(t);else{if("object"!=typeof t)throw new w("observable-bind-to-parse-error",null);n={observable:t,properties:[]},e.to.push(n)}})),e}(...t),n=Array.from(this._bindings.keys()),i=n.length;if(!e.callback&&e.to.length>1)throw new w("observable-bind-to-no-callback",this);if(i>1&&e.callback)throw new w("observable-bind-to-extra-callback",this);var o;e.to.forEach((t=>{if(t.properties.length&&t.properties.length!==i)throw new w("observable-bind-to-properties-length",this);t.properties.length||(t.properties=this._bindProperties)})),this._to=e.to,e.callback&&(this._bindings.get(n[0]).callback=e.callback),o=this._observable,this._to.forEach((t=>{const e=o[M];let n;e.get(t.observable)||o.listenTo(t.observable,"change",((i,r)=>{n=e.get(t.observable)[r],n&&n.forEach((t=>{Z(o,t.property)}))}))})),function(t){let e;t._bindings.forEach(((n,i)=>{t._to.forEach((o=>{e=o.properties[n.callback?0:t._bindProperties.indexOf(i)],n.to.push([o.observable,e]),function(t,e,n,i){const o=t[M],r=o.get(n),s=r||{};s[i]||(s[i]=new Set);s[i].add(e),r||o.set(n,s)}(t._observable,n,o.observable,e)}))}))}(this),this._bindProperties.forEach((t=>{Z(this._observable,t)}))}function K(t,e,n){if(this._bindings.size>1)throw new w("observable-bind-to-many-not-one-binding",this);this.to(...function(t,e){const n=t.map((t=>[t,e]));return Array.prototype.concat.apply([],n)}(t,e),n)}function J(t){return t.every((t=>"string"==typeof t))}function Z(t,e){const n=t[N].get(e);let i;n.callback?i=n.callback.apply(t,n.to.map((t=>t[0][t[1]]))):(i=n.to[0],i=i[0][i[1]]),Object.prototype.hasOwnProperty.call(t,e)?t[e]=i:t.set(e,i)}function Y(t){let e=0;for(const n of t)e++;return e}function Q(t,e){const n=Math.min(t.length,e.length);for(let i=0;i{W[t]=q.prototype[t]}));const tt="object"==typeof global&&global&&global.Object===Object&&global;var et="object"==typeof self&&self&&self.Object===Object&&self;const nt=tt||et||Function("return this")();const it=nt.Symbol;var ot=Object.prototype,rt=ot.hasOwnProperty,st=ot.toString,at=it?it.toStringTag:void 0;const ct=function(t){var e=rt.call(t,at),n=t[at];try{t[at]=void 0;var i=!0}catch(t){}var o=st.call(t);return i&&(e?t[at]=n:delete t[at]),o};var lt=Object.prototype.toString;const dt=function(t){return lt.call(t)};var ht=it?it.toStringTag:void 0;const ut=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":ht&&ht in Object(t)?ct(t):dt(t)};const mt=Array.isArray;const gt=function(t){return null!=t&&"object"==typeof t};const pt=function(t){return"string"==typeof t||!mt(t)&>(t)&&"[object String]"==ut(t)};function ft(t,e,n={},i=[]){const o=n&&n.xmlns,r=o?t.createElementNS(o,e):t.createElement(e);for(const t in n)r.setAttribute(t,n[t]);!pt(i)&&X(i)||(i=[i]);for(let e of i)pt(e)&&(e=t.createTextNode(e)),r.appendChild(e);return r}const bt=function(t,e){return function(n){return t(e(n))}};const kt=bt(Object.getPrototypeOf,Object);var wt=Function.prototype,_t=Object.prototype,At=wt.toString,Ct=_t.hasOwnProperty,vt=At.call(Object);const yt=function(t){if(!gt(t)||"[object Object]"!=ut(t))return!1;var e=kt(t);if(null===e)return!0;var n=Ct.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&At.call(n)==vt};const xt=function(){this.__data__=[],this.size=0};const Et=function(t,e){return t===e||t!=t&&e!=e};const Dt=function(t,e){for(var n=t.length;n--;)if(Et(t[n][0],e))return n;return-1};var Bt=Array.prototype.splice;const St=function(t){var e=this.__data__,n=Dt(e,t);return!(n<0)&&(n==e.length-1?e.pop():Bt.call(e,n,1),--this.size,!0)};const Tt=function(t){var e=this.__data__,n=Dt(e,t);return n<0?void 0:e[n][1]};const It=function(t){return Dt(this.__data__,t)>-1};const Pt=function(t,e){var n=this.__data__,i=Dt(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this};function Rt(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e-1&&t%1==0&&t-1&&t%1==0&&t<=9007199254740991};var qe={};qe["[object Float32Array]"]=qe["[object Float64Array]"]=qe["[object Int8Array]"]=qe["[object Int16Array]"]=qe["[object Int32Array]"]=qe["[object Uint8Array]"]=qe["[object Uint8ClampedArray]"]=qe["[object Uint16Array]"]=qe["[object Uint32Array]"]=!0,qe["[object Arguments]"]=qe["[object Array]"]=qe["[object ArrayBuffer]"]=qe["[object Boolean]"]=qe["[object DataView]"]=qe["[object Date]"]=qe["[object Error]"]=qe["[object Function]"]=qe["[object Map]"]=qe["[object Number]"]=qe["[object Object]"]=qe["[object RegExp]"]=qe["[object Set]"]=qe["[object String]"]=qe["[object WeakMap]"]=!1;const We=function(t){return gt(t)&&je(t.length)&&!!qe[ut(t)]};const Ue=function(t){return function(e){return t(e)}};var $e="object"==typeof exports&&exports&&!exports.nodeType&&exports,Ge=$e&&"object"==typeof module&&module&&!module.nodeType&&module,Ke=Ge&&Ge.exports===$e&&tt.process;const Je=function(){try{var t=Ge&&Ge.require&&Ge.require("util").types;return t||Ke&&Ke.binding&&Ke.binding("util")}catch(t){}}();var Ze=Je&&Je.isTypedArray;const Ye=Ze?Ue(Ze):We;var Qe=Object.prototype.hasOwnProperty;const Xe=function(t,e){var n=mt(t),i=!n&&Ve(t),o=!n&&!i&&Me(t),r=!n&&!i&&!o&&Ye(t),s=n||i||o||r,a=s?Se(t.length,String):[],c=a.length;for(var l in t)!e&&!Qe.call(t,l)||s&&("length"==l||o&&("offset"==l||"parent"==l)||r&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||He(l,c))||a.push(l);return a};var tn=Object.prototype;const en=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||tn)};const nn=bt(Object.keys,Object);var on=Object.prototype.hasOwnProperty;const rn=function(t){if(!en(t))return nn(t);var e=[];for(var n in Object(t))on.call(t,n)&&"constructor"!=n&&e.push(n);return e};const sn=function(t){return null!=t&&je(t.length)&&!Mt(t)};const an=function(t){return sn(t)?Xe(t):rn(t)};const cn=function(t,e){return t&&Be(e,an(e),t)};const ln=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e};var dn=Object.prototype.hasOwnProperty;const hn=function(t){if(!O(t))return ln(t);var e=en(t),n=[];for(var i in t)("constructor"!=i||!e&&dn.call(t,i))&&n.push(i);return n};const un=function(t){return sn(t)?Xe(t,!0):hn(t)};const mn=function(t,e){return t&&Be(e,un(e),t)};var gn="object"==typeof exports&&exports&&!exports.nodeType&&exports,pn=gn&&"object"==typeof module&&module&&!module.nodeType&&module,fn=pn&&pn.exports===gn?nt.Buffer:void 0,bn=fn?fn.allocUnsafe:void 0;const kn=function(t,e){if(e)return t.slice();var n=t.length,i=bn?bn(n):new t.constructor(n);return t.copy(i),i};const wn=function(t,e){var n=-1,i=t.length;for(e||(e=Array(i));++n{this._setToTarget(t,i,e[i],n)}))}}function vi(t){return _i(t,yi)}function yi(t){return Ai(t)||"function"==typeof t?t:void 0}function xi(t){if(t){if(t.defaultView)return t instanceof t.defaultView.Document;if(t.ownerDocument&&t.ownerDocument.defaultView)return t instanceof t.ownerDocument.defaultView.Node}return!1}function Ei(t){const e=Object.prototype.toString.apply(t);return"[object Window]"==e||"[object global]"==e}const Di=Bi(S());function Bi(t){if(!t)return Di;return class extends t{listenTo(t,e,n,i={}){if(xi(t)||Ei(t)){const o={capture:!!i.useCapture,passive:!!i.usePassive},r=this._getProxyEmitter(t,o)||new Si(t,o);this.listenTo(r,e,n,i)}else super.listenTo(t,e,n,i)}stopListening(t,e,n){if(xi(t)||Ei(t)){const i=this._getAllProxyEmitters(t);for(const t of i)this.stopListening(t,e,n)}else super.stopListening(t,e,n)}_getProxyEmitter(t,e){return function(t,e){const n=t[x];return n&&n[e]?n[e].emitter:null}(this,Ti(t,e))}_getAllProxyEmitters(t){return[{capture:!1,passive:!1},{capture:!1,passive:!0},{capture:!0,passive:!1},{capture:!0,passive:!0}].map((e=>this._getProxyEmitter(t,e))).filter((t=>!!t))}}}["_getProxyEmitter","_getAllProxyEmitters","on","once","off","listenTo","stopListening","fire","delegate","stopDelegating","_addEventListener","_removeEventListener"].forEach((t=>{Bi[t]=Di.prototype[t]}));class Si extends(S()){constructor(t,e){super(),T(this,Ti(t,e)),this._domNode=t,this._options=e}attach(t){if(this._domListeners&&this._domListeners[t])return;const e=this._createDomListener(t);this._domNode.addEventListener(t,e,this._options),this._domListeners||(this._domListeners={}),this._domListeners[t]=e}detach(t){let e;!this._domListeners[t]||(e=this._events[t])&&e.callbacks.length||this._domListeners[t].removeListener()}_addEventListener(t,e,n){this.attach(t),S().prototype._addEventListener.call(this,t,e,n)}_removeEventListener(t,e){S().prototype._removeEventListener.call(this,t,e),this.detach(t)}_createDomListener(t){const e=e=>{this.fire(t,e)};return e.removeListener=()=>{this._domNode.removeEventListener(t,e,this._options),delete this._domListeners[t]},e}}function Ti(t,e){let n=function(t){return t["data-ck-expando"]||(t["data-ck-expando"]=p())}(t);for(const t of Object.keys(e).sort())e[t]&&(n+="-"+t);return n}function Ii(t){const e=t.ownerDocument.defaultView.getComputedStyle(t);return{top:parseInt(e.borderTopWidth,10),right:parseInt(e.borderRightWidth,10),bottom:parseInt(e.borderBottomWidth,10),left:parseInt(e.borderLeftWidth,10)}}function Pi(t){return"[object Text]"==Object.prototype.toString.call(t)}function Ri(t){return"[object Range]"==Object.prototype.toString.apply(t)}function Vi(t){return t&&t.parentNode?t.offsetParent===e.document.body?null:t.offsetParent:null}const Fi=["top","right","bottom","left","width","height"];class Li{constructor(t){const e=Ri(t);if(Object.defineProperty(this,"_source",{value:t._source||t,writable:!0,enumerable:!1}),Mi(t)||e)if(e){const e=Li.getDomRangeRects(t);Oi(this,Li.getBoundingRect(e))}else Oi(this,t.getBoundingClientRect());else if(Ei(t)){const{innerWidth:e,innerHeight:n}=t;Oi(this,{top:0,right:e,bottom:n,left:0,width:e,height:n})}else Oi(this,t)}clone(){return new Li(this)}moveTo(t,e){return this.top=e,this.right=t+this.width,this.bottom=e+this.height,this.left=t,this}moveBy(t,e){return this.top+=e,this.right+=t,this.left+=t,this.bottom+=e,this}getIntersection(t){const e={top:Math.max(this.top,t.top),right:Math.min(this.right,t.right),bottom:Math.min(this.bottom,t.bottom),left:Math.max(this.left,t.left),width:0,height:0};if(e.width=e.right-e.left,e.height=e.bottom-e.top,e.width<0||e.height<0)return null;{const t=new Li(e);return t._source=this._source,t}}getIntersectionArea(t){const e=this.getIntersection(t);return e?e.getArea():0}getArea(){return this.width*this.height}getVisible(){const t=this._source;let e=this.clone();if(zi(t))return e;let n,i=t,o=t.parentNode||t.commonAncestorContainer;for(;o&&!zi(o);){const t="visible"===((r=o)instanceof HTMLElement?r.ownerDocument.defaultView.getComputedStyle(r).overflow:"visible");i instanceof HTMLElement&&"absolute"===Ni(i)&&(n=i);const s=Ni(o);if(t||n&&("relative"===s&&t||"relative"!==s)){i=o,o=o.parentNode;continue}const a=new Li(o),c=e.getIntersection(a);if(!c)return null;c.getArea(){for(const e of t){const t=Hi._getElementCallbacks(e.target);if(t)for(const n of t)n(e)}}))}};let ji=Hi;function qi(t,e){t instanceof HTMLTextAreaElement&&(t.value=e),t.innerHTML=e}function Wi(t){return e=>e+t}function Ui(t){let e=0;for(;t.previousSibling;)t=t.previousSibling,e++;return e}function $i(t,e,n){t.insertBefore(n,t.childNodes[e]||null)}function Gi(t){return t&&t.nodeType===Node.COMMENT_NODE}function Ki(t){return!!(t&&t.getClientRects&&t.getClientRects().length)}ji._observerInstance=null,ji._elementCallbacks=null;var Ji=Math.pow;function Zi({element:t,target:n,positions:i,limiter:o,fitInViewport:r,viewportOffsetConfig:s}){Mt(n)&&(n=n()),Mt(o)&&(o=o());const a=Vi(t),c=function(t){t=Object.assign({top:0,bottom:0,left:0,right:0},t);const n=new Li(e.window);return n.top+=t.top,n.height-=t.top,n.bottom-=t.bottom,n.height-=t.bottom,n}(s),l=new Li(t),d=Yi(n,c);let h;if(!d||!c.getIntersection(d))return null;const u={targetRect:d,elementRect:l,positionedElementAncestor:a,viewportRect:c};if(o||r){if(o){const t=Yi(o,c);t&&(u.limiterRect=t)}h=function(t,e){const{elementRect:n}=e,i=n.getArea(),o=t.map((t=>new Qi(t,e))).filter((t=>!!t.name));let r=0,s=null;for(const t of o){const{limiterIntersectionArea:e,viewportIntersectionArea:n}=t;if(e===i)return t;const o=Ji(n,2)+Ji(e,2);o>r&&(r=o,s=t)}return s}(i,u)}else h=new Qi(i[0],u);return h}function Yi(t,e){const n=new Li(t).getVisible();return n?n.getIntersection(e):null}class Qi{constructor(t,e){const n=t(e.targetRect,e.elementRect,e.viewportRect,e.limiterRect);if(!n)return;const{left:i,top:o,name:r,config:s}=n;this.name=r,this.config=s,this._positioningFunctionCoordinates={left:i,top:o},this._options=e}get left(){return this._absoluteRect.left}get top(){return this._absoluteRect.top}get limiterIntersectionArea(){const t=this._options.limiterRect;return t?t.getIntersectionArea(this._rect):0}get viewportIntersectionArea(){return this._options.viewportRect.getIntersectionArea(this._rect)}get _rect(){return this._cachedRect||(this._cachedRect=this._options.elementRect.clone().moveTo(this._positioningFunctionCoordinates.left,this._positioningFunctionCoordinates.top)),this._cachedRect}get _absoluteRect(){return this._cachedAbsoluteRect||(this._cachedAbsoluteRect=this._rect.toAbsoluteRect()),this._cachedAbsoluteRect}}function Xi(t){const e=t.parentNode;e&&e.removeChild(t)}function to({target:t,viewportOffset:e=0,ancestorOffset:n=0,alignToTop:i,forceScroll:o}){const r=ao(t);let s=r,a=null;for(e=function(t){if("number"==typeof t)return{top:t,bottom:t,left:t,right:t};return t}(e);s;){let c;c=co(s==r?t:a),no({parent:c,getRect:()=>lo(t,s),alignToTop:i,ancestorOffset:n,forceScroll:o});const l=lo(t,s);if(eo({window:s,rect:l,viewportOffset:e,alignToTop:i,forceScroll:o}),s.parent!=s){if(a=s.frameElement,s=s.parent,!a)return}else s=null}}function eo({window:t,rect:e,alignToTop:n,forceScroll:i,viewportOffset:o}){const r=e.clone().moveBy(0,o.bottom),s=e.clone().moveBy(0,-o.top),a=new Li(t).excludeScrollbarsAndBorders(),c=n&&i,l=[s,r].every((t=>a.contains(t)));let{scrollX:d,scrollY:h}=t;const u=d,m=h;c?h-=a.top-e.top+o.top:l||(oo(s,a)?h-=a.top-e.top+o.top:io(r,a)&&(h+=n?e.top-a.top-o.top:e.bottom-a.bottom+o.bottom)),l||(ro(e,a)?d-=a.left-e.left+o.left:so(e,a)&&(d+=e.right-a.right+o.right)),d==u&&h===m||t.scrollTo(d,h)}function no({parent:t,getRect:e,alignToTop:n,forceScroll:i,ancestorOffset:o=0,limiterElement:r}){const s=ao(t),a=n&&i;let c,l,d;const h=r||s.document.body;for(;t!=h;)l=e(),c=new Li(t).excludeScrollbarsAndBorders(),d=c.contains(l),a?t.scrollTop-=c.top-l.top+o:d||(oo(l,c)?t.scrollTop-=c.top-l.top+o:io(l,c)&&(t.scrollTop+=n?l.top-c.top-o:l.bottom-c.bottom+o)),d||(ro(l,c)?t.scrollLeft-=c.left-l.left+o:so(l,c)&&(t.scrollLeft+=l.right-c.right+o)),t=t.parentNode}function io(t,e){return t.bottom>e.bottom}function oo(t,e){return t.tope.right}function ao(t){return Ri(t)?t.startContainer.ownerDocument.defaultView:t.ownerDocument.defaultView}function co(t){if(Ri(t)){let e=t.commonAncestorContainer;return Pi(e)&&(e=e.parentNode),e}return t.parentNode}function lo(t,e){const n=ao(t),i=new Li(t);if(n===e)return i;{let t=n;for(;t!=e;){const e=t.frameElement,n=new Li(e).excludeScrollbarsAndBorders();i.moveBy(n.left,n.top),t=t.parent}}return i}const ho={ctrl:"⌃",cmd:"⌘",alt:"⌥",shift:"⇧"},uo={ctrl:"Ctrl+",alt:"Alt+",shift:"Shift+"},mo={37:"←",38:"↑",39:"→",40:"↓",9:"⇥",33:"Page Up",34:"Page Down"},go=function(){const t={pageup:33,pagedown:34,arrowleft:37,arrowup:38,arrowright:39,arrowdown:40,backspace:8,delete:46,enter:13,space:32,esc:27,tab:9,ctrl:1114112,shift:2228224,alt:4456448,cmd:8912896};for(let e=65;e<=90;e++){t[String.fromCharCode(e).toLowerCase()]=e}for(let e=48;e<=57;e++)t[e-48]=e;for(let e=112;e<=123;e++)t["f"+(e-111)]=e;return Object.assign(t,{"'":222,",":108,"-":109,".":110,"/":111,";":186,"=":187,"[":219,"\\":220,"]":221,"`":223}),t}(),po=Object.fromEntries(Object.entries(go).map((([t,e])=>{let n;return n=e in mo?mo[e]:t.charAt(0).toUpperCase()+t.slice(1),[e,n]})));function fo(t){let e;if("string"==typeof t){if(e=go[t.toLowerCase()],!e)throw new w("keyboard-unknown-key",null,{key:t})}else e=t.keyCode+(t.altKey?go.alt:0)+(t.ctrlKey?go.ctrl:0)+(t.shiftKey?go.shift:0)+(t.metaKey?go.cmd:0);return e}function bo(t){return"string"==typeof t&&(t=function(t){return t.split("+").map((t=>t.trim()))}(t)),t.map((t=>"string"==typeof t?function(t){if(t.endsWith("!"))return fo(t.slice(0,-1));const e=fo(t);return(s.isMac||s.isiOS)&&e==go.ctrl?go.cmd:e}(t):t)).reduce(((t,e)=>e+t),0)}function ko(t){let e=bo(t);return Object.entries(s.isMac||s.isiOS?ho:uo).reduce(((t,[n,i])=>(e&go[n]&&(e&=~go[n],t+=i),t)),"")+(e?po[e]:"")}function wo(t,e){const n="ltr"===e;switch(t){case go.arrowleft:return n?"left":"right";case go.arrowright:return n?"right":"left";case go.arrowup:return"up";case go.arrowdown:return"down"}}function _o(t){return Array.isArray(t)?t:[t]}const Ao=function(t,e,n){(void 0!==n&&!Et(t[e],n)||void 0===n&&!(e in t))&&xe(t,e,n)};const Co=function(t){return function(e,n,i){for(var o=-1,r=Object(e),s=i(e),a=s.length;a--;){var c=s[t?a:++o];if(!1===n(r[c],c,r))break}return e}}();const vo=function(t){return gt(t)&&sn(t)};const yo=function(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]};const xo=function(t){return Be(t,un(t))};const Eo=function(t,e,n,i,o,r,s){var a=yo(t,n),c=yo(e,n),l=s.get(c);if(l)Ao(t,n,l);else{var d=r?r(a,c,n+"",t,e,s):void 0,h=void 0===d;if(h){var u=mt(c),m=!u&&Me(c),g=!u&&!m&&Ye(c);d=c,u||m||g?mt(a)?d=a:vo(a)?d=wn(a):m?(h=!1,d=kn(c,!0)):g?(h=!1,d=oi(c,!0)):d=[]:yt(c)||Ve(c)?(d=a,Ve(a)?d=xo(a):O(a)&&!Mt(a)||(d=ci(c))):h=!1}h&&(s.set(c,d),o(d,c,i,r,s),s.delete(c)),Ao(t,n,d)}};const Do=function t(e,n,i,o,r){e!==n&&Co(n,(function(s,a){if(r||(r=new Ce),O(s))Eo(e,n,a,i,t,o,r);else{var c=o?o(yo(e,a),s,a+"",e,n,r):void 0;void 0===c&&(c=s),Ao(e,a,c)}}),un)};const Bo=function(t){return t};const So=function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)};var To=Math.max;const Io=function(t,e,n){return e=To(void 0===e?t.length-1:e,0),function(){for(var i=arguments,o=-1,r=To(i.length-e,0),s=Array(r);++o0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}};const Lo=Fo(Ro);const Oo=function(t,e){return Lo(Io(t,e,Bo),t+"")};const zo=function(t,e,n){if(!O(n))return!1;var i=typeof e;return!!("number"==i?sn(n)&&He(e,n.length):"string"==i&&e in n)&&Et(n[e],t)};const Mo=function(t){return Oo((function(e,n){var i=-1,o=n.length,r=o>1?n[o-1]:void 0,s=o>2?n[2]:void 0;for(r=t.length>3&&"function"==typeof r?(o--,r):void 0,s&&zo(n[0],n[1],s)&&(r=o<3?void 0:r,o=1),e=Object(e);++i1===t?0:1),d=c[a];if("string"==typeof d)return d;return d[Number(l(i))]}e.window.CKEDITOR_TRANSLATIONS||(e.window.CKEDITOR_TRANSLATIONS={});const jo=["ar","ara","dv","div","fa","per","fas","he","heb","ku","kur","ug","uig"];function qo(t){return jo.includes(t)?"rtl":"ltr"}class Wo{constructor({uiLanguage:t="en",contentLanguage:e,translations:n}={}){this.uiLanguage=t,this.contentLanguage=e||this.uiLanguage,this.uiLanguageDirection=qo(this.uiLanguage),this.contentLanguageDirection=qo(this.contentLanguage),this.translations=function(t){return Array.isArray(t)?t.reduce(((t,e)=>No(t,e))):t}(n),this.t=(t,e)=>this._t(t,e)}get language(){return console.warn("locale-deprecated-language-property: The Locale#language property has been deprecated and will be removed in the near future. Please use #uiLanguage and #contentLanguage properties instead."),this.uiLanguage}_t(t,e=[]){e=_o(e),"string"==typeof t&&(t={string:t});const n=!!t.plural?e[0]:1;return function(t,e){return t.replace(/%(\d+)/g,((t,n)=>nthis._items.length||e<0)throw new w("collection-add-item-invalid-index",this);let n=0;for(const i of t){const t=this._getItemIdBeforeAdding(i),o=e+n;this._items.splice(o,0,i),this._itemMap.set(t,i),this.fire("add",i,o),n++}return this.fire("change",{added:t,removed:[],index:e}),this}get(t){let e;if("string"==typeof t)e=this._itemMap.get(t);else{if("number"!=typeof t)throw new w("collection-get-invalid-arg",this);e=this._items[t]}return e||null}has(t){if("string"==typeof t)return this._itemMap.has(t);{const e=t[this._idProperty];return e&&this._itemMap.has(e)}}getIndex(t){let e;return e="string"==typeof t?this._itemMap.get(t):t,e?this._items.indexOf(e):-1}remove(t){const[e,n]=this._remove(t);return this.fire("change",{added:[],removed:[e],index:n}),e}map(t,e){return this._items.map(t,e)}forEach(t,e){this._items.forEach(t,e)}find(t,e){return this._items.find(t,e)}filter(t,e){return this._items.filter(t,e)}clear(){this._bindToCollection&&(this.stopListening(this._bindToCollection),this._bindToCollection=null);const t=Array.from(this._items);for(;this.length;)this._remove(0);this.fire("change",{added:[],removed:t,index:0})}bindTo(t){if(this._bindToCollection)throw new w("collection-bind-to-rebind",this);return this._bindToCollection=t,{as:t=>{this._setUpBindToBinding((e=>new t(e)))},using:t=>{"function"==typeof t?this._setUpBindToBinding(t):this._setUpBindToBinding((e=>e[t]))}}}_setUpBindToBinding(t){const e=this._bindToCollection,n=(n,i,o)=>{const r=e._bindToCollection==this,s=e._bindToInternalToExternalMap.get(i);if(r&&s)this._bindToExternalToInternalMap.set(i,s),this._bindToInternalToExternalMap.set(s,i);else{const n=t(i);if(!n)return void this._skippedIndexesFromExternal.push(o);let r=o;for(const t of this._skippedIndexesFromExternal)o>t&&r--;for(const t of e._skippedIndexesFromExternal)r>=t&&r++;this._bindToExternalToInternalMap.set(i,n),this._bindToInternalToExternalMap.set(n,i),this.add(n,r);for(let t=0;t{const i=this._bindToExternalToInternalMap.get(e);i&&this.remove(i),this._skippedIndexesFromExternal=this._skippedIndexesFromExternal.reduce(((t,e)=>(ne&&t.push(e),t)),[])}))}_getItemIdBeforeAdding(t){const e=this._idProperty;let n;if(e in t){if(n=t[e],"string"!=typeof n)throw new w("collection-add-invalid-id",this);if(this.get(n))throw new w("collection-add-item-already-exists",this)}else t[e]=n=p();return n}_remove(t){let e,n,i,o=!1;const r=this._idProperty;if("string"==typeof t?(n=t,i=this._itemMap.get(n),o=!i,i&&(e=this._items.indexOf(i))):"number"==typeof t?(e=t,i=this._items[e],o=!i,i&&(n=i[r])):(i=t,n=i[r],e=this._items.indexOf(i),o=-1==e||!this._itemMap.get(n)),o)throw new w("collection-remove-404",this);this._items.splice(e,1),this._itemMap.delete(n);const s=this._bindToInternalToExternalMap.get(i);return this._bindToInternalToExternalMap.delete(i),this._bindToExternalToInternalMap.delete(s),this.fire("remove",i,e),[i,e]}[Symbol.iterator](){return this._items[Symbol.iterator]()}}function $o(t){const e=t.next();return e.done?null:e.value}class Go extends(Bi(W())){constructor(){super(),this._elements=new Set,this._nextEventLoopTimeout=null,this.set("isFocused",!1),this.set("focusedElement",null)}add(t){if(this._elements.has(t))throw new w("focustracker-add-element-already-exist",this);this.listenTo(t,"focus",(()=>this._focus(t)),{useCapture:!0}),this.listenTo(t,"blur",(()=>this._blur()),{useCapture:!0}),this._elements.add(t)}remove(t){t===this.focusedElement&&this._blur(),this._elements.has(t)&&(this.stopListening(t),this._elements.delete(t))}destroy(){this.stopListening()}_focus(t){clearTimeout(this._nextEventLoopTimeout),this.focusedElement=t,this.isFocused=!0}_blur(){clearTimeout(this._nextEventLoopTimeout),this._nextEventLoopTimeout=setTimeout((()=>{this.focusedElement=null,this.isFocused=!1}),0)}}class Ko{constructor(){this._listener=new(Bi())}listenTo(t){this._listener.listenTo(t,"keydown",((t,e)=>{this._listener.fire("_keydown:"+fo(e),e)}))}set(t,e,n={}){const i=bo(t),o=n.priority;this._listener.listenTo(this._listener,"_keydown:"+i,((t,n)=>{e(n,(()=>{n.preventDefault(),n.stopPropagation(),t.stop()})),t.return=!0}),{priority:o})}press(t){return!!this._listener.fire("_keydown:"+fo(t),t)}stopListening(t){this._listener.stopListening(t)}destroy(){this.stopListening()}}function Jo(t){return X(t)?new Map(t):function(t){const e=new Map;for(const n in t)e.set(n,t[n]);return e}(t)}Math.pow;function Zo(t,e){let n;function i(...o){i.cancel(),n=setTimeout((()=>t(...o)),e)}return i.cancel=()=>{clearTimeout(n)},i}function Yo(t,e){return!!(n=t.charAt(e-1))&&1==n.length&&/[\ud800-\udbff]/.test(n)&&function(t){return!!t&&1==t.length&&/[\udc00-\udfff]/.test(t)}(t.charAt(e));var n}function Qo(t,e){return!!(n=t.charAt(e))&&1==n.length&&/[\u0300-\u036f\u1ab0-\u1aff\u1dc0-\u1dff\u20d0-\u20ff\ufe20-\ufe2f]/.test(n);var n}const Xo=function(){const t=[new RegExp("\\p{Emoji}[\\u{E0020}-\\u{E007E}]+\\u{E007F}","u"),new RegExp("\\p{Emoji}\\u{FE0F}?\\u{20E3}","u"),new RegExp("\\p{Emoji}\\u{FE0F}","u"),new RegExp("(?=\\p{General_Category=Other_Symbol})\\p{Emoji}\\p{Emoji_Modifier}*","u")],e=new RegExp("\\p{Regional_Indicator}{2}","u").source,n="(?:"+t.map((t=>t.source)).join("|")+")";return new RegExp(`${e}|${n}(?:‍${n})*`,"ug")}();function tr(t,e){const n=String(t).matchAll(Xo);return Array.from(n).some((t=>t.index{this.refresh()})),this.listenTo(t,"change:isReadOnly",(()=>{this.refresh()})),this.on("set:isEnabled",(e=>{if(!this.affectsData)return;const n=t.model.document.selection,i=!("$graveyard"==n.getFirstPosition().root.rootName)&&t.model.canEditAt(n);(t.isReadOnly||this._isEnabledBasedOnSelection&&!i)&&(e.return=!1,e.stop())}),{priority:"highest"}),this.on("execute",(t=>{this.isEnabled||t.stop()}),{priority:"high"})}get affectsData(){return this._affectsData}set affectsData(t){this._affectsData=t}refresh(){this.isEnabled=!0}forceDisabled(t){this._disableStack.add(t),1==this._disableStack.size&&(this.on("set:isEnabled",or,{priority:"highest"}),this.isEnabled=!1)}clearForceDisabled(t){this._disableStack.delete(t),0==this._disableStack.size&&(this.off("set:isEnabled",or),this.refresh())}execute(...t){}destroy(){this.stopListening()}}function or(t){t.return=!1,t.stop()}class rr extends ir{constructor(){super(...arguments),this._childCommandsDefinitions=[]}refresh(){}execute(...t){const e=this._getFirstEnabledCommand();return!!e&&e.execute(t)}registerChildCommand(t,e={}){b(this._childCommandsDefinitions,{command:t,priority:e.priority||"normal"}),t.on("change:isEnabled",(()=>this._checkEnabled())),this._checkEnabled()}_checkEnabled(){this.isEnabled=!!this._getFirstEnabledCommand()}_getFirstEnabledCommand(){const t=this._childCommandsDefinitions.find((({command:t})=>t.isEnabled));return t&&t.command}}class sr extends(S()){constructor(t,e=[],n=[]){super(),this._plugins=new Map,this._context=t,this._availablePlugins=new Map;for(const t of e)t.pluginName&&this._availablePlugins.set(t.pluginName,t);this._contextPlugins=new Map;for(const[t,e]of n)this._contextPlugins.set(t,e),this._contextPlugins.set(e,t),t.pluginName&&this._availablePlugins.set(t.pluginName,t)}*[Symbol.iterator](){for(const t of this._plugins)"function"==typeof t[0]&&(yield t)}get(t){const e=this._plugins.get(t);if(!e){let e=t;throw"function"==typeof t&&(e=t.pluginName||t.name),new w("plugincollection-plugin-not-loaded",this._context,{plugin:e})}return e}has(t){return this._plugins.has(t)}init(t,e=[],n=[]){const i=this,o=this._context;!function t(e,n=new Set){e.forEach((e=>{a(e)&&(n.has(e)||(n.add(e),e.pluginName&&!i._availablePlugins.has(e.pluginName)&&i._availablePlugins.set(e.pluginName,e),e.requires&&t(e.requires,n)))}))}(t),h(t);const r=[...function t(e,n=new Set){return e.map((t=>a(t)?t:i._availablePlugins.get(t))).reduce(((e,i)=>n.has(i)?e:(n.add(i),i.requires&&(h(i.requires,i),t(i.requires,n).forEach((t=>e.add(t)))),e.add(i))),new Set)}(t.filter((t=>!l(t,e))))];!function(t,e){for(const n of e){if("function"!=typeof n)throw new w("plugincollection-replace-plugin-invalid-type",null,{pluginItem:n});const e=n.pluginName;if(!e)throw new w("plugincollection-replace-plugin-missing-name",null,{pluginItem:n});if(n.requires&&n.requires.length)throw new w("plugincollection-plugin-for-replacing-cannot-have-dependencies",null,{pluginName:e});const o=i._availablePlugins.get(e);if(!o)throw new w("plugincollection-plugin-for-replacing-not-exist",null,{pluginName:e});const r=t.indexOf(o);if(-1===r){if(i._contextPlugins.has(o))return;throw new w("plugincollection-plugin-for-replacing-not-loaded",null,{pluginName:e})}if(o.requires&&o.requires.length)throw new w("plugincollection-replaced-plugin-cannot-have-dependencies",null,{pluginName:e});t.splice(r,1,n),i._availablePlugins.set(e,n)}}(r,n);const s=r.map((t=>{let e=i._contextPlugins.get(t);return e=e||new t(o),i._add(t,e),e}));return u(s,"init").then((()=>u(s,"afterInit"))).then((()=>s));function a(t){return"function"==typeof t}function c(t){return a(t)&&!!t.isContextPlugin}function l(t,e){return e.some((e=>e===t||(d(t)===e||d(e)===t)))}function d(t){return a(t)?t.pluginName||t.name:t}function h(t,n=null){t.map((t=>a(t)?t:i._availablePlugins.get(t)||t)).forEach((t=>{!function(t,e){if(a(t))return;if(e)throw new w("plugincollection-soft-required",o,{missingPlugin:t,requiredBy:d(e)});throw new w("plugincollection-plugin-not-found",o,{plugin:t})}(t,n),function(t,e){if(!c(e))return;if(c(t))return;throw new w("plugincollection-context-required",o,{plugin:d(t),requiredBy:d(e)})}(t,n),function(t,n){if(!n)return;if(!l(t,e))return;throw new w("plugincollection-required",o,{plugin:d(t),requiredBy:d(n)})}(t,n)}))}function u(t,e){return t.reduce(((t,n)=>n[e]?i._contextPlugins.has(n)?t:t.then(n[e].bind(n)):t),Promise.resolve())}}destroy(){const t=[];for(const[,e]of this)"function"!=typeof e.destroy||this._contextPlugins.has(e)||t.push(e.destroy());return Promise.all(t)}_add(t,e){this._plugins.set(t,e);const n=t.pluginName;if(n){if(this._plugins.has(n))throw new w("plugincollection-plugin-name-conflict",null,{pluginName:n,plugin1:this._plugins.get(n).constructor,plugin2:t});this._plugins.set(n,e)}}}var ar=Object.getOwnPropertySymbols,cr=Object.prototype.hasOwnProperty,lr=Object.prototype.propertyIsEnumerable;class dr{constructor(t){this._contextOwner=null;const e=t||{},{translations:n}=e,i=((t,e)=>{var n={};for(var i in t)cr.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(null!=t&&ar)for(var i of ar(t))e.indexOf(i)<0&&lr.call(t,i)&&(n[i]=t[i]);return n})(e,["translations"]);this.config=new Ci(i,this.constructor.defaultConfig);const o=this.constructor.builtinPlugins;this.config.define("plugins",o),this.plugins=new sr(this,o);const r=this.config.get("language")||{};this.locale=new Wo({uiLanguage:"string"==typeof r?r:r.ui,contentLanguage:this.config.get("language.content"),translations:n}),this.t=this.locale.t,this.editors=new Uo}initPlugins(){const t=this.config.get("plugins")||[],e=this.config.get("substitutePlugins")||[];for(const n of t.concat(e)){if("function"!=typeof n)throw new w("context-initplugins-constructor-only",null,{Plugin:n});if(!0!==n.isContextPlugin)throw new w("context-initplugins-invalid-plugin",null,{Plugin:n})}return this.plugins.init(t,[],e)}destroy(){return Promise.all(Array.from(this.editors,(t=>t.destroy()))).then((()=>this.plugins.destroy()))}_addEditor(t,e){if(this._contextOwner)throw new w("context-addeditor-private-context");this.editors.add(t),e&&(this._contextOwner=t)}_removeEditor(t){return this.editors.has(t)&&this.editors.remove(t),this._contextOwner===t?this.destroy():Promise.resolve()}_getEditorConfig(){const t={};for(const e of this.config.names())["plugins","removePlugins","extraPlugins"].includes(e)||(t[e]=this.config.get(e));return t}static create(t){return new Promise((e=>{const n=new this(t);e(n.initPlugins().then((()=>n)))}))}}class hr extends(W()){constructor(t){super(),this.context=t}destroy(){this.stopListening()}static get isContextPlugin(){return!0}}class ur extends Ko{constructor(t){super(),this.editor=t}set(t,e,n={}){if("string"==typeof e){const t=e;e=(e,n)=>{this.editor.execute(t),n()}}super.set(t,e,n)}}var mr=n(2591),gr=n.n(mr),pr=n(4098),fr={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(pr.A,fr);pr.A.locals;const br=new WeakMap;let kr=!1;function wr({view:t,element:e,text:n,isDirectHost:i=!0,keepOnFocus:o=!1}){const r=t.document;function s(n){br.get(r).set(e,{text:n,isDirectHost:i,keepOnFocus:o,hostElement:i?e:null}),t.change((t=>vr(r,t)))}br.has(r)||(br.set(r,new Map),r.registerPostFixer((t=>vr(r,t))),r.on("change:isComposing",(()=>{t.change((t=>vr(r,t)))}),{priority:"high"})),e.is("editableElement")&&e.on("change:placeholder",((t,e,n)=>{s(n)})),e.placeholder?s(e.placeholder):n&&s(n),n&&function(){kr||_("enableplaceholder-deprecated-text-option");kr=!0}()}function _r(t,e){return!e.hasClass("ck-placeholder")&&(t.addClass("ck-placeholder",e),!0)}function Ar(t,e){return!!e.hasClass("ck-placeholder")&&(t.removeClass("ck-placeholder",e),!0)}function Cr(t,e){if(!t.isAttached())return!1;if(Array.from(t.getChildren()).some((t=>!t.is("uiElement"))))return!1;const n=t.document,i=n.selection.anchor;return(!n.isComposing||!i||i.parent!==t)&&(!!e||(!n.isFocused||!!i&&i.parent!==t))}function vr(t,e){const n=br.get(t),i=[];let o=!1;for(const[t,r]of n)r.isDirectHost&&(i.push(t),yr(e,t,r)&&(o=!0));for(const[t,r]of n){if(r.isDirectHost)continue;const n=xr(t);n&&(i.includes(n)||(r.hostElement=n,yr(e,t,r)&&(o=!0)))}return o}function yr(t,e,n){const{text:i,isDirectHost:o,hostElement:r}=n;let s=!1;r.getAttribute("data-placeholder")!==i&&(t.setAttribute("data-placeholder",i,r),s=!0);return(o||1==e.childCount)&&Cr(r,n.keepOnFocus)?_r(t,r)&&(s=!0):Ar(t,r)&&(s=!0),s}function xr(t){if(t.childCount){const e=t.getChild(0);if(e.is("element")&&!e.is("uiElement")&&!e.is("attributeElement"))return e}return null}class Er{is(){throw new Error("is() method is abstract")}}const Dr=function(t){return wi(t,4)};class Br extends(S(Er)){constructor(t){super(),this.document=t,this.parent=null}get index(){let t;if(!this.parent)return null;if(-1==(t=this.parent.getChildIndex(this)))throw new w("view-node-not-found-in-parent",this);return t}get nextSibling(){const t=this.index;return null!==t&&this.parent.getChild(t+1)||null}get previousSibling(){const t=this.index;return null!==t&&this.parent.getChild(t-1)||null}get root(){let t=this;for(;t.parent;)t=t.parent;return t}isAttached(){return this.root.is("rootElement")}getPath(){const t=[];let e=this;for(;e.parent;)t.unshift(e.index),e=e.parent;return t}getAncestors(t={}){const e=[];let n=t.includeSelf?this:this.parent;for(;n;)e[t.parentFirst?"push":"unshift"](n),n=n.parent;return e}getCommonAncestor(t,e={}){const n=this.getAncestors(e),i=t.getAncestors(e);let o=0;for(;n[o]==i[o]&&n[o];)o++;return 0===o?null:n[o-1]}isBefore(t){if(this==t)return!1;if(this.root!==t.root)return!1;const e=this.getPath(),n=t.getPath(),i=Q(e,n);switch(i){case"prefix":return!0;case"extension":return!1;default:return e[i]t.data.length)throw new w("view-textproxy-wrong-offsetintext",this);if(n<0||e+n>t.data.length)throw new w("view-textproxy-wrong-length",this);this.data=t.data.substring(e,e+n),this.offsetInText=e}get offsetSize(){return this.data.length}get isPartial(){return this.data.length!==this.textNode.data.length}get parent(){return this.textNode.parent}get root(){return this.textNode.root}get document(){return this.textNode.document}getAncestors(t={}){const e=[];let n=t.includeSelf?this.textNode:this.parent;for(;null!==n;)e[t.parentFirst?"push":"unshift"](n),n=n.parent;return e}}Tr.prototype.is=function(t){return"$textProxy"===t||"view:$textProxy"===t||"textProxy"===t||"view:textProxy"===t};class Ir{constructor(...t){this._patterns=[],this.add(...t)}add(...t){for(let e of t)("string"==typeof e||e instanceof RegExp)&&(e={name:e}),this._patterns.push(e)}match(...t){for(const e of t)for(const t of this._patterns){const n=Pr(e,t);if(n)return{element:e,pattern:t,match:n}}return null}matchAll(...t){const e=[];for(const n of t)for(const t of this._patterns){const i=Pr(n,t);i&&e.push({element:n,pattern:t,match:i})}return e.length>0?e:null}getElementName(){if(1!==this._patterns.length)return null;const t=this._patterns[0],e=t.name;return"function"==typeof t||!e||e instanceof RegExp?null:e}}function Pr(t,e){if("function"==typeof e)return e(t);const n={};return e.name&&(n.name=function(t,e){if(t instanceof RegExp)return!!e.match(t);return t===e}(e.name,t.name),!n.name)||e.attributes&&(n.attributes=function(t,e){const n=new Set(e.getAttributeKeys());yt(t)?(void 0!==t.style&&_("matcher-pattern-deprecated-attributes-style-key",t),void 0!==t.class&&_("matcher-pattern-deprecated-attributes-class-key",t)):(n.delete("style"),n.delete("class"));return Rr(t,n,(t=>e.getAttribute(t)))}(e.attributes,t),!n.attributes)||e.classes&&(n.classes=function(t,e){return Rr(t,e.getClassNames(),(()=>{}))}(e.classes,t),!n.classes)||e.styles&&(n.styles=function(t,e){return Rr(t,e.getStyleNames(!0),(t=>e.getStyle(t)))}(e.styles,t),!n.styles)?null:n}function Rr(t,e,n){const i=function(t){if(Array.isArray(t))return t.map((t=>yt(t)?(void 0!==t.key&&void 0!==t.value||_("matcher-pattern-missing-key-or-value",t),[t.key,t.value]):[t,!0]));if(yt(t))return Object.entries(t);return[[t,!0]]}(t),o=Array.from(e),r=[];if(i.forEach((([t,e])=>{o.forEach((i=>{(function(t,e){return!0===t||t===e||t instanceof RegExp&&e.match(t)})(t,i)&&function(t,e,n){if(!0===t)return!0;const i=n(e);return t===i||t instanceof RegExp&&!!String(i).match(t)}(e,i,n)&&r.push(i)}))})),i.length&&!(r.lengtho?0:o+e),(n=n>o?o:n)<0&&(n+=o),o=e>n?0:n-e>>>0,e>>>=0;for(var r=Array(o);++ie===t));return Array.isArray(e)}set(t,e){if(O(t))for(const[e,n]of Object.entries(t))this._styleProcessor.toNormalizedForm(e,n,this._styles);else this._styleProcessor.toNormalizedForm(t,e,this._styles)}remove(t){const e=ls(t);is(this._styles,e),delete this._styles[t],this._cleanEmptyObjectsOnPath(e)}getNormalized(t){return this._styleProcessor.getNormalized(t,this._styles)}toString(){return this.isEmpty?"":this.getStylesEntries().map((t=>t.join(":"))).sort().join(";")+";"}getAsString(t){if(this.isEmpty)return;if(this._styles[t]&&!O(this._styles[t]))return this._styles[t];const e=this._styleProcessor.getReducedForm(t,this._styles).find((([e])=>e===t));return Array.isArray(e)?e[1]:void 0}getStyleNames(t=!1){if(this.isEmpty)return[];if(t)return this._styleProcessor.getStyleNames(this._styles);return this.getStylesEntries().map((([t])=>t))}clear(){this._styles={}}getStylesEntries(){const t=[],e=Object.keys(this._styles);for(const n of e)t.push(...this._styleProcessor.getReducedForm(n,this._styles));return t}_cleanEmptyObjectsOnPath(t){const e=t.split(".");if(!(e.length>1))return;const n=e.splice(0,e.length-1).join("."),i=os(this._styles,n);if(!i)return;!Object.keys(i).length&&this.remove(n)}}class cs{constructor(){this._normalizers=new Map,this._extractors=new Map,this._reducers=new Map,this._consumables=new Map}toNormalizedForm(t,e,n){if(O(e))ds(n,ls(t),e);else if(this._normalizers.has(t)){const i=this._normalizers.get(t),{path:o,value:r}=i(e);ds(n,o,r)}else ds(n,t,e)}getNormalized(t,e){if(!t)return No({},e);if(void 0!==e[t])return e[t];if(this._extractors.has(t)){const n=this._extractors.get(t);if("string"==typeof n)return os(e,n);const i=n(t,e);if(i)return i}return os(e,ls(t))}getReducedForm(t,e){const n=this.getNormalized(t,e);if(void 0===n)return[];if(this._reducers.has(t)){return this._reducers.get(t)(n)}return[[t,n]]}getStyleNames(t){const e=Array.from(this._consumables.keys()).filter((e=>{const n=this.getNormalized(e,t);return n&&"object"==typeof n?Object.keys(n).length:n})),n=new Set([...e,...Object.keys(t)]);return Array.from(n)}getRelatedStyles(t){return this._consumables.get(t)||[]}setNormalizer(t,e){this._normalizers.set(t,e)}setExtractor(t,e){this._extractors.set(t,e)}setReducer(t,e){this._reducers.set(t,e)}setStyleRelation(t,e){this._mapStyleNames(t,e);for(const n of e)this._mapStyleNames(n,[t])}_mapStyleNames(t,e){this._consumables.has(t)||this._consumables.set(t,[]),this._consumables.get(t).push(...e)}}function ls(t){return t.replace("-",".")}function ds(t,e,n){let i=n;O(n)&&(i=No({},os(t,e),n)),ss(t,e,i)}class hs extends Br{constructor(t,e,n,i){if(super(t),this._unsafeAttributesToRender=[],this._customProperties=new Map,this.name=e,this._attrs=function(t){const e=Jo(t);for(const[t,n]of e)null===n?e.delete(t):"string"!=typeof n&&e.set(t,String(n));return e}(n),this._children=[],i&&this._insertChild(0,i),this._classes=new Set,this._attrs.has("class")){const t=this._attrs.get("class");us(this._classes,t),this._attrs.delete("class")}this._styles=new as(this.document.stylesProcessor),this._attrs.has("style")&&(this._styles.setTo(this._attrs.get("style")),this._attrs.delete("style"))}get childCount(){return this._children.length}get isEmpty(){return 0===this._children.length}getChild(t){return this._children[t]}getChildIndex(t){return this._children.indexOf(t)}getChildren(){return this._children[Symbol.iterator]()}*getAttributeKeys(){this._classes.size>0&&(yield"class"),this._styles.isEmpty||(yield"style"),yield*this._attrs.keys()}*getAttributes(){yield*this._attrs.entries(),this._classes.size>0&&(yield["class",this.getAttribute("class")]),this._styles.isEmpty||(yield["style",this.getAttribute("style")])}getAttribute(t){if("class"==t)return this._classes.size>0?[...this._classes].join(" "):void 0;if("style"==t){const t=this._styles.toString();return""==t?void 0:t}return this._attrs.get(t)}hasAttribute(t){return"class"==t?this._classes.size>0:"style"==t?!this._styles.isEmpty:this._attrs.has(t)}isSimilar(t){if(!(t instanceof hs))return!1;if(this===t)return!0;if(this.name!=t.name)return!1;if(this._attrs.size!==t._attrs.size||this._classes.size!==t._classes.size||this._styles.size!==t._styles.size)return!1;for(const[e,n]of this._attrs)if(!t._attrs.has(e)||t._attrs.get(e)!==n)return!1;for(const e of this._classes)if(!t._classes.has(e))return!1;for(const e of this._styles.getStyleNames())if(!t._styles.has(e)||t._styles.getAsString(e)!==this._styles.getAsString(e))return!1;return!0}hasClass(...t){for(const e of t)if(!this._classes.has(e))return!1;return!0}getClassNames(){return this._classes.keys()}getStyle(t){return this._styles.getAsString(t)}getNormalizedStyle(t){return this._styles.getNormalized(t)}getStyleNames(t){return this._styles.getStyleNames(t)}hasStyle(...t){for(const e of t)if(!this._styles.has(e))return!1;return!0}findAncestor(...t){const e=new Ir(...t);let n=this.parent;for(;n&&!n.is("documentFragment");){if(e.match(n))return n;n=n.parent}return null}getCustomProperty(t){return this._customProperties.get(t)}*getCustomProperties(){yield*this._customProperties.entries()}getIdentity(){const t=Array.from(this._classes).sort().join(","),e=this._styles.toString(),n=Array.from(this._attrs).map((t=>`${t[0]}="${t[1]}"`)).sort().join(" ");return this.name+(""==t?"":` class="${t}"`)+(e?` style="${e}"`:"")+(""==n?"":` ${n}`)}shouldRenderUnsafeAttribute(t){return this._unsafeAttributesToRender.includes(t)}_clone(t=!1){const e=[];if(t)for(const n of this.getChildren())e.push(n._clone(t));const n=new this.constructor(this.document,this.name,this._attrs,e);return n._classes=new Set(this._classes),n._styles.set(this._styles.getNormalized()),n._customProperties=new Map(this._customProperties),n.getFillerOffset=this.getFillerOffset,n._unsafeAttributesToRender=this._unsafeAttributesToRender,n}_appendChild(t){return this._insertChild(this.childCount,t)}_insertChild(t,e){this._fireChange("children",this);let n=0;const i=function(t,e){if("string"==typeof e)return[new Sr(t,e)];X(e)||(e=[e]);return Array.from(e).map((e=>"string"==typeof e?new Sr(t,e):e instanceof Tr?new Sr(t,e.data):e))}(this.document,e);for(const e of i)null!==e.parent&&e._remove(),e.parent=this,e.document=this.document,this._children.splice(t,0,e),t++,n++;return n}_removeChildren(t,e=1){this._fireChange("children",this);for(let n=t;n0&&(this._classes.clear(),!0):"style"==t?!this._styles.isEmpty&&(this._styles.clear(),!0):this._attrs.delete(t)}_addClass(t){this._fireChange("attributes",this);for(const e of _o(t))this._classes.add(e)}_removeClass(t){this._fireChange("attributes",this);for(const e of _o(t))this._classes.delete(e)}_setStyle(t,e){this._fireChange("attributes",this),"string"!=typeof t?this._styles.set(t):this._styles.set(t,e)}_removeStyle(t){this._fireChange("attributes",this);for(const e of _o(t))this._styles.remove(e)}_setCustomProperty(t,e){this._customProperties.set(t,e)}_removeCustomProperty(t){return this._customProperties.delete(t)}}function us(t,e){const n=e.split(/\s+/);t.clear(),n.forEach((e=>t.add(e)))}hs.prototype.is=function(t,e){return e?e===this.name&&("element"===t||"view:element"===t):"element"===t||"view:element"===t||"node"===t||"view:node"===t};class ms extends hs{constructor(t,e,n,i){super(t,e,n,i),this.getFillerOffset=gs}}function gs(){const t=[...this.getChildren()],e=t[this.childCount-1];if(e&&e.is("element","br"))return this.childCount;for(const e of t)if(!e.is("uiElement"))return null;return this.childCount}ms.prototype.is=function(t,e){return e?e===this.name&&("containerElement"===t||"view:containerElement"===t||"element"===t||"view:element"===t):"containerElement"===t||"view:containerElement"===t||"element"===t||"view:element"===t||"node"===t||"view:node"===t};class ps extends(W(ms)){constructor(t,e,n,i){super(t,e,n,i),this.set("isReadOnly",!1),this.set("isFocused",!1),this.set("placeholder",void 0),this.bind("isReadOnly").to(t),this.bind("isFocused").to(t,"isFocused",(e=>e&&t.selection.editableElement==this)),this.listenTo(t.selection,"change",(()=>{this.isFocused=t.isFocused&&t.selection.editableElement==this}))}destroy(){this.stopListening()}}ps.prototype.is=function(t,e){return e?e===this.name&&("editableElement"===t||"view:editableElement"===t||"containerElement"===t||"view:containerElement"===t||"element"===t||"view:element"===t):"editableElement"===t||"view:editableElement"===t||"containerElement"===t||"view:containerElement"===t||"element"===t||"view:element"===t||"node"===t||"view:node"===t};const fs=Symbol("rootName");class bs extends ps{constructor(t,e){super(t,e),this.rootName="main"}get rootName(){return this.getCustomProperty(fs)}set rootName(t){this._setCustomProperty(fs,t)}set _name(t){this.name=t}}bs.prototype.is=function(t,e){return e?e===this.name&&("rootElement"===t||"view:rootElement"===t||"editableElement"===t||"view:editableElement"===t||"containerElement"===t||"view:containerElement"===t||"element"===t||"view:element"===t):"rootElement"===t||"view:rootElement"===t||"editableElement"===t||"view:editableElement"===t||"containerElement"===t||"view:containerElement"===t||"element"===t||"view:element"===t||"node"===t||"view:node"===t};class ks{constructor(t={}){if(!t.boundaries&&!t.startPosition)throw new w("view-tree-walker-no-start-position",null);if(t.direction&&"forward"!=t.direction&&"backward"!=t.direction)throw new w("view-tree-walker-unknown-direction",t.startPosition,{direction:t.direction});this.boundaries=t.boundaries||null,t.startPosition?this._position=ws._createAt(t.startPosition):this._position=ws._createAt(t.boundaries["backward"==t.direction?"end":"start"]),this.direction=t.direction||"forward",this.singleCharacters=!!t.singleCharacters,this.shallow=!!t.shallow,this.ignoreElementEnd=!!t.ignoreElementEnd,this._boundaryStartParent=this.boundaries?this.boundaries.start.parent:null,this._boundaryEndParent=this.boundaries?this.boundaries.end.parent:null}[Symbol.iterator](){return this}get position(){return this._position}skip(t){let e,n;do{n=this.position,e=this.next()}while(!e.done&&t(e.value));e.done||(this._position=n)}next(){return"forward"==this.direction?this._next():this._previous()}_next(){let t=this.position.clone();const e=this.position,n=t.parent;if(null===n.parent&&t.offset===n.childCount)return{done:!0,value:void 0};if(n===this._boundaryEndParent&&t.offset==this.boundaries.end.offset)return{done:!0,value:void 0};let i;if(n instanceof Sr){if(t.isAtEnd)return this._position=ws._createAfter(n),this._next();i=n.data[t.offset]}else i=n.getChild(t.offset);if(i instanceof hs){if(this.shallow){if(this.boundaries&&this.boundaries.end.isBefore(t))return{done:!0,value:void 0};t.offset++}else t=new ws(i,0);return this._position=t,this._formatReturnValue("elementStart",i,e,t,1)}if(i instanceof Sr){if(this.singleCharacters)return t=new ws(i,0),this._position=t,this._next();let n,o=i.data.length;return i==this._boundaryEndParent?(o=this.boundaries.end.offset,n=new Tr(i,0,o),t=ws._createAfter(n)):(n=new Tr(i,0,i.data.length),t.offset++),this._position=t,this._formatReturnValue("text",n,e,t,o)}if("string"==typeof i){let i;if(this.singleCharacters)i=1;else{i=(n===this._boundaryEndParent?this.boundaries.end.offset:n.data.length)-t.offset}const o=new Tr(n,t.offset,i);return t.offset+=i,this._position=t,this._formatReturnValue("text",o,e,t,i)}return t=ws._createAfter(n),this._position=t,this.ignoreElementEnd?this._next():this._formatReturnValue("elementEnd",n,e,t)}_previous(){let t=this.position.clone();const e=this.position,n=t.parent;if(null===n.parent&&0===t.offset)return{done:!0,value:void 0};if(n==this._boundaryStartParent&&t.offset==this.boundaries.start.offset)return{done:!0,value:void 0};let i;if(n instanceof Sr){if(t.isAtStart)return this._position=ws._createBefore(n),this._previous();i=n.data[t.offset-1]}else i=n.getChild(t.offset-1);if(i instanceof hs)return this.shallow?(t.offset--,this._position=t,this._formatReturnValue("elementStart",i,e,t,1)):(t=new ws(i,i.childCount),this._position=t,this.ignoreElementEnd?this._previous():this._formatReturnValue("elementEnd",i,e,t));if(i instanceof Sr){if(this.singleCharacters)return t=new ws(i,i.data.length),this._position=t,this._previous();let n,o=i.data.length;if(i==this._boundaryStartParent){const e=this.boundaries.start.offset;n=new Tr(i,e,i.data.length-e),o=n.data.length,t=ws._createBefore(n)}else n=new Tr(i,0,i.data.length),t.offset--;return this._position=t,this._formatReturnValue("text",n,e,t,o)}if("string"==typeof i){let i;if(this.singleCharacters)i=1;else{const e=n===this._boundaryStartParent?this.boundaries.start.offset:0;i=t.offset-e}t.offset-=i;const o=new Tr(n,t.offset,i);return this._position=t,this._formatReturnValue("text",o,e,t,i)}return t=ws._createBefore(n),this._position=t,this._formatReturnValue("elementStart",n,e,t,1)}_formatReturnValue(t,e,n,i,o){return e instanceof Tr&&(e.offsetInText+e.data.length==e.textNode.data.length&&("forward"!=this.direction||this.boundaries&&this.boundaries.end.isEqual(this.position)?n=ws._createAfter(e.textNode):(i=ws._createAfter(e.textNode),this._position=i)),0===e.offsetInText&&("backward"!=this.direction||this.boundaries&&this.boundaries.start.isEqual(this.position)?n=ws._createBefore(e.textNode):(i=ws._createBefore(e.textNode),this._position=i))),{done:!1,value:{type:t,item:e,previousPosition:n,nextPosition:i,length:o}}}}class ws extends Er{constructor(t,e){super(),this.parent=t,this.offset=e}get nodeAfter(){return this.parent.is("$text")?null:this.parent.getChild(this.offset)||null}get nodeBefore(){return this.parent.is("$text")?null:this.parent.getChild(this.offset-1)||null}get isAtStart(){return 0===this.offset}get isAtEnd(){const t=this.parent.is("$text")?this.parent.data.length:this.parent.childCount;return this.offset===t}get root(){return this.parent.root}get editableElement(){let t=this.parent;for(;!(t instanceof ps);){if(!t.parent)return null;t=t.parent}return t}getShiftedBy(t){const e=ws._createAt(this),n=e.offset+t;return e.offset=n<0?0:n,e}getLastMatchingPosition(t,e={}){e.startPosition=this;const n=new ks(e);return n.skip(t),n.position}getAncestors(){return this.parent.is("documentFragment")?[this.parent]:this.parent.getAncestors({includeSelf:!0})}getCommonAncestor(t){const e=this.getAncestors(),n=t.getAncestors();let i=0;for(;e[i]==n[i]&&e[i];)i++;return 0===i?null:e[i-1]}isEqual(t){return this.parent==t.parent&&this.offset==t.offset}isBefore(t){return"before"==this.compareWith(t)}isAfter(t){return"after"==this.compareWith(t)}compareWith(t){if(this.root!==t.root)return"different";if(this.isEqual(t))return"same";const e=this.parent.is("node")?this.parent.getPath():[],n=t.parent.is("node")?t.parent.getPath():[];e.push(this.offset),n.push(t.offset);const i=Q(e,n);switch(i){case"prefix":return"before";case"extension":return"after";default:return e[i]0?new this(n,i):new this(i,n)}static _createIn(t){return this._createFromParentsAndOffsets(t,0,t,t.childCount)}static _createOn(t){const e=t.is("$textProxy")?t.offsetSize:1;return this._createFromPositionAndShift(ws._createBefore(t),e)}}function As(t){return!(!t.item.is("attributeElement")&&!t.item.is("uiElement"))}_s.prototype.is=function(t){return"range"===t||"view:range"===t};class Cs extends(S(Er)){constructor(...t){super(),this._ranges=[],this._lastRangeBackward=!1,this._isFake=!1,this._fakeSelectionLabel="",t.length&&this.setTo(...t)}get isFake(){return this._isFake}get fakeSelectionLabel(){return this._fakeSelectionLabel}get anchor(){if(!this._ranges.length)return null;const t=this._ranges[this._ranges.length-1];return(this._lastRangeBackward?t.end:t.start).clone()}get focus(){if(!this._ranges.length)return null;const t=this._ranges[this._ranges.length-1];return(this._lastRangeBackward?t.start:t.end).clone()}get isCollapsed(){return 1===this.rangeCount&&this._ranges[0].isCollapsed}get rangeCount(){return this._ranges.length}get isBackward(){return!this.isCollapsed&&this._lastRangeBackward}get editableElement(){return this.anchor?this.anchor.editableElement:null}*getRanges(){for(const t of this._ranges)yield t.clone()}getFirstRange(){let t=null;for(const e of this._ranges)t&&!e.start.isBefore(t.start)||(t=e);return t?t.clone():null}getLastRange(){let t=null;for(const e of this._ranges)t&&!e.end.isAfter(t.end)||(t=e);return t?t.clone():null}getFirstPosition(){const t=this.getFirstRange();return t?t.start.clone():null}getLastPosition(){const t=this.getLastRange();return t?t.end.clone():null}isEqual(t){if(this.isFake!=t.isFake)return!1;if(this.isFake&&this.fakeSelectionLabel!=t.fakeSelectionLabel)return!1;if(this.rangeCount!=t.rangeCount)return!1;if(0===this.rangeCount)return!0;if(!this.anchor.isEqual(t.anchor)||!this.focus.isEqual(t.focus))return!1;for(const e of this._ranges){let n=!1;for(const i of t._ranges)if(e.isEqual(i)){n=!0;break}if(!n)return!1}return!0}isSimilar(t){if(this.isBackward!=t.isBackward)return!1;const e=Y(this.getRanges());if(e!=Y(t.getRanges()))return!1;if(0==e)return!0;for(let e of this.getRanges()){e=e.getTrimmed();let n=!1;for(let i of t.getRanges())if(i=i.getTrimmed(),e.start.isEqual(i.start)&&e.end.isEqual(i.end)){n=!0;break}if(!n)return!1}return!0}getSelectedElement(){return 1!==this.rangeCount?null:this.getFirstRange().getContainedElement()}setTo(...t){let[e,n,i]=t;if("object"==typeof n&&(i=n,n=void 0),null===e)this._setRanges([]),this._setFakeOptions(i);else if(e instanceof Cs||e instanceof vs)this._setRanges(e.getRanges(),e.isBackward),this._setFakeOptions({fake:e.isFake,label:e.fakeSelectionLabel});else if(e instanceof _s)this._setRanges([e],i&&i.backward),this._setFakeOptions(i);else if(e instanceof ws)this._setRanges([new _s(e)]),this._setFakeOptions(i);else if(e instanceof Br){const t=!!i&&!!i.backward;let o;if(void 0===n)throw new w("view-selection-setto-required-second-parameter",this);o="in"==n?_s._createIn(e):"on"==n?_s._createOn(e):new _s(ws._createAt(e,n)),this._setRanges([o],t),this._setFakeOptions(i)}else{if(!X(e))throw new w("view-selection-setto-not-selectable",this);this._setRanges(e,i&&i.backward),this._setFakeOptions(i)}this.fire("change")}setFocus(t,e){if(null===this.anchor)throw new w("view-selection-setfocus-no-ranges",this);const n=ws._createAt(t,e);if("same"==n.compareWith(this.focus))return;const i=this.anchor;this._ranges.pop(),"before"==n.compareWith(i)?this._addRange(new _s(n,i),!0):this._addRange(new _s(i,n)),this.fire("change")}_setRanges(t,e=!1){t=Array.from(t),this._ranges=[];for(const e of t)this._addRange(e);this._lastRangeBackward=!!e}_setFakeOptions(t={}){this._isFake=!!t.fake,this._fakeSelectionLabel=t.fake&&t.label||""}_addRange(t,e=!1){if(!(t instanceof _s))throw new w("view-selection-add-range-not-range",this);this._pushRange(t),this._lastRangeBackward=!!e}_pushRange(t){for(const e of this._ranges)if(t.isIntersecting(e))throw new w("view-selection-range-intersects",this,{addedRange:t,intersectingRange:e});this._ranges.push(new _s(t.start,t.end))}}Cs.prototype.is=function(t){return"selection"===t||"view:selection"===t};class vs extends(S(Er)){constructor(...t){super(),this._selection=new Cs,this._selection.delegate("change").to(this),t.length&&this._selection.setTo(...t)}get isFake(){return this._selection.isFake}get fakeSelectionLabel(){return this._selection.fakeSelectionLabel}get anchor(){return this._selection.anchor}get focus(){return this._selection.focus}get isCollapsed(){return this._selection.isCollapsed}get rangeCount(){return this._selection.rangeCount}get isBackward(){return this._selection.isBackward}get editableElement(){return this._selection.editableElement}get _ranges(){return this._selection._ranges}*getRanges(){yield*this._selection.getRanges()}getFirstRange(){return this._selection.getFirstRange()}getLastRange(){return this._selection.getLastRange()}getFirstPosition(){return this._selection.getFirstPosition()}getLastPosition(){return this._selection.getLastPosition()}getSelectedElement(){return this._selection.getSelectedElement()}isEqual(t){return this._selection.isEqual(t)}isSimilar(t){return this._selection.isSimilar(t)}_setTo(...t){this._selection.setTo(...t)}_setFocus(t,e){this._selection.setFocus(t,e)}}vs.prototype.is=function(t){return"selection"===t||"documentSelection"==t||"view:selection"==t||"view:documentSelection"==t};class ys extends m{constructor(t,e,n){super(t,e),this.startRange=n,this._eventPhase="none",this._currentTarget=null}get eventPhase(){return this._eventPhase}get currentTarget(){return this._currentTarget}}const xs=Symbol("bubbling contexts");function Es(t){return class extends t{fire(t,...e){try{const n=t instanceof m?t:new m(this,t),i=Ts(this);if(!i.size)return;if(Ds(n,"capturing",this),Bs(i,"$capture",n,...e))return n.return;const o=n.startRange||this.selection.getFirstRange(),r=o?o.getContainedElement():null,s=!!r&&Boolean(Ss(i,r));let a=r||function(t){if(!t)return null;const e=t.start.parent,n=t.end.parent,i=e.getPath(),o=n.getPath();return i.length>o.length?e:n}(o);if(Ds(n,"atTarget",a),!s){if(Bs(i,"$text",n,...e))return n.return;Ds(n,"bubbling",a)}for(;a;){if(a.is("rootElement")){if(Bs(i,"$root",n,...e))return n.return}else if(a.is("element")&&Bs(i,a.name,n,...e))return n.return;if(Bs(i,a,n,...e))return n.return;a=a.parent,Ds(n,"bubbling",a)}return Ds(n,"bubbling",this),Bs(i,"$document",n,...e),n.return}catch(t){w.rethrowUnexpectedError(t,this)}}_addEventListener(t,e,n){const i=_o(n.context||"$document"),o=Ts(this);for(const r of i){let i=o.get(r);i||(i=new(S()),o.set(r,i)),this.listenTo(i,t,e,n)}}_removeEventListener(t,e){const n=Ts(this);for(const i of n.values())this.stopListening(i,t,e)}}}{const t=Es(Object);["fire","_addEventListener","_removeEventListener"].forEach((e=>{Es[e]=t.prototype[e]}))}function Ds(t,e,n){t instanceof ys&&(t._eventPhase=e,t._currentTarget=n)}function Bs(t,e,n,...i){const o="string"==typeof e?t.get(e):Ss(t,e);return!!o&&(o.fire(n,...i),n.stop.called)}function Ss(t,e){for(const[n,i]of t)if("function"==typeof n&&n(e))return i;return null}function Ts(t){return t[xs]||(t[xs]=new Map),t[xs]}class Is extends(Es(W())){constructor(t){super(),this._postFixers=new Set,this.selection=new vs,this.roots=new Uo({idProperty:"rootName"}),this.stylesProcessor=t,this.set("isReadOnly",!1),this.set("isFocused",!1),this.set("isSelecting",!1),this.set("isComposing",!1)}getRoot(t="main"){return this.roots.get(t)}registerPostFixer(t){this._postFixers.add(t)}destroy(){this.roots.forEach((t=>t.destroy())),this.stopListening()}_callPostFixers(t){let e=!1;do{for(const n of this._postFixers)if(e=n(t),e)break}while(e)}}class Ps extends hs{constructor(t,e,n,i){super(t,e,n,i),this._priority=10,this._id=null,this._clonesGroup=null,this.getFillerOffset=Rs}get priority(){return this._priority}get id(){return this._id}getElementsWithSameId(){if(null===this.id)throw new w("attribute-element-get-elements-with-same-id-no-id",this);return new Set(this._clonesGroup)}isSimilar(t){return null!==this.id||null!==t.id?this.id===t.id:super.isSimilar(t)&&this.priority==t.priority}_clone(t=!1){const e=super._clone(t);return e._priority=this._priority,e._id=this._id,e}}function Rs(){if(Vs(this))return null;let t=this.parent;for(;t&&t.is("attributeElement");){if(Vs(t)>1)return null;t=t.parent}return!t||Vs(t)>1?null:this.childCount}function Vs(t){return Array.from(t.getChildren()).filter((t=>!t.is("uiElement"))).length}Ps.DEFAULT_PRIORITY=10,Ps.prototype.is=function(t,e){return e?e===this.name&&("attributeElement"===t||"view:attributeElement"===t||"element"===t||"view:element"===t):"attributeElement"===t||"view:attributeElement"===t||"element"===t||"view:element"===t||"node"===t||"view:node"===t};class Fs extends hs{constructor(t,e,n,i){super(t,e,n,i),this.getFillerOffset=Ls}_insertChild(t,e){if(e&&(e instanceof Br||Array.from(e).length>0))throw new w("view-emptyelement-cannot-add",[this,e]);return 0}}function Ls(){return null}Fs.prototype.is=function(t,e){return e?e===this.name&&("emptyElement"===t||"view:emptyElement"===t||"element"===t||"view:element"===t):"emptyElement"===t||"view:emptyElement"===t||"element"===t||"view:element"===t||"node"===t||"view:node"===t};class Os extends hs{constructor(t,e,n,i){super(t,e,n,i),this.getFillerOffset=Ms}_insertChild(t,e){if(e&&(e instanceof Br||Array.from(e).length>0))throw new w("view-uielement-cannot-add",[this,e]);return 0}render(t,e){return this.toDomElement(t)}toDomElement(t){const e=t.createElement(this.name);for(const t of this.getAttributeKeys())e.setAttribute(t,this.getAttribute(t));return e}}function zs(t){t.document.on("arrowKey",((e,n)=>function(t,e,n){if(e.keyCode==go.arrowright){const t=e.domTarget.ownerDocument.defaultView.getSelection(),i=1==t.rangeCount&&t.getRangeAt(0).collapsed;if(i||e.shiftKey){const e=t.focusNode,o=t.focusOffset,r=n.domPositionToView(e,o);if(null===r)return;let s=!1;const a=r.getLastMatchingPosition((t=>(t.item.is("uiElement")&&(s=!0),!(!t.item.is("uiElement")&&!t.item.is("attributeElement")))));if(s){const e=n.viewPositionToDom(a);i?t.collapse(e.parent,e.offset):t.extend(e.parent,e.offset)}}}}(0,n,t.domConverter)),{priority:"low"})}function Ms(){return null}Os.prototype.is=function(t,e){return e?e===this.name&&("uiElement"===t||"view:uiElement"===t||"element"===t||"view:element"===t):"uiElement"===t||"view:uiElement"===t||"element"===t||"view:element"===t||"node"===t||"view:node"===t};class Ns extends hs{constructor(t,e,n,i){super(t,e,n,i),this.getFillerOffset=Hs}_insertChild(t,e){if(e&&(e instanceof Br||Array.from(e).length>0))throw new w("view-rawelement-cannot-add",[this,e]);return 0}render(t,e){}}function Hs(){return null}Ns.prototype.is=function(t,e){return e?e===this.name&&("rawElement"===t||"view:rawElement"===t||"element"===t||"view:element"===t):"rawElement"===t||"view:rawElement"===t||t===this.name||t==="view:"+this.name||"element"===t||"view:element"===t||"node"===t||"view:node"===t};class js extends(S(Er)){constructor(t,e){super(),this._children=[],this._customProperties=new Map,this.document=t,e&&this._insertChild(0,e)}[Symbol.iterator](){return this._children[Symbol.iterator]()}get childCount(){return this._children.length}get isEmpty(){return 0===this.childCount}get root(){return this}get parent(){return null}get name(){}get getFillerOffset(){}getCustomProperty(t){return this._customProperties.get(t)}*getCustomProperties(){yield*this._customProperties.entries()}_appendChild(t){return this._insertChild(this.childCount,t)}getChild(t){return this._children[t]}getChildIndex(t){return this._children.indexOf(t)}getChildren(){return this._children[Symbol.iterator]()}_insertChild(t,e){this._fireChange("children",this);let n=0;const i=function(t,e){if("string"==typeof e)return[new Sr(t,e)];X(e)||(e=[e]);return Array.from(e).map((e=>"string"==typeof e?new Sr(t,e):e instanceof Tr?new Sr(t,e.data):e))}(this.document,e);for(const e of i)null!==e.parent&&e._remove(),e.parent=this,this._children.splice(t,0,e),t++,n++;return n}_removeChildren(t,e=1){this._fireChange("children",this);for(let n=t;n{const n=t[t.length-1],i=!e.is("uiElement");return n&&n.breakAttributes==i?n.nodes.push(e):t.push({breakAttributes:i,nodes:[e]}),t}),[]);let i=null,o=t;for(const{nodes:t,breakAttributes:e}of n){const n=this._insertNodes(o,t,e);i||(i=n.start),o=n.end}return i?new _s(i,o):new _s(t)}remove(t){const e=t instanceof _s?t:_s._createOn(t);if(Qs(e,this.document),e.isCollapsed)return new js(this.document);const{start:n,end:i}=this._breakAttributesRange(e,!0),o=n.parent,r=i.offset-n.offset,s=o._removeChildren(n.offset,r);for(const t of s)this._removeFromClonedElementsGroup(t);const a=this.mergeAttributes(n);return e.start=a,e.end=a.clone(),new js(this.document,s)}clear(t,e){Qs(t,this.document);const n=t.getWalker({direction:"backward",ignoreElementEnd:!0});for(const i of n){const n=i.item;let o;if(n.is("element")&&e.isSimilar(n))o=_s._createOn(n);else if(!i.nextPosition.isAfter(t.start)&&n.is("$textProxy")){const t=n.getAncestors().find((t=>t.is("element")&&e.isSimilar(t)));t&&(o=_s._createIn(t))}o&&(o.end.isAfter(t.end)&&(o.end=t.end),o.start.isBefore(t.start)&&(o.start=t.start),this.remove(o))}}move(t,e){let n;if(e.isAfter(t.end)){const i=(e=this._breakAttributes(e,!0)).parent,o=i.childCount;t=this._breakAttributesRange(t,!0),n=this.remove(t),e.offset+=i.childCount-o}else n=this.remove(t);return this.insert(e,n)}wrap(t,e){if(!(e instanceof Ps))throw new w("view-writer-wrap-invalid-attribute",this.document);if(Qs(t,this.document),t.isCollapsed){let i=t.start;i.parent.is("element")&&(n=i.parent,!Array.from(n.getChildren()).some((t=>!t.is("uiElement"))))&&(i=i.getLastMatchingPosition((t=>t.item.is("uiElement")))),i=this._wrapPosition(i,e);const o=this.document.selection;return o.isCollapsed&&o.getFirstPosition().isEqual(t.start)&&this.setSelection(i),new _s(i)}return this._wrapRange(t,e);var n}unwrap(t,e){if(!(e instanceof Ps))throw new w("view-writer-unwrap-invalid-attribute",this.document);if(Qs(t,this.document),t.isCollapsed)return t;const{start:n,end:i}=this._breakAttributesRange(t,!0),o=n.parent,r=this._unwrapChildren(o,n.offset,i.offset,e),s=this.mergeAttributes(r.start);s.isEqual(r.start)||r.end.offset--;const a=this.mergeAttributes(r.end);return new _s(s,a)}rename(t,e){const n=new ms(this.document,t,e.getAttributes());return this.insert(ws._createAfter(e),n),this.move(_s._createIn(e),ws._createAt(n,0)),this.remove(_s._createOn(e)),n}clearClonedElementsGroup(t){this._cloneGroups.delete(t)}createPositionAt(t,e){return ws._createAt(t,e)}createPositionAfter(t){return ws._createAfter(t)}createPositionBefore(t){return ws._createBefore(t)}createRange(t,e){return new _s(t,e)}createRangeOn(t){return _s._createOn(t)}createRangeIn(t){return _s._createIn(t)}createSelection(...t){return new Cs(...t)}createSlot(t="children"){if(!this._slotFactory)throw new w("view-writer-invalid-create-slot-context",this.document);return this._slotFactory(this,t)}_registerSlotFactory(t){this._slotFactory=t}_clearSlotFactory(){this._slotFactory=null}_insertNodes(t,e,n){let i,o;if(i=n?Ws(t):t.parent.is("$text")?t.parent.parent:t.parent,!i)throw new w("view-writer-invalid-position-container",this.document);o=n?this._breakAttributes(t,!0):t.parent.is("$text")?Gs(t):t;const r=i._insertChild(o.offset,e);for(const t of e)this._addToClonedElementsGroup(t);const s=o.getShiftedBy(r),a=this.mergeAttributes(o);a.isEqual(o)||s.offset--;const c=this.mergeAttributes(s);return new _s(a,c)}_wrapChildren(t,e,n,i){let o=e;const r=[];for(;o!1,t.parent._insertChild(t.offset,n);const i=new _s(t,t.getShiftedBy(1));this.wrap(i,e);const o=new ws(n.parent,n.index);n._remove();const r=o.nodeBefore,s=o.nodeAfter;return r instanceof Sr&&s instanceof Sr?Ks(r,s):$s(o)}_wrapAttributeElement(t,e){if(!Xs(t,e))return!1;if(t.name!==e.name||t.priority!==e.priority)return!1;for(const n of t.getAttributeKeys())if("class"!==n&&"style"!==n&&e.hasAttribute(n)&&e.getAttribute(n)!==t.getAttribute(n))return!1;for(const n of t.getStyleNames())if(e.hasStyle(n)&&e.getStyle(n)!==t.getStyle(n))return!1;for(const n of t.getAttributeKeys())"class"!==n&&"style"!==n&&(e.hasAttribute(n)||this.setAttribute(n,t.getAttribute(n),e));for(const n of t.getStyleNames())e.hasStyle(n)||this.setStyle(n,t.getStyle(n),e);for(const n of t.getClassNames())e.hasClass(n)||this.addClass(n,e);return!0}_unwrapAttributeElement(t,e){if(!Xs(t,e))return!1;if(t.name!==e.name||t.priority!==e.priority)return!1;for(const n of t.getAttributeKeys())if("class"!==n&&"style"!==n&&(!e.hasAttribute(n)||e.getAttribute(n)!==t.getAttribute(n)))return!1;if(!e.hasClass(...t.getClassNames()))return!1;for(const n of t.getStyleNames())if(!e.hasStyle(n)||e.getStyle(n)!==t.getStyle(n))return!1;for(const n of t.getAttributeKeys())"class"!==n&&"style"!==n&&this.removeAttribute(n,e);return this.removeClass(Array.from(t.getClassNames()),e),this.removeStyle(Array.from(t.getStyleNames()),e),!0}_breakAttributesRange(t,e=!1){const n=t.start,i=t.end;if(Qs(t,this.document),t.isCollapsed){const n=this._breakAttributes(t.start,e);return new _s(n,n)}const o=this._breakAttributes(i,e),r=o.parent.childCount,s=this._breakAttributes(n,e);return o.offset+=o.parent.childCount-r,new _s(s,o)}_breakAttributes(t,e=!1){const n=t.offset,i=t.parent;if(t.parent.is("emptyElement"))throw new w("view-writer-cannot-break-empty-element",this.document);if(t.parent.is("uiElement"))throw new w("view-writer-cannot-break-ui-element",this.document);if(t.parent.is("rawElement"))throw new w("view-writer-cannot-break-raw-element",this.document);if(!e&&i.is("$text")&&Ys(i.parent))return t.clone();if(Ys(i))return t.clone();if(i.is("$text"))return this._breakAttributes(Gs(t),e);if(n==i.childCount){const t=new ws(i.parent,i.index+1);return this._breakAttributes(t,e)}if(0===n){const t=new ws(i.parent,i.index);return this._breakAttributes(t,e)}{const t=i.index+1,o=i._clone();i.parent._insertChild(t,o),this._addToClonedElementsGroup(o);const r=i.childCount-n,s=i._removeChildren(n,r);o._appendChild(s);const a=new ws(i.parent,t);return this._breakAttributes(a,e)}}_addToClonedElementsGroup(t){if(!t.root.is("rootElement"))return;if(t.is("element"))for(const e of t.getChildren())this._addToClonedElementsGroup(e);const e=t.id;if(!e)return;let n=this._cloneGroups.get(e);n||(n=new Set,this._cloneGroups.set(e,n)),n.add(t),t._clonesGroup=n}_removeFromClonedElementsGroup(t){if(t.is("element"))for(const e of t.getChildren())this._removeFromClonedElementsGroup(e);const e=t.id;if(!e)return;const n=this._cloneGroups.get(e);n&&n.delete(t)}}function Ws(t){let e=t.parent;for(;!Ys(e);){if(!e)return;e=e.parent}return e}function Us(t,e){return t.prioritye.priority)&&t.getIdentity()n instanceof t)))throw new w("view-writer-insert-invalid-node-type",e);n.is("$text")||Zs(n.getChildren(),e)}}function Ys(t){return t&&(t.is("containerElement")||t.is("documentFragment"))}function Qs(t,e){const n=Ws(t.start),i=Ws(t.end);if(!n||!i||n!==i)throw new w("view-writer-invalid-range-container",e)}function Xs(t,e){return null===t.id&&null===e.id}const ta=t=>t.createTextNode(" "),ea=t=>{const e=t.createElement("span");return e.dataset.ckeFiller="true",e.innerText=" ",e},na=t=>{const e=t.createElement("br");return e.dataset.ckeFiller="true",e},ia=7,oa="⁠".repeat(ia);function ra(t){return"string"==typeof t?t.substr(0,ia)===oa:Pi(t)&&t.data.substr(0,ia)===oa}function sa(t){return t.data.length==ia&&ra(t)}function aa(t){const e="string"==typeof t?t:t.data;return ra(t)?e.slice(ia):e}function ca(t,e){if(e.keyCode==go.arrowleft){const t=e.domTarget.ownerDocument.defaultView.getSelection();if(1==t.rangeCount&&t.getRangeAt(0).collapsed){const e=t.getRangeAt(0).startContainer,n=t.getRangeAt(0).startOffset;ra(e)&&n<=ia&&t.collapse(e,0)}}}var la=n(8264),da={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(la.A,da);la.A.locals;class ha extends(W()){constructor(t,e){super(),this.domDocuments=new Set,this.markedAttributes=new Set,this.markedChildren=new Set,this.markedTexts=new Set,this._inlineFiller=null,this._fakeSelectionContainer=null,this.domConverter=t,this.selection=e,this.set("isFocused",!1),this.set("isSelecting",!1),s.isBlink&&!s.isAndroid&&this.on("change:isSelecting",(()=>{this.isSelecting||this.render()})),this.set("isComposing",!1),this.on("change:isComposing",(()=>{this.isComposing||this.render()}))}markToSync(t,e){if("text"===t)this.domConverter.mapViewToDom(e.parent)&&this.markedTexts.add(e);else{if(!this.domConverter.mapViewToDom(e))return;if("attributes"===t)this.markedAttributes.add(e);else{if("children"!==t){throw new w("view-renderer-unknown-type",this)}this.markedChildren.add(e)}}}render(){if(this.isComposing&&!s.isAndroid)return;let t=null;const e=!(s.isBlink&&!s.isAndroid)||!this.isSelecting;for(const t of this.markedChildren)this._updateChildrenMappings(t);e?(this._inlineFiller&&!this._isSelectionInInlineFiller()&&this._removeInlineFiller(),this._inlineFiller?t=this._getInlineFillerPosition():this._needsInlineFillerAtSelection()&&(t=this.selection.getFirstPosition(),this.markedChildren.add(t.parent))):this._inlineFiller&&this._inlineFiller.parentNode&&(t=this.domConverter.domPositionToView(this._inlineFiller),t&&t.parent.is("$text")&&(t=ws._createBefore(t.parent)));for(const t of this.markedAttributes)this._updateAttrs(t);for(const e of this.markedChildren)this._updateChildren(e,{inlineFillerPosition:t});for(const e of this.markedTexts)!this.markedChildren.has(e.parent)&&this.domConverter.mapViewToDom(e.parent)&&this._updateText(e,{inlineFillerPosition:t});if(e)if(t){const e=this.domConverter.viewPositionToDom(t),n=e.parent.ownerDocument;ra(e.parent)?this._inlineFiller=e.parent:this._inlineFiller=ua(n,e.parent,e.offset)}else this._inlineFiller=null;this._updateFocus(),this._updateSelection(),this.domConverter._clearTemporaryCustomProperties(),this.markedTexts.clear(),this.markedAttributes.clear(),this.markedChildren.clear()}_updateChildrenMappings(t){const e=this.domConverter.mapViewToDom(t);if(!e)return;const n=Array.from(e.childNodes),i=Array.from(this.domConverter.viewChildrenToDom(t,{withChildren:!1})),o=this._diffNodeLists(n,i),r=this._findUpdateActions(o,n,i,ma);if(-1!==r.indexOf("update")){const e={equal:0,insert:0,delete:0};for(const o of r)if("update"===o){const o=e.equal+e.insert,r=e.equal+e.delete,s=t.getChild(o);!s||s.is("uiElement")||s.is("rawElement")||this._updateElementMappings(s,n[r]),Xi(i[o]),e.equal++}else e[o]++}}_updateElementMappings(t,e){this.domConverter.unbindDomElement(e),this.domConverter.bindElements(e,t),this.markedChildren.add(t),this.markedAttributes.add(t)}_getInlineFillerPosition(){const t=this.selection.getFirstPosition();return t.parent.is("$text")?ws._createBefore(t.parent):t}_isSelectionInInlineFiller(){if(1!=this.selection.rangeCount||!this.selection.isCollapsed)return!1;const t=this.selection.getFirstPosition(),e=this.domConverter.viewPositionToDom(t);return!!(e&&Pi(e.parent)&&ra(e.parent))}_removeInlineFiller(){const t=this._inlineFiller;if(!ra(t))throw new w("view-renderer-filler-was-lost",this);sa(t)?t.remove():t.data=t.data.substr(ia),this._inlineFiller=null}_needsInlineFillerAtSelection(){if(1!=this.selection.rangeCount||!this.selection.isCollapsed)return!1;const t=this.selection.getFirstPosition(),e=t.parent,n=t.offset;if(!this.domConverter.mapViewToDom(e.root))return!1;if(!e.is("element"))return!1;if(!function(t){if("false"==t.getAttribute("contenteditable"))return!1;const e=t.findAncestor((t=>t.hasAttribute("contenteditable")));return!e||"true"==e.getAttribute("contenteditable")}(e))return!1;const i=t.nodeBefore,o=t.nodeAfter;return!(i instanceof Sr||o instanceof Sr)&&(!!(n!==e.getFillerOffset()||i&&i.is("element","br"))&&(!s.isAndroid||!i&&!o))}_updateText(t,e){const n=this.domConverter.findCorrespondingDomText(t);let i=this.domConverter.viewToDom(t).data;const o=e.inlineFillerPosition;o&&o.parent==t.parent&&o.offset==t.index&&(i=oa+i),fa(n,i)}_updateAttrs(t){const e=this.domConverter.mapViewToDom(t);if(!e)return;const n=Array.from(e.attributes).map((t=>t.name)),i=t.getAttributeKeys();for(const n of i)this.domConverter.setDomElementAttribute(e,n,t.getAttribute(n),t);for(const i of n)t.hasAttribute(i)||this.domConverter.removeDomElementAttribute(e,i)}_updateChildren(t,e){const n=this.domConverter.mapViewToDom(t);if(!n)return;if(s.isAndroid){let t=null;for(const e of Array.from(n.childNodes)){if(t&&Pi(t)&&Pi(e)){n.normalize();break}t=e}}const i=e.inlineFillerPosition,o=n.childNodes,r=Array.from(this.domConverter.viewChildrenToDom(t,{bind:!0}));i&&i.parent===t&&ua(n.ownerDocument,r,i.offset);const a=this._diffNodeLists(o,r),c=this._findUpdateActions(a,o,r,ga);let l=0;const d=new Set;for(const t of c)"delete"===t?(d.add(o[l]),Xi(o[l])):"equal"!==t&&"update"!==t||l++;l=0;for(const t of c)"insert"===t?($i(n,l,r[l]),l++):"update"===t?(fa(o[l],r[l].data),l++):"equal"===t&&(this._markDescendantTextToSync(this.domConverter.domToView(r[l])),l++);for(const t of d)t.parentNode||this.domConverter.unbindDomElement(t)}_diffNodeLists(t,e){return t=function(t,e){const n=Array.from(t);if(0==n.length||!e)return n;const i=n[n.length-1];i==e&&n.pop();return n}(t,this._fakeSelectionContainer),h(t,e,pa.bind(null,this.domConverter))}_findUpdateActions(t,e,n,i){if(-1===t.indexOf("insert")||-1===t.indexOf("delete"))return t;let o=[],r=[],s=[];const a={equal:0,insert:0,delete:0};for(const c of t)"insert"===c?s.push(n[a.equal+a.insert]):"delete"===c?r.push(e[a.equal+a.delete]):(o=o.concat(h(r,s,i).map((t=>"equal"===t?"update":t))),o.push("equal"),r=[],s=[]),a[c]++;return o.concat(h(r,s,i).map((t=>"equal"===t?"update":t)))}_markDescendantTextToSync(t){if(t)if(t.is("$text"))this.markedTexts.add(t);else if(t.is("element"))for(const e of t.getChildren())this._markDescendantTextToSync(e)}_updateSelection(){if(s.isBlink&&!s.isAndroid&&this.isSelecting&&!this.markedChildren.size)return;if(0===this.selection.rangeCount)return this._removeDomSelection(),void this._removeFakeSelection();const t=this.domConverter.mapViewToDom(this.selection.editableElement);this.isFocused&&t&&(this.selection.isFake?this._updateFakeSelection(t):this._fakeSelectionContainer&&this._fakeSelectionContainer.isConnected?(this._removeFakeSelection(),this._updateDomSelection(t)):this.isComposing&&s.isAndroid||this._updateDomSelection(t))}_updateFakeSelection(t){const e=t.ownerDocument;this._fakeSelectionContainer||(this._fakeSelectionContainer=function(t){const e=t.createElement("div");return e.className="ck-fake-selection-container",Object.assign(e.style,{position:"fixed",top:0,left:"-9999px",width:"42px"}),e.textContent=" ",e}(e));const n=this._fakeSelectionContainer;if(this.domConverter.bindFakeSelection(n,this.selection),!this._fakeSelectionNeedsUpdate(t))return;n.parentElement&&n.parentElement==t||t.appendChild(n),n.textContent=this.selection.fakeSelectionLabel||" ";const i=e.getSelection(),o=e.createRange();i.removeAllRanges(),o.selectNodeContents(n),i.addRange(o)}_updateDomSelection(t){const e=t.ownerDocument.defaultView.getSelection();if(!this._domSelectionNeedsUpdate(e))return;const n=this.domConverter.viewPositionToDom(this.selection.anchor),i=this.domConverter.viewPositionToDom(this.selection.focus);e.setBaseAndExtent(n.parent,n.offset,i.parent,i.offset),s.isGecko&&function(t,e){let n=t.parent,i=t.offset;Pi(n)&&sa(n)&&(i=Ui(n)+1,n=n.parentNode);if(n.nodeType!=Node.ELEMENT_NODE||i!=n.childNodes.length-1)return;const o=n.childNodes[i];o&&"BR"==o.tagName&&e.addRange(e.getRangeAt(0))}(i,e)}_domSelectionNeedsUpdate(t){if(!this.domConverter.isDomSelectionCorrect(t))return!0;const e=t&&this.domConverter.domSelectionToView(t);return(!e||!this.selection.isEqual(e))&&!(!this.selection.isCollapsed&&this.selection.isSimilar(e))}_fakeSelectionNeedsUpdate(t){const e=this._fakeSelectionContainer,n=t.ownerDocument.getSelection();return!e||e.parentElement!==t||(n.anchorNode!==e&&!e.contains(n.anchorNode)||e.textContent!==this.selection.fakeSelectionLabel)}_removeDomSelection(){for(const t of this.domDocuments){const e=t.getSelection();if(e.rangeCount){const n=t.activeElement,i=this.domConverter.mapDomToView(n);n&&i&&e.removeAllRanges()}}}_removeFakeSelection(){const t=this._fakeSelectionContainer;t&&t.remove()}_updateFocus(){if(this.isFocused){const t=this.selection.editableElement;t&&this.domConverter.focus(t)}}}function ua(t,e,n){const i=e instanceof Array?e:e.childNodes,o=i[n];if(Pi(o))return o.data=oa+o.data,o;{const o=t.createTextNode(oa);return Array.isArray(e)?i.splice(n,0,o):$i(e,n,o),o}}function ma(t,e){return xi(t)&&xi(e)&&!Pi(t)&&!Pi(e)&&!Gi(t)&&!Gi(e)&&t.tagName.toLowerCase()===e.tagName.toLowerCase()}function ga(t,e){return xi(t)&&xi(e)&&Pi(t)&&Pi(e)}function pa(t,e,n){return e===n||(Pi(e)&&Pi(n)?e.data===n.data:!(!t.isBlockFiller(e)||!t.isBlockFiller(n)))}function fa(t,e){const n=t.data;if(n==e)return;const i=c(n,e);for(const e of i)"insert"===e.type?t.insertData(e.index,e.values.join("")):t.deleteData(e.index,e.howMany)}const ba=na(e.document),ka=ta(e.document),wa=ea(e.document),_a="data-ck-unsafe-attribute-",Aa="data-ck-unsafe-element";class Ca{constructor(t,{blockFillerMode:n,renderingMode:i="editing"}={}){this._domToViewMapping=new WeakMap,this._viewToDomMapping=new WeakMap,this._fakeSelectionMapping=new WeakMap,this._rawContentElementMatcher=new Ir,this._inlineObjectElementMatcher=new Ir,this._elementsWithTemporaryCustomProperties=new Set,this.document=t,this.renderingMode=i,this.blockFillerMode=n||("editing"===i?"br":"nbsp"),this.preElements=["pre"],this.blockElements=["address","article","aside","blockquote","caption","center","dd","details","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","legend","li","main","menu","nav","ol","p","pre","section","summary","table","tbody","td","tfoot","th","thead","tr","ul"],this.inlineObjectElements=["object","iframe","input","button","textarea","select","option","video","embed","audio","img","canvas"],this.unsafeElements=["script","style"],this._domDocument="editing"===this.renderingMode?e.document:e.document.implementation.createHTMLDocument("")}bindFakeSelection(t,e){this._fakeSelectionMapping.set(t,new Cs(e))}fakeSelectionToView(t){return this._fakeSelectionMapping.get(t)}bindElements(t,e){this._domToViewMapping.set(t,e),this._viewToDomMapping.set(e,t)}unbindDomElement(t){const e=this._domToViewMapping.get(t);if(e){this._domToViewMapping.delete(t),this._viewToDomMapping.delete(e);for(const e of Array.from(t.children))this.unbindDomElement(e)}}bindDocumentFragments(t,e){this._domToViewMapping.set(t,e),this._viewToDomMapping.set(e,t)}shouldRenderAttribute(t,e,n){return"data"===this.renderingMode||!(t=t.toLowerCase()).startsWith("on")&&(("srcdoc"!==t||!e.match(/\bon\S+\s*=|javascript:|<\s*\/*script/i))&&("img"===n&&("src"===t||"srcset"===t)||("source"===n&&"srcset"===t||!e.match(/^\s*(javascript:|data:(image\/svg|text\/x?html))/i))))}setContentOf(t,e){if("data"===this.renderingMode)return void(t.innerHTML=e);const n=(new DOMParser).parseFromString(e,"text/html"),i=n.createDocumentFragment(),o=n.body.childNodes;for(;o.length>0;)i.appendChild(o[0]);const r=n.createTreeWalker(i,NodeFilter.SHOW_ELEMENT),s=[];let a;for(;a=r.nextNode();)s.push(a);for(const t of s){for(const e of t.getAttributeNames())this.setDomElementAttribute(t,e,t.getAttribute(e));const e=t.tagName.toLowerCase();this._shouldRenameElement(e)&&(Ea(e),t.replaceWith(this._createReplacementDomElement(e,t)))}for(;t.firstChild;)t.firstChild.remove();t.append(i)}viewToDom(t,e={}){if(t.is("$text")){const e=this._processDataFromViewText(t);return this._domDocument.createTextNode(e)}{const n=t;if(this.mapViewToDom(n)){if(!n.getCustomProperty("editingPipeline:doNotReuseOnce"))return this.mapViewToDom(n);this._elementsWithTemporaryCustomProperties.add(n)}let i;if(n.is("documentFragment"))i=this._domDocument.createDocumentFragment(),e.bind&&this.bindDocumentFragments(i,n);else{if(n.is("uiElement"))return i="$comment"===n.name?this._domDocument.createComment(n.getCustomProperty("$rawContent")):n.render(this._domDocument,this),e.bind&&this.bindElements(i,n),i;this._shouldRenameElement(n.name)?(Ea(n.name),i=this._createReplacementDomElement(n.name)):i=n.hasAttribute("xmlns")?this._domDocument.createElementNS(n.getAttribute("xmlns"),n.name):this._domDocument.createElement(n.name),n.is("rawElement")&&n.render(i,this),e.bind&&this.bindElements(i,n);for(const t of n.getAttributeKeys())this.setDomElementAttribute(i,t,n.getAttribute(t),n)}if(!1!==e.withChildren)for(const t of this.viewChildrenToDom(n,e))i instanceof HTMLTemplateElement?i.content.appendChild(t):i.appendChild(t);return i}}setDomElementAttribute(t,n,i,o){const r=this.shouldRenderAttribute(n,i,t.tagName.toLowerCase())||o&&o.shouldRenderUnsafeAttribute(n);r||_("domconverter-unsafe-attribute-detected",{domElement:t,key:n,value:i}),function(t){try{e.document.createAttribute(t)}catch(t){return!1}return!0}(n)?(t.hasAttribute(n)&&!r?t.removeAttribute(n):t.hasAttribute(_a+n)&&r&&t.removeAttribute(_a+n),t.setAttribute(r?n:_a+n,i)):_("domconverter-invalid-attribute-detected",{domElement:t,key:n,value:i})}removeDomElementAttribute(t,e){e!=Aa&&(t.removeAttribute(e),t.removeAttribute(_a+e))}*viewChildrenToDom(t,e={}){const n=t.getFillerOffset&&t.getFillerOffset();let i=0;for(const o of t.getChildren()){n===i&&(yield this._getBlockFiller());const t=o.is("element")&&!!o.getCustomProperty("dataPipeline:transparentRendering")&&!$o(o.getAttributes());t&&"data"==this.renderingMode?yield*this.viewChildrenToDom(o,e):(t&&_("domconverter-transparent-rendering-unsupported-in-editing-pipeline",{viewElement:o}),yield this.viewToDom(o,e)),i++}n===i&&(yield this._getBlockFiller())}viewRangeToDom(t){const e=this.viewPositionToDom(t.start),n=this.viewPositionToDom(t.end),i=this._domDocument.createRange();return i.setStart(e.parent,e.offset),i.setEnd(n.parent,n.offset),i}viewPositionToDom(t){const e=t.parent;if(e.is("$text")){const n=this.findCorrespondingDomText(e);if(!n)return null;let i=t.offset;return ra(n)&&(i+=ia),{parent:n,offset:i}}{let n,i,o;if(0===t.offset){if(n=this.mapViewToDom(e),!n)return null;o=n.childNodes[0]}else{const e=t.nodeBefore;if(i=e.is("$text")?this.findCorrespondingDomText(e):this.mapViewToDom(e),!i)return null;n=i.parentNode,o=i.nextSibling}if(Pi(o)&&ra(o))return{parent:o,offset:ia};return{parent:n,offset:i?Ui(i)+1:0}}}domToView(t,e={}){const n=[],i=this._domToView(t,e,n),o=i.next().value;return o?(i.next(),this._processDomInlineNodes(null,n,e),o.is("$text")&&0==o.data.length?null:o):null}*domChildrenToView(t,e={},n=[]){let i=[];i=t instanceof HTMLTemplateElement?[...t.content.childNodes]:[...t.childNodes];for(let o=0;o{const{scrollLeft:e,scrollTop:n}=t;o.push([e,n])})),n.focus(),ya(n,(t=>{const[e,n]=o.shift();t.scrollLeft=e,t.scrollTop=n})),e.window.scrollTo(t,i)}}_clearDomSelection(){const t=this.mapViewToDom(this.document.selection.editableElement);if(!t)return;const e=t.ownerDocument.defaultView.getSelection(),n=this.domSelectionToView(e);n&&n.rangeCount>0&&e.removeAllRanges()}isElement(t){return t&&t.nodeType==Node.ELEMENT_NODE}isDocumentFragment(t){return t&&t.nodeType==Node.DOCUMENT_FRAGMENT_NODE}isBlockFiller(t){return"br"==this.blockFillerMode?t.isEqualNode(ba):!("BR"!==t.tagName||!xa(t,this.blockElements)||1!==t.parentNode.childNodes.length)||(t.isEqualNode(wa)||function(t,e){const n=t.isEqualNode(ka);return n&&xa(t,e)&&1===t.parentNode.childNodes.length}(t,this.blockElements))}isDomSelectionBackward(t){if(t.isCollapsed)return!1;const e=this._domDocument.createRange();try{e.setStart(t.anchorNode,t.anchorOffset),e.setEnd(t.focusNode,t.focusOffset)}catch(t){return!1}const n=e.collapsed;return e.detach(),n}getHostViewElement(t){const e=function(t){const e=[];let n=t;for(;n&&n.nodeType!=Node.DOCUMENT_NODE;)e.unshift(n),n=n.parentNode;return e}(t);for(e.pop();e.length;){const t=e.pop(),n=this._domToViewMapping.get(t);if(n&&(n.is("uiElement")||n.is("rawElement")))return n}return null}isDomSelectionCorrect(t){return this._isDomSelectionPositionCorrect(t.anchorNode,t.anchorOffset)&&this._isDomSelectionPositionCorrect(t.focusNode,t.focusOffset)}registerRawContentMatcher(t){this._rawContentElementMatcher.add(t)}registerInlineObjectMatcher(t){this._inlineObjectElementMatcher.add(t)}_clearTemporaryCustomProperties(){for(const t of this._elementsWithTemporaryCustomProperties)t._removeCustomProperty("editingPipeline:doNotReuseOnce");this._elementsWithTemporaryCustomProperties.clear()}_getBlockFiller(){switch(this.blockFillerMode){case"nbsp":return ta(this._domDocument);case"markedNbsp":return ea(this._domDocument);case"br":return na(this._domDocument)}}_isDomSelectionPositionCorrect(t,e){if(Pi(t)&&ra(t)&&e0?e[t-1]:null,c=t+1this.preElements.includes(t.name))))return e;if(" "==e.charAt(0)){const n=this._getTouchingInlineViewNode(t,!1);!(n&&n.is("$textProxy")&&this._nodeEndsWithSpace(n))&&n||(e=" "+e.substr(1))}if(" "==e.charAt(e.length-1)){const n=this._getTouchingInlineViewNode(t,!0),i=n&&n.is("$textProxy")&&" "==n.data.charAt(0);" "!=e.charAt(e.length-2)&&n&&!i||(e=e.substr(0,e.length-1)+" ")}return e.replace(/ {2}/g,"  ")}_nodeEndsWithSpace(t){if(t.getAncestors().some((t=>this.preElements.includes(t.name))))return!1;const e=this._processDataFromViewText(t);return" "==e.charAt(e.length-1)}_getTouchingInlineViewNode(t,e){const n=new ks({startPosition:e?ws._createAfter(t):ws._createBefore(t),direction:e?"forward":"backward"});for(const t of n){if(t.item.is("element","br"))return null;if(this._isInlineObjectElement(t.item))return t.item;if(t.item.is("containerElement"))return null;if(t.item.is("$textProxy"))return t.item}return null}_isBlockDomElement(t){return this.isElement(t)&&this.blockElements.includes(t.tagName.toLowerCase())}_isBlockViewElement(t){return t.is("element")&&this.blockElements.includes(t.name)}_isInlineObjectElement(t){return!!t.is("element")&&("br"==t.name||this.inlineObjectElements.includes(t.name)||!!this._inlineObjectElementMatcher.match(t))}_createViewElement(t,e){if(Gi(t))return new Os(this.document,"$comment");const n=e.keepOriginalCase?t.tagName:t.tagName.toLowerCase();return new hs(this.document,n)}_isViewElementWithRawContent(t,e){return!1!==e.withChildren&&t.is("element")&&!!this._rawContentElementMatcher.match(t)}_shouldRenameElement(t){const e=t.toLowerCase();return"editing"===this.renderingMode&&this.unsafeElements.includes(e)}_createReplacementDomElement(t,e){const n=this._domDocument.createElement("span");if(n.setAttribute(Aa,t),e){for(;e.firstChild;)n.appendChild(e.firstChild);for(const t of e.getAttributeNames())n.setAttribute(t,e.getAttribute(t))}return n}}function va(t,e){return t.getAncestors().some((t=>t.is("element")&&e.includes(t.name)))}function ya(t,e){let n=t;for(;n;)e(n),n=n.parentElement}function xa(t,e){const n=t.parentNode;return!!n&&!!n.tagName&&e.includes(n.tagName.toLowerCase())}function Ea(t){"script"===t&&_("domconverter-unsafe-script-element-detected"),"style"===t&&_("domconverter-unsafe-style-element-detected")}class Da extends(Bi()){constructor(t){super(),this._isEnabled=!1,this.view=t,this.document=t.document}get isEnabled(){return this._isEnabled}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}destroy(){this.disable(),this.stopListening()}checkShouldIgnoreEventFromTarget(t){return t&&3===t.nodeType&&(t=t.parentNode),!(!t||1!==t.nodeType)&&t.matches("[data-cke-ignore-events], [data-cke-ignore-events] *")}}const Ba=Mo((function(t,e){Be(e,un(e),t)}));class Sa{constructor(t,e,n){this.view=t,this.document=t.document,this.domEvent=e,this.domTarget=e.target,Ba(this,n)}get target(){return this.view.domConverter.mapDomToView(this.domTarget)}preventDefault(){this.domEvent.preventDefault()}stopPropagation(){this.domEvent.stopPropagation()}}class Ta extends Da{constructor(){super(...arguments),this.useCapture=!1}observe(t){("string"==typeof this.domEventType?[this.domEventType]:this.domEventType).forEach((e=>{this.listenTo(t,e,((t,e)=>{this.isEnabled&&!this.checkShouldIgnoreEventFromTarget(e.target)&&this.onDomEvent(e)}),{useCapture:this.useCapture})}))}stopObserving(t){this.stopListening(t)}fire(t,e,n){this.isEnabled&&this.document.fire(t,new Sa(this.view,e,n))}}class Ia extends Ta{constructor(){super(...arguments),this.domEventType=["keydown","keyup"]}onDomEvent(t){const e={keyCode:t.keyCode,altKey:t.altKey,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,metaKey:t.metaKey,get keystroke(){return fo(this)}};this.fire(t.type,t,e)}}const Pa=function(){return nt.Date.now()};var Ra=/\s/;const Va=function(t){for(var e=t.length;e--&&Ra.test(t.charAt(e)););return e};var Fa=/^\s+/;const La=function(t){return t?t.slice(0,Va(t)+1).replace(Fa,""):t};var Oa=/^[-+]0x[0-9a-f]+$/i,za=/^0b[01]+$/i,Ma=/^0o[0-7]+$/i,Na=parseInt;const Ha=function(t){if("number"==typeof t)return t;if(Vr(t))return NaN;if(O(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=O(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=La(t);var n=za.test(t);return n||Ma.test(t)?Na(t.slice(2),n?2:8):Oa.test(t)?NaN:+t};var ja=Math.max,qa=Math.min;const Wa=function(t,e,n){var i,o,r,s,a,c,l=0,d=!1,h=!1,u=!0;if("function"!=typeof t)throw new TypeError("Expected a function");function m(e){var n=i,r=o;return i=o=void 0,l=e,s=t.apply(r,n)}function g(t){var n=t-c;return void 0===c||n>=e||n<0||h&&t-l>=r}function p(){var t=Pa();if(g(t))return f(t);a=setTimeout(p,function(t){var n=e-(t-c);return h?qa(n,r-(t-l)):n}(t))}function f(t){return a=void 0,u&&i?m(t):(i=o=void 0,s)}function b(){var t=Pa(),n=g(t);if(i=arguments,o=this,c=t,n){if(void 0===a)return function(t){return l=t,a=setTimeout(p,e),d?m(t):s}(c);if(h)return clearTimeout(a),a=setTimeout(p,e),m(c)}return void 0===a&&(a=setTimeout(p,e)),s}return e=Ha(e)||0,O(n)&&(d=!!n.leading,r=(h="maxWait"in n)?ja(Ha(n.maxWait)||0,e):r,u="trailing"in n?!!n.trailing:u),b.cancel=function(){void 0!==a&&clearTimeout(a),l=0,i=c=o=a=void 0},b.flush=function(){return void 0===a?s:f(Pa())},b};class Ua extends Da{constructor(t){super(t),this._fireSelectionChangeDoneDebounced=Wa((t=>{this.document.fire("selectionChangeDone",t)}),200)}observe(){const t=this.document;t.on("arrowKey",((e,n)=>{t.selection.isFake&&this.isEnabled&&n.preventDefault()}),{context:"$capture"}),t.on("arrowKey",((e,n)=>{t.selection.isFake&&this.isEnabled&&this._handleSelectionMove(n.keyCode)}),{priority:"lowest"})}stopObserving(){}destroy(){super.destroy(),this._fireSelectionChangeDoneDebounced.cancel()}_handleSelectionMove(t){const e=this.document.selection,n=new Cs(e.getRanges(),{backward:e.isBackward,fake:!1});t!=go.arrowleft&&t!=go.arrowup||n.setTo(n.getFirstPosition()),t!=go.arrowright&&t!=go.arrowdown||n.setTo(n.getLastPosition());const i={oldSelection:e,newSelection:n,domSelection:null};this.document.fire("selectionChange",i),this._fireSelectionChangeDoneDebounced(i)}}const $a=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this};const Ga=function(t){return this.__data__.has(t)};function Ka(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new we;++ea))return!1;var l=r.get(t),d=r.get(e);if(l&&d)return l==e&&d==t;var h=-1,u=!0,m=2&n?new Ja:void 0;for(r.set(t,e),r.set(e,t);++h{this._isFocusChanging=!0,this._renderTimeoutId=setTimeout((()=>{this.flush(),t.change((()=>{}))}),50)})),e.on("blur",((n,i)=>{const o=e.selection.editableElement;null!==o&&o!==i.target||(e.isFocused=!1,this._isFocusChanging=!1,t.change((()=>{})))}))}flush(){this._isFocusChanging&&(this._isFocusChanging=!1,this.document.isFocused=!0)}onDomEvent(t){this.fire(t.type,t)}destroy(){this._renderTimeoutId&&clearTimeout(this._renderTimeoutId),super.destroy()}}class fc extends Da{constructor(t){super(t),this.mutationObserver=t.getObserver(mc),this.focusObserver=t.getObserver(pc),this.selection=this.document.selection,this.domConverter=t.domConverter,this._documents=new WeakSet,this._fireSelectionChangeDoneDebounced=Wa((t=>{this.document.fire("selectionChangeDone",t)}),200),this._clearInfiniteLoopInterval=setInterval((()=>this._clearInfiniteLoop()),1e3),this._documentIsSelectingInactivityTimeoutDebounced=Wa((()=>this.document.isSelecting=!1),5e3),this._loopbackCounter=0}observe(t){const e=t.ownerDocument,n=()=>{this.document.isSelecting&&(this._handleSelectionChange(null,e),this.document.isSelecting=!1,this._documentIsSelectingInactivityTimeoutDebounced.cancel())};this.listenTo(t,"selectstart",(()=>{this.document.isSelecting=!0,this._documentIsSelectingInactivityTimeoutDebounced()}),{priority:"highest"}),this.listenTo(t,"keydown",n,{priority:"highest",useCapture:!0}),this.listenTo(t,"keyup",n,{priority:"highest",useCapture:!0}),this._documents.has(e)||(this.listenTo(e,"mouseup",n,{priority:"highest",useCapture:!0}),this.listenTo(e,"selectionchange",((t,n)=>{this.document.isComposing&&!s.isAndroid||(this._handleSelectionChange(n,e),this._documentIsSelectingInactivityTimeoutDebounced())})),this._documents.add(e))}stopObserving(t){this.stopListening(t)}destroy(){super.destroy(),clearInterval(this._clearInfiniteLoopInterval),this._fireSelectionChangeDoneDebounced.cancel(),this._documentIsSelectingInactivityTimeoutDebounced.cancel()}_reportInfiniteLoop(){}_handleSelectionChange(t,e){if(!this.isEnabled)return;const n=e.defaultView.getSelection();if(this.checkShouldIgnoreEventFromTarget(n.anchorNode))return;this.mutationObserver.flush();const i=this.domConverter.domSelectionToView(n);if(0!=i.rangeCount){if(this.view.hasDomSelection=!0,this.focusObserver.flush(),!this.selection.isEqual(i)||!this.domConverter.isDomSelectionCorrect(n))if(++this._loopbackCounter>60)this._reportInfiniteLoop();else if(this.selection.isSimilar(i))this.view.forceRender();else{const t={oldSelection:this.selection,newSelection:i,domSelection:n};this.document.fire("selectionChange",t),this._fireSelectionChangeDoneDebounced(t)}}else this.view.hasDomSelection=!1}_clearInfiniteLoop(){this._loopbackCounter=0}}class bc extends Ta{constructor(t){super(t),this.domEventType=["compositionstart","compositionupdate","compositionend"];const e=this.document;e.on("compositionstart",(()=>{e.isComposing=!0}),{priority:"low"}),e.on("compositionend",(()=>{e.isComposing=!1}),{priority:"low"})}onDomEvent(t){this.fire(t.type,t,{data:t.data})}}class kc{constructor(t,e={}){this._files=e.cacheFiles?wc(t):null,this._native=t}get files(){return this._files||(this._files=wc(this._native)),this._files}get types(){return this._native.types}getData(t){return this._native.getData(t)}setData(t,e){this._native.setData(t,e)}set effectAllowed(t){this._native.effectAllowed=t}get effectAllowed(){return this._native.effectAllowed}set dropEffect(t){this._native.dropEffect=t}get dropEffect(){return this._native.dropEffect}setDragImage(t,e,n){this._native.setDragImage(t,e,n)}get isCanceled(){return"none"==this._native.dropEffect||!!this._native.mozUserCancelled}}function wc(t){const e=Array.from(t.files||[]),n=Array.from(t.items||[]);return e.length?e:n.filter((t=>"file"===t.kind)).map((t=>t.getAsFile()))}class _c extends Ta{constructor(){super(...arguments),this.domEventType="beforeinput"}onDomEvent(t){const e=t.getTargetRanges(),n=this.view,i=n.document;let o=null,r=null,a=[];if(t.dataTransfer&&(o=new kc(t.dataTransfer)),null!==t.data?r=t.data:o&&(r=o.getData("text/plain")),i.selection.isFake)a=Array.from(i.selection.getRanges());else if(e.length)a=e.map((t=>{const e=n.domConverter.domPositionToView(t.startContainer,t.startOffset),i=n.domConverter.domPositionToView(t.endContainer,t.endOffset);return e?n.createRange(e,i):i?n.createRange(i):void 0})).filter((t=>!!t));else if(s.isAndroid){const e=t.target.ownerDocument.defaultView.getSelection();a=Array.from(n.domConverter.domSelectionToView(e).getRanges())}if(s.isAndroid&&"insertCompositionText"==t.inputType&&r&&r.endsWith("\n"))this.fire(t.type,t,{inputType:"insertParagraph",targetRanges:[n.createRange(a[0].end)]});else if("insertText"==t.inputType&&r&&r.includes("\n")){const e=r.split(/\n{1,2}/g);let n=a;for(let r=0;r{if(this.isEnabled&&((n=e.keyCode)==go.arrowright||n==go.arrowleft||n==go.arrowup||n==go.arrowdown)){const n=new ys(this.document,"arrowKey",this.document.selection.getFirstRange());this.document.fire(n,e),n.stop.called&&t.stop()}var n}))}observe(){}stopObserving(){}}class Cc extends Da{constructor(t){super(t);const e=this.document;e.on("keydown",((t,n)=>{if(!this.isEnabled||n.keyCode!=go.tab||n.ctrlKey)return;const i=new ys(e,"tab",e.selection.getFirstRange());e.fire(i,n),i.stop.called&&t.stop()}))}observe(){}stopObserving(){}}const vc=function(t){return wi(t,5)};class yc extends(W()){constructor(t){super(),this.domRoots=new Map,this._initialDomRootAttributes=new WeakMap,this._observers=new Map,this._ongoingChange=!1,this._postFixersInProgress=!1,this._renderingDisabled=!1,this._hasChangedSinceTheLastRendering=!1,this.document=new Is(t),this.domConverter=new Ca(this.document),this.set("isRenderingInProgress",!1),this.set("hasDomSelection",!1),this._renderer=new ha(this.domConverter,this.document.selection),this._renderer.bind("isFocused","isSelecting","isComposing").to(this.document,"isFocused","isSelecting","isComposing"),this._writer=new qs(this.document),this.addObserver(mc),this.addObserver(pc),this.addObserver(fc),this.addObserver(Ia),this.addObserver(Ua),this.addObserver(bc),this.addObserver(Ac),this.addObserver(_c),this.addObserver(Cc),this.document.on("arrowKey",ca,{priority:"low"}),zs(this),this.on("render",(()=>{this._render(),this.document.fire("layoutChanged"),this._hasChangedSinceTheLastRendering=!1})),this.listenTo(this.document.selection,"change",(()=>{this._hasChangedSinceTheLastRendering=!0})),this.listenTo(this.document,"change:isFocused",(()=>{this._hasChangedSinceTheLastRendering=!0})),s.isiOS&&this.listenTo(this.document,"blur",((t,e)=>{this.domConverter.mapDomToView(e.domEvent.relatedTarget)||this.domConverter._clearDomSelection()}))}attachDomRoot(t,e="main"){const n=this.document.getRoot(e);n._name=t.tagName.toLowerCase();const i={};for(const{name:e,value:o}of Array.from(t.attributes))i[e]=o,"class"===e?this._writer.addClass(o.split(" "),n):this._writer.setAttribute(e,o,n);this._initialDomRootAttributes.set(t,i);const o=()=>{this._writer.setAttribute("contenteditable",(!n.isReadOnly).toString(),n),n.isReadOnly?this._writer.addClass("ck-read-only",n):this._writer.removeClass("ck-read-only",n)};o(),this.domRoots.set(e,t),this.domConverter.bindElements(t,n),this._renderer.markToSync("children",n),this._renderer.markToSync("attributes",n),this._renderer.domDocuments.add(t.ownerDocument),n.on("change:children",((t,e)=>this._renderer.markToSync("children",e))),n.on("change:attributes",((t,e)=>this._renderer.markToSync("attributes",e))),n.on("change:text",((t,e)=>this._renderer.markToSync("text",e))),n.on("change:isReadOnly",(()=>this.change(o))),n.on("change",(()=>{this._hasChangedSinceTheLastRendering=!0}));for(const n of this._observers.values())n.observe(t,e)}detachDomRoot(t){const e=this.domRoots.get(t);Array.from(e.attributes).forEach((({name:t})=>e.removeAttribute(t)));const n=this._initialDomRootAttributes.get(e);for(const t in n)e.setAttribute(t,n[t]);this.domRoots.delete(t),this.domConverter.unbindDomElement(e);for(const t of this._observers.values())t.stopObserving(e)}getDomRoot(t="main"){return this.domRoots.get(t)}addObserver(t){let e=this._observers.get(t);if(e)return e;e=new t(this),this._observers.set(t,e);for(const[t,n]of this.domRoots)e.observe(n,t);return e.enable(),e}getObserver(t){return this._observers.get(t)}disableObservers(){for(const t of this._observers.values())t.disable()}enableObservers(){for(const t of this._observers.values())t.enable()}scrollToTheSelection({alignToTop:t,forceScroll:e,viewportOffset:n=20,ancestorOffset:i=20}={}){const o=this.document.selection.getFirstRange();if(!o)return;const r=vc({alignToTop:t,forceScroll:e,viewportOffset:n,ancestorOffset:i});"number"==typeof n&&(n={top:n,bottom:n,left:n,right:n});const s={target:this.domConverter.viewRangeToDom(o),viewportOffset:n,ancestorOffset:i,alignToTop:t,forceScroll:e};this.fire("scrollToTheSelection",s,r),to(s)}focus(){if(!this.document.isFocused){const t=this.document.selection.editableElement;t&&(this.domConverter.focus(t),this.forceRender())}}change(t){if(this.isRenderingInProgress||this._postFixersInProgress)throw new w("cannot-change-view-tree",this);try{if(this._ongoingChange)return t(this._writer);this._ongoingChange=!0;const e=t(this._writer);return this._ongoingChange=!1,!this._renderingDisabled&&this._hasChangedSinceTheLastRendering&&(this._postFixersInProgress=!0,this.document._callPostFixers(this._writer),this._postFixersInProgress=!1,this.fire("render")),e}catch(t){w.rethrowUnexpectedError(t,this)}}forceRender(){this._hasChangedSinceTheLastRendering=!0,this.getObserver(pc).flush(),this.change((()=>{}))}destroy(){for(const t of this._observers.values())t.destroy();this.document.destroy(),this.stopListening()}createPositionAt(t,e){return ws._createAt(t,e)}createPositionAfter(t){return ws._createAfter(t)}createPositionBefore(t){return ws._createBefore(t)}createRange(t,e){return new _s(t,e)}createRangeOn(t){return _s._createOn(t)}createRangeIn(t){return _s._createIn(t)}createSelection(...t){return new Cs(...t)}_disableRendering(t){this._renderingDisabled=t,0==t&&this.change((()=>{}))}_render(){this.isRenderingInProgress=!0,this.disableObservers(),this._renderer.render(),this.enableObservers(),this.isRenderingInProgress=!1}}class xc{is(){throw new Error("is() method is abstract")}}class Ec extends xc{constructor(t){super(),this.parent=null,this._attrs=Jo(t)}get document(){return null}get index(){let t;if(!this.parent)return null;if(null===(t=this.parent.getChildIndex(this)))throw new w("model-node-not-found-in-parent",this);return t}get startOffset(){let t;if(!this.parent)return null;if(null===(t=this.parent.getChildStartOffset(this)))throw new w("model-node-not-found-in-parent",this);return t}get offsetSize(){return 1}get endOffset(){return this.parent?this.startOffset+this.offsetSize:null}get nextSibling(){const t=this.index;return null!==t&&this.parent.getChild(t+1)||null}get previousSibling(){const t=this.index;return null!==t&&this.parent.getChild(t-1)||null}get root(){let t=this;for(;t.parent;)t=t.parent;return t}isAttached(){return null!==this.parent&&this.root.isAttached()}getPath(){const t=[];let e=this;for(;e.parent;)t.unshift(e.startOffset),e=e.parent;return t}getAncestors(t={}){const e=[];let n=t.includeSelf?this:this.parent;for(;n;)e[t.parentFirst?"push":"unshift"](n),n=n.parent;return e}getCommonAncestor(t,e={}){const n=this.getAncestors(e),i=t.getAncestors(e);let o=0;for(;n[o]==i[o]&&n[o];)o++;return 0===o?null:n[o-1]}isBefore(t){if(this==t)return!1;if(this.root!==t.root)return!1;const e=this.getPath(),n=t.getPath(),i=Q(e,n);switch(i){case"prefix":return!0;case"extension":return!1;default:return e[i](t[e[0]]=e[1],t)),{})),t}_clone(t){return new this.constructor(this._attrs)}_remove(){this.parent._removeChildren(this.index)}_setAttribute(t,e){this._attrs.set(t,e)}_setAttributesTo(t){this._attrs=Jo(t)}_removeAttribute(t){return this._attrs.delete(t)}_clearAttributes(){this._attrs.clear()}}Ec.prototype.is=function(t){return"node"===t||"model:node"===t};class Dc{constructor(t){this._nodes=[],t&&this._insertNodes(0,t)}[Symbol.iterator](){return this._nodes[Symbol.iterator]()}get length(){return this._nodes.length}get maxOffset(){return this._nodes.reduce(((t,e)=>t+e.offsetSize),0)}getNode(t){return this._nodes[t]||null}getNodeIndex(t){const e=this._nodes.indexOf(t);return-1==e?null:e}getNodeStartOffset(t){const e=this.getNodeIndex(t);return null===e?null:this._nodes.slice(0,e).reduce(((t,e)=>t+e.offsetSize),0)}indexToOffset(t){if(t==this._nodes.length)return this.maxOffset;const e=this._nodes[t];if(!e)throw new w("model-nodelist-index-out-of-bounds",this);return this.getNodeStartOffset(e)}offsetToIndex(t){let e=0;for(const n of this._nodes){if(t>=e&&t1e4)return t.slice(0,n).concat(e).concat(t.slice(n+i,t.length));{const o=Array.from(t);return o.splice(n,i,...e),o}}(this._nodes,Array.from(e),t,0)}_removeNodes(t,e=1){return this._nodes.splice(t,e)}toJSON(){return this._nodes.map((t=>t.toJSON()))}}class Bc extends Ec{constructor(t,e){super(e),this._data=t||""}get offsetSize(){return this.data.length}get data(){return this._data}toJSON(){const t=super.toJSON();return t.data=this.data,t}_clone(){return new Bc(this.data,this.getAttributes())}static fromJSON(t){return new Bc(t.data,t.attributes)}}Bc.prototype.is=function(t){return"$text"===t||"model:$text"===t||"text"===t||"model:text"===t||"node"===t||"model:node"===t};class Sc extends xc{constructor(t,e,n){if(super(),this.textNode=t,e<0||e>t.offsetSize)throw new w("model-textproxy-wrong-offsetintext",this);if(n<0||e+n>t.offsetSize)throw new w("model-textproxy-wrong-length",this);this.data=t.data.substring(e,e+n),this.offsetInText=e}get startOffset(){return null!==this.textNode.startOffset?this.textNode.startOffset+this.offsetInText:null}get offsetSize(){return this.data.length}get endOffset(){return null!==this.startOffset?this.startOffset+this.offsetSize:null}get isPartial(){return this.offsetSize!==this.textNode.offsetSize}get parent(){return this.textNode.parent}get root(){return this.textNode.root}getPath(){const t=this.textNode.getPath();return t.length>0&&(t[t.length-1]+=this.offsetInText),t}getAncestors(t={}){const e=[];let n=t.includeSelf?this:this.parent;for(;n;)e[t.parentFirst?"push":"unshift"](n),n=n.parent;return e}hasAttribute(t){return this.textNode.hasAttribute(t)}getAttribute(t){return this.textNode.getAttribute(t)}getAttributes(){return this.textNode.getAttributes()}getAttributeKeys(){return this.textNode.getAttributeKeys()}}Sc.prototype.is=function(t){return"$textProxy"===t||"model:$textProxy"===t||"textProxy"===t||"model:textProxy"===t};class Tc extends Ec{constructor(t,e,n){super(e),this._children=new Dc,this.name=t,n&&this._insertChild(0,n)}get childCount(){return this._children.length}get maxOffset(){return this._children.maxOffset}get isEmpty(){return 0===this.childCount}getChild(t){return this._children.getNode(t)}getChildren(){return this._children[Symbol.iterator]()}getChildIndex(t){return this._children.getNodeIndex(t)}getChildStartOffset(t){return this._children.getNodeStartOffset(t)}offsetToIndex(t){return this._children.offsetToIndex(t)}getNodeByPath(t){let e=this;for(const n of t)e=e.getChild(e.offsetToIndex(n));return e}findAncestor(t,e={}){let n=e.includeSelf?this:this.parent;for(;n;){if(n.name===t)return n;n=n.parent}return null}toJSON(){const t=super.toJSON();if(t.name=this.name,this._children.length>0){t.children=[];for(const e of this._children)t.children.push(e.toJSON())}return t}_clone(t=!1){const e=t?Array.from(this._children).map((t=>t._clone(!0))):void 0;return new Tc(this.name,this.getAttributes(),e)}_appendChild(t){this._insertChild(this.childCount,t)}_insertChild(t,e){const n=function(t){if("string"==typeof t)return[new Bc(t)];X(t)||(t=[t]);return Array.from(t).map((t=>"string"==typeof t?new Bc(t):t instanceof Sc?new Bc(t.data,t.getAttributes()):t))}(e);for(const t of n)null!==t.parent&&t._remove(),t.parent=this;this._children._insertNodes(t,n)}_removeChildren(t,e=1){const n=this._children._removeNodes(t,e);for(const t of n)t.parent=null;return n}static fromJSON(t){let e;if(t.children){e=[];for(const n of t.children)n.name?e.push(Tc.fromJSON(n)):e.push(Bc.fromJSON(n))}return new Tc(t.name,t.attributes,e)}}Tc.prototype.is=function(t,e){return e?e===this.name&&("element"===t||"model:element"===t):"element"===t||"model:element"===t||"node"===t||"model:node"===t};class Ic{constructor(t){if(!t||!t.boundaries&&!t.startPosition)throw new w("model-tree-walker-no-start-position",null);const e=t.direction||"forward";if("forward"!=e&&"backward"!=e)throw new w("model-tree-walker-unknown-direction",t,{direction:e});this.direction=e,this.boundaries=t.boundaries||null,t.startPosition?this._position=t.startPosition.clone():this._position=Rc._createAt(this.boundaries["backward"==this.direction?"end":"start"]),this.position.stickiness="toNone",this.singleCharacters=!!t.singleCharacters,this.shallow=!!t.shallow,this.ignoreElementEnd=!!t.ignoreElementEnd,this._boundaryStartParent=this.boundaries?this.boundaries.start.parent:null,this._boundaryEndParent=this.boundaries?this.boundaries.end.parent:null,this._visitedParent=this.position.parent}[Symbol.iterator](){return this}get position(){return this._position}skip(t){let e,n,i,o;do{i=this.position,o=this._visitedParent,({done:e,value:n}=this.next())}while(!e&&t(n));e||(this._position=i,this._visitedParent=o)}next(){return"forward"==this.direction?this._next():this._previous()}_next(){const t=this.position,e=this.position.clone(),n=this._visitedParent;if(null===n.parent&&e.offset===n.maxOffset)return{done:!0,value:void 0};if(n===this._boundaryEndParent&&e.offset==this.boundaries.end.offset)return{done:!0,value:void 0};const i=Vc(e,n),o=i||Fc(e,n,i);if(o instanceof Tc){if(this.shallow){if(this.boundaries&&this.boundaries.end.isBefore(e))return{done:!0,value:void 0};e.offset++}else e.path.push(0),this._visitedParent=o;return this._position=e,Pc("elementStart",o,t,e,1)}if(o instanceof Bc){let i;if(this.singleCharacters)i=1;else{let t=o.endOffset;this._boundaryEndParent==n&&this.boundaries.end.offsett&&(t=this.boundaries.start.offset),i=e.offset-t}const o=e.offset-r.startOffset,s=new Sc(r,o-i,i);return e.offset-=i,this._position=e,Pc("text",s,t,e,i)}return e.path.pop(),this._position=e,this._visitedParent=n.parent,Pc("elementStart",n,t,e,1)}}function Pc(t,e,n,i,o){return{done:!1,value:{type:t,item:e,previousPosition:n,nextPosition:i,length:o}}}class Rc extends xc{constructor(t,e,n="toNone"){if(super(),!t.is("element")&&!t.is("documentFragment"))throw new w("model-position-root-invalid",t);if(!(e instanceof Array)||0===e.length)throw new w("model-position-path-incorrect-format",t,{path:e});t.is("rootElement")?e=e.slice():(e=[...t.getPath(),...e],t=t.root),this.root=t,this.path=e,this.stickiness=n}get offset(){return this.path[this.path.length-1]}set offset(t){this.path[this.path.length-1]=t}get parent(){let t=this.root;for(let e=0;e1)return!1;if(1===e)return Oc(t,this,n);if(-1===e)return Oc(this,t,n)}return this.path.length===t.path.length||(this.path.length>t.path.length?zc(this.path,e):zc(t.path,e))}hasSameParentAs(t){if(this.root!==t.root)return!1;return"same"==Q(this.getParentPath(),t.getParentPath())}getTransformedByOperation(t){let e;switch(t.type){case"insert":e=this._getTransformedByInsertOperation(t);break;case"move":case"remove":case"reinsert":e=this._getTransformedByMoveOperation(t);break;case"split":e=this._getTransformedBySplitOperation(t);break;case"merge":e=this._getTransformedByMergeOperation(t);break;default:e=Rc._createAt(this)}return e}_getTransformedByInsertOperation(t){return this._getTransformedByInsertion(t.position,t.howMany)}_getTransformedByMoveOperation(t){return this._getTransformedByMove(t.sourcePosition,t.targetPosition,t.howMany)}_getTransformedBySplitOperation(t){const e=t.movedRange;return e.containsPosition(this)||e.start.isEqual(this)&&"toNext"==this.stickiness?this._getCombined(t.splitPosition,t.moveTargetPosition):t.graveyardPosition?this._getTransformedByMove(t.graveyardPosition,t.insertionPosition,1):this._getTransformedByInsertion(t.insertionPosition,1)}_getTransformedByMergeOperation(t){const e=t.movedRange;let n;return e.containsPosition(this)||e.start.isEqual(this)?(n=this._getCombined(t.sourcePosition,t.targetPosition),t.sourcePosition.isBefore(t.targetPosition)&&(n=n._getTransformedByDeletion(t.deletionPosition,1))):n=this.isEqual(t.deletionPosition)?Rc._createAt(t.deletionPosition):this._getTransformedByMove(t.deletionPosition,t.graveyardPosition,1),n}_getTransformedByDeletion(t,e){const n=Rc._createAt(this);if(this.root!=t.root)return n;if("same"==Q(t.getParentPath(),this.getParentPath())){if(t.offsetthis.offset)return null;n.offset-=e}}else if("prefix"==Q(t.getParentPath(),this.getParentPath())){const i=t.path.length-1;if(t.offset<=this.path[i]){if(t.offset+e>this.path[i])return null;n.path[i]-=e}}return n}_getTransformedByInsertion(t,e){const n=Rc._createAt(this);if(this.root!=t.root)return n;if("same"==Q(t.getParentPath(),this.getParentPath()))(t.offset=e;){if(t.path[i]+o!==n.maxOffset)return!1;o=1,i--,n=n.parent}return!0}(t,n+1))}function zc(t,e){for(;ee+1;){const e=i.maxOffset-n.offset;0!==e&&t.push(new Mc(n,n.getShiftedBy(e))),n.path=n.path.slice(0,-1),n.offset++,i=i.parent}for(;n.path.length<=this.end.path.length;){const e=this.end.path[n.path.length-1],i=e-n.offset;0!==i&&t.push(new Mc(n,n.getShiftedBy(i))),n.offset=e,n.path.push(0)}return t}getWalker(t={}){return t.boundaries=this,new Ic(t)}*getItems(t={}){t.boundaries=this,t.ignoreElementEnd=!0;const e=new Ic(t);for(const t of e)yield t.item}*getPositions(t={}){t.boundaries=this;const e=new Ic(t);yield e.position;for(const t of e)yield t.nextPosition}getTransformedByOperation(t){switch(t.type){case"insert":return this._getTransformedByInsertOperation(t);case"move":case"remove":case"reinsert":return this._getTransformedByMoveOperation(t);case"split":return[this._getTransformedBySplitOperation(t)];case"merge":return[this._getTransformedByMergeOperation(t)]}return[new Mc(this.start,this.end)]}getTransformedByOperations(t){const e=[new Mc(this.start,this.end)];for(const n of t)for(let t=0;t0?new this(n,i):new this(i,n)}static _createIn(t){return new this(Rc._createAt(t,0),Rc._createAt(t,t.maxOffset))}static _createOn(t){return this._createFromPositionAndShift(Rc._createBefore(t),t.offsetSize)}static _createFromRanges(t){if(0===t.length)throw new w("range-create-from-ranges-empty-array",null);if(1==t.length)return t[0].clone();const e=t[0];t.sort(((t,e)=>t.start.isAfter(e.start)?1:-1));const n=t.indexOf(e),i=new this(e.start,e.end);if(n>0)for(let e=n-1;t[e].end.isEqual(i.start);e++)i.start=Rc._createAt(t[e].start);for(let e=n+1;e{if(e.viewPosition)return;const n=this._modelToViewMapping.get(e.modelPosition.parent);if(!n)throw new w("mapping-model-position-view-parent-not-found",this,{modelPosition:e.modelPosition});e.viewPosition=this.findPositionIn(n,e.modelPosition.offset)}),{priority:"low"}),this.on("viewToModelPosition",((t,e)=>{if(e.modelPosition)return;const n=this.findMappedViewAncestor(e.viewPosition),i=this._viewToModelMapping.get(n),o=this._toModelOffset(e.viewPosition.parent,e.viewPosition.offset,n);e.modelPosition=Rc._createAt(i,o)}),{priority:"low"})}bindElements(t,e){this._modelToViewMapping.set(t,e),this._viewToModelMapping.set(e,t)}unbindViewElement(t,e={}){const n=this.toModelElement(t);if(this._elementToMarkerNames.has(t))for(const e of this._elementToMarkerNames.get(t))this._unboundMarkerNames.add(e);e.defer?this._deferredBindingRemovals.set(t,t.root):(this._viewToModelMapping.delete(t),this._modelToViewMapping.get(n)==t&&this._modelToViewMapping.delete(n))}unbindModelElement(t){const e=this.toViewElement(t);this._modelToViewMapping.delete(t),this._viewToModelMapping.get(e)==t&&this._viewToModelMapping.delete(e)}bindElementToMarker(t,e){const n=this._markerNameToElements.get(e)||new Set;n.add(t);const i=this._elementToMarkerNames.get(t)||new Set;i.add(e),this._markerNameToElements.set(e,n),this._elementToMarkerNames.set(t,i)}unbindElementFromMarkerName(t,e){const n=this._markerNameToElements.get(e);n&&(n.delete(t),0==n.size&&this._markerNameToElements.delete(e));const i=this._elementToMarkerNames.get(t);i&&(i.delete(e),0==i.size&&this._elementToMarkerNames.delete(t))}flushUnboundMarkerNames(){const t=Array.from(this._unboundMarkerNames);return this._unboundMarkerNames.clear(),t}flushDeferredBindings(){for(const[t,e]of this._deferredBindingRemovals)t.root==e&&this.unbindViewElement(t);this._deferredBindingRemovals=new Map}clearBindings(){this._modelToViewMapping=new WeakMap,this._viewToModelMapping=new WeakMap,this._markerNameToElements=new Map,this._elementToMarkerNames=new Map,this._unboundMarkerNames=new Set,this._deferredBindingRemovals=new Map}toModelElement(t){return this._viewToModelMapping.get(t)}toViewElement(t){return this._modelToViewMapping.get(t)}toModelRange(t){return new Mc(this.toModelPosition(t.start),this.toModelPosition(t.end))}toViewRange(t){return new _s(this.toViewPosition(t.start),this.toViewPosition(t.end))}toModelPosition(t){const e={viewPosition:t,mapper:this};return this.fire("viewToModelPosition",e),e.modelPosition}toViewPosition(t,e={}){const n={modelPosition:t,mapper:this,isPhantom:e.isPhantom};return this.fire("modelToViewPosition",n),n.viewPosition}markerNameToElements(t){const e=this._markerNameToElements.get(t);if(!e)return null;const n=new Set;for(const t of e)if(t.is("attributeElement"))for(const e of t.getElementsWithSameId())n.add(e);else n.add(t);return n}registerViewToModelLength(t,e){this._viewToModelLengthCallbacks.set(t,e)}findMappedViewAncestor(t){let e=t.parent;for(;!this._viewToModelMapping.has(e);)e=e.parent;return e}_toModelOffset(t,e,n){if(n!=t){return this._toModelOffset(t.parent,t.index,n)+this._toModelOffset(t,e,t)}if(t.is("$text"))return e;let i=0;for(let n=0;n1?e[0]+":"+e[1]:e[0]}var qc=Object.defineProperty,Wc=Object.defineProperties,Uc=Object.getOwnPropertyDescriptors,$c=Object.getOwnPropertySymbols,Gc=Object.prototype.hasOwnProperty,Kc=Object.prototype.propertyIsEnumerable,Jc=(t,e,n)=>e in t?qc(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Zc=(t,e)=>{for(var n in e||(e={}))Gc.call(e,n)&&Jc(t,n,e[n]);if($c)for(var n of $c(e))Kc.call(e,n)&&Jc(t,n,e[n]);return t},Yc=(t,e)=>Wc(t,Uc(e));class Qc extends(S()){constructor(t){super(),this._conversionApi=Zc({dispatcher:this},t),this._firedEventsMap=new WeakMap}convertChanges(t,e,n){const i=this._createConversionApi(n,t.getRefreshedItems());for(const e of t.getMarkersToRemove())this._convertMarkerRemove(e.name,e.range,i);const o=this._reduceChanges(t.getChanges());for(const t of o)"insert"===t.type?this._convertInsert(Mc._createFromPositionAndShift(t.position,t.length),i):"reinsert"===t.type?this._convertReinsert(Mc._createFromPositionAndShift(t.position,t.length),i):"remove"===t.type?this._convertRemove(t.position,t.length,t.name,i):this._convertAttribute(t.range,t.attributeKey,t.attributeOldValue,t.attributeNewValue,i);i.mapper.flushDeferredBindings();for(const t of i.mapper.flushUnboundMarkerNames()){const n=e.get(t).getRange();this._convertMarkerRemove(t,n,i),this._convertMarkerAdd(t,n,i)}for(const e of t.getMarkersToAdd())this._convertMarkerAdd(e.name,e.range,i);i.consumable.verifyAllConsumed("insert")}convert(t,e,n,i={}){const o=this._createConversionApi(n,void 0,i);this._convertInsert(t,o);for(const[t,n]of e)this._convertMarkerAdd(t,n,o);o.consumable.verifyAllConsumed("insert")}convertSelection(t,e,n){const i=this._createConversionApi(n);this.fire("cleanSelection",{selection:t},i);const o=t.getFirstPosition().root;if(!i.mapper.toViewElement(o))return;const r=Array.from(e.getMarkersAtPosition(t.getFirstPosition()));if(this._addConsumablesForSelection(i.consumable,t,r),this.fire("selection",{selection:t},i),t.isCollapsed){for(const e of r)if(i.consumable.test(t,"addMarker:"+e.name)){const n=e.getRange();if(!Xc(t.getFirstPosition(),e,i.mapper))continue;const o={item:t,markerName:e.name,markerRange:n};this.fire(`addMarker:${e.name}`,o,i)}for(const e of t.getAttributeKeys())if(i.consumable.test(t,"attribute:"+e)){const n={item:t,range:t.getFirstRange(),attributeKey:e,attributeOldValue:null,attributeNewValue:t.getAttribute(e)};this.fire(`attribute:${e}:$text`,n,i)}}}_convertInsert(t,e,n={}){n.doNotAddConsumables||this._addConsumablesForInsert(e.consumable,t);for(const n of Array.from(t.getWalker({shallow:!0})).map(tl))this._testAndFire("insert",n,e)}_convertRemove(t,e,n,i){this.fire(`remove:${n}`,{position:t,length:e},i)}_convertAttribute(t,e,n,i,o){this._addConsumablesForRange(o.consumable,t,`attribute:${e}`);for(const r of t){const t={item:r.item,range:Mc._createFromPositionAndShift(r.previousPosition,r.length),attributeKey:e,attributeOldValue:n,attributeNewValue:i};this._testAndFire(`attribute:${e}`,t,o)}}_convertReinsert(t,e){const n=Array.from(t.getWalker({shallow:!0}));this._addConsumablesForInsert(e.consumable,n);for(const t of n.map(tl))this._testAndFire("insert",Yc(Zc({},t),{reconversion:!0}),e)}_convertMarkerAdd(t,e,n){if("$graveyard"==e.root.rootName)return;const i=`addMarker:${t}`;if(n.consumable.add(e,i),this.fire(i,{markerName:t,markerRange:e},n),n.consumable.consume(e,i)){this._addConsumablesForRange(n.consumable,e,i);for(const o of e.getItems()){if(!n.consumable.test(o,i))continue;const r={item:o,range:Mc._createOn(o),markerName:t,markerRange:e};this.fire(i,r,n)}}}_convertMarkerRemove(t,e,n){"$graveyard"!=e.root.rootName&&this.fire(`removeMarker:${t}`,{markerName:t,markerRange:e},n)}_reduceChanges(t){const e={changes:t};return this.fire("reduceChanges",e),e.changes}_addConsumablesForInsert(t,e){for(const n of e){const e=n.item;if(null===t.test(e,"insert")){t.add(e,"insert");for(const n of e.getAttributeKeys())t.add(e,"attribute:"+n)}}return t}_addConsumablesForRange(t,e,n){for(const i of e.getItems())t.add(i,n);return t}_addConsumablesForSelection(t,e,n){t.add(e,"selection");for(const i of n)t.add(e,"addMarker:"+i.name);for(const n of e.getAttributeKeys())t.add(e,"attribute:"+n);return t}_testAndFire(t,e,n){const i=function(t,e){const n=e.item.is("element")?e.item.name:"$text";return`${t}:${n}`}(t,e),o=e.item.is("$textProxy")?n.consumable._getSymbolForTextProxy(e.item):e.item,r=this._firedEventsMap.get(n),s=r.get(o);if(s){if(s.has(i))return;s.add(i)}else r.set(o,new Set([i]));this.fire(i,e,n)}_testAndFireAddAttributes(t,e){const n={item:t,range:Mc._createOn(t)};for(const t of n.item.getAttributeKeys())n.attributeKey=t,n.attributeOldValue=null,n.attributeNewValue=n.item.getAttribute(t),this._testAndFire(`attribute:${t}`,n,e)}_createConversionApi(t,e=new Set,n={}){const i=Yc(Zc({},this._conversionApi),{consumable:new Hc,writer:t,options:n,convertItem:t=>this._convertInsert(Mc._createOn(t),i),convertChildren:t=>this._convertInsert(Mc._createIn(t),i,{doNotAddConsumables:!0}),convertAttributes:t=>this._testAndFireAddAttributes(t,i),canReuseView:t=>!e.has(i.mapper.toModelElement(t))});return this._firedEventsMap.set(i,new Map),i}}function Xc(t,e,n){const i=e.getRange(),o=Array.from(t.getAncestors());o.shift(),o.reverse();return!o.some((t=>{if(i.containsItem(t)){return!!n.toViewElement(t).getCustomProperty("addHighlight")}}))}function tl(t){return{item:t.item,range:Mc._createFromPositionAndShift(t.previousPosition,t.length)}}class el extends(S(xc)){constructor(...t){super(),this._lastRangeBackward=!1,this._attrs=new Map,this._ranges=[],t.length&&this.setTo(...t)}get anchor(){if(this._ranges.length>0){const t=this._ranges[this._ranges.length-1];return this._lastRangeBackward?t.end:t.start}return null}get focus(){if(this._ranges.length>0){const t=this._ranges[this._ranges.length-1];return this._lastRangeBackward?t.start:t.end}return null}get isCollapsed(){return 1===this._ranges.length&&this._ranges[0].isCollapsed}get rangeCount(){return this._ranges.length}get isBackward(){return!this.isCollapsed&&this._lastRangeBackward}isEqual(t){if(this.rangeCount!=t.rangeCount)return!1;if(0===this.rangeCount)return!0;if(!this.anchor.isEqual(t.anchor)||!this.focus.isEqual(t.focus))return!1;for(const e of this._ranges){let n=!1;for(const i of t._ranges)if(e.isEqual(i)){n=!0;break}if(!n)return!1}return!0}*getRanges(){for(const t of this._ranges)yield new Mc(t.start,t.end)}getFirstRange(){let t=null;for(const e of this._ranges)t&&!e.start.isBefore(t.start)||(t=e);return t?new Mc(t.start,t.end):null}getLastRange(){let t=null;for(const e of this._ranges)t&&!e.end.isAfter(t.end)||(t=e);return t?new Mc(t.start,t.end):null}getFirstPosition(){const t=this.getFirstRange();return t?t.start.clone():null}getLastPosition(){const t=this.getLastRange();return t?t.end.clone():null}setTo(...t){let[e,n,i]=t;if("object"==typeof n&&(i=n,n=void 0),null===e)this._setRanges([]);else if(e instanceof el)this._setRanges(e.getRanges(),e.isBackward);else if(e&&"function"==typeof e.getRanges)this._setRanges(e.getRanges(),e.isBackward);else if(e instanceof Mc)this._setRanges([e],!!i&&!!i.backward);else if(e instanceof Rc)this._setRanges([new Mc(e)]);else if(e instanceof Ec){const t=!!i&&!!i.backward;let o;if("in"==n)o=Mc._createIn(e);else if("on"==n)o=Mc._createOn(e);else{if(void 0===n)throw new w("model-selection-setto-required-second-parameter",[this,e]);o=new Mc(Rc._createAt(e,n))}this._setRanges([o],t)}else{if(!X(e))throw new w("model-selection-setto-not-selectable",[this,e]);this._setRanges(e,i&&!!i.backward)}}_setRanges(t,e=!1){const n=Array.from(t),i=n.some((e=>{if(!(e instanceof Mc))throw new w("model-selection-set-ranges-not-range",[this,t]);return this._ranges.every((t=>!t.isEqual(e)))}));(n.length!==this._ranges.length||i)&&(this._replaceAllRanges(n),this._lastRangeBackward=!!e,this.fire("change:range",{directChange:!0}))}setFocus(t,e){if(null===this.anchor)throw new w("model-selection-setfocus-no-ranges",[this,t]);const n=Rc._createAt(t,e);if("same"==n.compareWith(this.focus))return;const i=this.anchor;this._ranges.length&&this._popRange(),"before"==n.compareWith(i)?(this._pushRange(new Mc(n,i)),this._lastRangeBackward=!0):(this._pushRange(new Mc(i,n)),this._lastRangeBackward=!1),this.fire("change:range",{directChange:!0})}getAttribute(t){return this._attrs.get(t)}getAttributes(){return this._attrs.entries()}getAttributeKeys(){return this._attrs.keys()}hasAttribute(t){return this._attrs.has(t)}removeAttribute(t){this.hasAttribute(t)&&(this._attrs.delete(t),this.fire("change:attribute",{attributeKeys:[t],directChange:!0}))}setAttribute(t,e){this.getAttribute(t)!==e&&(this._attrs.set(t,e),this.fire("change:attribute",{attributeKeys:[t],directChange:!0}))}getSelectedElement(){return 1!==this.rangeCount?null:this.getFirstRange().getContainedElement()}*getSelectedBlocks(){const t=new WeakSet;for(const e of this.getRanges()){const n=ol(e.start,t);sl(n,e)&&(yield n);for(const n of e.getWalker()){const i=n.item;"elementEnd"==n.type&&il(i,t,e)&&(yield i)}const i=ol(e.end,t);al(i,e)&&(yield i)}}containsEntireContent(t=this.anchor.root){const e=Rc._createAt(t,0),n=Rc._createAt(t,"end");return e.isTouching(this.getFirstPosition())&&n.isTouching(this.getLastPosition())}_pushRange(t){this._checkRange(t),this._ranges.push(new Mc(t.start,t.end))}_checkRange(t){for(let e=0;e0;)this._popRange()}_popRange(){this._ranges.pop()}}function nl(t,e){return!e.has(t)&&(e.add(t),t.root.document.model.schema.isBlock(t)&&!!t.parent)}function il(t,e,n){return nl(t,e)&&rl(t,n)}function ol(t,e){const n=t.parent.root.document.model.schema,i=t.parent.getAncestors({parentFirst:!0,includeSelf:!0});let o=!1;const r=i.find((t=>!o&&(o=n.isLimit(t),!o&&nl(t,e))));return i.forEach((t=>e.add(t))),r}function rl(t,e){const n=function(t){const e=t.root.document.model.schema;let n=t.parent;for(;n;){if(e.isBlock(n))return n;n=n.parent}}(t);if(!n)return!0;return!e.containsRange(Mc._createOn(n),!0)}function sl(t,e){return!!t&&(!(!e.isCollapsed&&!t.isEmpty)||!e.start.isTouching(Rc._createAt(t,t.maxOffset))&&rl(t,e))}function al(t,e){return!!t&&(!(!e.isCollapsed&&!t.isEmpty)||!e.end.isTouching(Rc._createAt(t,0))&&rl(t,e))}el.prototype.is=function(t){return"selection"===t||"model:selection"===t};class cl extends(S(Mc)){constructor(t,e){super(t,e),ll.call(this)}detach(){this.stopListening()}toRange(){return new Mc(this.start,this.end)}static fromRange(t){return new cl(t.start,t.end)}}function ll(){this.listenTo(this.root.document.model,"applyOperation",((t,e)=>{const n=e[0];n.isDocumentOperation&&dl.call(this,n)}),{priority:"low"})}function dl(t){const e=this.getTransformedByOperation(t),n=Mc._createFromRanges(e),i=!n.isEqual(this),o=function(t,e){switch(e.type){case"insert":return t.containsPosition(e.position);case"move":case"remove":case"reinsert":case"merge":return t.containsPosition(e.sourcePosition)||t.start.isEqual(e.sourcePosition)||t.containsPosition(e.targetPosition);case"split":return t.containsPosition(e.splitPosition)||t.containsPosition(e.insertionPosition)}return!1}(this,t);let r=null;if(i){"$graveyard"==n.root.rootName&&(r="remove"==t.type?t.sourcePosition:t.deletionPosition);const e=this.toRange();this.start=n.start,this.end=n.end,this.fire("change:range",e,{deletionPosition:r})}else o&&this.fire("change:content",this.toRange(),{deletionPosition:r})}cl.prototype.is=function(t){return"liveRange"===t||"model:liveRange"===t||"range"==t||"model:range"===t};const hl="selection:";class ul extends(S(xc)){constructor(t){super(),this._selection=new ml(t),this._selection.delegate("change:range").to(this),this._selection.delegate("change:attribute").to(this),this._selection.delegate("change:marker").to(this)}get isCollapsed(){return this._selection.isCollapsed}get anchor(){return this._selection.anchor}get focus(){return this._selection.focus}get rangeCount(){return this._selection.rangeCount}get hasOwnRange(){return this._selection.hasOwnRange}get isBackward(){return this._selection.isBackward}get isGravityOverridden(){return this._selection.isGravityOverridden}get markers(){return this._selection.markers}get _ranges(){return this._selection._ranges}getRanges(){return this._selection.getRanges()}getFirstPosition(){return this._selection.getFirstPosition()}getLastPosition(){return this._selection.getLastPosition()}getFirstRange(){return this._selection.getFirstRange()}getLastRange(){return this._selection.getLastRange()}getSelectedBlocks(){return this._selection.getSelectedBlocks()}getSelectedElement(){return this._selection.getSelectedElement()}containsEntireContent(t){return this._selection.containsEntireContent(t)}destroy(){this._selection.destroy()}getAttributeKeys(){return this._selection.getAttributeKeys()}getAttributes(){return this._selection.getAttributes()}getAttribute(t){return this._selection.getAttribute(t)}hasAttribute(t){return this._selection.hasAttribute(t)}refresh(){this._selection.updateMarkers(),this._selection._updateAttributes(!1)}observeMarkers(t){this._selection.observeMarkers(t)}_setFocus(t,e){this._selection.setFocus(t,e)}_setTo(...t){this._selection.setTo(...t)}_setAttribute(t,e){this._selection.setAttribute(t,e)}_removeAttribute(t){this._selection.removeAttribute(t)}_getStoredAttributes(){return this._selection.getStoredAttributes()}_overrideGravity(){return this._selection.overrideGravity()}_restoreGravity(t){this._selection.restoreGravity(t)}static _getStoreAttributeKey(t){return hl+t}static _isStoreAttributeKey(t){return t.startsWith(hl)}}ul.prototype.is=function(t){return"selection"===t||"model:selection"==t||"documentSelection"==t||"model:documentSelection"==t};class ml extends el{constructor(t){super(),this.markers=new Uo({idProperty:"name"}),this._attributePriority=new Map,this._selectionRestorePosition=null,this._hasChangedRange=!1,this._overriddenGravityRegister=new Set,this._observedMarkers=new Set,this._model=t.model,this._document=t,this.listenTo(this._model,"applyOperation",((t,e)=>{const n=e[0];n.isDocumentOperation&&"marker"!=n.type&&"rename"!=n.type&&"noop"!=n.type&&(0==this._ranges.length&&this._selectionRestorePosition&&this._fixGraveyardSelection(this._selectionRestorePosition),this._selectionRestorePosition=null,this._hasChangedRange&&(this._hasChangedRange=!1,this.fire("change:range",{directChange:!1})))}),{priority:"lowest"}),this.on("change:range",(()=>{this._validateSelectionRanges(this.getRanges())})),this.listenTo(this._model.markers,"update",((t,e,n,i)=>{this._updateMarker(e,i)})),this.listenTo(this._document,"change",((t,e)=>{!function(t,e){const n=t.document.differ;for(const i of n.getChanges()){if("insert"!=i.type)continue;const n=i.position.parent;i.length===n.maxOffset&&t.enqueueChange(e,(t=>{const e=Array.from(n.getAttributeKeys()).filter((t=>t.startsWith(hl)));for(const i of e)t.removeAttribute(i,n)}))}}(this._model,e)}))}get isCollapsed(){return 0===this._ranges.length?this._document._getDefaultRange().isCollapsed:super.isCollapsed}get anchor(){return super.anchor||this._document._getDefaultRange().start}get focus(){return super.focus||this._document._getDefaultRange().end}get rangeCount(){return this._ranges.length?this._ranges.length:1}get hasOwnRange(){return this._ranges.length>0}get isGravityOverridden(){return!!this._overriddenGravityRegister.size}destroy(){for(let t=0;t{if(this._hasChangedRange=!0,e.root==this._document.graveyard){this._selectionRestorePosition=i.deletionPosition;const t=this._ranges.indexOf(e);this._ranges.splice(t,1),e.detach()}})),e}updateMarkers(){if(!this._observedMarkers.size)return;const t=[];let e=!1;for(const e of this._model.markers){const n=e.name.split(":",1)[0];if(!this._observedMarkers.has(n))continue;const i=e.getRange();for(const n of this.getRanges())i.containsRange(n,!n.isCollapsed)&&t.push(e)}const n=Array.from(this.markers);for(const n of t)this.markers.has(n)||(this.markers.add(n),e=!0);for(const n of Array.from(this.markers))t.includes(n)||(this.markers.remove(n),e=!0);e&&this.fire("change:marker",{oldMarkers:n,directChange:!1})}_updateMarker(t,e){const n=t.name.split(":",1)[0];if(!this._observedMarkers.has(n))return;let i=!1;const o=Array.from(this.markers),r=this.markers.has(t);if(e){let n=!1;for(const t of this.getRanges())if(e.containsRange(t,!t.isCollapsed)){n=!0;break}n&&!r?(this.markers.add(t),i=!0):!n&&r&&(this.markers.remove(t),i=!0)}else r&&(this.markers.remove(t),i=!0);i&&this.fire("change:marker",{oldMarkers:o,directChange:!1})}_updateAttributes(t){const e=Jo(this._getSurroundingAttributes()),n=Jo(this.getAttributes());if(t)this._attributePriority=new Map,this._attrs=new Map;else for(const[t,e]of this._attributePriority)"low"==e&&(this._attrs.delete(t),this._attributePriority.delete(t));this._setAttributesTo(e);const i=[];for(const[t,e]of this.getAttributes())n.has(t)&&n.get(t)===e||i.push(t);for(const[t]of n)this.hasAttribute(t)||i.push(t);i.length>0&&this.fire("change:attribute",{attributeKeys:i,directChange:!1})}_setAttribute(t,e,n=!0){const i=n?"normal":"low";if("low"==i&&"normal"==this._attributePriority.get(t))return!1;return super.getAttribute(t)!==e&&(this._attrs.set(t,e),this._attributePriority.set(t,i),!0)}_removeAttribute(t,e=!0){const n=e?"normal":"low";return("low"!=n||"normal"!=this._attributePriority.get(t))&&(this._attributePriority.set(t,n),!!super.hasAttribute(t)&&(this._attrs.delete(t),!0))}_setAttributesTo(t){const e=new Set;for(const[e,n]of this.getAttributes())t.get(e)!==n&&this._removeAttribute(e,!1);for(const[n,i]of t){this._setAttribute(n,i,!1)&&e.add(n)}return e}*getStoredAttributes(){const t=this.getFirstPosition().parent;if(this.isCollapsed&&t.isEmpty)for(const e of t.getAttributeKeys())if(e.startsWith(hl)){const n=e.substr(10);yield[n,t.getAttribute(e)]}}_getSurroundingAttributes(){const t=this.getFirstPosition(),e=this._model.schema;if("$graveyard"==t.root.rootName)return null;let n=null;if(this.isCollapsed){const i=t.textNode?t.textNode:t.nodeBefore,o=t.textNode?t.textNode:t.nodeAfter;if(this.isGravityOverridden||(n=gl(i,e)),n||(n=gl(o,e)),!this.isGravityOverridden&&!n){let t=i;for(;t&&!n;)t=t.previousSibling,n=gl(t,e)}if(!n){let t=o;for(;t&&!n;)t=t.nextSibling,n=gl(t,e)}n||(n=this.getStoredAttributes())}else{const t=this.getFirstRange();for(const i of t){if(i.item.is("element")&&e.isObject(i.item)){n=gl(i.item,e);break}if("text"==i.type){n=i.item.getAttributes();break}}}return n}_fixGraveyardSelection(t){const e=this._model.schema.getNearestSelectionRange(t);e&&this._pushRange(e)}}function gl(t,e){if(!t)return null;if(t instanceof Sc||t instanceof Bc)return t.getAttributes();if(!e.isInline(t))return null;if(!e.isObject(t))return[];const n=[];for(const[i,o]of t.getAttributes())e.checkAttribute("$text",i)&&!1!==e.getAttributeProperties(i).copyFromObject&&n.push([i,o]);return n}class pl{constructor(t){this._dispatchers=t}add(t){for(const e of this._dispatchers)t(e);return this}}class fl extends pl{elementToElement(t){return this.add(function(t){const e=Cl(t.model),n=vl(t.view,"container");e.attributes.length&&(e.children=!0);return i=>{i.on(`insert:${e.name}`,wl(n,Bl(e)),{priority:t.converterPriority||"normal"}),(e.children||e.attributes.length)&&i.on("reduceChanges",Dl(e),{priority:"low"})}}(t))}elementToStructure(t){return this.add(function(t){const e=Cl(t.model),n=vl(t.view,"container");return e.children=!0,i=>{if(i._conversionApi.schema.checkChild(e.name,"$text"))throw new w("conversion-element-to-structure-disallowed-text",i,{elementName:e.name});var o,r;i.on(`insert:${e.name}`,(o=n,r=Bl(e),(t,e,n)=>{if(!r(e.item,n.consumable,{preflight:!0}))return;const i=new Map;n.writer._registerSlotFactory(function(t,e,n){return(i,o)=>{const r=i.createContainerElement("$slot");let s=null;if("children"===o)s=Array.from(t.getChildren());else{if("function"!=typeof o)throw new w("conversion-slot-mode-unknown",n.dispatcher,{modeOrFilter:o});s=Array.from(t.getChildren()).filter((t=>o(t)))}return e.set(r,s),r}}(e.item,i,n));const s=o(e.item,n,e);if(n.writer._clearSlotFactory(),!s)return;!function(t,e,n){const i=Array.from(e.values()).flat(),o=new Set(i);if(o.size!=i.length)throw new w("conversion-slot-filter-overlap",n.dispatcher,{element:t});if(o.size!=t.childCount)throw new w("conversion-slot-filter-incomplete",n.dispatcher,{element:t})}(e.item,i,n),r(e.item,n.consumable);const a=n.mapper.toViewPosition(e.range.start);n.mapper.bindElements(e.item,s),n.writer.insert(a,s),n.convertAttributes(e.item),function(t,e,n,i){n.mapper.on("modelToViewPosition",s,{priority:"highest"});let o=null,r=null;for([o,r]of e)Sl(t,r,n,i),n.writer.move(n.writer.createRangeIn(o),n.writer.createPositionBefore(o)),n.writer.remove(o);function s(t,e){const n=e.modelPosition.nodeAfter,i=r.indexOf(n);i<0||(e.viewPosition=e.mapper.findPositionIn(o,i))}n.mapper.off("modelToViewPosition",s)}(s,i,n,{reconversion:e.reconversion})}),{priority:t.converterPriority||"normal"}),i.on("reduceChanges",Dl(e),{priority:"low"})}}(t))}attributeToElement(t){return this.add(function(t){t=vc(t);let e=t.model;"string"==typeof e&&(e={key:e});let n=`attribute:${e.key}`;e.name&&(n+=":"+e.name);if(e.values)for(const n of e.values)t.view[n]=vl(t.view[n],"attribute");else t.view=vl(t.view,"attribute");const i=yl(t);return e=>{e.on(n,kl(i),{priority:t.converterPriority||"normal"})}}(t))}attributeToAttribute(t){return this.add(function(t){t=vc(t);let e=t.model;"string"==typeof e&&(e={key:e});let n=`attribute:${e.key}`;e.name&&(n+=":"+e.name);if(e.values)for(const n of e.values)t.view[n]=xl(t.view[n]);else t.view=xl(t.view);const i=yl(t);return e=>{var o;e.on(n,(o=i,(t,e,n)=>{if(!n.consumable.test(e.item,t.name))return;const i=o(e.attributeOldValue,n,e),r=o(e.attributeNewValue,n,e);if(!i&&!r)return;n.consumable.consume(e.item,t.name);const s=n.mapper.toViewElement(e.item),a=n.writer;if(!s)throw new w("conversion-attribute-to-attribute-on-text",n.dispatcher,e);if(null!==e.attributeOldValue&&i)if("class"==i.key){const t="string"==typeof i.value?i.value.split(/\s+/):i.value;for(const e of t)a.removeClass(e,s)}else if("style"==i.key)if("string"==typeof i.value){const t=new as(a.document.stylesProcessor);t.setTo(i.value);for(const[e]of t.getStylesEntries())a.removeStyle(e,s)}else{const t=Object.keys(i.value);for(const e of t)a.removeStyle(e,s)}else a.removeAttribute(i.key,s);if(null!==e.attributeNewValue&&r)if("class"==r.key){const t="string"==typeof r.value?r.value.split(/\s+/):r.value;for(const e of t)a.addClass(e,s)}else if("style"==r.key)if("string"==typeof r.value){const t=new as(a.document.stylesProcessor);t.setTo(r.value);for(const[e,n]of t.getStylesEntries())a.setStyle(e,n,s)}else{const t=Object.keys(r.value);for(const e of t)a.setStyle(e,r.value[e],s)}else a.setAttribute(r.key,r.value,s)}),{priority:t.converterPriority||"normal"})}}(t))}markerToElement(t){return this.add(function(t){const e=vl(t.view,"ui");return n=>{n.on(`addMarker:${t.model}`,_l(e),{priority:t.converterPriority||"normal"}),n.on(`removeMarker:${t.model}`,((t,e,n)=>{const i=n.mapper.markerNameToElements(e.markerName);if(i){for(const t of i)n.mapper.unbindElementFromMarkerName(t,e.markerName),n.writer.clear(n.writer.createRangeOn(t),t);n.writer.clearClonedElementsGroup(e.markerName),t.stop()}}),{priority:t.converterPriority||"normal"})}}(t))}markerToHighlight(t){return this.add(function(t){return e=>{var n;e.on(`addMarker:${t.model}`,(n=t.view,(t,e,i)=>{if(!e.item)return;if(!(e.item instanceof el||e.item instanceof ul||e.item.is("$textProxy")))return;const o=El(n,e,i);if(!o)return;if(!i.consumable.consume(e.item,t.name))return;const r=i.writer,s=bl(r,o),a=r.document.selection;if(e.item instanceof el||e.item instanceof ul)r.wrap(a.getFirstRange(),s);else{const t=i.mapper.toViewRange(e.range),n=r.wrap(t,s);for(const t of n.getItems())if(t.is("attributeElement")&&t.isSimilar(s)){i.mapper.bindElementToMarker(t,e.markerName);break}}}),{priority:t.converterPriority||"normal"}),e.on(`addMarker:${t.model}`,function(t){return(e,n,i)=>{if(!n.item)return;if(!(n.item instanceof Tc))return;const o=El(t,n,i);if(!o)return;if(!i.consumable.test(n.item,e.name))return;const r=i.mapper.toViewElement(n.item);if(r&&r.getCustomProperty("addHighlight")){i.consumable.consume(n.item,e.name);for(const t of Mc._createIn(n.item))i.consumable.consume(t.item,e.name);r.getCustomProperty("addHighlight")(r,o,i.writer),i.mapper.bindElementToMarker(r,n.markerName)}}}(t.view),{priority:t.converterPriority||"normal"}),e.on(`removeMarker:${t.model}`,function(t){return(e,n,i)=>{if(n.markerRange.isCollapsed)return;const o=El(t,n,i);if(!o)return;const r=bl(i.writer,o),s=i.mapper.markerNameToElements(n.markerName);if(s){for(const t of s)if(i.mapper.unbindElementFromMarkerName(t,n.markerName),t.is("attributeElement"))i.writer.unwrap(i.writer.createRangeOn(t),r);else{t.getCustomProperty("removeHighlight")(t,o.id,i.writer)}i.writer.clearClonedElementsGroup(n.markerName),e.stop()}}}(t.view),{priority:t.converterPriority||"normal"})}}(t))}markerToData(t){return this.add(function(t){t=vc(t);const e=t.model;let n=t.view;n||(n=n=>({group:e,name:n.substr(t.model.length+1)}));return i=>{var o;i.on(`addMarker:${e}`,(o=n,(t,e,n)=>{const i=o(e.markerName,n);if(!i)return;const r=e.markerRange;n.consumable.consume(r,t.name)&&(Al(r,!1,n,e,i),Al(r,!0,n,e,i),t.stop())}),{priority:t.converterPriority||"normal"}),i.on(`removeMarker:${e}`,function(t){return(e,n,i)=>{const o=t(n.markerName,i);if(!o)return;const r=i.mapper.markerNameToElements(n.markerName);if(r){for(const t of r)i.mapper.unbindElementFromMarkerName(t,n.markerName),t.is("containerElement")?(s(`data-${o.group}-start-before`,t),s(`data-${o.group}-start-after`,t),s(`data-${o.group}-end-before`,t),s(`data-${o.group}-end-after`,t)):i.writer.clear(i.writer.createRangeOn(t),t);i.writer.clearClonedElementsGroup(n.markerName),e.stop()}function s(t,e){if(e.hasAttribute(t)){const n=new Set(e.getAttribute(t).split(","));n.delete(o.name),0==n.size?i.writer.removeAttribute(t,e):i.writer.setAttribute(t,Array.from(n).join(","),e)}}}}(n),{priority:t.converterPriority||"normal"})}}(t))}}function bl(t,e){const n=t.createAttributeElement("span",e.attributes);return e.classes&&n._addClass(e.classes),"number"==typeof e.priority&&(n._priority=e.priority),n._id=e.id,n}function kl(t){return(e,n,i)=>{if(!i.consumable.test(n.item,e.name))return;const o=t(n.attributeOldValue,i,n),r=t(n.attributeNewValue,i,n);if(!o&&!r)return;i.consumable.consume(n.item,e.name);const s=i.writer,a=s.document.selection;if(n.item instanceof el||n.item instanceof ul)s.wrap(a.getFirstRange(),r);else{let t=i.mapper.toViewRange(n.range);null!==n.attributeOldValue&&o&&(t=s.unwrap(t,o)),null!==n.attributeNewValue&&r&&s.wrap(t,r)}}}function wl(t,e=Il){return(n,i,o)=>{if(!e(i.item,o.consumable,{preflight:!0}))return;const r=t(i.item,o,i);if(!r)return;e(i.item,o.consumable);const s=o.mapper.toViewPosition(i.range.start);o.mapper.bindElements(i.item,r),o.writer.insert(s,r),o.convertAttributes(i.item),Sl(r,i.item.getChildren(),o,{reconversion:i.reconversion})}}function _l(t){return(e,n,i)=>{n.isOpening=!0;const o=t(n,i);n.isOpening=!1;const r=t(n,i);if(!o||!r)return;const s=n.markerRange;if(s.isCollapsed&&!i.consumable.consume(s,e.name))return;for(const t of s)if(!i.consumable.consume(t.item,e.name))return;const a=i.mapper,c=i.writer;c.insert(a.toViewPosition(s.start),o),i.mapper.bindElementToMarker(o,n.markerName),s.isCollapsed||(c.insert(a.toViewPosition(s.end),r),i.mapper.bindElementToMarker(r,n.markerName)),e.stop()}}function Al(t,e,n,i,o){const r=e?t.start:t.end,s=r.nodeAfter&&r.nodeAfter.is("element")?r.nodeAfter:null,a=r.nodeBefore&&r.nodeBefore.is("element")?r.nodeBefore:null;if(s||a){let t,r;e&&s||!e&&!a?(t=s,r=!0):(t=a,r=!1);const c=n.mapper.toViewElement(t);if(c)return void function(t,e,n,i,o,r){const s=`data-${r.group}-${e?"start":"end"}-${n?"before":"after"}`,a=t.hasAttribute(s)?t.getAttribute(s).split(","):[];a.unshift(r.name),i.writer.setAttribute(s,a.join(","),t),i.mapper.bindElementToMarker(t,o.markerName)}(c,e,r,n,i,o)}!function(t,e,n,i,o){const r=`${o.group}-${e?"start":"end"}`,s=o.name?{name:o.name}:null,a=n.writer.createUIElement(r,s);n.writer.insert(t,a),n.mapper.bindElementToMarker(a,i.markerName)}(n.mapper.toViewPosition(r),e,n,i,o)}function Cl(t){return"string"==typeof t&&(t={name:t}),{name:t.name,attributes:t.attributes?_o(t.attributes):[],children:!!t.children}}function vl(t,e){return"function"==typeof t?t:(n,i)=>function(t,e,n){"string"==typeof t&&(t={name:t});let i;const o=e.writer,r=Object.assign({},t.attributes);if("container"==n)i=o.createContainerElement(t.name,r);else if("attribute"==n){const e={priority:t.priority||Ps.DEFAULT_PRIORITY};i=o.createAttributeElement(t.name,r,e)}else i=o.createUIElement(t.name,r);if(t.styles){const e=Object.keys(t.styles);for(const n of e)o.setStyle(n,t.styles[n],i)}if(t.classes){const e=t.classes;if("string"==typeof e)o.addClass(e,i);else for(const t of e)o.addClass(t,i)}return i}(t,i,e)}function yl(t){return t.model.values?(e,n,i)=>{const o=t.view[e];return o?o(e,n,i):null}:t.view}function xl(t){return"string"==typeof t?e=>({key:t,value:e}):"object"==typeof t?t.value?()=>t:e=>({key:t.key,value:e}):t}function El(t,e,n){const i="function"==typeof t?t(e,n):t;return i?(i.priority||(i.priority=10),i.id||(i.id=e.markerName),i):null}function Dl(t){const e=function(t){return(e,n)=>{if(!e.is("element",t.name))return!1;if("attribute"==n.type){if(t.attributes.includes(n.attributeKey))return!0}else if(t.children)return!0;return!1}}(t);return(t,n)=>{const i=[];n.reconvertedElements||(n.reconvertedElements=new Set);for(const t of n.changes){const o="attribute"==t.type?t.range.start.nodeAfter:t.position.parent;if(o&&e(o,t)){if(!n.reconvertedElements.has(o)){n.reconvertedElements.add(o);const t=Rc._createBefore(o);let e=i.length;for(let n=i.length-1;n>=0;n--){const o=i[n],r=("attribute"==o.type?o.range.start:o.position).compareWith(t);if("before"==r||"remove"==o.type&&"same"==r)break;e=n}i.splice(e,0,{type:"remove",name:o.name,position:t,length:1},{type:"reinsert",name:o.name,position:t,length:1})}}else i.push(t)}n.changes=i}}function Bl(t){return(e,n,i={})=>{const o=["insert"];for(const n of t.attributes)e.hasAttribute(n)&&o.push(`attribute:${n}`);return!!o.every((t=>n.test(e,t)))&&(i.preflight||o.forEach((t=>n.consume(e,t))),!0)}}function Sl(t,e,n,i){for(const o of e)Tl(t.root,o,n,i)||n.convertItem(o)}function Tl(t,e,n,i){const{writer:o,mapper:r}=n;if(!i.reconversion)return!1;const s=r.toViewElement(e);return!(!s||s.root==t)&&(!!n.canReuseView(s)&&(o.move(o.createRangeOn(s),r.toViewPosition(Rc._createBefore(e))),!0))}function Il(t,e,{preflight:n}={}){return n?e.test(t,"insert"):e.consume(t,"insert")}function Pl(t){const{schema:e,document:n}=t.model;for(const i of n.getRoots())if(i.isEmpty&&!e.checkChild(i,"$text")&&e.checkChild(i,"paragraph"))return t.insertElement("paragraph",i),!0;return!1}function Rl(t,e,n){const i=n.createContext(t);return!!n.checkChild(i,"paragraph")&&!!n.checkChild(i.push("paragraph"),e)}function Vl(t,e){const n=e.createElement("paragraph");return e.insert(n,t),e.createPositionAt(n,0)}var Fl=Object.defineProperty,Ll=Object.defineProperties,Ol=Object.getOwnPropertyDescriptors,zl=Object.getOwnPropertySymbols,Ml=Object.prototype.hasOwnProperty,Nl=Object.prototype.propertyIsEnumerable,Hl=(t,e,n)=>e in t?Fl(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class jl extends pl{elementToElement(t){return this.add(ql(t))}elementToAttribute(t){return this.add(function(t){t=vc(t),$l(t);const e=Gl(t,!1),n=Wl(t.view),i=n?`element:${n}`:"element";return n=>{n.on(i,e,{priority:t.converterPriority||"low"})}}(t))}attributeToAttribute(t){return this.add(function(t){t=vc(t);let e=null;("string"==typeof t.view||t.view.key)&&(e=function(t){"string"==typeof t.view&&(t.view={key:t.view});const e=t.view.key,n=void 0===t.view.value?/[\s\S]*/:t.view.value;let i;if("class"==e||"style"==e){const t="class"==e?"classes":"styles";i={[t]:n}}else i={attributes:{[e]:n}};t.view.name&&(i.name=t.view.name);return t.view=i,e}(t));$l(t,e);const n=Gl(t,!0);return e=>{e.on("element",n,{priority:t.converterPriority||"low"})}}(t))}elementToMarker(t){return this.add(function(t){const e=function(t){return(e,n)=>{const i="string"==typeof t?t:t(e,n);return n.writer.createElement("$marker",{"data-name":i})}}(t.model);return ql((n=((t,e)=>{for(var n in e||(e={}))Ml.call(e,n)&&Hl(t,n,e[n]);if(zl)for(var n of zl(e))Nl.call(e,n)&&Hl(t,n,e[n]);return t})({},t),i={model:e},Ll(n,Ol(i))));var n,i}(t))}dataToMarker(t){return this.add(function(t){t=vc(t),t.model||(t.model=e=>e?t.view+":"+e:t.view);const e={view:t.view,model:t.model},n=Ul(Kl(e,"start")),i=Ul(Kl(e,"end"));return o=>{o.on(`element:${t.view}-start`,n,{priority:t.converterPriority||"normal"}),o.on(`element:${t.view}-end`,i,{priority:t.converterPriority||"normal"});const r=f.low,s=f.highest,a=f.get(t.converterPriority)/s;o.on("element",function(t){return(e,n,i)=>{const o=`data-${t.view}`;function r(e,o){for(const r of o){const o=t.model(r,i),s=i.writer.createElement("$marker",{"data-name":o});i.writer.insert(s,e),n.modelCursor.isEqual(e)?n.modelCursor=n.modelCursor.getShiftedBy(1):n.modelCursor=n.modelCursor._getTransformedByInsertion(e,1),n.modelRange=n.modelRange._getTransformedByInsertion(e,1)[0]}}(i.consumable.test(n.viewItem,{attributes:o+"-end-after"})||i.consumable.test(n.viewItem,{attributes:o+"-start-after"})||i.consumable.test(n.viewItem,{attributes:o+"-end-before"})||i.consumable.test(n.viewItem,{attributes:o+"-start-before"}))&&(n.modelRange||Object.assign(n,i.convertChildren(n.viewItem,n.modelCursor)),i.consumable.consume(n.viewItem,{attributes:o+"-end-after"})&&r(n.modelRange.end,n.viewItem.getAttribute(o+"-end-after").split(",")),i.consumable.consume(n.viewItem,{attributes:o+"-start-after"})&&r(n.modelRange.end,n.viewItem.getAttribute(o+"-start-after").split(",")),i.consumable.consume(n.viewItem,{attributes:o+"-end-before"})&&r(n.modelRange.start,n.viewItem.getAttribute(o+"-end-before").split(",")),i.consumable.consume(n.viewItem,{attributes:o+"-start-before"})&&r(n.modelRange.start,n.viewItem.getAttribute(o+"-start-before").split(",")))}}(e),{priority:r+a})}}(t))}}function ql(t){const e=Ul(t=vc(t)),n=Wl(t.view),i=n?`element:${n}`:"element";return n=>{n.on(i,e,{priority:t.converterPriority||"normal"})}}function Wl(t){return"string"==typeof t?t:"object"==typeof t&&"string"==typeof t.name?t.name:null}function Ul(t){const e=new Ir(t.view);return(n,i,o)=>{const r=e.match(i.viewItem);if(!r)return;const s=r.match;if(s.name=!0,!o.consumable.test(i.viewItem,s))return;const a=function(t,e,n){return t instanceof Function?t(e,n):n.writer.createElement(t)}(t.model,i.viewItem,o);a&&o.safeInsert(a,i.modelCursor)&&(o.consumable.consume(i.viewItem,s),o.convertChildren(i.viewItem,a),o.updateConversionResult(a,i))}}function $l(t,e=null){const n=null===e||(t=>t.getAttribute(e)),i="object"!=typeof t.model?t.model:t.model.key,o="object"!=typeof t.model||void 0===t.model.value?n:t.model.value;t.model={key:i,value:o}}function Gl(t,e){const n=new Ir(t.view);return(i,o,r)=>{if(!o.modelRange&&e)return;const s=n.match(o.viewItem);if(!s)return;if(!function(t,e){const n="function"==typeof t?t(e):t;if("object"==typeof n&&!Wl(n))return!1;return!n.classes&&!n.attributes&&!n.styles}(t.view,o.viewItem)?delete s.match.name:s.match.name=!0,!r.consumable.test(o.viewItem,s.match))return;const a=t.model.key,c="function"==typeof t.model.value?t.model.value(o.viewItem,r):t.model.value;if(null===c)return;o.modelRange||Object.assign(o,r.convertChildren(o.viewItem,o.modelCursor));const l=function(t,e,n,i){let o=!1;for(const r of Array.from(t.getItems({shallow:n})))i.schema.checkAttribute(r,e.key)&&(o=!0,r.hasAttribute(e.key)||i.writer.setAttribute(e.key,e.value,r));return o}(o.modelRange,{key:a,value:c},e,r);l&&(r.consumable.test(o.viewItem,{name:!0})&&(s.match.name=!0),r.consumable.consume(o.viewItem,s.match))}}function Kl(t,e){return{view:`${t.view}-${e}`,model:(e,n)=>{const i=e.getAttribute("name"),o=t.model(i,n);return n.writer.createElement("$marker",{"data-name":o})}}}function Jl(t){t.document.registerPostFixer((e=>function(t,e){const n=e.document.selection,i=e.schema,o=[];let r=!1;for(const t of n.getRanges()){const e=Zl(t,i);e&&!e.isEqual(t)?(o.push(e),r=!0):o.push(t)}r&&t.setSelection(function(t){const e=[...t],n=new Set;let i=1;for(;i!n.has(e)))}(o),{backward:n.isBackward});return!1}(e,t)))}function Zl(t,e){return t.isCollapsed?function(t,e){const n=t.start,i=e.getNearestSelectionRange(n);if(!i){const t=n.getAncestors().reverse().find((t=>e.isObject(t)));return t?Mc._createOn(t):null}if(!i.isCollapsed)return i;const o=i.start;if(n.isEqual(o))return null;return new Mc(o)}(t,e):function(t,e){const{start:n,end:i}=t,o=e.checkChild(n,"$text"),r=e.checkChild(i,"$text"),s=e.getLimitElement(n),a=e.getLimitElement(i);if(s===a){if(o&&r)return null;if(function(t,e,n){const i=t.nodeAfter&&!n.isLimit(t.nodeAfter)||n.checkChild(t,"$text"),o=e.nodeBefore&&!n.isLimit(e.nodeBefore)||n.checkChild(e,"$text");return i||o}(n,i,e)){const t=n.nodeAfter&&e.isSelectable(n.nodeAfter)?null:e.getNearestSelectionRange(n,"forward"),o=i.nodeBefore&&e.isSelectable(i.nodeBefore)?null:e.getNearestSelectionRange(i,"backward"),r=t?t.start:n,s=o?o.end:i;return new Mc(r,s)}}const c=s&&!s.is("rootElement"),l=a&&!a.is("rootElement");if(c||l){const t=n.nodeAfter&&i.nodeBefore&&n.nodeAfter.parent===i.nodeBefore.parent,o=c&&(!t||!Ql(n.nodeAfter,e)),r=l&&(!t||!Ql(i.nodeBefore,e));let d=n,h=i;return o&&(d=Rc._createBefore(Yl(s,e))),r&&(h=Rc._createAfter(Yl(a,e))),new Mc(d,h)}return null}(t,e)}function Yl(t,e){let n=t,i=n;for(;e.isLimit(i)&&i.parent;)n=i,i=i.parent;return n}function Ql(t,e){return t&&e.isSelectable(t)}class Xl extends(W()){constructor(t,e){super(),this.model=t,this.view=new yc(e),this.mapper=new Nc,this.downcastDispatcher=new Qc({mapper:this.mapper,schema:t.schema});const n=this.model.document,i=n.selection,o=this.model.markers;var r,a,c;this.listenTo(this.model,"_beforeChanges",(()=>{this.view._disableRendering(!0)}),{priority:"highest"}),this.listenTo(this.model,"_afterChanges",(()=>{this.view._disableRendering(!1)}),{priority:"lowest"}),this.listenTo(n,"change",(()=>{this.view.change((t=>{this.downcastDispatcher.convertChanges(n.differ,o,t),this.downcastDispatcher.convertSelection(i,o,t)}))}),{priority:"low"}),this.listenTo(this.view.document,"selectionChange",function(t,e){return(n,i)=>{const o=i.newSelection,r=[];for(const t of o.getRanges())r.push(e.toModelRange(t));const s=t.createSelection(r,{backward:o.isBackward});s.isEqual(t.document.selection)||t.change((t=>{t.setSelection(s)}))}}(this.model,this.mapper)),this.listenTo(this.view.document,"beforeinput",(r=this.mapper,a=this.model.schema,c=this.view,(t,e)=>{if(!c.document.isComposing||s.isAndroid)for(let t=0;t{if(!n.consumable.consume(e.item,t.name))return;const i=n.writer,o=n.mapper.toViewPosition(e.range.start),r=i.createText(e.item.data);i.insert(o,r)}),{priority:"lowest"}),this.downcastDispatcher.on("insert",((t,e,n)=>{n.convertAttributes(e.item),e.reconversion||!e.item.is("element")||e.item.isEmpty||n.convertChildren(e.item)}),{priority:"lowest"}),this.downcastDispatcher.on("remove",((t,e,n)=>{const i=n.mapper.toViewPosition(e.position),o=e.position.getShiftedBy(e.length),r=n.mapper.toViewPosition(o,{isPhantom:!0}),s=n.writer.createRange(i,r),a=n.writer.remove(s.getTrimmed());for(const t of n.writer.createRangeIn(a).getItems())n.mapper.unbindViewElement(t,{defer:!0})}),{priority:"low"}),this.downcastDispatcher.on("cleanSelection",((t,e,n)=>{const i=n.writer,o=i.document.selection;for(const t of o.getRanges())t.isCollapsed&&t.end.parent.isAttached()&&n.writer.mergeAttributes(t.start);i.setSelection(null)})),this.downcastDispatcher.on("selection",((t,e,n)=>{const i=e.selection;if(i.isCollapsed)return;if(!n.consumable.consume(i,"selection"))return;const o=[];for(const t of i.getRanges())o.push(n.mapper.toViewRange(t));n.writer.setSelection(o,{backward:i.isBackward})}),{priority:"low"}),this.downcastDispatcher.on("selection",((t,e,n)=>{const i=e.selection;if(!i.isCollapsed)return;if(!n.consumable.consume(i,"selection"))return;const o=n.writer,r=i.getFirstPosition(),s=n.mapper.toViewPosition(r),a=o.breakAttributes(s);o.setSelection(a)}),{priority:"low"}),this.view.document.roots.bindTo(this.model.document.roots).using((t=>{if("$graveyard"==t.rootName)return null;const e=new bs(this.view.document,t.name);return e.rootName=t.rootName,this.mapper.bindElements(t,e),e}))}destroy(){this.view.destroy(),this.stopListening()}reconvertMarker(t){const e="string"==typeof t?t:t.name,n=this.model.markers.get(e);if(!n)throw new w("editingcontroller-reconvertmarker-marker-not-exist",this,{markerName:e});this.model.change((()=>{this.model.markers._refresh(n)}))}reconvertItem(t){this.model.change((()=>{this.model.document.differ._refreshItem(t)}))}}class td{constructor(){this._consumables=new Map}add(t,e){let n;t.is("$text")||t.is("documentFragment")?this._consumables.set(t,!0):(this._consumables.has(t)?n=this._consumables.get(t):(n=new nd(t),this._consumables.set(t,n)),n.add(e))}test(t,e){const n=this._consumables.get(t);return void 0===n?null:t.is("$text")||t.is("documentFragment")?n:n.test(e)}consume(t,e){return!!this.test(t,e)&&(t.is("$text")||t.is("documentFragment")?this._consumables.set(t,!1):this._consumables.get(t).consume(e),!0)}revert(t,e){const n=this._consumables.get(t);void 0!==n&&(t.is("$text")||t.is("documentFragment")?this._consumables.set(t,!0):n.revert(e))}static consumablesFromElement(t){const e={element:t,name:!0,attributes:[],classes:[],styles:[]},n=t.getAttributeKeys();for(const t of n)"style"!=t&&"class"!=t&&e.attributes.push(t);const i=t.getClassNames();for(const t of i)e.classes.push(t);const o=t.getStyleNames();for(const t of o)e.styles.push(t);return e}static createFrom(t,e){if(e||(e=new td),t.is("$text"))return e.add(t),e;t.is("element")&&e.add(t,td.consumablesFromElement(t)),t.is("documentFragment")&&e.add(t);for(const n of t.getChildren())e=td.createFrom(n,e);return e}}const ed=["attributes","classes","styles"];class nd{constructor(t){this.element=t,this._canConsumeName=null,this._consumables={attributes:new Map,styles:new Map,classes:new Map}}add(t){t.name&&(this._canConsumeName=!0);for(const e of ed)e in t&&this._add(e,t[e])}test(t){if(t.name&&!this._canConsumeName)return this._canConsumeName;for(const e of ed)if(e in t){const n=this._test(e,t[e]);if(!0!==n)return n}return!0}consume(t){t.name&&(this._canConsumeName=!1);for(const e of ed)e in t&&this._consume(e,t[e])}revert(t){t.name&&(this._canConsumeName=!0);for(const e of ed)e in t&&this._revert(e,t[e])}_add(t,e){const n=_o(e),i=this._consumables[t];for(const e of n){if("attributes"===t&&("class"===e||"style"===e))throw new w("viewconsumable-invalid-attribute",this);if(i.set(e,!0),"styles"===t)for(const t of this.element.document.stylesProcessor.getRelatedStyles(e))i.set(t,!0)}}_test(t,e){const n=_o(e),i=this._consumables[t];for(const e of n)if("attributes"!==t||"class"!==e&&"style"!==e){const t=i.get(e);if(void 0===t)return null;if(!t)return!1}else{const t="class"==e?"classes":"styles",n=this._test(t,[...this._consumables[t].keys()]);if(!0!==n)return n}return!0}_consume(t,e){const n=_o(e),i=this._consumables[t];for(const e of n)if("attributes"!==t||"class"!==e&&"style"!==e){if(i.set(e,!1),"styles"==t)for(const t of this.element.document.stylesProcessor.getRelatedStyles(e))i.set(t,!1)}else{const t="class"==e?"classes":"styles";this._consume(t,[...this._consumables[t].keys()])}}_revert(t,e){const n=_o(e),i=this._consumables[t];for(const e of n)if("attributes"!==t||"class"!==e&&"style"!==e){!1===i.get(e)&&i.set(e,!0)}else{const t="class"==e?"classes":"styles";this._revert(t,[...this._consumables[t].keys()])}}}class id extends(W()){constructor(){super(),this._sourceDefinitions={},this._attributeProperties={},this.decorate("checkChild"),this.decorate("checkAttribute"),this.on("checkAttribute",((t,e)=>{e[0]=new od(e[0])}),{priority:"highest"}),this.on("checkChild",((t,e)=>{e[0]=new od(e[0]),e[1]=this.getDefinition(e[1])}),{priority:"highest"})}register(t,e){if(this._sourceDefinitions[t])throw new w("schema-cannot-register-item-twice",this,{itemName:t});this._sourceDefinitions[t]=[Object.assign({},e)],this._clearCache()}extend(t,e){if(!this._sourceDefinitions[t])throw new w("schema-cannot-extend-missing-item",this,{itemName:t});this._sourceDefinitions[t].push(Object.assign({},e)),this._clearCache()}getDefinitions(){return this._compiledDefinitions||this._compile(),this._compiledDefinitions}getDefinition(t){let e;return e="string"==typeof t?t:"is"in t&&(t.is("$text")||t.is("$textProxy"))?"$text":t.name,this.getDefinitions()[e]}isRegistered(t){return!!this.getDefinition(t)}isBlock(t){const e=this.getDefinition(t);return!(!e||!e.isBlock)}isLimit(t){const e=this.getDefinition(t);return!!e&&!(!e.isLimit&&!e.isObject)}isObject(t){const e=this.getDefinition(t);return!!e&&!!(e.isObject||e.isLimit&&e.isSelectable&&e.isContent)}isInline(t){const e=this.getDefinition(t);return!(!e||!e.isInline)}isSelectable(t){const e=this.getDefinition(t);return!!e&&!(!e.isSelectable&&!e.isObject)}isContent(t){const e=this.getDefinition(t);return!!e&&!(!e.isContent&&!e.isObject)}checkChild(t,e){return!!e&&this._checkContextMatch(e,t)}checkAttribute(t,e){const n=this.getDefinition(t.last);return!!n&&n.allowAttributes.includes(e)}checkMerge(t,e){if(t instanceof Rc){const e=t.nodeBefore,n=t.nodeAfter;if(!(e instanceof Tc))throw new w("schema-check-merge-no-element-before",this);if(!(n instanceof Tc))throw new w("schema-check-merge-no-element-after",this);return this.checkMerge(e,n)}for(const n of e.getChildren())if(!this.checkChild(t,n))return!1;return!0}addChildCheck(t){this.on("checkChild",((e,[n,i])=>{if(!i)return;const o=t(n,i);"boolean"==typeof o&&(e.stop(),e.return=o)}),{priority:"high"})}addAttributeCheck(t){this.on("checkAttribute",((e,[n,i])=>{const o=t(n,i);"boolean"==typeof o&&(e.stop(),e.return=o)}),{priority:"high"})}setAttributeProperties(t,e){this._attributeProperties[t]=Object.assign(this.getAttributeProperties(t),e)}getAttributeProperties(t){return this._attributeProperties[t]||{}}getLimitElement(t){let e;if(t instanceof Rc)e=t.parent;else{e=(t instanceof Mc?[t]:Array.from(t.getRanges())).reduce(((t,e)=>{const n=e.getCommonAncestor();return t?t.getCommonAncestor(n,{includeSelf:!0}):n}),null)}for(;!this.isLimit(e)&&e.parent;)e=e.parent;return e}checkAttributeInSelection(t,e){if(t.isCollapsed){const n=[...t.getFirstPosition().getAncestors(),new Bc("",t.getAttributes())];return this.checkAttribute(n,e)}{const n=t.getRanges();for(const t of n)for(const n of t)if(this.checkAttribute(n.item,e))return!0}return!1}*getValidRanges(t,e){t=function*(t){for(const e of t)yield*e.getMinimalFlatRanges()}(t);for(const n of t)yield*this._getValidRangesForRange(n,e)}getNearestSelectionRange(t,e="both"){if("$graveyard"==t.root.rootName)return null;if(this.checkChild(t,"$text"))return new Mc(t);let n,i;const o=t.getAncestors().reverse().find((t=>this.isLimit(t)))||t.root;"both"!=e&&"backward"!=e||(n=new Ic({boundaries:Mc._createIn(o),startPosition:t,direction:"backward"})),"both"!=e&&"forward"!=e||(i=new Ic({boundaries:Mc._createIn(o),startPosition:t}));for(const t of function*(t,e){let n=!1;for(;!n;){if(n=!0,t){const e=t.next();e.done||(n=!1,yield{walker:t,value:e.value})}if(e){const t=e.next();t.done||(n=!1,yield{walker:e,value:t.value})}}}(n,i)){const e=t.walker==n?"elementEnd":"elementStart",i=t.value;if(i.type==e&&this.isObject(i.item))return Mc._createOn(i.item);if(this.checkChild(i.nextPosition,"$text"))return new Mc(i.nextPosition)}return null}findAllowedParent(t,e){let n=t.parent;for(;n;){if(this.checkChild(n,e))return n;if(this.isLimit(n))return null;n=n.parent}return null}setAllowedAttributes(t,e,n){const i=n.model;for(const[o,r]of Object.entries(e))i.schema.checkAttribute(t,o)&&n.setAttribute(o,r,t)}removeDisallowedAttributes(t,e){for(const n of t)if(n.is("$text"))bd(this,n,e);else{const t=Mc._createIn(n).getPositions();for(const n of t){bd(this,n.nodeBefore||n.parent,e)}}}getAttributesWithProperty(t,e,n){const i={};for(const[o,r]of t.getAttributes()){const t=this.getAttributeProperties(o);void 0!==t[e]&&(void 0!==n&&n!==t[e]||(i[o]=r))}return i}createContext(t){return new od(t)}_clearCache(){this._compiledDefinitions=null}_compile(){const t={},e=this._sourceDefinitions,n=Object.keys(e);for(const i of n)t[i]=rd(e[i],i);for(const e of n)sd(t,e);for(const e of n)ad(t,e);for(const e of n)cd(t,e);for(const e of n)ld(t,e),dd(t,e);for(const e of n)hd(t,e),ud(t,e),md(t,e);this._compiledDefinitions=t}_checkContextMatch(t,e,n=e.length-1){const i=e.getItem(n);if(t.allowIn.includes(i.name)){if(0==n)return!0;{const t=this.getDefinition(i);return this._checkContextMatch(t,e,n-1)}}return!1}*_getValidRangesForRange(t,e){let n=t.start,i=t.start;for(const o of t.getItems({shallow:!0}))o.is("element")&&(yield*this._getValidRangesForRange(Mc._createIn(o),e)),this.checkAttribute(o,e)||(n.isEqual(i)||(yield new Mc(n,i)),n=Rc._createAfter(o)),i=Rc._createAfter(o);n.isEqual(i)||(yield new Mc(n,i))}findOptimalInsertionRange(t,e){const n=t.getSelectedElement();if(n&&this.isObject(n)&&!this.isInline(n))return"before"==e||"after"==e?new Mc(Rc._createAt(n,e)):Mc._createOn(n);const i=$o(t.getSelectedBlocks());if(!i)return new Mc(t.focus);if(i.isEmpty)return new Mc(Rc._createAt(i,0));const o=Rc._createAfter(i);return t.focus.isTouching(o)?new Mc(o):new Mc(Rc._createBefore(i))}}class od{constructor(t){if(t instanceof od)return t;let e;e="string"==typeof t?[t]:Array.isArray(t)?t:t.getAncestors({includeSelf:!0}),this._items=e.map(fd)}get length(){return this._items.length}get last(){return this._items[this._items.length-1]}[Symbol.iterator](){return this._items[Symbol.iterator]()}push(t){const e=new od([t]);return e._items=[...this._items,...e._items],e}getItem(t){return this._items[t]}*getNames(){yield*this._items.map((t=>t.name))}endsWith(t){return Array.from(this.getNames()).join(" ").endsWith(t)}startsWith(t){return Array.from(this.getNames()).join(" ").startsWith(t)}}function rd(t,e){const n={name:e,allowIn:[],allowContentOf:[],allowWhere:[],allowAttributes:[],allowAttributesOf:[],allowChildren:[],inheritTypesFrom:[]};return function(t,e){for(const n of t){const t=Object.keys(n).filter((t=>t.startsWith("is")));for(const i of t)e[i]=!!n[i]}}(t,n),gd(t,n,"allowIn"),gd(t,n,"allowContentOf"),gd(t,n,"allowWhere"),gd(t,n,"allowAttributes"),gd(t,n,"allowAttributesOf"),gd(t,n,"allowChildren"),gd(t,n,"inheritTypesFrom"),function(t,e){for(const n of t){const t=n.inheritAllFrom;t&&(e.allowContentOf.push(t),e.allowWhere.push(t),e.allowAttributesOf.push(t),e.inheritTypesFrom.push(t))}}(t,n),n}function sd(t,e){const n=t[e];for(const i of n.allowChildren){const n=t[i];n&&n.allowIn.push(e)}n.allowChildren.length=0}function ad(t,e){for(const n of t[e].allowContentOf)if(t[n]){pd(t,n).forEach((t=>{t.allowIn.push(e)}))}delete t[e].allowContentOf}function cd(t,e){for(const n of t[e].allowWhere){const i=t[n];if(i){const n=i.allowIn;t[e].allowIn.push(...n)}}delete t[e].allowWhere}function ld(t,e){for(const n of t[e].allowAttributesOf){const i=t[n];if(i){const n=i.allowAttributes;t[e].allowAttributes.push(...n)}}delete t[e].allowAttributesOf}function dd(t,e){const n=t[e];for(const e of n.inheritTypesFrom){const i=t[e];if(i){const t=Object.keys(i).filter((t=>t.startsWith("is")));for(const e of t)e in n||(n[e]=i[e])}}delete n.inheritTypesFrom}function hd(t,e){const n=t[e],i=n.allowIn.filter((e=>t[e]));n.allowIn=Array.from(new Set(i))}function ud(t,e){const n=t[e];for(const i of n.allowIn){t[i].allowChildren.push(e)}}function md(t,e){const n=t[e];n.allowAttributes=Array.from(new Set(n.allowAttributes))}function gd(t,e,n){for(const i of t){const t=i[n];"string"==typeof t?e[n].push(t):Array.isArray(t)&&e[n].push(...t)}}function pd(t,e){const n=t[e];return(i=t,Object.keys(i).map((t=>i[t]))).filter((t=>t.allowIn.includes(n.name)));var i}function fd(t){return"string"==typeof t||t.is("documentFragment")?{name:"string"==typeof t?t:"$documentFragment",*getAttributeKeys(){},getAttribute(){}}:{name:t.is("element")?t.name:"$text",*getAttributeKeys(){yield*t.getAttributeKeys()},getAttribute:e=>t.getAttribute(e)}}function bd(t,e,n){for(const i of e.getAttributeKeys())t.checkAttribute(e,i)||n.removeAttribute(i,e)}var kd=Object.defineProperty,wd=Object.defineProperties,_d=Object.getOwnPropertyDescriptors,Ad=Object.getOwnPropertySymbols,Cd=Object.prototype.hasOwnProperty,vd=Object.prototype.propertyIsEnumerable,yd=(t,e,n)=>e in t?kd(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class xd extends(S()){constructor(t){var e;super(),this._splitParts=new Map,this._cursorParents=new Map,this._modelCursor=null,this._emptyElementsToKeep=new Set,this.conversionApi=(e=((t,e)=>{for(var n in e||(e={}))Cd.call(e,n)&&yd(t,n,e[n]);if(Ad)for(var n of Ad(e))vd.call(e,n)&&yd(t,n,e[n]);return t})({},t),wd(e,_d({consumable:null,writer:null,store:null,convertItem:(t,e)=>this._convertItem(t,e),convertChildren:(t,e)=>this._convertChildren(t,e),safeInsert:(t,e)=>this._safeInsert(t,e),updateConversionResult:(t,e)=>this._updateConversionResult(t,e),splitToAllowedParent:(t,e)=>this._splitToAllowedParent(t,e),getSplitParts:t=>this._getSplitParts(t),keepEmptyElement:t=>this._keepEmptyElement(t)})))}convert(t,e,n=["$root"]){this.fire("viewCleanup",t),this._modelCursor=function(t,e){let n;for(const i of new od(t)){const t={};for(const e of i.getAttributeKeys())t[e]=i.getAttribute(e);const o=e.createElement(i.name,t);n&&e.insert(o,n),n=Rc._createAt(o,0)}return n}(n,e),this.conversionApi.writer=e,this.conversionApi.consumable=td.createFrom(t),this.conversionApi.store={};const{modelRange:i}=this._convertItem(t,this._modelCursor),o=e.createDocumentFragment();if(i){this._removeEmptyElements();for(const t of Array.from(this._modelCursor.parent.getChildren()))e.append(t,o);o.markers=function(t,e){const n=new Set,i=new Map,o=Mc._createIn(t).getItems();for(const t of o)t.is("element","$marker")&&n.add(t);for(const t of n){const n=t.getAttribute("data-name"),o=e.createPositionBefore(t);i.has(n)?i.get(n).end=o.clone():i.set(n,new Mc(o.clone())),e.remove(t)}return i}(o,e)}return this._modelCursor=null,this._splitParts.clear(),this._cursorParents.clear(),this._emptyElementsToKeep.clear(),this.conversionApi.writer=null,this.conversionApi.store=null,o}_convertItem(t,e){const n={viewItem:t,modelCursor:e,modelRange:null};if(t.is("element")?this.fire(`element:${t.name}`,n,this.conversionApi):t.is("$text")?this.fire("text",n,this.conversionApi):this.fire("documentFragment",n,this.conversionApi),n.modelRange&&!(n.modelRange instanceof Mc))throw new w("view-conversion-dispatcher-incorrect-result",this);return{modelRange:n.modelRange,modelCursor:n.modelCursor}}_convertChildren(t,e){let n=e.is("position")?e:Rc._createAt(e,0);const i=new Mc(n);for(const e of Array.from(t.getChildren())){const t=this._convertItem(e,n);t.modelRange instanceof Mc&&(i.end=t.modelRange.end,n=t.modelCursor)}return{modelRange:i,modelCursor:n}}_safeInsert(t,e){const n=this._splitToAllowedParent(t,e);return!!n&&(this.conversionApi.writer.insert(t,n.position),!0)}_updateConversionResult(t,e){const n=this._getSplitParts(t),i=this.conversionApi.writer;e.modelRange||(e.modelRange=i.createRange(i.createPositionBefore(t),i.createPositionAfter(n[n.length-1])));const o=this._cursorParents.get(t);e.modelCursor=o?i.createPositionAt(o,0):e.modelRange.end}_splitToAllowedParent(t,e){const{schema:n,writer:i}=this.conversionApi;let o=n.findAllowedParent(e,t);if(o){if(o===e.parent)return{position:e};this._modelCursor.parent.getAncestors().includes(o)&&(o=null)}if(!o)return Rl(e,t,n)?{position:Vl(e,i)}:null;const r=this.conversionApi.writer.split(e,o),s=[];for(const t of r.range.getWalker())if("elementEnd"==t.type)s.push(t.item);else{const e=s.pop(),n=t.item;this._registerSplitPair(e,n)}const a=r.range.end.parent;return this._cursorParents.set(t,a),{position:r.position,cursorParent:a}}_registerSplitPair(t,e){this._splitParts.has(t)||this._splitParts.set(t,[t]);const n=this._splitParts.get(t);this._splitParts.set(e,n),n.push(e)}_getSplitParts(t){let e;return e=this._splitParts.has(t)?this._splitParts.get(t):[t],e}_keepEmptyElement(t){this._emptyElementsToKeep.add(t)}_removeEmptyElements(){let t=!1;for(const e of this._splitParts.keys())e.isEmpty&&!this._emptyElementsToKeep.has(e)&&(this.conversionApi.writer.remove(e),this._splitParts.delete(e),t=!0);t&&this._removeEmptyElements()}}class Ed{getHtml(t){const n=e.document.implementation.createHTMLDocument("").createElement("div");return n.appendChild(t),n.innerHTML}}class Dd{constructor(t){this.skipComments=!0,this.domParser=new DOMParser,this.domConverter=new Ca(t,{renderingMode:"data"}),this.htmlWriter=new Ed}toData(t){const e=this.domConverter.viewToDom(t);return this.htmlWriter.getHtml(e)}toView(t){const e=this._toDom(t);return this.domConverter.domToView(e,{skipComments:this.skipComments})}registerRawContentMatcher(t){this.domConverter.registerRawContentMatcher(t)}useFillerType(t){this.domConverter.blockFillerMode="marked"==t?"markedNbsp":"nbsp"}_toDom(t){t.match(/<(?:html|body|head|meta)(?:\s[^>]*)?>/i)||(t=`${t}`);const e=this.domParser.parseFromString(t,"text/html"),n=e.createDocumentFragment(),i=e.body.childNodes;for(;i.length>0;)n.appendChild(i[0]);return n}}class Bd extends(S()){constructor(t,e){super(),this.model=t,this.mapper=new Nc,this.downcastDispatcher=new Qc({mapper:this.mapper,schema:t.schema}),this.downcastDispatcher.on("insert:$text",((t,e,n)=>{if(!n.consumable.consume(e.item,t.name))return;const i=n.writer,o=n.mapper.toViewPosition(e.range.start),r=i.createText(e.item.data);i.insert(o,r)}),{priority:"lowest"}),this.downcastDispatcher.on("insert",((t,e,n)=>{n.convertAttributes(e.item),e.reconversion||!e.item.is("element")||e.item.isEmpty||n.convertChildren(e.item)}),{priority:"lowest"}),this.upcastDispatcher=new xd({schema:t.schema}),this.viewDocument=new Is(e),this.stylesProcessor=e,this.htmlProcessor=new Dd(this.viewDocument),this.processor=this.htmlProcessor,this._viewWriter=new qs(this.viewDocument),this.upcastDispatcher.on("text",((t,e,{schema:n,consumable:i,writer:o})=>{let r=e.modelCursor;if(!i.test(e.viewItem))return;if(!n.checkChild(r,"$text")){if(!Rl(r,"$text",n))return;if(0==e.viewItem.data.trim().length)return;const t=r.nodeBefore;r=Vl(r,o),t&&t.is("element","$marker")&&(o.move(o.createRangeOn(t),r),r=o.createPositionAfter(t))}i.consume(e.viewItem);const s=o.createText(e.viewItem.data);o.insert(s,r),e.modelRange=o.createRange(r,r.getShiftedBy(s.offsetSize)),e.modelCursor=e.modelRange.end}),{priority:"lowest"}),this.upcastDispatcher.on("element",((t,e,n)=>{if(!e.modelRange&&n.consumable.consume(e.viewItem,{name:!0})){const{modelRange:t,modelCursor:i}=n.convertChildren(e.viewItem,e.modelCursor);e.modelRange=t,e.modelCursor=i}}),{priority:"lowest"}),this.upcastDispatcher.on("documentFragment",((t,e,n)=>{if(!e.modelRange&&n.consumable.consume(e.viewItem,{name:!0})){const{modelRange:t,modelCursor:i}=n.convertChildren(e.viewItem,e.modelCursor);e.modelRange=t,e.modelCursor=i}}),{priority:"lowest"}),W().prototype.decorate.call(this,"init"),W().prototype.decorate.call(this,"set"),W().prototype.decorate.call(this,"get"),W().prototype.decorate.call(this,"toView"),W().prototype.decorate.call(this,"toModel"),this.on("init",(()=>{this.fire("ready")}),{priority:"lowest"}),this.on("ready",(()=>{this.model.enqueueChange({isUndoable:!1},Pl)}),{priority:"lowest"})}get(t={}){const{rootName:e="main",trim:n="empty"}=t;if(!this._checkIfRootsExists([e]))throw new w("datacontroller-get-non-existent-root",this);const i=this.model.document.getRoot(e);return i.isAttached()||_("datacontroller-get-detached-root",this),"empty"!==n||this.model.hasContent(i,{ignoreWhitespaces:!0})?this.stringify(i,t):""}stringify(t,e={}){const n=this.toView(t,e);return this.processor.toData(n)}toView(t,e={}){const n=this.viewDocument,i=this._viewWriter;this.mapper.clearBindings();const o=Mc._createIn(t),r=new js(n);this.mapper.bindElements(t,r);const s=t.is("documentFragment")?t.markers:function(t){const e=[],n=t.root.document;if(!n)return new Map;const i=Mc._createIn(t);for(const t of n.model.markers){const n=t.getRange(),o=n.isCollapsed,r=n.start.isEqual(i.start)||n.end.isEqual(i.end);if(o&&r)e.push([t.name,n]);else{const o=i.getIntersection(n);o&&e.push([t.name,o])}}return e.sort((([t,e],[n,i])=>{if("after"!==e.end.compareWith(i.start))return 1;if("before"!==e.start.compareWith(i.end))return-1;switch(e.start.compareWith(i.start)){case"before":return 1;case"after":return-1;default:switch(e.end.compareWith(i.end)){case"before":return 1;case"after":return-1;default:return n.localeCompare(t)}}})),new Map(e)}(t);return this.downcastDispatcher.convert(o,s,i,e),r}init(t){if(this.model.document.version)throw new w("datacontroller-init-document-not-empty",this);let e={};if("string"==typeof t?e.main=t:e=t,!this._checkIfRootsExists(Object.keys(e)))throw new w("datacontroller-init-non-existent-root",this);return this.model.enqueueChange({isUndoable:!1},(t=>{for(const n of Object.keys(e)){const i=this.model.document.getRoot(n);t.insert(this.parse(e[n],i),i,0)}})),Promise.resolve()}set(t,e={}){let n={};if("string"==typeof t?n.main=t:n=t,!this._checkIfRootsExists(Object.keys(n)))throw new w("datacontroller-set-non-existent-root",this);this.model.enqueueChange(e.batchType||{},(t=>{t.setSelection(null),t.removeSelectionAttribute(this.model.document.selection.getAttributeKeys());for(const e of Object.keys(n)){const i=this.model.document.getRoot(e);t.remove(t.createRangeIn(i)),t.insert(this.parse(n[e],i),i,0)}}))}parse(t,e="$root"){const n=this.processor.toView(t);return this.toModel(n,e)}toModel(t,e="$root"){return this.model.change((n=>this.upcastDispatcher.convert(t,n,e)))}addStyleProcessorRules(t){t(this.stylesProcessor)}registerRawContentMatcher(t){this.processor&&this.processor!==this.htmlProcessor&&this.processor.registerRawContentMatcher(t),this.htmlProcessor.registerRawContentMatcher(t)}destroy(){this.stopListening()}_checkIfRootsExists(t){for(const e of t)if(!this.model.document.getRoot(e))return!1;return!0}}class Sd{constructor(t,e){this._helpers=new Map,this._downcast=_o(t),this._createConversionHelpers({name:"downcast",dispatchers:this._downcast,isDowncast:!0}),this._upcast=_o(e),this._createConversionHelpers({name:"upcast",dispatchers:this._upcast,isDowncast:!1})}addAlias(t,e){const n=this._downcast.includes(e);if(!this._upcast.includes(e)&&!n)throw new w("conversion-add-alias-dispatcher-not-registered",this);this._createConversionHelpers({name:t,dispatchers:[e],isDowncast:n})}for(t){if(!this._helpers.has(t))throw new w("conversion-for-unknown-group",this);return this._helpers.get(t)}elementToElement(t){this.for("downcast").elementToElement(t);for(const{model:e,view:n}of Td(t))this.for("upcast").elementToElement({model:e,view:n,converterPriority:t.converterPriority})}attributeToElement(t){this.for("downcast").attributeToElement(t);for(const{model:e,view:n}of Td(t))this.for("upcast").elementToAttribute({view:n,model:e,converterPriority:t.converterPriority})}attributeToAttribute(t){this.for("downcast").attributeToAttribute(t);for(const{model:e,view:n}of Td(t))this.for("upcast").attributeToAttribute({view:n,model:e})}_createConversionHelpers({name:t,dispatchers:e,isDowncast:n}){if(this._helpers.has(t))throw new w("conversion-group-exists",this);const i=n?new fl(e):new jl(e);this._helpers.set(t,i)}}function*Td(t){if(t.model.values)for(const e of t.model.values){const n={key:t.model.key,value:e},i=t.view[e],o=t.upcastAlso?t.upcastAlso[e]:void 0;yield*Id(n,i,o)}else yield*Id(t.model,t.view,t.upcastAlso)}function*Id(t,e,n){if(yield{model:t,view:e},n)for(const e of _o(n))yield{model:t,view:e}}class Pd{constructor(t){this.baseVersion=t,this.isDocumentOperation=null!==this.baseVersion,this.batch=null}_validate(){}toJSON(){const t=Object.assign({},this);return t.__className=this.constructor.className,delete t.batch,delete t.isDocumentOperation,t}static get className(){return"Operation"}static fromJSON(t,e){return new this(t.baseVersion)}}function Rd(t,e){const n=Ld(e),i=n.reduce(((t,e)=>t+e.offsetSize),0),o=t.parent;zd(t);const r=t.index;return o._insertChild(r,n),Od(o,r+n.length),Od(o,r),new Mc(t,t.getShiftedBy(i))}function Vd(t){if(!t.isFlat)throw new w("operation-utils-remove-range-not-flat",this);const e=t.start.parent;zd(t.start),zd(t.end);const n=e._removeChildren(t.start.index,t.end.index-t.start.index);return Od(e,t.start.index),n}function Fd(t,e){if(!t.isFlat)throw new w("operation-utils-move-range-not-flat",this);const n=Vd(t);return Rd(e=e._getTransformedByDeletion(t.start,t.end.offset-t.start.offset),n)}function Ld(t){const e=[];!function t(n){if("string"==typeof n)e.push(new Bc(n));else if(n instanceof Sc)e.push(new Bc(n.data,n.getAttributes()));else if(n instanceof Ec)e.push(n);else if(X(n))for(const e of n)t(e);else{}}(t);for(let t=1;tt.maxOffset)throw new w("move-operation-nodes-do-not-exist",this);if(t===e&&n=n&&this.targetPosition.path[t]t._clone(!0)))),e=new Hd(this.position,t,this.baseVersion);return e.shouldReceiveAttributes=this.shouldReceiveAttributes,e}getReversed(){const t=this.position.root.document.graveyard,e=new Rc(t,[0]);return new Nd(this.position,this.nodes.maxOffset,e,this.baseVersion+1)}_validate(){const t=this.position.parent;if(!t||t.maxOffsett._clone(!0)))),Rd(this.position,t)}toJSON(){const t=super.toJSON();return t.position=this.position.toJSON(),t.nodes=this.nodes.toJSON(),t}static get className(){return"InsertOperation"}static fromJSON(t,e){const n=[];for(const e of t.nodes)e.name?n.push(Tc.fromJSON(e)):n.push(Bc.fromJSON(e));const i=new Hd(Rc.fromJSON(t.position,e),n,t.baseVersion);return i.shouldReceiveAttributes=t.shouldReceiveAttributes,i}}class jd extends Pd{constructor(t,e,n,i,o){super(o),this.splitPosition=t.clone(),this.splitPosition.stickiness="toNext",this.howMany=e,this.insertionPosition=n,this.graveyardPosition=i?i.clone():null,this.graveyardPosition&&(this.graveyardPosition.stickiness="toNext")}get type(){return"split"}get moveTargetPosition(){const t=this.insertionPosition.path.slice();return t.push(0),new Rc(this.insertionPosition.root,t)}get movedRange(){const t=this.splitPosition.getShiftedBy(Number.POSITIVE_INFINITY);return new Mc(this.splitPosition,t)}get affectedSelectable(){const t=[Mc._createFromPositionAndShift(this.splitPosition,0),Mc._createFromPositionAndShift(this.insertionPosition,0)];return this.graveyardPosition&&t.push(Mc._createFromPositionAndShift(this.graveyardPosition,0)),t}clone(){return new jd(this.splitPosition,this.howMany,this.insertionPosition,this.graveyardPosition,this.baseVersion)}getReversed(){const t=this.splitPosition.root.document.graveyard,e=new Rc(t,[0]);return new qd(this.moveTargetPosition,this.howMany,this.splitPosition,e,this.baseVersion+1)}_validate(){const t=this.splitPosition.parent,e=this.splitPosition.offset;if(!t||t.maxOffset0&&(t.sourcePosition.isEqual(e.sourcePosition.getShiftedBy(e.howMany))&&this._setRelation(t,e,"mergeSourceAffected"),t.targetPosition.isEqual(e.sourcePosition)&&this._setRelation(t,e,"mergeTargetWasBefore"));else if(t instanceof Wd){const n=t.newRange;if(!n)return;if(e instanceof Nd){const i=Mc._createFromPositionAndShift(e.sourcePosition,e.howMany),o=i.containsPosition(n.start)||i.start.isEqual(n.start),r=i.containsPosition(n.end)||i.end.isEqual(n.end);!o&&!r||i.containsRange(n)||this._setRelation(t,e,{side:o?"left":"right",path:o?n.start.path.slice():n.end.path.slice()})}else if(e instanceof qd){const i=n.start.isEqual(e.targetPosition),o=n.start.isEqual(e.deletionPosition),r=n.end.isEqual(e.deletionPosition),s=n.end.isEqual(e.sourcePosition);(i||o||r||s)&&this._setRelation(t,e,{wasInLeftElement:i,wasStartBeforeMergedElement:o,wasEndBeforeMergedElement:r,wasInRightElement:s})}}}getContext(t,e,n){return{aIsStrong:n,aWasUndone:this._wasUndone(t),bWasUndone:this._wasUndone(e),abRelation:this._useRelations?this._getRelation(t,e):null,baRelation:this._useRelations?this._getRelation(e,t):null,forceWeakRemove:this._forceWeakRemove}}_wasUndone(t){const e=this.originalOperations.get(t);return e.wasUndone||this._history.isUndoneOperation(e)}_getRelation(t,e){const n=this.originalOperations.get(e),i=this._history.getUndoneOperation(n);if(!i)return null;const o=this.originalOperations.get(t),r=this._relations.get(o);return r&&r.get(i)||null}_setRelation(t,e,n){const i=this.originalOperations.get(t),o=this.originalOperations.get(e);let r=this._relations.get(i);r||(r=new Map,this._relations.set(i,r)),r.set(o,n)}}function rh(t,e){for(const n of t)n.baseVersion=e++}function sh(t,e){for(let n=0;n{if(t.key===e.key&&t.range.start.hasSameParentAs(e.range.start)){const i=t.range.getDifference(e.range).map((e=>new $d(e,t.key,t.oldValue,t.newValue,0))),o=t.range.getIntersection(e.range);return o&&n.aIsStrong&&i.push(new $d(o,e.key,e.newValue,t.newValue,0)),0==i.length?[new Gd(0)]:i}return[t]})),th($d,Hd,((t,e)=>{if(t.range.start.hasSameParentAs(e.position)&&t.range.containsPosition(e.position)){const n=t.range._getTransformedByInsertion(e.position,e.howMany,!e.shouldReceiveAttributes).map((e=>new $d(e,t.key,t.oldValue,t.newValue,t.baseVersion)));if(e.shouldReceiveAttributes){const i=ah(e,t.key,t.oldValue);i&&n.unshift(i)}return n}return t.range=t.range._getTransformedByInsertion(e.position,e.howMany,!1)[0],[t]})),th($d,qd,((t,e)=>{const n=[];t.range.start.hasSameParentAs(e.deletionPosition)&&(t.range.containsPosition(e.deletionPosition)||t.range.start.isEqual(e.deletionPosition))&&n.push(Mc._createFromPositionAndShift(e.graveyardPosition,1));const i=t.range._getTransformedByMergeOperation(e);return i.isCollapsed||n.push(i),n.map((e=>new $d(e,t.key,t.oldValue,t.newValue,t.baseVersion)))})),th($d,Nd,((t,e)=>{const n=function(t,e){const n=Mc._createFromPositionAndShift(e.sourcePosition,e.howMany);let i=null,o=[];n.containsRange(t,!0)?i=t:t.start.hasSameParentAs(n.start)?(o=t.getDifference(n),i=t.getIntersection(n)):o=[t];const r=[];for(let t of o){t=t._getTransformedByDeletion(e.sourcePosition,e.howMany);const n=e.getMovedRangeStart(),i=t.start.hasSameParentAs(n),o=t._getTransformedByInsertion(n,e.howMany,i);r.push(...o)}i&&r.push(i._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany,!1)[0]);return r}(t.range,e);return n.map((e=>new $d(e,t.key,t.oldValue,t.newValue,t.baseVersion)))})),th($d,jd,((t,e)=>{if(t.range.end.isEqual(e.insertionPosition))return e.graveyardPosition||t.range.end.offset++,[t];if(t.range.start.hasSameParentAs(e.splitPosition)&&t.range.containsPosition(e.splitPosition)){const n=t.clone();return n.range=new Mc(e.moveTargetPosition.clone(),t.range.end._getCombined(e.splitPosition,e.moveTargetPosition)),t.range.end=e.splitPosition.clone(),t.range.end.stickiness="toPrevious",[t,n]}return t.range=t.range._getTransformedBySplitOperation(e),[t]})),th(Hd,$d,((t,e)=>{const n=[t];if(t.shouldReceiveAttributes&&t.position.hasSameParentAs(e.range.start)&&e.range.containsPosition(t.position)){const i=ah(t,e.key,e.newValue);i&&n.push(i)}return n})),th(Hd,Hd,((t,e,n)=>(t.position.isEqual(e.position)&&n.aIsStrong||(t.position=t.position._getTransformedByInsertOperation(e)),[t]))),th(Hd,Nd,((t,e)=>(t.position=t.position._getTransformedByMoveOperation(e),[t]))),th(Hd,jd,((t,e)=>(t.position=t.position._getTransformedBySplitOperation(e),[t]))),th(Hd,qd,((t,e)=>(t.position=t.position._getTransformedByMergeOperation(e),[t]))),th(Wd,Hd,((t,e)=>(t.oldRange&&(t.oldRange=t.oldRange._getTransformedByInsertOperation(e)[0]),t.newRange&&(t.newRange=t.newRange._getTransformedByInsertOperation(e)[0]),[t]))),th(Wd,Wd,((t,e,n)=>{if(t.name==e.name){if(!n.aIsStrong)return[new Gd(0)];t.oldRange=e.newRange?e.newRange.clone():null}return[t]})),th(Wd,qd,((t,e)=>(t.oldRange&&(t.oldRange=t.oldRange._getTransformedByMergeOperation(e)),t.newRange&&(t.newRange=t.newRange._getTransformedByMergeOperation(e)),[t]))),th(Wd,Nd,((t,e,n)=>{if(t.oldRange&&(t.oldRange=Mc._createFromRanges(t.oldRange._getTransformedByMoveOperation(e))),t.newRange){if(n.abRelation){const i=Mc._createFromRanges(t.newRange._getTransformedByMoveOperation(e));if("left"==n.abRelation.side&&e.targetPosition.isEqual(t.newRange.start))return t.newRange.end=i.end,t.newRange.start.path=n.abRelation.path,[t];if("right"==n.abRelation.side&&e.targetPosition.isEqual(t.newRange.end))return t.newRange.start=i.start,t.newRange.end.path=n.abRelation.path,[t]}t.newRange=Mc._createFromRanges(t.newRange._getTransformedByMoveOperation(e))}return[t]})),th(Wd,jd,((t,e,n)=>{if(t.oldRange&&(t.oldRange=t.oldRange._getTransformedBySplitOperation(e)),t.newRange){if(n.abRelation){const i=t.newRange._getTransformedBySplitOperation(e);return t.newRange.start.isEqual(e.splitPosition)&&n.abRelation.wasStartBeforeMergedElement?t.newRange.start=Rc._createAt(e.insertionPosition):t.newRange.start.isEqual(e.splitPosition)&&!n.abRelation.wasInLeftElement&&(t.newRange.start=Rc._createAt(e.moveTargetPosition)),t.newRange.end.isEqual(e.splitPosition)&&n.abRelation.wasInRightElement?t.newRange.end=Rc._createAt(e.moveTargetPosition):t.newRange.end.isEqual(e.splitPosition)&&n.abRelation.wasEndBeforeMergedElement?t.newRange.end=Rc._createAt(e.insertionPosition):t.newRange.end=i.end,[t]}t.newRange=t.newRange._getTransformedBySplitOperation(e)}return[t]})),th(qd,Hd,((t,e)=>(t.sourcePosition.hasSameParentAs(e.position)&&(t.howMany+=e.howMany),t.sourcePosition=t.sourcePosition._getTransformedByInsertOperation(e),t.targetPosition=t.targetPosition._getTransformedByInsertOperation(e),[t]))),th(qd,qd,((t,e,n)=>{if(t.sourcePosition.isEqual(e.sourcePosition)&&t.targetPosition.isEqual(e.targetPosition)){if(n.bWasUndone){const n=e.graveyardPosition.path.slice();return n.push(0),t.sourcePosition=new Rc(e.graveyardPosition.root,n),t.howMany=0,[t]}return[new Gd(0)]}if(t.sourcePosition.isEqual(e.sourcePosition)&&!t.targetPosition.isEqual(e.targetPosition)&&!n.bWasUndone&&"splitAtSource"!=n.abRelation){const i="$graveyard"==t.targetPosition.root.rootName,o="$graveyard"==e.targetPosition.root.rootName;if(o&&!i||!(i&&!o)&&n.aIsStrong){const n=e.targetPosition._getTransformedByMergeOperation(e),i=t.targetPosition._getTransformedByMergeOperation(e);return[new Nd(n,t.howMany,i,0)]}return[new Gd(0)]}return t.sourcePosition.hasSameParentAs(e.targetPosition)&&(t.howMany+=e.howMany),t.sourcePosition=t.sourcePosition._getTransformedByMergeOperation(e),t.targetPosition=t.targetPosition._getTransformedByMergeOperation(e),t.graveyardPosition.isEqual(e.graveyardPosition)&&n.aIsStrong||(t.graveyardPosition=t.graveyardPosition._getTransformedByMergeOperation(e)),[t]})),th(qd,Nd,((t,e,n)=>{const i=Mc._createFromPositionAndShift(e.sourcePosition,e.howMany);return"remove"==e.type&&!n.bWasUndone&&!n.forceWeakRemove&&t.deletionPosition.hasSameParentAs(e.sourcePosition)&&i.containsPosition(t.sourcePosition)?[new Gd(0)]:(e.sourcePosition.getShiftedBy(e.howMany).isEqual(t.sourcePosition)?t.sourcePosition.stickiness="toNone":e.targetPosition.isEqual(t.sourcePosition)&&"mergeSourceAffected"==n.abRelation?t.sourcePosition.stickiness="toNext":e.sourcePosition.isEqual(t.targetPosition)?(t.targetPosition.stickiness="toNone",t.howMany-=e.howMany):e.targetPosition.isEqual(t.targetPosition)&&"mergeTargetWasBefore"==n.abRelation?(t.targetPosition.stickiness="toPrevious",t.howMany+=e.howMany):(t.sourcePosition.hasSameParentAs(e.targetPosition)&&(t.howMany+=e.howMany),t.sourcePosition.hasSameParentAs(e.sourcePosition)&&(t.howMany-=e.howMany)),t.sourcePosition=t.sourcePosition._getTransformedByMoveOperation(e),t.targetPosition=t.targetPosition._getTransformedByMoveOperation(e),t.sourcePosition.stickiness="toPrevious",t.targetPosition.stickiness="toNext",t.graveyardPosition.isEqual(e.targetPosition)||(t.graveyardPosition=t.graveyardPosition._getTransformedByMoveOperation(e)),[t])})),th(qd,jd,((t,e,n)=>{if(e.graveyardPosition&&(t.graveyardPosition=t.graveyardPosition._getTransformedByDeletion(e.graveyardPosition,1),t.deletionPosition.isEqual(e.graveyardPosition)&&(t.howMany=e.howMany)),t.targetPosition.isEqual(e.splitPosition)){const i=0!=e.howMany,o=e.graveyardPosition&&t.deletionPosition.isEqual(e.graveyardPosition);if(i||o||"mergeTargetNotMoved"==n.abRelation)return t.sourcePosition=t.sourcePosition._getTransformedBySplitOperation(e),[t]}if(t.sourcePosition.isEqual(e.splitPosition)){if("mergeSourceNotMoved"==n.abRelation)return t.howMany=0,t.targetPosition=t.targetPosition._getTransformedBySplitOperation(e),[t];if("mergeSameElement"==n.abRelation||t.sourcePosition.offset>0)return t.sourcePosition=e.moveTargetPosition.clone(),t.targetPosition=t.targetPosition._getTransformedBySplitOperation(e),[t]}return t.sourcePosition.hasSameParentAs(e.splitPosition)&&(t.howMany=e.splitPosition.offset),t.sourcePosition=t.sourcePosition._getTransformedBySplitOperation(e),t.targetPosition=t.targetPosition._getTransformedBySplitOperation(e),[t]})),th(Nd,Hd,((t,e)=>{const n=Mc._createFromPositionAndShift(t.sourcePosition,t.howMany)._getTransformedByInsertOperation(e,!1)[0];return t.sourcePosition=n.start,t.howMany=n.end.offset-n.start.offset,t.targetPosition.isEqual(e.position)||(t.targetPosition=t.targetPosition._getTransformedByInsertOperation(e)),[t]})),th(Nd,Nd,((t,e,n)=>{const i=Mc._createFromPositionAndShift(t.sourcePosition,t.howMany),o=Mc._createFromPositionAndShift(e.sourcePosition,e.howMany);let r,s=n.aIsStrong,a=!n.aIsStrong;if("insertBefore"==n.abRelation||"insertAfter"==n.baRelation?a=!0:"insertAfter"!=n.abRelation&&"insertBefore"!=n.baRelation||(a=!1),r=t.targetPosition.isEqual(e.targetPosition)&&a?t.targetPosition._getTransformedByDeletion(e.sourcePosition,e.howMany):t.targetPosition._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany),ch(t,e)&&ch(e,t))return[e.getReversed()];if(i.containsPosition(e.targetPosition)&&i.containsRange(o,!0))return i.start=i.start._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany),i.end=i.end._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany),lh([i],r);if(o.containsPosition(t.targetPosition)&&o.containsRange(i,!0))return i.start=i.start._getCombined(e.sourcePosition,e.getMovedRangeStart()),i.end=i.end._getCombined(e.sourcePosition,e.getMovedRangeStart()),lh([i],r);const c=Q(t.sourcePosition.getParentPath(),e.sourcePosition.getParentPath());if("prefix"==c||"extension"==c)return i.start=i.start._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany),i.end=i.end._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany),lh([i],r);"remove"!=t.type||"remove"==e.type||n.aWasUndone||n.forceWeakRemove?"remove"==t.type||"remove"!=e.type||n.bWasUndone||n.forceWeakRemove||(s=!1):s=!0;const l=[],d=i.getDifference(o);for(const t of d){t.start=t.start._getTransformedByDeletion(e.sourcePosition,e.howMany),t.end=t.end._getTransformedByDeletion(e.sourcePosition,e.howMany);const n="same"==Q(t.start.getParentPath(),e.getMovedRangeStart().getParentPath()),i=t._getTransformedByInsertion(e.getMovedRangeStart(),e.howMany,n);l.push(...i)}const h=i.getIntersection(o);return null!==h&&s&&(h.start=h.start._getCombined(e.sourcePosition,e.getMovedRangeStart()),h.end=h.end._getCombined(e.sourcePosition,e.getMovedRangeStart()),0===l.length?l.push(h):1==l.length?o.start.isBefore(i.start)||o.start.isEqual(i.start)?l.unshift(h):l.push(h):l.splice(1,0,h)),0===l.length?[new Gd(t.baseVersion)]:lh(l,r)})),th(Nd,jd,((t,e,n)=>{let i=t.targetPosition.clone();t.targetPosition.isEqual(e.insertionPosition)&&e.graveyardPosition&&"moveTargetAfter"!=n.abRelation||(i=t.targetPosition._getTransformedBySplitOperation(e));const o=Mc._createFromPositionAndShift(t.sourcePosition,t.howMany);if(o.end.isEqual(e.insertionPosition))return e.graveyardPosition||t.howMany++,t.targetPosition=i,[t];if(o.start.hasSameParentAs(e.splitPosition)&&o.containsPosition(e.splitPosition)){let t=new Mc(e.splitPosition,o.end);t=t._getTransformedBySplitOperation(e);return lh([new Mc(o.start,e.splitPosition),t],i)}t.targetPosition.isEqual(e.splitPosition)&&"insertAtSource"==n.abRelation&&(i=e.moveTargetPosition),t.targetPosition.isEqual(e.insertionPosition)&&"insertBetween"==n.abRelation&&(i=t.targetPosition);const r=[o._getTransformedBySplitOperation(e)];if(e.graveyardPosition){const i=o.start.isEqual(e.graveyardPosition)||o.containsPosition(e.graveyardPosition);t.howMany>1&&i&&!n.aWasUndone&&r.push(Mc._createFromPositionAndShift(e.insertionPosition,1))}return lh(r,i)})),th(Nd,qd,((t,e,n)=>{const i=Mc._createFromPositionAndShift(t.sourcePosition,t.howMany);if(e.deletionPosition.hasSameParentAs(t.sourcePosition)&&i.containsPosition(e.sourcePosition))if("remove"!=t.type||n.forceWeakRemove){if(1==t.howMany)return n.bWasUndone?(t.sourcePosition=e.graveyardPosition.clone(),t.targetPosition=t.targetPosition._getTransformedByMergeOperation(e),[t]):[new Gd(0)]}else if(!n.aWasUndone){const n=[];let i=e.graveyardPosition.clone(),o=e.targetPosition._getTransformedByMergeOperation(e);t.howMany>1&&(n.push(new Nd(t.sourcePosition,t.howMany-1,t.targetPosition,0)),i=i._getTransformedByMove(t.sourcePosition,t.targetPosition,t.howMany-1),o=o._getTransformedByMove(t.sourcePosition,t.targetPosition,t.howMany-1));const r=e.deletionPosition._getCombined(t.sourcePosition,t.targetPosition),s=new Nd(i,1,r,0),a=s.getMovedRangeStart().path.slice();a.push(0);const c=new Rc(s.targetPosition.root,a);o=o._getTransformedByMove(i,r,1);const l=new Nd(o,e.howMany,c,0);return n.push(s),n.push(l),n}const o=Mc._createFromPositionAndShift(t.sourcePosition,t.howMany)._getTransformedByMergeOperation(e);return t.sourcePosition=o.start,t.howMany=o.end.offset-o.start.offset,t.targetPosition=t.targetPosition._getTransformedByMergeOperation(e),[t]})),th(Kd,Hd,((t,e)=>(t.position=t.position._getTransformedByInsertOperation(e),[t]))),th(Kd,qd,((t,e)=>t.position.isEqual(e.deletionPosition)?(t.position=e.graveyardPosition.clone(),t.position.stickiness="toNext",[t]):(t.position=t.position._getTransformedByMergeOperation(e),[t]))),th(Kd,Nd,((t,e)=>(t.position=t.position._getTransformedByMoveOperation(e),[t]))),th(Kd,Kd,((t,e,n)=>{if(t.position.isEqual(e.position)){if(!n.aIsStrong)return[new Gd(0)];t.oldName=e.newName}return[t]})),th(Kd,jd,((t,e)=>{if("same"==Q(t.position.path,e.splitPosition.getParentPath())&&!e.graveyardPosition){const e=new Kd(t.position.getShiftedBy(1),t.oldName,t.newName,0);return[t,e]}return t.position=t.position._getTransformedBySplitOperation(e),[t]})),th(Jd,Jd,((t,e,n)=>{if(t.root===e.root&&t.key===e.key){if(!n.aIsStrong||t.newValue===e.newValue)return[new Gd(0)];t.oldValue=e.newValue}return[t]})),th(Zd,Zd,((t,e)=>t.rootName===e.rootName&&t.isAdd===e.isAdd?[new Gd(0)]:[t])),th(jd,Hd,((t,e)=>(t.splitPosition.hasSameParentAs(e.position)&&t.splitPosition.offset{if(!t.graveyardPosition&&!n.bWasUndone&&t.splitPosition.hasSameParentAs(e.sourcePosition)){const n=e.graveyardPosition.path.slice();n.push(0);const i=new Rc(e.graveyardPosition.root,n),o=jd.getInsertionPosition(new Rc(e.graveyardPosition.root,n)),r=new jd(i,0,o,null,0);return t.splitPosition=t.splitPosition._getTransformedByMergeOperation(e),t.insertionPosition=jd.getInsertionPosition(t.splitPosition),t.graveyardPosition=r.insertionPosition.clone(),t.graveyardPosition.stickiness="toNext",[r,t]}return t.splitPosition.hasSameParentAs(e.deletionPosition)&&!t.splitPosition.isAfter(e.deletionPosition)&&t.howMany--,t.splitPosition.hasSameParentAs(e.targetPosition)&&(t.howMany+=e.howMany),t.splitPosition=t.splitPosition._getTransformedByMergeOperation(e),t.insertionPosition=jd.getInsertionPosition(t.splitPosition),t.graveyardPosition&&(t.graveyardPosition=t.graveyardPosition._getTransformedByMergeOperation(e)),[t]})),th(jd,Nd,((t,e,n)=>{const i=Mc._createFromPositionAndShift(e.sourcePosition,e.howMany);if(t.graveyardPosition){const o=i.start.isEqual(t.graveyardPosition)||i.containsPosition(t.graveyardPosition);if(!n.bWasUndone&&o){const n=t.splitPosition._getTransformedByMoveOperation(e),i=t.graveyardPosition._getTransformedByMoveOperation(e),o=i.path.slice();o.push(0);const r=new Rc(i.root,o);return[new Nd(n,t.howMany,r,0)]}t.graveyardPosition=t.graveyardPosition._getTransformedByMoveOperation(e)}const o=t.splitPosition.isEqual(e.targetPosition);if(o&&("insertAtSource"==n.baRelation||"splitBefore"==n.abRelation))return t.howMany+=e.howMany,t.splitPosition=t.splitPosition._getTransformedByDeletion(e.sourcePosition,e.howMany),t.insertionPosition=jd.getInsertionPosition(t.splitPosition),[t];if(o&&n.abRelation&&n.abRelation.howMany){const{howMany:e,offset:i}=n.abRelation;return t.howMany+=e,t.splitPosition=t.splitPosition.getShiftedBy(i),[t]}if(t.splitPosition.hasSameParentAs(e.sourcePosition)&&i.containsPosition(t.splitPosition)){const n=e.howMany-(t.splitPosition.offset-e.sourcePosition.offset);return t.howMany-=n,t.splitPosition.hasSameParentAs(e.targetPosition)&&t.splitPosition.offset{if(t.splitPosition.isEqual(e.splitPosition)){if(!t.graveyardPosition&&!e.graveyardPosition)return[new Gd(0)];if(t.graveyardPosition&&e.graveyardPosition&&t.graveyardPosition.isEqual(e.graveyardPosition))return[new Gd(0)];if("splitBefore"==n.abRelation)return t.howMany=0,t.graveyardPosition=t.graveyardPosition._getTransformedBySplitOperation(e),[t]}if(t.graveyardPosition&&e.graveyardPosition&&t.graveyardPosition.isEqual(e.graveyardPosition)){const i="$graveyard"==t.splitPosition.root.rootName,o="$graveyard"==e.splitPosition.root.rootName;if(o&&!i||!(i&&!o)&&n.aIsStrong){const n=[];return e.howMany&&n.push(new Nd(e.moveTargetPosition,e.howMany,e.splitPosition,0)),t.howMany&&n.push(new Nd(t.splitPosition,t.howMany,t.moveTargetPosition,0)),n}return[new Gd(0)]}if(t.graveyardPosition&&(t.graveyardPosition=t.graveyardPosition._getTransformedBySplitOperation(e)),t.splitPosition.isEqual(e.insertionPosition)&&"splitBefore"==n.abRelation)return t.howMany++,[t];if(e.splitPosition.isEqual(t.insertionPosition)&&"splitBefore"==n.baRelation){const n=e.insertionPosition.path.slice();n.push(0);const i=new Rc(e.insertionPosition.root,n);return[t,new Nd(t.insertionPosition,1,i,0)]}return t.splitPosition.hasSameParentAs(e.splitPosition)&&t.splitPosition.offset{const n=e[0];n.isDocumentOperation&&uh.call(this,n)}),{priority:"low"})}function uh(t){const e=this.getTransformedByOperation(t);if(!this.isEqual(e)){const t=this.toPosition();this.path=e.path,this.root=e.root,this.fire("change",t)}}dh.prototype.is=function(t){return"livePosition"===t||"model:livePosition"===t||"position"==t||"model:position"===t};class mh{constructor(t={}){"string"==typeof t&&(t="transparent"===t?{isUndoable:!1}:{},_("batch-constructor-deprecated-string-type"));const{isUndoable:e=!0,isLocal:n=!0,isUndo:i=!1,isTyping:o=!1}=t;this.operations=[],this.isUndoable=e,this.isLocal=n,this.isUndo=i,this.isTyping=o}get type(){return _("batch-type-deprecated"),"default"}get baseVersion(){for(const t of this.operations)if(null!==t.baseVersion)return t.baseVersion;return null}addOperation(t){return t.batch=this,this.operations.push(t),t}}var gh=Object.defineProperty,ph=Object.defineProperties,fh=Object.getOwnPropertyDescriptors,bh=Object.getOwnPropertySymbols,kh=Object.prototype.hasOwnProperty,wh=Object.prototype.propertyIsEnumerable,_h=(t,e,n)=>e in t?gh(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Ah=(t,e)=>{for(var n in e||(e={}))kh.call(e,n)&&_h(t,n,e[n]);if(bh)for(var n of bh(e))wh.call(e,n)&&_h(t,n,e[n]);return t};class Ch{constructor(t){this._changesInElement=new Map,this._elementSnapshots=new Map,this._changedMarkers=new Map,this._changedRoots=new Map,this._changeCount=0,this._cachedChanges=null,this._cachedChangesWithGraveyard=null,this._refreshedItems=new Set,this._markerCollection=t}get isEmpty(){return 0==this._changesInElement.size&&0==this._changedMarkers.size&&0==this._changedRoots.size}bufferOperation(t){const e=t;switch(e.type){case"insert":if(this._isInInsertedElement(e.position.parent))return;this._markInsert(e.position.parent,e.position.offset,e.nodes.maxOffset);break;case"addAttribute":case"removeAttribute":case"changeAttribute":for(const t of e.range.getItems({shallow:!0}))this._isInInsertedElement(t.parent)||this._markAttribute(t);break;case"remove":case"move":case"reinsert":{if(e.sourcePosition.isEqual(e.targetPosition)||e.sourcePosition.getShiftedBy(e.howMany).isEqual(e.targetPosition))return;const t=this._isInInsertedElement(e.sourcePosition.parent),n=this._isInInsertedElement(e.targetPosition.parent);t||this._markRemove(e.sourcePosition.parent,e.sourcePosition.offset,e.howMany),n||this._markInsert(e.targetPosition.parent,e.getMovedRangeStart().offset,e.howMany);break}case"rename":{if(this._isInInsertedElement(e.position.parent))return;this._markRemove(e.position.parent,e.position.offset,1),this._markInsert(e.position.parent,e.position.offset,1);const t=Mc._createFromPositionAndShift(e.position,1);for(const e of this._markerCollection.getMarkersIntersectingRange(t)){const t=e.getData();this.bufferMarkerChange(e.name,t,t)}break}case"split":{const t=e.splitPosition.parent;this._isInInsertedElement(t)||this._markRemove(t,e.splitPosition.offset,e.howMany),this._isInInsertedElement(e.insertionPosition.parent)||this._markInsert(e.insertionPosition.parent,e.insertionPosition.offset,1),e.graveyardPosition&&this._markRemove(e.graveyardPosition.parent,e.graveyardPosition.offset,1);break}case"merge":{const t=e.sourcePosition.parent;this._isInInsertedElement(t.parent)||this._markRemove(t.parent,t.startOffset,1);const n=e.graveyardPosition.parent;this._markInsert(n,e.graveyardPosition.offset,1);const i=e.targetPosition.parent;this._isInInsertedElement(i)||this._markInsert(i,e.targetPosition.offset,t.maxOffset);break}case"detachRoot":case"addRoot":{const t=e.affectedSelectable;if(!t._isLoaded)return;if(t.isAttached()==e.isAdd)return;this._bufferRootStateChange(e.rootName,e.isAdd);break}case"addRootAttribute":case"removeRootAttribute":case"changeRootAttribute":{if(!e.root._isLoaded)return;const t=e.root.rootName;this._bufferRootAttributeChange(t,e.key,e.oldValue,e.newValue);break}}this._cachedChanges=null}bufferMarkerChange(t,e,n){e.range&&e.range.root.is("rootElement")&&!e.range.root._isLoaded&&(e.range=null),n.range&&n.range.root.is("rootElement")&&!n.range.root._isLoaded&&(n.range=null);let i=this._changedMarkers.get(t);i?i.newMarkerData=n:(i={newMarkerData:n,oldMarkerData:e},this._changedMarkers.set(t,i)),null==i.oldMarkerData.range&&null==n.range&&this._changedMarkers.delete(t)}getMarkersToRemove(){const t=[];for(const[e,n]of this._changedMarkers)null!=n.oldMarkerData.range&&t.push({name:e,range:n.oldMarkerData.range});return t}getMarkersToAdd(){const t=[];for(const[e,n]of this._changedMarkers)null!=n.newMarkerData.range&&t.push({name:e,range:n.newMarkerData.range});return t}getChangedMarkers(){return Array.from(this._changedMarkers).map((([t,e])=>({name:t,data:{oldRange:e.oldMarkerData.range,newRange:e.newMarkerData.range}})))}hasDataChanges(){if(this.getChanges().length)return!0;if(this._changedRoots.size>0)return!0;for(const{newMarkerData:t,oldMarkerData:e}of this._changedMarkers.values()){if(t.affectsData!==e.affectsData)return!0;if(t.affectsData){const n=t.range&&!e.range,i=!t.range&&e.range,o=t.range&&e.range&&!t.range.isEqual(e.range);if(n||i||o)return!0}}return!1}getChanges(t={}){if(this._cachedChanges)return t.includeChangesInGraveyard?this._cachedChangesWithGraveyard.slice():this._cachedChanges.slice();let e=[];for(const t of this._changesInElement.keys()){const n=this._changesInElement.get(t).sort(((t,e)=>t.offset===e.offset?t.type!=e.type?"remove"==t.type?-1:1:0:t.offsett.position.root!=e.position.root?t.position.root.rootNamet));for(const t of e)delete t.changeCount,"attribute"==t.type&&(delete t.position,delete t.length);return this._changeCount=0,this._cachedChangesWithGraveyard=e,this._cachedChanges=e.filter(xh),t.includeChangesInGraveyard?this._cachedChangesWithGraveyard.slice():this._cachedChanges.slice()}getChangedRoots(){return Array.from(this._changedRoots.values()).map((t=>{const e=Ah({},t);return void 0!==e.state&&delete e.attributes,e}))}getRefreshedItems(){return new Set(this._refreshedItems)}reset(){this._changesInElement.clear(),this._elementSnapshots.clear(),this._changedMarkers.clear(),this._changedRoots.clear(),this._refreshedItems=new Set,this._cachedChanges=null}_bufferRootStateChange(t,e){if(!this._changedRoots.has(t))return void this._changedRoots.set(t,{name:t,state:e?"attached":"detached"});const n=this._changedRoots.get(t);void 0!==n.state?(delete n.state,void 0===n.attributes&&this._changedRoots.delete(t)):n.state=e?"attached":"detached"}_bufferRootAttributeChange(t,e,n,i){const o=this._changedRoots.get(t)||{name:t},r=o.attributes||{};if(r[e]){const t=r[e];i===t.oldValue?delete r[e]:t.newValue=i}else r[e]={oldValue:n,newValue:i};0===Object.entries(r).length?(delete o.attributes,void 0===o.state&&this._changedRoots.delete(t)):(o.attributes=r,this._changedRoots.set(t,o))}_refreshItem(t){if(this._isInInsertedElement(t.parent))return;this._markRemove(t.parent,t.startOffset,t.offsetSize),this._markInsert(t.parent,t.startOffset,t.offsetSize),this._refreshedItems.add(t);const e=Mc._createOn(t);for(const t of this._markerCollection.getMarkersIntersectingRange(e)){const e=t.getData();this.bufferMarkerChange(t.name,e,e)}this._cachedChanges=null}_bufferRootLoad(t){if(t.isAttached()){this._bufferRootStateChange(t.rootName,!0),this._markInsert(t,0,t.maxOffset);for(const e of t.getAttributeKeys())this._bufferRootAttributeChange(t.rootName,e,null,t.getAttribute(e));for(const n of this._markerCollection)if(n.getRange().root==t){const t=n.getData();this.bufferMarkerChange(n.name,(e=Ah({},t),ph(e,fh({range:null}))),t)}var e}}_markInsert(t,e,n){if(t.root.is("rootElement")&&!t.root._isLoaded)return;const i={type:"insert",offset:e,howMany:n,count:this._changeCount++};this._markChange(t,i)}_markRemove(t,e,n){if(t.root.is("rootElement")&&!t.root._isLoaded)return;const i={type:"remove",offset:e,howMany:n,count:this._changeCount++};this._markChange(t,i),this._removeAllNestedChanges(t,e,n)}_markAttribute(t){if(t.root.is("rootElement")&&!t.root._isLoaded)return;const e={type:"attribute",offset:t.startOffset,howMany:t.offsetSize,count:this._changeCount++};this._markChange(t.parent,e)}_markChange(t,e){this._makeSnapshot(t);const n=this._getChangesForElement(t);this._handleChange(e,n),n.push(e);for(let t=0;tn.offset){if(i>o){const t={type:"attribute",offset:o,howMany:i-o,count:this._changeCount++};this._handleChange(t,e),e.push(t)}t.nodesToHandle=n.offset-t.offset,t.howMany=t.nodesToHandle}else t.offset>=n.offset&&t.offseto?(t.nodesToHandle=i-o,t.offset=o):t.nodesToHandle=0);if("remove"==n.type&&t.offsetn.offset){const o={type:"attribute",offset:n.offset,howMany:i-n.offset,count:this._changeCount++};this._handleChange(o,e),e.push(o),t.nodesToHandle=n.offset-t.offset,t.howMany=t.nodesToHandle}"attribute"==n.type&&(t.offset>=n.offset&&i<=o?(t.nodesToHandle=0,t.howMany=0,t.offset=0):t.offset<=n.offset&&i>=o&&(n.howMany=0))}}t.howMany=t.nodesToHandle,delete t.nodesToHandle}_getInsertDiff(t,e,n){return{type:"insert",position:Rc._createAt(t,e),name:n.name,attributes:new Map(n.attributes),length:1,changeCount:this._changeCount++,_element:n.element}}_getRemoveDiff(t,e,n){return{type:"remove",position:Rc._createAt(t,e),name:n.name,attributes:new Map(n.attributes),length:1,changeCount:this._changeCount++,_element:n.element}}_getAttributesDiff(t,e,n){const i=[];n=new Map(n);for(const[o,r]of e){const e=n.has(o)?n.get(o):null;e!==r&&i.push({type:"attribute",position:t.start,range:t.clone(),length:1,attributeKey:o,attributeOldValue:r,attributeNewValue:e,changeCount:this._changeCount++}),n.delete(o)}for(const[e,o]of n)i.push({type:"attribute",position:t.start,range:t.clone(),length:1,attributeKey:e,attributeOldValue:null,attributeNewValue:o,changeCount:this._changeCount++});return i}_isInInsertedElement(t){const e=t.parent;if(!e)return!1;const n=this._changesInElement.get(e),i=t.startOffset;if(n)for(const t of n)if("insert"==t.type&&i>=t.offset&&ii){for(let e=0;ethis._version+1&&this._gaps.set(this._version,t),this._version=t}get lastOperation(){return this._operations[this._operations.length-1]}addOperation(t){if(t.baseVersion!==this.version)throw new w("model-document-history-addoperation-incorrect-version",this,{operation:t,historyVersion:this.version});this._operations.push(t),this._version++,this._baseVersionToOperationIndex.set(t.baseVersion,this._operations.length-1)}getOperations(t,e=this.version){if(!this._operations.length)return[];const n=this._operations[0];void 0===t&&(t=n.baseVersion);let i=e-1;for(const[e,n]of this._gaps)t>e&&te&&ithis.lastOperation.baseVersion)return[];let o=this._baseVersionToOperationIndex.get(t);void 0===o&&(o=0);let r=this._baseVersionToOperationIndex.get(i);return void 0===r&&(r=this._operations.length-1),this._operations.slice(o,r+1)}getOperation(t){const e=this._baseVersionToOperationIndex.get(t);if(void 0!==e)return this._operations[e]}setOperationAsUndone(t,e){this._undoPairs.set(e,t),this._undoneOperations.add(t)}isUndoingOperation(t){return this._undoPairs.has(t)}isUndoneOperation(t){return this._undoneOperations.has(t)}getUndoneOperation(t){return this._undoPairs.get(t)}reset(){this._version=0,this._undoPairs=new Map,this._operations=[],this._undoneOperations=new Set,this._gaps=new Map,this._baseVersionToOperationIndex=new Map}}class Dh extends Tc{constructor(t,e,n="main"){super(e),this._isAttached=!0,this._isLoaded=!0,this._document=t,this.rootName=n}get document(){return this._document}isAttached(){return this._isAttached}toJSON(){return this.rootName}}Dh.prototype.is=function(t,e){return e?e===this.name&&("rootElement"===t||"model:rootElement"===t||"element"===t||"model:element"===t):"rootElement"===t||"model:rootElement"===t||"element"===t||"model:element"===t||"node"===t||"model:node"===t};var Bh=Object.defineProperty,Sh=Object.defineProperties,Th=Object.getOwnPropertyDescriptors,Ih=Object.getOwnPropertySymbols,Ph=Object.prototype.hasOwnProperty,Rh=Object.prototype.propertyIsEnumerable,Vh=(t,e,n)=>e in t?Bh(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Fh=(t,e)=>{for(var n in e||(e={}))Ph.call(e,n)&&Vh(t,n,e[n]);if(Ih)for(var n of Ih(e))Rh.call(e,n)&&Vh(t,n,e[n]);return t},Lh=(t,e)=>Sh(t,Th(e));const Oh="$graveyard";class zh extends(S()){constructor(t){super(),this.model=t,this.history=new Eh,this.selection=new ul(this),this.roots=new Uo({idProperty:"rootName"}),this.differ=new Ch(t.markers),this.isReadOnly=!1,this._postFixers=new Set,this._hasSelectionChangedFromTheLastChangeBlock=!1,this.createRoot("$root",Oh),this.listenTo(t,"applyOperation",((t,e)=>{const n=e[0];n.isDocumentOperation&&this.differ.bufferOperation(n)}),{priority:"high"}),this.listenTo(t,"applyOperation",((t,e)=>{const n=e[0];n.isDocumentOperation&&this.history.addOperation(n)}),{priority:"low"}),this.listenTo(this.selection,"change",(()=>{this._hasSelectionChangedFromTheLastChangeBlock=!0})),this.listenTo(t.markers,"update",((t,e,n,i,o)=>{const r=Lh(Fh({},e.getData()),{range:i});this.differ.bufferMarkerChange(e.name,o,r),null===n&&e.on("change",((t,n)=>{const i=e.getData();this.differ.bufferMarkerChange(e.name,Lh(Fh({},i),{range:n}),i)}))})),this.registerPostFixer((t=>{let e=!1;for(const n of this.roots)n.isAttached()||n.isEmpty||(t.remove(t.createRangeIn(n)),e=!0);for(const n of this.model.markers)n.getRange().root.isAttached()||(t.removeMarker(n),e=!0);return e}))}get version(){return this.history.version}set version(t){this.history.version=t}get graveyard(){return this.getRoot(Oh)}createRoot(t="$root",e="main"){if(this.roots.get(e))throw new w("model-document-createroot-name-exists",this,{name:e});const n=new Dh(this,t,e);return this.roots.add(n),n}destroy(){this.selection.destroy(),this.stopListening()}getRoot(t="main"){return this.roots.get(t)}getRootNames(t=!1){return this.getRoots(t).map((t=>t.rootName))}getRoots(t=!1){return this.roots.filter((e=>e!=this.graveyard&&(t||e.isAttached())&&e._isLoaded))}registerPostFixer(t){this._postFixers.add(t)}toJSON(){const t=Dr(this);return t.selection="[engine.model.DocumentSelection]",t.model="[engine.model.Model]",t}_handleChangeBlock(t){this._hasDocumentChangedFromTheLastChangeBlock()&&(this._callPostFixers(t),this.selection.refresh(),this.differ.hasDataChanges()?this.fire("change:data",t.batch):this.fire("change",t.batch),this.selection.refresh(),this.differ.reset()),this._hasSelectionChangedFromTheLastChangeBlock=!1}_hasDocumentChangedFromTheLastChangeBlock(){return!this.differ.isEmpty||this._hasSelectionChangedFromTheLastChangeBlock}_getDefaultRoot(){const t=this.getRoots();return t.length?t[0]:this.graveyard}_getDefaultRange(){const t=this._getDefaultRoot(),e=this.model,n=e.schema,i=e.createPositionFromPath(t,[0]);return n.getNearestSelectionRange(i)||e.createRange(i)}_validateSelectionRange(t){return Mh(t.start)&&Mh(t.end)}_callPostFixers(t){let e=!1;do{for(const n of this._postFixers)if(this.selection.refresh(),e=n(t),e)break}while(e)}}function Mh(t){const e=t.textNode;if(e){const n=e.data,i=t.offset-e.startOffset;return!Yo(n,i)&&!Qo(n,i)}return!0}var Nh=Object.defineProperty,Hh=Object.defineProperties,jh=Object.getOwnPropertyDescriptors,qh=Object.getOwnPropertySymbols,Wh=Object.prototype.hasOwnProperty,Uh=Object.prototype.propertyIsEnumerable,$h=(t,e,n)=>e in t?Nh(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class Gh extends(S()){constructor(){super(...arguments),this._markers=new Map}[Symbol.iterator](){return this._markers.values()}has(t){const e=t instanceof Kh?t.name:t;return this._markers.has(e)}get(t){return this._markers.get(t)||null}_set(t,e,n=!1,i=!1){const o=t instanceof Kh?t.name:t;if(o.includes(","))throw new w("markercollection-incorrect-marker-name",this);const r=this._markers.get(o);if(r){const t=r.getData(),s=r.getRange();let a=!1;return s.isEqual(e)||(r._attachLiveRange(cl.fromRange(e)),a=!0),n!=r.managedUsingOperations&&(r._managedUsingOperations=n,a=!0),"boolean"==typeof i&&i!=r.affectsData&&(r._affectsData=i,a=!0),a&&this.fire(`update:${o}`,r,s,e,t),r}const s=cl.fromRange(e),a=new Kh(o,s,n,i);var c;return this._markers.set(o,a),this.fire(`update:${o}`,a,null,e,(c=((t,e)=>{for(var n in e||(e={}))Wh.call(e,n)&&$h(t,n,e[n]);if(qh)for(var n of qh(e))Uh.call(e,n)&&$h(t,n,e[n]);return t})({},a.getData()),Hh(c,jh({range:null})))),a}_remove(t){const e=t instanceof Kh?t.name:t,n=this._markers.get(e);return!!n&&(this._markers.delete(e),this.fire(`update:${e}`,n,n.getRange(),null,n.getData()),this._destroyMarker(n),!0)}_refresh(t){const e=t instanceof Kh?t.name:t,n=this._markers.get(e);if(!n)throw new w("markercollection-refresh-marker-not-exists",this);const i=n.getRange();this.fire(`update:${e}`,n,i,i,n.getData())}*getMarkersAtPosition(t){for(const e of this)e.getRange().containsPosition(t)&&(yield e)}*getMarkersIntersectingRange(t){for(const e of this)null!==e.getRange().getIntersection(t)&&(yield e)}destroy(){for(const t of this._markers.values())this._destroyMarker(t);this._markers=null,this.stopListening()}*getMarkersGroup(t){for(const e of this._markers.values())e.name.startsWith(t+":")&&(yield e)}_destroyMarker(t){t.stopListening(),t._detachLiveRange()}}class Kh extends(S(xc)){constructor(t,e,n,i){super(),this.name=t,this._liveRange=this._attachLiveRange(e),this._managedUsingOperations=n,this._affectsData=i}get managedUsingOperations(){if(!this._liveRange)throw new w("marker-destroyed",this);return this._managedUsingOperations}get affectsData(){if(!this._liveRange)throw new w("marker-destroyed",this);return this._affectsData}getData(){return{range:this.getRange(),affectsData:this.affectsData,managedUsingOperations:this.managedUsingOperations}}getStart(){if(!this._liveRange)throw new w("marker-destroyed",this);return this._liveRange.start.clone()}getEnd(){if(!this._liveRange)throw new w("marker-destroyed",this);return this._liveRange.end.clone()}getRange(){if(!this._liveRange)throw new w("marker-destroyed",this);return this._liveRange.toRange()}_attachLiveRange(t){return this._liveRange&&this._detachLiveRange(),t.delegate("change:range").to(this),t.delegate("change:content").to(this),this._liveRange=t,t}_detachLiveRange(){this._liveRange.stopDelegating("change:range",this),this._liveRange.stopDelegating("change:content",this),this._liveRange.detach(),this._liveRange=null}}Kh.prototype.is=function(t){return"marker"===t||"model:marker"===t};class Jh extends Pd{constructor(t,e){super(null),this.sourcePosition=t.clone(),this.howMany=e}get type(){return"detach"}get affectedSelectable(){return null}toJSON(){const t=super.toJSON();return t.sourcePosition=this.sourcePosition.toJSON(),t}_validate(){if(this.sourcePosition.root.document)throw new w("detach-operation-on-document-node",this)}_execute(){Vd(Mc._createFromPositionAndShift(this.sourcePosition,this.howMany))}static get className(){return"DetachOperation"}}class Zh extends xc{constructor(t){super(),this.markers=new Map,this._children=new Dc,t&&this._insertChild(0,t)}[Symbol.iterator](){return this.getChildren()}get childCount(){return this._children.length}get maxOffset(){return this._children.maxOffset}get isEmpty(){return 0===this.childCount}get nextSibling(){return null}get previousSibling(){return null}get root(){return this}get parent(){return null}get document(){return null}isAttached(){return!1}getAncestors(){return[]}getChild(t){return this._children.getNode(t)}getChildren(){return this._children[Symbol.iterator]()}getChildIndex(t){return this._children.getNodeIndex(t)}getChildStartOffset(t){return this._children.getNodeStartOffset(t)}getPath(){return[]}getNodeByPath(t){let e=this;for(const n of t)e=e.getChild(e.offsetToIndex(n));return e}offsetToIndex(t){return this._children.offsetToIndex(t)}toJSON(){const t=[];for(const e of this._children)t.push(e.toJSON());return t}static fromJSON(t){const e=[];for(const n of t)n.name?e.push(Tc.fromJSON(n)):e.push(Bc.fromJSON(n));return new Zh(e)}_appendChild(t){this._insertChild(this.childCount,t)}_insertChild(t,e){const n=function(t){if("string"==typeof t)return[new Bc(t)];X(t)||(t=[t]);return Array.from(t).map((t=>"string"==typeof t?new Bc(t):t instanceof Sc?new Bc(t.data,t.getAttributes()):t))}(e);for(const t of n)null!==t.parent&&t._remove(),t.parent=this;this._children._insertNodes(t,n)}_removeChildren(t,e=1){const n=this._children._removeNodes(t,e);for(const t of n)t.parent=null;return n}}Zh.prototype.is=function(t){return"documentFragment"===t||"model:documentFragment"===t};class Yh{constructor(t,e){this.model=t,this.batch=e}createText(t,e){return new Bc(t,e)}createElement(t,e){return new Tc(t,e)}createDocumentFragment(){return new Zh}cloneElement(t,e=!0){return t._clone(e)}insert(t,e,n=0){if(this._assertWriterUsedCorrectly(),t instanceof Bc&&""==t.data)return;const i=Rc._createAt(e,n);if(t.parent){if(nu(t.root,i.root))return void this.move(Mc._createOn(t),i);if(t.root.document)throw new w("model-writer-insert-forbidden-move",this);this.remove(t)}const o=i.root.document?i.root.document.version:null,r=new Hd(i,t,o);if(t instanceof Bc&&(r.shouldReceiveAttributes=!0),this.batch.addOperation(r),this.model.applyOperation(r),t instanceof Zh)for(const[e,n]of t.markers){const t=Rc._createAt(n.root,0),o={range:new Mc(n.start._getCombined(t,i),n.end._getCombined(t,i)),usingOperation:!0,affectsData:!0};this.model.markers.has(e)?this.updateMarker(e,o):this.addMarker(e,o)}}insertText(t,e,n,i){e instanceof Zh||e instanceof Tc||e instanceof Rc?this.insert(this.createText(t),e,n):this.insert(this.createText(t,e),n,i)}insertElement(t,e,n,i){e instanceof Zh||e instanceof Tc||e instanceof Rc?this.insert(this.createElement(t),e,n):this.insert(this.createElement(t,e),n,i)}append(t,e){this.insert(t,e,"end")}appendText(t,e,n){e instanceof Zh||e instanceof Tc?this.insert(this.createText(t),e,"end"):this.insert(this.createText(t,e),n,"end")}appendElement(t,e,n){e instanceof Zh||e instanceof Tc?this.insert(this.createElement(t),e,"end"):this.insert(this.createElement(t,e),n,"end")}setAttribute(t,e,n){if(this._assertWriterUsedCorrectly(),n instanceof Mc){const i=n.getMinimalFlatRanges();for(const n of i)Qh(this,t,e,n)}else Xh(this,t,e,n)}setAttributes(t,e){for(const[n,i]of Jo(t))this.setAttribute(n,i,e)}removeAttribute(t,e){if(this._assertWriterUsedCorrectly(),e instanceof Mc){const n=e.getMinimalFlatRanges();for(const e of n)Qh(this,t,null,e)}else Xh(this,t,null,e)}clearAttributes(t){this._assertWriterUsedCorrectly();const e=t=>{for(const e of t.getAttributeKeys())this.removeAttribute(e,t)};if(t instanceof Mc)for(const n of t.getItems())e(n);else e(t)}move(t,e,n){if(this._assertWriterUsedCorrectly(),!(t instanceof Mc))throw new w("writer-move-invalid-range",this);if(!t.isFlat)throw new w("writer-move-range-not-flat",this);const i=Rc._createAt(e,n);if(i.isEqual(t.start))return;if(this._addOperationForAffectedMarkers("move",t),!nu(t.root,i.root))throw new w("writer-move-different-document",this);const o=t.root.document?t.root.document.version:null,r=new Nd(t.start,t.end.offset-t.start.offset,i,o);this.batch.addOperation(r),this.model.applyOperation(r)}remove(t){this._assertWriterUsedCorrectly();const e=(t instanceof Mc?t:Mc._createOn(t)).getMinimalFlatRanges().reverse();for(const t of e)this._addOperationForAffectedMarkers("move",t),eu(t.start,t.end.offset-t.start.offset,this.batch,this.model)}merge(t){this._assertWriterUsedCorrectly();const e=t.nodeBefore,n=t.nodeAfter;if(this._addOperationForAffectedMarkers("merge",t),!(e instanceof Tc))throw new w("writer-merge-no-element-before",this);if(!(n instanceof Tc))throw new w("writer-merge-no-element-after",this);t.root.document?this._merge(t):this._mergeDetached(t)}createPositionFromPath(t,e,n){return this.model.createPositionFromPath(t,e,n)}createPositionAt(t,e){return this.model.createPositionAt(t,e)}createPositionAfter(t){return this.model.createPositionAfter(t)}createPositionBefore(t){return this.model.createPositionBefore(t)}createRange(t,e){return this.model.createRange(t,e)}createRangeIn(t){return this.model.createRangeIn(t)}createRangeOn(t){return this.model.createRangeOn(t)}createSelection(...t){return this.model.createSelection(...t)}_mergeDetached(t){const e=t.nodeBefore,n=t.nodeAfter;this.move(Mc._createIn(n),Rc._createAt(e,"end")),this.remove(n)}_merge(t){const e=Rc._createAt(t.nodeBefore,"end"),n=Rc._createAt(t.nodeAfter,0),i=t.root.document.graveyard,o=new Rc(i,[0]),r=t.root.document.version,s=new qd(n,t.nodeAfter.maxOffset,e,o,r);this.batch.addOperation(s),this.model.applyOperation(s)}rename(t,e){if(this._assertWriterUsedCorrectly(),!(t instanceof Tc))throw new w("writer-rename-not-element-instance",this);const n=t.root.document?t.root.document.version:null,i=new Kd(Rc._createBefore(t),t.name,e,n);this.batch.addOperation(i),this.model.applyOperation(i)}split(t,e){this._assertWriterUsedCorrectly();let n,i,o=t.parent;if(!o.parent)throw new w("writer-split-element-no-parent",this);if(e||(e=o.parent),!t.parent.getAncestors({includeSelf:!0}).includes(e))throw new w("writer-split-invalid-limit-element",this);do{const e=o.root.document?o.root.document.version:null,r=o.maxOffset-t.offset,s=jd.getInsertionPosition(t),a=new jd(t,r,s,null,e);this.batch.addOperation(a),this.model.applyOperation(a),n||i||(n=o,i=t.parent.nextSibling),o=(t=this.createPositionAfter(t.parent)).parent}while(o!==e);return{position:t,range:new Mc(Rc._createAt(n,"end"),Rc._createAt(i,0))}}wrap(t,e){if(this._assertWriterUsedCorrectly(),!t.isFlat)throw new w("writer-wrap-range-not-flat",this);const n=e instanceof Tc?e:new Tc(e);if(n.childCount>0)throw new w("writer-wrap-element-not-empty",this);if(null!==n.parent)throw new w("writer-wrap-element-attached",this);this.insert(n,t.start);const i=new Mc(t.start.getShiftedBy(1),t.end.getShiftedBy(1));this.move(i,Rc._createAt(n,0))}unwrap(t){if(this._assertWriterUsedCorrectly(),null===t.parent)throw new w("writer-unwrap-element-no-parent",this);this.move(Mc._createIn(t),this.createPositionAfter(t)),this.remove(t)}addMarker(t,e){if(this._assertWriterUsedCorrectly(),!e||"boolean"!=typeof e.usingOperation)throw new w("writer-addmarker-no-usingoperation",this);const n=e.usingOperation,i=e.range,o=void 0!==e.affectsData&&e.affectsData;if(this.model.markers.has(t))throw new w("writer-addmarker-marker-exists",this);if(!i)throw new w("writer-addmarker-no-range",this);return n?(tu(this,t,null,i,o),this.model.markers.get(t)):this.model.markers._set(t,i,n,o)}updateMarker(t,e){this._assertWriterUsedCorrectly();const n="string"==typeof t?t:t.name,i=this.model.markers.get(n);if(!i)throw new w("writer-updatemarker-marker-not-exists",this);if(!e)return _("writer-updatemarker-reconvert-using-editingcontroller",{markerName:n}),void this.model.markers._refresh(i);const o="boolean"==typeof e.usingOperation,r="boolean"==typeof e.affectsData,s=r?e.affectsData:i.affectsData;if(!o&&!e.range&&!r)throw new w("writer-updatemarker-wrong-options",this);const a=i.getRange(),c=e.range?e.range:a;o&&e.usingOperation!==i.managedUsingOperations?e.usingOperation?tu(this,n,null,c,s):(tu(this,n,a,null,s),this.model.markers._set(n,c,void 0,s)):i.managedUsingOperations?tu(this,n,a,c,s):this.model.markers._set(n,c,void 0,s)}removeMarker(t){this._assertWriterUsedCorrectly();const e="string"==typeof t?t:t.name;if(!this.model.markers.has(e))throw new w("writer-removemarker-no-marker",this);const n=this.model.markers.get(e);if(!n.managedUsingOperations)return void this.model.markers._remove(e);tu(this,e,n.getRange(),null,n.affectsData)}addRoot(t,e="$root"){this._assertWriterUsedCorrectly();const n=this.model.document.getRoot(t);if(n&&n.isAttached())throw new w("writer-addroot-root-exists",this);const i=this.model.document,o=new Zd(t,e,!0,i,i.version);return this.batch.addOperation(o),this.model.applyOperation(o),this.model.document.getRoot(t)}detachRoot(t){this._assertWriterUsedCorrectly();const e="string"==typeof t?this.model.document.getRoot(t):t;if(!e||!e.isAttached())throw new w("writer-detachroot-no-root",this);for(const t of this.model.markers)t.getRange().root===e&&this.removeMarker(t);for(const t of e.getAttributeKeys())this.removeAttribute(t,e);this.remove(this.createRangeIn(e));const n=this.model.document,i=new Zd(e.rootName,e.name,!1,n,n.version);this.batch.addOperation(i),this.model.applyOperation(i)}setSelection(...t){this._assertWriterUsedCorrectly(),this.model.document.selection._setTo(...t)}setSelectionFocus(t,e){this._assertWriterUsedCorrectly(),this.model.document.selection._setFocus(t,e)}setSelectionAttribute(t,e){if(this._assertWriterUsedCorrectly(),"string"==typeof t)this._setSelectionAttribute(t,e);else for(const[e,n]of Jo(t))this._setSelectionAttribute(e,n)}removeSelectionAttribute(t){if(this._assertWriterUsedCorrectly(),"string"==typeof t)this._removeSelectionAttribute(t);else for(const e of t)this._removeSelectionAttribute(e)}overrideSelectionGravity(){return this.model.document.selection._overrideGravity()}restoreSelectionGravity(t){this.model.document.selection._restoreGravity(t)}_setSelectionAttribute(t,e){const n=this.model.document.selection;if(n.isCollapsed&&n.anchor.parent.isEmpty){const i=ul._getStoreAttributeKey(t);this.setAttribute(i,e,n.anchor.parent)}n._setAttribute(t,e)}_removeSelectionAttribute(t){const e=this.model.document.selection;if(e.isCollapsed&&e.anchor.parent.isEmpty){const n=ul._getStoreAttributeKey(t);this.removeAttribute(n,e.anchor.parent)}e._removeAttribute(t)}_assertWriterUsedCorrectly(){if(this.model._currentWriter!==this)throw new w("writer-incorrect-use",this)}_addOperationForAffectedMarkers(t,e){for(const n of this.model.markers){if(!n.managedUsingOperations)continue;const i=n.getRange();let o=!1;if("move"===t){const t=e;o=t.containsPosition(i.start)||t.start.isEqual(i.start)||t.containsPosition(i.end)||t.end.isEqual(i.end)}else{const t=e,n=t.nodeBefore,r=t.nodeAfter,s=i.start.parent==n&&i.start.isAtEnd,a=i.end.parent==r&&0==i.end.offset,c=i.end.nodeAfter==r,l=i.start.nodeAfter==r;o=s||a||c||l}o&&this.updateMarker(n.name,{range:i})}}}function Qh(t,e,n,i){const o=t.model,r=o.document;let s,a,c,l=i.start;for(const t of i.getWalker({shallow:!0}))c=t.item.getAttribute(e),s&&a!=c&&(a!=n&&d(),l=s),s=t.nextPosition,a=c;function d(){const i=new Mc(l,s),c=i.root.document?r.version:null,d=new $d(i,e,a,n,c);t.batch.addOperation(d),o.applyOperation(d)}s instanceof Rc&&s!=l&&a!=n&&d()}function Xh(t,e,n,i){const o=t.model,r=o.document,s=i.getAttribute(e);let a,c;if(s!=n){if(i.root===i){const t=i.document?r.version:null;c=new Jd(i,e,s,n,t)}else{a=new Mc(Rc._createBefore(i),t.createPositionAfter(i));const o=a.root.document?r.version:null;c=new $d(a,e,s,n,o)}t.batch.addOperation(c),o.applyOperation(c)}}function tu(t,e,n,i,o){const r=t.model,s=r.document,a=new Wd(e,n,i,r.markers,!!o,s.version);t.batch.addOperation(a),r.applyOperation(a)}function eu(t,e,n,i){let o;if(t.root.document){const n=i.document,r=new Rc(n.graveyard,[0]);o=new Nd(t,e,r,n.version)}else o=new Jh(t,e);n.addOperation(o),i.applyOperation(o)}function nu(t,e){return t===e||t instanceof Dh&&e instanceof Dh}function iu(t,e,n={}){if(e.isCollapsed)return;const i=e.getFirstRange();if("$graveyard"==i.root.rootName)return;const o=t.schema;t.change((t=>{if(!n.doNotResetEntireContent&&function(t,e){const n=t.getLimitElement(e);if(!e.containsEntireContent(n))return!1;const i=e.getFirstRange();if(i.start.parent==i.end.parent)return!1;return t.checkChild(n,"paragraph")}(o,e))return void function(t,e){const n=t.model.schema.getLimitElement(e);t.remove(t.createRangeIn(n)),au(t,t.createPositionAt(n,0),e)}(t,e);const r={};if(!n.doNotAutoparagraph){const t=e.getSelectedElement();t&&Object.assign(r,o.getAttributesWithProperty(t,"copyOnReplace",!0))}const[s,a]=function(t){const e=t.root.document.model,n=t.start;let i=t.end;if(e.hasContent(t,{ignoreMarkers:!0})){const n=function(t){const e=t.parent,n=e.root.document.model.schema,i=e.getAncestors({parentFirst:!0,includeSelf:!0});for(const t of i){if(n.isLimit(t))return null;if(n.isBlock(t))return t}}(i);if(n&&i.isTouching(e.createPositionAt(n,0))){const n=e.createSelection(t);e.modifySelection(n,{direction:"backward"});const o=n.getLastPosition(),r=e.createRange(o,i);e.hasContent(r,{ignoreMarkers:!0})||(i=o)}}return[dh.fromPosition(n,"toPrevious"),dh.fromPosition(i,"toNext")]}(i);s.isTouching(a)||t.remove(t.createRange(s,a)),n.leaveUnmerged||(!function(t,e,n){const i=t.model;if(!su(t.model.schema,e,n))return;const[o,r]=function(t,e){const n=t.getAncestors(),i=e.getAncestors();let o=0;for(;n[o]&&n[o]==i[o];)o++;return[n[o],i[o]]}(e,n);if(!o||!r)return;!i.hasContent(o,{ignoreMarkers:!0})&&i.hasContent(r,{ignoreMarkers:!0})?ru(t,e,n,o.parent):ou(t,e,n,o.parent)}(t,s,a),o.removeDisallowedAttributes(s.parent.getChildren(),t)),cu(t,e,s),!n.doNotAutoparagraph&&function(t,e){const n=t.checkChild(e,"$text"),i=t.checkChild(e,"paragraph");return!n&&i}(o,s)&&au(t,s,e,r),s.detach(),a.detach()}))}function ou(t,e,n,i){const o=e.parent,r=n.parent;if(o!=i&&r!=i){for(e=t.createPositionAfter(o),(n=t.createPositionBefore(r)).isEqual(e)||t.insert(r,e),t.merge(e);n.parent.isEmpty;){const e=n.parent;n=t.createPositionBefore(e),t.remove(e)}su(t.model.schema,e,n)&&ou(t,e,n,i)}}function ru(t,e,n,i){const o=e.parent,r=n.parent;if(o!=i&&r!=i){for(e=t.createPositionAfter(o),(n=t.createPositionBefore(r)).isEqual(e)||t.insert(o,n);e.parent.isEmpty;){const n=e.parent;e=t.createPositionBefore(n),t.remove(n)}n=t.createPositionBefore(r),function(t,e){const n=e.nodeBefore,i=e.nodeAfter;n.name!=i.name&&t.rename(n,i.name);t.clearAttributes(n),t.setAttributes(Object.fromEntries(i.getAttributes()),n),t.merge(e)}(t,n),su(t.model.schema,e,n)&&ru(t,e,n,i)}}function su(t,e,n){const i=e.parent,o=n.parent;return i!=o&&(!t.isLimit(i)&&!t.isLimit(o)&&function(t,e,n){const i=new Mc(t,e);for(const t of i.getWalker())if(n.isLimit(t.item))return!1;return!0}(e,n,t))}function au(t,e,n,i={}){const o=t.createElement("paragraph");t.model.schema.setAllowedAttributes(o,i,t),t.insert(o,e),cu(t,n,t.createPositionAt(o,0))}function cu(t,e,n){e instanceof ul?t.setSelection(n):e.setTo(n)}function lu(t,e){const n=[];Array.from(t.getItems({direction:"backward"})).map((t=>e.createRangeOn(t))).filter((e=>(e.start.isAfter(t.start)||e.start.isEqual(t.start))&&(e.end.isBefore(t.end)||e.end.isEqual(t.end)))).forEach((t=>{n.push(t.start.parent),e.remove(t)})),n.forEach((t=>{let n=t;for(;n.parent&&n.isEmpty;){const t=e.createRangeOn(n);n=n.parent,e.remove(t)}}))}class du{constructor(t,e,n){this._firstNode=null,this._lastNode=null,this._lastAutoParagraph=null,this._filterAttributesOf=[],this._affectedStart=null,this._affectedEnd=null,this._nodeToSelect=null,this.model=t,this.writer=e,this.position=n,this.canMergeWith=new Set([this.position.parent]),this.schema=t.schema,this._documentFragment=e.createDocumentFragment(),this._documentFragmentPosition=e.createPositionAt(this._documentFragment,0)}handleNodes(t){for(const e of Array.from(t))this._handleNode(e);this._insertPartialFragment(),this._lastAutoParagraph&&this._updateLastNodeFromAutoParagraph(this._lastAutoParagraph),this._mergeOnRight(),this.schema.removeDisallowedAttributes(this._filterAttributesOf,this.writer),this._filterAttributesOf=[]}_updateLastNodeFromAutoParagraph(t){const e=this.writer.createPositionAfter(this._lastNode),n=this.writer.createPositionAfter(t);if(n.isAfter(e)){if(this._lastNode=t,this.position.parent!=t||!this.position.isAtEnd)throw new w("insertcontent-invalid-insertion-position",this);this.position=n,this._setAffectedBoundaries(this.position)}}getSelectionRange(){return this._nodeToSelect?Mc._createOn(this._nodeToSelect):this.model.schema.getNearestSelectionRange(this.position)}getAffectedRange(){return this._affectedStart?new Mc(this._affectedStart,this._affectedEnd):null}destroy(){this._affectedStart&&this._affectedStart.detach(),this._affectedEnd&&this._affectedEnd.detach()}_handleNode(t){if(this.schema.isObject(t))return void this._handleObject(t);let e=this._checkAndAutoParagraphToAllowedPosition(t);e||(e=this._checkAndSplitToAllowedPosition(t),e)?(this._appendToFragment(t),this._firstNode||(this._firstNode=t),this._lastNode=t):this._handleDisallowedNode(t)}_insertPartialFragment(){if(this._documentFragment.isEmpty)return;const t=dh.fromPosition(this.position,"toNext");this._setAffectedBoundaries(this.position),this._documentFragment.getChild(0)==this._firstNode&&(this.writer.insert(this._firstNode,this.position),this._mergeOnLeft(),this.position=t.toPosition()),this._documentFragment.isEmpty||this.writer.insert(this._documentFragment,this.position),this._documentFragmentPosition=this.writer.createPositionAt(this._documentFragment,0),this.position=t.toPosition(),t.detach()}_handleObject(t){this._checkAndSplitToAllowedPosition(t)?this._appendToFragment(t):this._tryAutoparagraphing(t)}_handleDisallowedNode(t){t.is("element")?this.handleNodes(t.getChildren()):this._tryAutoparagraphing(t)}_appendToFragment(t){if(!this.schema.checkChild(this.position,t))throw new w("insertcontent-wrong-position",this,{node:t,position:this.position});this.writer.insert(t,this._documentFragmentPosition),this._documentFragmentPosition=this._documentFragmentPosition.getShiftedBy(t.offsetSize),this.schema.isObject(t)&&!this.schema.checkChild(this.position,"$text")?this._nodeToSelect=t:this._nodeToSelect=null,this._filterAttributesOf.push(t)}_setAffectedBoundaries(t){this._affectedStart||(this._affectedStart=dh.fromPosition(t,"toPrevious")),this._affectedEnd&&!this._affectedEnd.isBefore(t)||(this._affectedEnd&&this._affectedEnd.detach(),this._affectedEnd=dh.fromPosition(t,"toNext"))}_mergeOnLeft(){const t=this._firstNode;if(!(t instanceof Tc))return;if(!this._canMergeLeft(t))return;const e=dh._createBefore(t);e.stickiness="toNext";const n=dh.fromPosition(this.position,"toNext");this._affectedStart.isEqual(e)&&(this._affectedStart.detach(),this._affectedStart=dh._createAt(e.nodeBefore,"end","toPrevious")),this._firstNode===this._lastNode&&(this._firstNode=e.nodeBefore,this._lastNode=e.nodeBefore),this.writer.merge(e),e.isEqual(this._affectedEnd)&&this._firstNode===this._lastNode&&(this._affectedEnd.detach(),this._affectedEnd=dh._createAt(e.nodeBefore,"end","toNext")),this.position=n.toPosition(),n.detach(),this._filterAttributesOf.push(this.position.parent),e.detach()}_mergeOnRight(){const t=this._lastNode;if(!(t instanceof Tc))return;if(!this._canMergeRight(t))return;const e=dh._createAfter(t);if(e.stickiness="toNext",!this.position.isEqual(e))throw new w("insertcontent-invalid-insertion-position",this);this.position=Rc._createAt(e.nodeBefore,"end");const n=dh.fromPosition(this.position,"toPrevious");this._affectedEnd.isEqual(e)&&(this._affectedEnd.detach(),this._affectedEnd=dh._createAt(e.nodeBefore,"end","toNext")),this._firstNode===this._lastNode&&(this._firstNode=e.nodeBefore,this._lastNode=e.nodeBefore),this.writer.merge(e),e.getShiftedBy(-1).isEqual(this._affectedStart)&&this._firstNode===this._lastNode&&(this._affectedStart.detach(),this._affectedStart=dh._createAt(e.nodeBefore,0,"toPrevious")),this.position=n.toPosition(),n.detach(),this._filterAttributesOf.push(this.position.parent),e.detach()}_canMergeLeft(t){const e=t.previousSibling;return e instanceof Tc&&this.canMergeWith.has(e)&&this.model.schema.checkMerge(e,t)}_canMergeRight(t){const e=t.nextSibling;return e instanceof Tc&&this.canMergeWith.has(e)&&this.model.schema.checkMerge(t,e)}_tryAutoparagraphing(t){const e=this.writer.createElement("paragraph");this._getAllowedIn(this.position.parent,e)&&this.schema.checkChild(e,t)&&(e._appendChild(t),this._handleNode(e))}_checkAndAutoParagraphToAllowedPosition(t){if(this.schema.checkChild(this.position.parent,t))return!0;if(!this.schema.checkChild(this.position.parent,"paragraph")||!this.schema.checkChild("paragraph",t))return!1;this._insertPartialFragment();const e=this.writer.createElement("paragraph");return this.writer.insert(e,this.position),this._setAffectedBoundaries(this.position),this._lastAutoParagraph=e,this.position=this.writer.createPositionAt(e,0),!0}_checkAndSplitToAllowedPosition(t){const e=this._getAllowedIn(this.position.parent,t);if(!e)return!1;for(e!=this.position.parent&&this._insertPartialFragment();e!=this.position.parent;)if(this.position.isAtStart){const t=this.position.parent;this.position=this.writer.createPositionBefore(t),t.isEmpty&&t.parent===e&&this.writer.remove(t)}else if(this.position.isAtEnd)this.position=this.writer.createPositionAfter(this.position.parent);else{const t=this.writer.createPositionAfter(this.position.parent);this._setAffectedBoundaries(this.position),this.writer.split(this.position),this.position=t,this.canMergeWith.add(this.position.nodeAfter)}return!0}_getAllowedIn(t,e){return this.schema.checkChild(t,e)?t:this.schema.isLimit(t)?null:this._getAllowedIn(t.parent,e)}}function hu(t,e,n,i={}){if(!t.schema.isObject(e))throw new w("insertobject-element-not-an-object",t,{object:e});const o=n||t.document.selection;let r=o;i.findOptimalPosition&&t.schema.isBlock(e)&&(r=t.createSelection(t.schema.findOptimalInsertionRange(o,i.findOptimalPosition)));const s=$o(o.getSelectedBlocks()),a={};return s&&Object.assign(a,t.schema.getAttributesWithProperty(s,"copyOnReplace",!0)),t.change((n=>{r.isCollapsed||t.deleteContent(r,{doNotAutoparagraph:!0});let o=e;const s=r.anchor.parent;!t.schema.checkChild(s,e)&&t.schema.checkChild(s,"paragraph")&&t.schema.checkChild("paragraph",e)&&(o=n.createElement("paragraph"),n.insert(e,o)),t.schema.setAllowedAttributes(o,a,n);const c=t.insertContent(o,r);return c.isCollapsed||i.setSelection&&function(t,e,n,i){const o=t.model;if("on"==n)return void t.setSelection(e,"on");if("after"!=n)throw new w("insertobject-invalid-place-parameter-value",o);let r=e.nextSibling;if(o.schema.isInline(e))return void t.setSelection(e,"after");const s=r&&o.schema.checkChild(r,"$text");!s&&o.schema.checkChild(e.parent,"paragraph")&&(r=t.createElement("paragraph"),o.schema.setAllowedAttributes(r,i,t),o.insertContent(r,t.createPositionAfter(e)));r&&t.setSelection(r,0)}(n,e,i.setSelection,a),c}))}const uu=' ,.?!:;"-()';function mu(t,e){const{isForward:n,walker:i,unit:o,schema:r,treatEmojiAsSingleUnit:s}=t,{type:a,item:c,nextPosition:l}=e;if("text"==a)return"word"===t.unit?function(t,e){let n=t.position.textNode;n||(n=e?t.position.nodeAfter:t.position.nodeBefore);for(;n&&n.is("$text");){const i=t.position.offset-n.startOffset;if(fu(n,i,e))n=e?t.position.nodeAfter:t.position.nodeBefore;else{if(pu(n.data,i,e))break;t.next()}}return t.position}(i,n):function(t,e,n){const i=t.position.textNode;if(i){const o=i.data;let r=t.position.offset-i.startOffset;for(;Yo(o,r)||"character"==e&&Qo(o,r)||n&&tr(o,r);)t.next(),r=t.position.offset-i.startOffset}return t.position}(i,o,s);if(a==(n?"elementStart":"elementEnd")){if(r.isSelectable(c))return Rc._createAt(c,n?"after":"before");if(r.checkChild(l,"$text"))return l}else{if(r.isLimit(c))return void i.skip((()=>!0));if(r.checkChild(l,"$text"))return l}}function gu(t,e){const n=t.root,i=Rc._createAt(n,e?"end":0);return e?new Mc(t,i):new Mc(i,t)}function pu(t,e,n){const i=e+(n?0:-1);return uu.includes(t.charAt(i))}function fu(t,e,n){return e===(n?t.offsetSize:0)}class bu extends(W()){constructor(){super(),this.markers=new Gh,this.document=new zh(this),this.schema=new id,this._pendingChanges=[],this._currentWriter=null,["deleteContent","modifySelection","getSelectedContent","applyOperation"].forEach((t=>this.decorate(t))),this.on("applyOperation",((t,e)=>{e[0]._validate()}),{priority:"highest"}),this.schema.register("$root",{isLimit:!0}),this.schema.register("$container",{allowIn:["$root","$container"]}),this.schema.register("$block",{allowIn:["$root","$container"],isBlock:!0}),this.schema.register("$blockObject",{allowWhere:"$block",isBlock:!0,isObject:!0}),this.schema.register("$inlineObject",{allowWhere:"$text",allowAttributesOf:"$text",isInline:!0,isObject:!0}),this.schema.register("$text",{allowIn:"$block",isInline:!0,isContent:!0}),this.schema.register("$clipboardHolder",{allowContentOf:"$root",allowChildren:"$text",isLimit:!0}),this.schema.register("$documentFragment",{allowContentOf:"$root",allowChildren:"$text",isLimit:!0}),this.schema.register("$marker"),this.schema.addChildCheck(((t,e)=>{if("$marker"===e.name)return!0})),Jl(this),this.document.registerPostFixer(Pl),this.on("insertContent",((t,[e,n])=>{t.return=function(t,e,n){return t.change((i=>{const o=n||t.document.selection;o.isCollapsed||t.deleteContent(o,{doNotAutoparagraph:!0});const r=new du(t,i,o.anchor),s=[];let a;if(e.is("documentFragment")){if(e.markers.size){const t=[];for(const[n,i]of e.markers){const{start:e,end:o}=i,r=e.isEqual(o);t.push({position:e,name:n,isCollapsed:r},{position:o,name:n,isCollapsed:r})}t.sort((({position:t},{position:e})=>t.isBefore(e)?1:-1));for(const{position:n,name:o,isCollapsed:r}of t){let t=null,a=null;const c=n.parent===e&&n.isAtStart,l=n.parent===e&&n.isAtEnd;c||l?r&&(a=c?"start":"end"):(t=i.createElement("$marker"),i.insert(t,n)),s.push({name:o,element:t,collapsed:a})}}a=e.getChildren()}else a=[e];r.handleNodes(a);let c=r.getSelectionRange();if(e.is("documentFragment")&&s.length){const t=c?cl.fromRange(c):null,e={};for(let t=s.length-1;t>=0;t--){const{name:n,element:o,collapsed:a}=s[t],c=!e[n];if(c&&(e[n]=[]),o){const t=i.createPositionAt(o,"before");e[n].push(t),i.remove(o)}else{const t=r.getAffectedRange();if(!t){a&&e[n].push(r.position);continue}a?e[n].push(t[a]):e[n].push(c?t.start:t.end)}}for(const[t,[n,o]]of Object.entries(e))n&&o&&n.root===o.root&&n.root.document&&!i.model.markers.has(t)&&i.addMarker(t,{usingOperation:!0,affectsData:!0,range:new Mc(n,o)});t&&(c=t.toRange(),t.detach())}c&&(o instanceof ul?i.setSelection(c):o.setTo(c));const l=r.getAffectedRange()||t.createRange(o.anchor);return r.destroy(),l}))}(this,e,n)})),this.on("insertObject",((t,[e,n,i])=>{t.return=hu(this,e,n,i)})),this.on("canEditAt",(t=>{const e=!this.document.isReadOnly;t.return=e,e||t.stop()}))}change(t){try{return 0===this._pendingChanges.length?(this._pendingChanges.push({batch:new mh,callback:t}),this._runPendingChanges()[0]):t(this._currentWriter)}catch(t){w.rethrowUnexpectedError(t,this)}}enqueueChange(t,e){try{t?"function"==typeof t?(e=t,t=new mh):t instanceof mh||(t=new mh(t)):t=new mh,this._pendingChanges.push({batch:t,callback:e}),1==this._pendingChanges.length&&this._runPendingChanges()}catch(t){w.rethrowUnexpectedError(t,this)}}applyOperation(t){t._execute()}insertContent(t,e,n,...i){const o=ku(e,n);return this.fire("insertContent",[t,o,n,...i])}insertObject(t,e,n,i,...o){const r=ku(e,n);return this.fire("insertObject",[t,r,i,i,...o])}deleteContent(t,e){iu(this,t,e)}modifySelection(t,e){!function(t,e,n={}){const i=t.schema,o="backward"!=n.direction,r=n.unit?n.unit:"character",s=!!n.treatEmojiAsSingleUnit,a=e.focus,c=new Ic({boundaries:gu(a,o),singleCharacters:!0,direction:o?"forward":"backward"}),l={walker:c,schema:i,isForward:o,unit:r,treatEmojiAsSingleUnit:s};let d;for(;d=c.next();){if(d.done)return;const n=mu(l,d.value);if(n)return void(e instanceof ul?t.change((t=>{t.setSelectionFocus(n)})):e.setFocus(n))}}(this,t,e)}getSelectedContent(t){return function(t,e){return t.change((t=>{const n=t.createDocumentFragment(),i=e.getFirstRange();if(!i||i.isCollapsed)return n;const o=i.start.root,r=i.start.getCommonPath(i.end),s=o.getNodeByPath(r);let a;a=i.start.parent==i.end.parent?i:t.createRange(t.createPositionAt(s,i.start.path[r.length]),t.createPositionAt(s,i.end.path[r.length]+1));const c=a.end.offset-a.start.offset;for(const e of a.getItems({shallow:!0}))e.is("$textProxy")?t.appendText(e.data,e.getAttributes(),n):t.append(t.cloneElement(e,!0),n);if(a!=i){const e=i._getTransformedByMove(a.start,t.createPositionAt(n,0),c)[0],o=t.createRange(t.createPositionAt(n,0),e.start);lu(t.createRange(e.end,t.createPositionAt(n,"end")),t),lu(o,t)}return n}))}(this,t)}hasContent(t,e={}){const n=t instanceof Mc?t:Mc._createIn(t);if(n.isCollapsed)return!1;const{ignoreWhitespaces:i=!1,ignoreMarkers:o=!1}=e;if(!o)for(const t of this.markers.getMarkersIntersectingRange(n))if(t.affectsData)return!0;for(const t of n.getItems())if(this.schema.isContent(t)){if(!t.is("$textProxy"))return!0;if(!i)return!0;if(-1!==t.data.search(/\S/))return!0}return!1}canEditAt(t){const e=ku(t);return this.fire("canEditAt",[e])}createPositionFromPath(t,e,n){return new Rc(t,e,n)}createPositionAt(t,e){return Rc._createAt(t,e)}createPositionAfter(t){return Rc._createAfter(t)}createPositionBefore(t){return Rc._createBefore(t)}createRange(t,e){return new Mc(t,e)}createRangeIn(t){return Mc._createIn(t)}createRangeOn(t){return Mc._createOn(t)}createSelection(...t){return new el(...t)}createBatch(t){return new mh(t)}createOperationFromJSON(t){return Qd.fromJSON(t,this.document)}destroy(){this.document.destroy(),this.stopListening()}_runPendingChanges(){const t=[];this.fire("_beforeChanges");try{for(;this._pendingChanges.length;){const e=this._pendingChanges[0].batch;this._currentWriter=new Yh(this,e);const n=this._pendingChanges[0].callback(this._currentWriter);t.push(n),this.document._handleChangeBlock(this._currentWriter),this._pendingChanges.shift(),this._currentWriter=null}}finally{this._pendingChanges.length=0,this._currentWriter=null,this.fire("_afterChanges")}return t}}function ku(t,e){if(t)return t instanceof el||t instanceof ul?t:t instanceof Ec?e||0===e?new el(t,e):t.is("rootElement")?new el(t,"in"):new el(t,"on"):new el(t)}class wu extends Ta{constructor(){super(...arguments),this.domEventType="click"}onDomEvent(t){this.fire(t.type,t)}}class _u extends Ta{constructor(){super(...arguments),this.domEventType=["mousedown","mouseup","mouseover","mouseout"]}onDomEvent(t){this.fire(t.type,t)}}class Au{constructor(t){this.document=t}createDocumentFragment(t){return new js(this.document,t)}createElement(t,e,n){return new hs(this.document,t,e,n)}createText(t){return new Sr(this.document,t)}clone(t,e=!1){return t._clone(e)}appendChild(t,e){return e._appendChild(t)}insertChild(t,e,n){return n._insertChild(t,e)}removeChildren(t,e,n){return n._removeChildren(t,e)}remove(t){const e=t.parent;return e?this.removeChildren(e.getChildIndex(t),1,e):[]}replace(t,e){const n=t.parent;if(n){const i=n.getChildIndex(t);return this.removeChildren(i,1,n),this.insertChild(i,e,n),!0}return!1}unwrapElement(t){const e=t.parent;if(e){const n=e.getChildIndex(t);this.remove(t),this.insertChild(n,t.getChildren(),e)}}rename(t,e){const n=new hs(this.document,t,e.getAttributes(),e.getChildren());return this.replace(e,n)?n:null}setAttribute(t,e,n){n._setAttribute(t,e)}removeAttribute(t,e){e._removeAttribute(t)}addClass(t,e){e._addClass(t)}removeClass(t,e){e._removeClass(t)}setStyle(t,e,n){yt(t)&&void 0===n?e._setStyle(t):n._setStyle(t,e)}removeStyle(t,e){e._removeStyle(t)}setCustomProperty(t,e,n){n._setCustomProperty(t,e)}removeCustomProperty(t,e){return e._removeCustomProperty(t)}createPositionAt(t,e){return ws._createAt(t,e)}createPositionAfter(t){return ws._createAfter(t)}createPositionBefore(t){return ws._createBefore(t)}createRange(t,e){return new _s(t,e)}createRangeOn(t){return _s._createOn(t)}createRangeIn(t){return _s._createIn(t)}createSelection(...t){return new Cs(...t)}}const Cu=/^#([0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/i,vu=/^rgb\([ ]?([0-9]{1,3}[ %]?,[ ]?){2,3}[0-9]{1,3}[ %]?\)$/i,yu=/^rgba\([ ]?([0-9]{1,3}[ %]?,[ ]?){3}(1|[0-9]+%|[0]?\.?[0-9]+)\)$/i,xu=/^hsl\([ ]?([0-9]{1,3}[ %]?[,]?[ ]*){3}(1|[0-9]+%|[0]?\.?[0-9]+)?\)$/i,Eu=/^hsla\([ ]?([0-9]{1,3}[ %]?,[ ]?){2,3}(1|[0-9]+%|[0]?\.?[0-9]+)\)$/i,Du=/\w+\((?:[^()]|\([^()]*\))*\)|\S+/gi,Bu=new Set(["black","silver","gray","white","maroon","red","purple","fuchsia","green","lime","olive","yellow","navy","blue","teal","aqua","orange","aliceblue","antiquewhite","aquamarine","azure","beige","bisque","blanchedalmond","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","gainsboro","ghostwhite","gold","goldenrod","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","limegreen","linen","magenta","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","oldlace","olivedrab","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","thistle","tomato","turquoise","violet","wheat","whitesmoke","yellowgreen","activeborder","activecaption","appworkspace","background","buttonface","buttonhighlight","buttonshadow","buttontext","captiontext","graytext","highlight","highlighttext","inactiveborder","inactivecaption","inactivecaptiontext","infobackground","infotext","menu","menutext","scrollbar","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","window","windowframe","windowtext","rebeccapurple","currentcolor","transparent"]);function Su(t){return t.startsWith("#")?Cu.test(t):t.startsWith("rgb")?vu.test(t)||yu.test(t):t.startsWith("hsl")?xu.test(t)||Eu.test(t):Bu.has(t.toLowerCase())}const Tu=["none","hidden","dotted","dashed","solid","double","groove","ridge","inset","outset"];function Iu(t){return Tu.includes(t)}const Pu=/^([+-]?[0-9]*([.][0-9]+)?(px|cm|mm|in|pc|pt|ch|em|ex|rem|vh|vw|vmin|vmax)|0)$/;function Ru(t){return Pu.test(t)}const Vu=/^[+-]?[0-9]*([.][0-9]+)?%$/;function Fu(t){return Vu.test(t)}const Lu=["repeat-x","repeat-y","repeat","space","round","no-repeat"];function Ou(t){return Lu.includes(t)}const zu=["center","top","bottom","left","right"];function Mu(t){return zu.includes(t)}const Nu=["fixed","scroll","local"];function Hu(t){return Nu.includes(t)}const ju=/^url\(/;function qu(t){return ju.test(t)}function Wu(t=""){if(""===t)return{top:void 0,right:void 0,bottom:void 0,left:void 0};const e=Ku(t),n=e[0],i=e[2]||n,o=e[1]||n;return{top:n,bottom:i,right:o,left:e[3]||o}}function Uu(t){return e=>{const{top:n,right:i,bottom:o,left:r}=e,s=[];return[n,i,r,o].every((t=>!!t))?s.push([t,$u(e)]):(n&&s.push([t+"-top",n]),i&&s.push([t+"-right",i]),o&&s.push([t+"-bottom",o]),r&&s.push([t+"-left",r])),s}}function $u({top:t,right:e,bottom:n,left:i}){const o=[];return i!==e?o.push(t,e,n,i):n!==t?o.push(t,e,n):e!==t?o.push(t,e):o.push(t),o.join(" ")}function Gu(t){return e=>({path:t,value:Wu(e)})}function Ku(t){const e=t.matchAll(Du);return Array.from(e).map((t=>t[0]))}function Ju(t){t.setNormalizer("background",(t=>{const e={},n=Ku(t);for(const t of n)Ou(t)?(e.repeat=e.repeat||[],e.repeat.push(t)):Mu(t)?(e.position=e.position||[],e.position.push(t)):Hu(t)?e.attachment=t:Su(t)?e.color=t:qu(t)&&(e.image=t);return{path:"background",value:e}})),t.setNormalizer("background-color",(t=>({path:"background.color",value:t}))),t.setReducer("background",(t=>{const e=[];return e.push(["background-color",t.color]),e})),t.setStyleRelation("background",["background-color"])}function Zu(t){t.setNormalizer("border",(t=>{const{color:e,style:n,width:i}=im(t);return{path:"border",value:{color:Wu(e),style:Wu(n),width:Wu(i)}}})),t.setNormalizer("border-top",Yu("top")),t.setNormalizer("border-right",Yu("right")),t.setNormalizer("border-bottom",Yu("bottom")),t.setNormalizer("border-left",Yu("left")),t.setNormalizer("border-color",Qu("color")),t.setNormalizer("border-width",Qu("width")),t.setNormalizer("border-style",Qu("style")),t.setNormalizer("border-top-color",tm("color","top")),t.setNormalizer("border-top-style",tm("style","top")),t.setNormalizer("border-top-width",tm("width","top")),t.setNormalizer("border-right-color",tm("color","right")),t.setNormalizer("border-right-style",tm("style","right")),t.setNormalizer("border-right-width",tm("width","right")),t.setNormalizer("border-bottom-color",tm("color","bottom")),t.setNormalizer("border-bottom-style",tm("style","bottom")),t.setNormalizer("border-bottom-width",tm("width","bottom")),t.setNormalizer("border-left-color",tm("color","left")),t.setNormalizer("border-left-style",tm("style","left")),t.setNormalizer("border-left-width",tm("width","left")),t.setExtractor("border-top",em("top")),t.setExtractor("border-right",em("right")),t.setExtractor("border-bottom",em("bottom")),t.setExtractor("border-left",em("left")),t.setExtractor("border-top-color","border.color.top"),t.setExtractor("border-right-color","border.color.right"),t.setExtractor("border-bottom-color","border.color.bottom"),t.setExtractor("border-left-color","border.color.left"),t.setExtractor("border-top-width","border.width.top"),t.setExtractor("border-right-width","border.width.right"),t.setExtractor("border-bottom-width","border.width.bottom"),t.setExtractor("border-left-width","border.width.left"),t.setExtractor("border-top-style","border.style.top"),t.setExtractor("border-right-style","border.style.right"),t.setExtractor("border-bottom-style","border.style.bottom"),t.setExtractor("border-left-style","border.style.left"),t.setReducer("border-color",Uu("border-color")),t.setReducer("border-style",Uu("border-style")),t.setReducer("border-width",Uu("border-width")),t.setReducer("border-top",om("top")),t.setReducer("border-right",om("right")),t.setReducer("border-bottom",om("bottom")),t.setReducer("border-left",om("left")),t.setReducer("border",function(){return e=>{const n=nm(e,"top"),i=nm(e,"right"),o=nm(e,"bottom"),r=nm(e,"left"),s=[n,i,o,r],a={width:t(s,"width"),style:t(s,"style"),color:t(s,"color")},c=rm(a,"all");if(c.length)return c;return[...Object.entries(a).reduce(((t,[e,n])=>(n&&(t.push([`border-${e}`,n]),s.forEach((t=>delete t[e]))),t)),[]),...rm(n,"top"),...rm(i,"right"),...rm(o,"bottom"),...rm(r,"left")]};function t(t,e){return t.map((t=>t[e])).reduce(((t,e)=>t==e?t:null))}}()),t.setStyleRelation("border",["border-color","border-style","border-width","border-top","border-right","border-bottom","border-left","border-top-color","border-right-color","border-bottom-color","border-left-color","border-top-style","border-right-style","border-bottom-style","border-left-style","border-top-width","border-right-width","border-bottom-width","border-left-width"]),t.setStyleRelation("border-color",["border-top-color","border-right-color","border-bottom-color","border-left-color"]),t.setStyleRelation("border-style",["border-top-style","border-right-style","border-bottom-style","border-left-style"]),t.setStyleRelation("border-width",["border-top-width","border-right-width","border-bottom-width","border-left-width"]),t.setStyleRelation("border-top",["border-top-color","border-top-style","border-top-width"]),t.setStyleRelation("border-right",["border-right-color","border-right-style","border-right-width"]),t.setStyleRelation("border-bottom",["border-bottom-color","border-bottom-style","border-bottom-width"]),t.setStyleRelation("border-left",["border-left-color","border-left-style","border-left-width"])}function Yu(t){return e=>{const{color:n,style:i,width:o}=im(e),r={};return void 0!==n&&(r.color={[t]:n}),void 0!==i&&(r.style={[t]:i}),void 0!==o&&(r.width={[t]:o}),{path:"border",value:r}}}function Qu(t){return e=>({path:"border",value:Xu(e,t)})}function Xu(t,e){return{[e]:Wu(t)}}function tm(t,e){return n=>({path:"border",value:{[t]:{[e]:n}}})}function em(t){return(e,n)=>{if(n.border)return nm(n.border,t)}}function nm(t,e){const n={};return t.width&&t.width[e]&&(n.width=t.width[e]),t.style&&t.style[e]&&(n.style=t.style[e]),t.color&&t.color[e]&&(n.color=t.color[e]),n}function im(t){const e={},n=Ku(t);for(const t of n)Ru(t)||/thin|medium|thick/.test(t)?e.width=t:Iu(t)?e.style=t:e.color=t;return e}function om(t){return e=>rm(e,t)}function rm(t,e){const n=[];if(t&&t.width&&n.push("width"),t&&t.style&&n.push("style"),t&&t.color&&n.push("color"),3==n.length){const i=n.map((e=>t[e])).join(" ");return["all"==e?["border",i]:[`border-${e}`,i]]}return"all"==e?[]:n.map((n=>[`border-${e}-${n}`,t[n]]))}function sm(t){t.setNormalizer("margin",Gu("margin")),t.setNormalizer("margin-top",(t=>({path:"margin.top",value:t}))),t.setNormalizer("margin-right",(t=>({path:"margin.right",value:t}))),t.setNormalizer("margin-bottom",(t=>({path:"margin.bottom",value:t}))),t.setNormalizer("margin-left",(t=>({path:"margin.left",value:t}))),t.setReducer("margin",Uu("margin")),t.setStyleRelation("margin",["margin-top","margin-right","margin-bottom","margin-left"])}function am(t){t.setNormalizer("padding",Gu("padding")),t.setNormalizer("padding-top",(t=>({path:"padding.top",value:t}))),t.setNormalizer("padding-right",(t=>({path:"padding.right",value:t}))),t.setNormalizer("padding-bottom",(t=>({path:"padding.bottom",value:t}))),t.setNormalizer("padding-left",(t=>({path:"padding.left",value:t}))),t.setReducer("padding",Uu("padding")),t.setStyleRelation("padding",["padding-top","padding-right","padding-bottom","padding-left"])}class cm{constructor(){this._commands=new Map}add(t,e){this._commands.set(t,e)}get(t){return this._commands.get(t)}execute(t,...e){const n=this.get(t);if(!n)throw new w("commandcollection-command-not-found",this,{commandName:t});return n.execute(...e)}*names(){yield*this._commands.keys()}*commands(){yield*this._commands.values()}[Symbol.iterator](){return this._commands[Symbol.iterator]()}destroy(){for(const t of this.commands())t.destroy()}}var lm=Object.defineProperty,dm=Object.getOwnPropertySymbols,hm=Object.prototype.hasOwnProperty,um=Object.prototype.propertyIsEnumerable,mm=(t,e,n)=>e in t?lm(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;const gm="contentEditing",pm="common";class fm{constructor(t){this.keystrokeInfos=new Map,this._editor=t;const e=t.config.get("menuBar.isVisible"),n=t.locale.t;this.addKeystrokeInfoCategory({id:gm,label:n("Content editing keystrokes"),description:n("These keyboard shortcuts allow for quick access to content editing features.")});const i=[{label:n("Close contextual balloons, dropdowns, and dialogs"),keystroke:"Esc"},{label:n("Open the accessibility help dialog"),keystroke:"Alt+0"},{label:n("Move focus between form fields (inputs, buttons, etc.)"),keystroke:[["Tab"],["Shift+Tab"]]},{label:n("Move focus to the toolbar, navigate between toolbars"),keystroke:"Alt+F10",mayRequireFn:!0},{label:n("Navigate through the toolbar or menu bar"),keystroke:[["arrowup"],["arrowright"],["arrowdown"],["arrowleft"]]},{label:n("Execute the currently focused button. Executing buttons that interact with the editor content moves the focus back to the content."),keystroke:[["Enter"],["Space"]]}];e&&i.push({label:n("Move focus to the menu bar, navigate between menu bars"),keystroke:"Alt+F9",mayRequireFn:!0}),this.addKeystrokeInfoCategory({id:"navigation",label:n("User interface and content navigation keystrokes"),description:n("Use the following keystrokes for more efficient navigation in the CKEditor 5 user interface."),groups:[{id:"common",keystrokes:i}]})}addKeystrokeInfoCategory({id:t,label:e,description:n,groups:i}){this.keystrokeInfos.set(t,{id:t,label:e,description:n,groups:new Map}),this.addKeystrokeInfoGroup({categoryId:t,id:pm}),i&&i.forEach((e=>{this.addKeystrokeInfoGroup(((t,e)=>{for(var n in e||(e={}))hm.call(e,n)&&mm(t,n,e[n]);if(dm)for(var n of dm(e))um.call(e,n)&&mm(t,n,e[n]);return t})({categoryId:t},e))}))}addKeystrokeInfoGroup({categoryId:t=gm,id:e,label:n,keystrokes:i}){const o=this.keystrokeInfos.get(t);if(!o)throw new w("accessibility-unknown-keystroke-info-category",this._editor,{groupId:e,categoryId:t});o.groups.set(e,{id:e,label:n,keystrokes:i||[]})}addKeystrokeInfos({categoryId:t=gm,groupId:e=pm,keystrokes:n}){if(!this.keystrokeInfos.has(t))throw new w("accessibility-unknown-keystroke-info-category",this._editor,{categoryId:t,keystrokes:n});const i=this.keystrokeInfos.get(t);if(!i.groups.has(e))throw new w("accessibility-unknown-keystroke-info-group",this._editor,{groupId:e,categoryId:t,keystrokes:n});i.groups.get(e).keystrokes.push(...n)}}var bm=Object.getOwnPropertySymbols,km=Object.prototype.hasOwnProperty,wm=Object.prototype.propertyIsEnumerable,_m=(t,e)=>{var n={};for(var i in t)km.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(null!=t&&bm)for(var i of bm(t))e.indexOf(i)<0&&wm.call(t,i)&&(n[i]=t[i]);return n};class Am extends(W()){constructor(t={}){super();const e=this.constructor,n=e.defaultConfig||{},{translations:i}=n,o=_m(n,["translations"]),r=t,{translations:s=i}=r,a=_m(r,["translations"]),c=t.language||o.language;this._context=t.context||new dr({language:c,translations:s}),this._context._addEditor(this,!t.context);const l=Array.from(e.builtinPlugins||[]);this.config=new Ci(a,o),this.config.define("plugins",l),this.config.define(this._context._getEditorConfig()),this.plugins=new sr(this,l,this._context.plugins),this.locale=this._context.locale,this.t=this.locale.t,this._readOnlyLocks=new Set,this.commands=new cm,this.set("state","initializing"),this.once("ready",(()=>this.state="ready"),{priority:"high"}),this.once("destroy",(()=>this.state="destroyed"),{priority:"high"}),this.model=new bu,this.on("change:isReadOnly",(()=>{this.model.document.isReadOnly=this.isReadOnly}));const d=new cs;this.data=new Bd(this.model,d),this.editing=new Xl(this.model,d),this.editing.view.document.bind("isReadOnly").to(this),this.conversion=new Sd([this.editing.downcastDispatcher,this.data.downcastDispatcher],this.data.upcastDispatcher),this.conversion.addAlias("dataDowncast",this.data.downcastDispatcher),this.conversion.addAlias("editingDowncast",this.editing.downcastDispatcher),this.keystrokes=new ur(this),this.keystrokes.listenTo(this.editing.view.document),this.accessibility=new fm(this)}get isReadOnly(){return this._readOnlyLocks.size>0}set isReadOnly(t){throw new w("editor-isreadonly-has-no-setter")}enableReadOnlyMode(t){if("string"!=typeof t&&"symbol"!=typeof t)throw new w("editor-read-only-lock-id-invalid",null,{lockId:t});this._readOnlyLocks.has(t)||(this._readOnlyLocks.add(t),1===this._readOnlyLocks.size&&this.fire("change:isReadOnly","isReadOnly",!0,!1))}disableReadOnlyMode(t){if("string"!=typeof t&&"symbol"!=typeof t)throw new w("editor-read-only-lock-id-invalid",null,{lockId:t});this._readOnlyLocks.has(t)&&(this._readOnlyLocks.delete(t),0===this._readOnlyLocks.size&&this.fire("change:isReadOnly","isReadOnly",!1,!0))}setData(t){this.data.set(t)}getData(t){return this.data.get(t)}initPlugins(){const t=this.config,e=t.get("plugins"),n=t.get("removePlugins")||[],i=t.get("extraPlugins")||[],o=t.get("substitutePlugins")||[];return this.plugins.init(e.concat(i),n,o)}destroy(){let t=Promise.resolve();return"initializing"==this.state&&(t=new Promise((t=>this.once("ready",t)))),t.then((()=>{this.fire("destroy"),this.stopListening(),this.commands.destroy()})).then((()=>this.plugins.destroy())).then((()=>{this.model.destroy(),this.data.destroy(),this.editing.destroy(),this.keystrokes.destroy()})).then((()=>this._context._removeEditor(this)))}execute(t,...e){try{return this.commands.execute(t,...e)}catch(t){w.rethrowUnexpectedError(t,this)}}focus(){this.editing.view.focus()}static create(...t){throw new Error("This is an abstract method.")}}function Cm(t){return class extends t{updateSourceElement(t){if(!this.sourceElement)throw new w("editor-missing-sourceelement",this);const e=this.config.get("updateSourceElementOnDestroy"),n=this.sourceElement instanceof HTMLTextAreaElement;if(!e&&!n)return void qi(this.sourceElement,"");const i="string"==typeof t?t:this.data.get();qi(this.sourceElement,i)}}}Cm.updateSourceElement=Cm(Object).prototype.updateSourceElement;class vm extends hr{static get pluginName(){return"PendingActions"}init(){this.set("hasAny",!1),this._actions=new Uo({idProperty:"_id"}),this._actions.delegate("add","remove").to(this)}add(t){if("string"!=typeof t)throw new w("pendingactions-add-invalid-message",this);const e=new(W());return e.set("message",t),this._actions.add(e),this.hasAny=!0,e}remove(t){this._actions.remove(t),this.hasAny=!!this._actions.length}get first(){return this._actions.get(0)}[Symbol.iterator](){return this._actions[Symbol.iterator]()}}const ym={bold:'',cancel:'',caption:'',check:'',cog:'',colorPalette:'',eraser:'',history:'',image:'',imageUpload:'',imageAssetManager:'',imageUrl:'',lowVision:'',textAlternative:'',loupe:'',previousArrow:'',nextArrow:'',importExport:'',paragraph:'',plus:'',text:'',alignBottom:'',alignMiddle:'',alignTop:'',alignLeft:'',alignCenter:'',alignRight:'',alignJustify:'',objectLeft:'',objectCenter:'',objectRight:'',objectFullWidth:'',objectInline:'',objectBlockLeft:'',objectBlockRight:'',objectSizeCustom:'',objectSizeFull:'',objectSizeLarge:'',objectSizeSmall:'',objectSizeMedium:'',pencil:'',pilcrow:'',quote:'',threeVerticalDots:'',dragIndicator:'',redo:'',undo:'',bulletedList:'',numberedList:'',todoList:'',codeBlock:'',browseFiles:'',heading1:'',heading2:'',heading3:'',heading4:'',heading5:'',heading6:'',horizontalLine:'',html:'',indent:'',outdent:'',table:''};class xm extends Uo{constructor(t=[]){super(t,{idProperty:"viewUid"}),this.on("add",((t,e,n)=>{this._renderViewIntoCollectionParent(e,n)})),this.on("remove",((t,e)=>{e.element&&this._parentElement&&e.element.remove()})),this._parentElement=null}destroy(){this.map((t=>t.destroy()))}setParent(t){this._parentElement=t;for(const t of this)this._renderViewIntoCollectionParent(t)}delegate(...t){if(!t.length||!t.every((t=>"string"==typeof t)))throw new w("ui-viewcollection-delegate-wrong-events",this);return{to:e=>{for(const n of this)for(const i of t)n.delegate(i).to(e);this.on("add",((n,i)=>{for(const n of t)i.delegate(n).to(e)})),this.on("remove",((n,i)=>{for(const n of t)i.stopDelegating(n,e)}))}}}_renderViewIntoCollectionParent(t,e){t.isRendered||t.render(),t.element&&this._parentElement&&this._parentElement.insertBefore(t.element,this._parentElement.children[e])}remove(t){return super.remove(t)}}class Em extends(S()){constructor(t){super(),Object.assign(this,Lm(Fm(t))),this._isRendered=!1,this._revertData=null}render(){const t=this._renderNode({intoFragment:!0});return this._isRendered=!0,t}apply(t){return this._revertData={children:[],bindings:[],attributes:{}},this._renderNode({node:t,intoFragment:!1,isApplying:!0,revertData:this._revertData}),t}revert(t){if(!this._revertData)throw new w("ui-template-revert-not-applied",[this,t]);this._revertTemplateFromNode(t,this._revertData)}*getViews(){yield*function*t(e){if(e.children)for(const n of e.children)jm(n)?yield n:qm(n)&&(yield*t(n))}(this)}static bind(t,e){return{to:(n,i)=>new Bm({eventNameOrFunction:n,attribute:n,observable:t,emitter:e,callback:i}),if:(n,i,o)=>new Sm({observable:t,emitter:e,attribute:n,valueIfTrue:i,callback:o})}}static extend(t,e){if(t._isRendered)throw new w("template-extend-render",[this,t]);Nm(t,Lm(Fm(e)))}_renderNode(t){let e;if(e=t.node?this.tag&&this.text:this.tag?this.text:!this.text,e)throw new w("ui-template-wrong-syntax",this);return this.text?this._renderText(t):this._renderElement(t)}_renderElement(t){let e=t.node;return e||(e=t.node=document.createElementNS(this.ns||"http://www.w3.org/1999/xhtml",this.tag)),this._renderAttributes(t),this._renderElementChildren(t),this._setUpListeners(t),e}_renderText(t){let e=t.node;return e?t.revertData.text=e.textContent:e=t.node=document.createTextNode(""),Tm(this.text)?this._bindToObservable({schema:this.text,updater:Pm(e),data:t}):e.textContent=this.text.join(""),e}_renderAttributes(t){if(!this.attributes)return;const e=t.node,n=t.revertData;for(const i in this.attributes){const o=e.getAttribute(i),r=this.attributes[i];n&&(n.attributes[i]=o);const s=Um(r)?r[0].ns:null;if(Tm(r)){const a=Um(r)?r[0].value:r;n&&$m(i)&&a.unshift(o),this._bindToObservable({schema:a,updater:Rm(e,i,s),data:t})}else if("style"==i&&"string"!=typeof r[0])this._renderStyleAttribute(r[0],t);else{n&&o&&$m(i)&&r.unshift(o);const t=r.map((t=>t&&t.value||t)).reduce(((t,e)=>t.concat(e)),[]).reduce(zm,"");Hm(t)||e.setAttributeNS(s,i,t)}}}_renderStyleAttribute(t,e){const n=e.node;for(const i in t){const o=t[i];Tm(o)?this._bindToObservable({schema:[o],updater:Vm(n,i),data:e}):n.style[i]=o}}_renderElementChildren(t){const e=t.node,n=t.intoFragment?document.createDocumentFragment():e,i=t.isApplying;let o=0;for(const r of this.children)if(Wm(r)){if(!i){r.setParent(e);for(const t of r)n.appendChild(t.element)}}else if(jm(r))i||(r.isRendered||r.render(),n.appendChild(r.element));else if(xi(r))n.appendChild(r);else if(i){const e={children:[],bindings:[],attributes:{}};t.revertData.children.push(e),r._renderNode({intoFragment:!1,node:n.childNodes[o++],isApplying:!0,revertData:e})}else n.appendChild(r.render());t.intoFragment&&e.appendChild(n)}_setUpListeners(t){if(this.eventListeners)for(const e in this.eventListeners){const n=this.eventListeners[e].map((n=>{const[i,o]=e.split("@");return n.activateDomEventListener(i,o,t)}));t.revertData&&t.revertData.bindings.push(n)}}_bindToObservable({schema:t,updater:e,data:n}){const i=n.revertData;Im(t,e,n);const o=t.filter((t=>!Hm(t))).filter((t=>t.observable)).map((i=>i.activateAttributeListener(t,e,n)));i&&i.bindings.push(o)}_revertTemplateFromNode(t,e){for(const t of e.bindings)for(const e of t)e();if(e.text)return void(t.textContent=e.text);const n=t;for(const t in e.attributes){const i=e.attributes[t];null===i?n.removeAttribute(t):n.setAttribute(t,i)}for(let t=0;tIm(t,e,n);return this.emitter.listenTo(this.observable,`change:${this.attribute}`,i),()=>{this.emitter.stopListening(this.observable,`change:${this.attribute}`,i)}}}class Bm extends Dm{constructor(t){super(t),this.eventNameOrFunction=t.eventNameOrFunction}activateDomEventListener(t,e,n){const i=(t,n)=>{e&&!n.target.matches(e)||("function"==typeof this.eventNameOrFunction?this.eventNameOrFunction(n):this.observable.fire(this.eventNameOrFunction,n))};return this.emitter.listenTo(n.node,t,i),()=>{this.emitter.stopListening(n.node,t,i)}}}class Sm extends Dm{constructor(t){super(t),this.valueIfTrue=t.valueIfTrue}getValue(t){return!Hm(super.getValue(t))&&(this.valueIfTrue||!0)}}function Tm(t){return!!t&&(t.value&&(t=t.value),Array.isArray(t)?t.some(Tm):t instanceof Dm)}function Im(t,e,{node:n}){const i=function(t,e){return t.map((t=>t instanceof Dm?t.getValue(e):t))}(t,n);let o;o=1==t.length&&t[0]instanceof Sm?i[0]:i.reduce(zm,""),Hm(o)?e.remove():e.set(o)}function Pm(t){return{set(e){t.textContent=e},remove(){t.textContent=""}}}function Rm(t,e,n){return{set(i){t.setAttributeNS(n,e,i)},remove(){t.removeAttributeNS(n,e)}}}function Vm(t,e){return{set(n){t.style[e]=n},remove(){t.style[e]=null}}}function Fm(t){return _i(t,(t=>{if(t&&(t instanceof Dm||qm(t)||jm(t)||Wm(t)))return t}))}function Lm(t){if("string"==typeof t?t=function(t){return{text:[t]}}(t):t.text&&function(t){t.text=_o(t.text)}(t),t.on&&(t.eventListeners=function(t){for(const e in t)Om(t,e);return t}(t.on),delete t.on),!t.text){t.attributes&&function(t){for(const e in t)t[e].value&&(t[e].value=_o(t[e].value)),Om(t,e)}(t.attributes);const e=[];if(t.children)if(Wm(t.children))e.push(t.children);else for(const n of t.children)qm(n)||jm(n)||xi(n)?e.push(n):e.push(new Em(n));t.children=e}return t}function Om(t,e){t[e]=_o(t[e])}function zm(t,e){return Hm(e)?t:Hm(t)?e:`${t} ${e}`}function Mm(t,e){for(const n in e)t[n]?t[n].push(...e[n]):t[n]=e[n]}function Nm(t,e){if(e.attributes&&(t.attributes||(t.attributes={}),Mm(t.attributes,e.attributes)),e.eventListeners&&(t.eventListeners||(t.eventListeners={}),Mm(t.eventListeners,e.eventListeners)),e.text&&t.text.push(...e.text),e.children&&e.children.length){if(t.children.length!=e.children.length)throw new w("ui-template-extend-children-mismatch",t);let n=0;for(const i of e.children)Nm(t.children[n++],i)}}function Hm(t){return!t&&0!==t}function jm(t){return t instanceof Jm}function qm(t){return t instanceof Em}function Wm(t){return t instanceof xm}function Um(t){return O(t[0])&&t[0].ns}function $m(t){return"class"==t||"style"==t}var Gm=n(7676),Km={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Gm.A,Km);Gm.A.locals;class Jm extends(Bi(W())){constructor(t){super(),this.element=null,this.isRendered=!1,this.locale=t,this.t=t&&t.t,this._viewCollections=new Uo,this._unboundChildren=this.createCollection(),this._viewCollections.on("add",((e,n)=>{n.locale=t,n.t=t&&t.t})),this.decorate("render")}get bindTemplate(){return this._bindTemplate?this._bindTemplate:this._bindTemplate=Em.bind(this,this)}createCollection(t){const e=new xm(t);return this._viewCollections.add(e),e}registerChild(t){X(t)||(t=[t]);for(const e of t)this._unboundChildren.add(e)}deregisterChild(t){X(t)||(t=[t]);for(const e of t)this._unboundChildren.remove(e)}setTemplate(t){this.template=new Em(t)}extendTemplate(t){Em.extend(this.template,t)}render(){if(this.isRendered)throw new w("ui-view-render-already-rendered",this);this.template&&(this.element=this.template.render(),this.registerChild(this.template.getViews())),this.isRendered=!0}destroy(){this.stopListening(),this._viewCollections.map((t=>t.destroy())),this.template&&this.template._revertData&&this.template.revert(this.element)}}function Zm({emitter:t,activator:e,callback:n,contextElements:i}){t.listenTo(document,"mousedown",((t,o)=>{if(!e())return;const r="function"==typeof o.composedPath?o.composedPath():[],s="function"==typeof i?i():i;for(const t of s)if(t.contains(o.target)||r.includes(t))return;n()}))}function Ym(t){return class extends t{disableCssTransitions(){this._isCssTransitionsDisabled=!0}enableCssTransitions(){this._isCssTransitionsDisabled=!1}constructor(...t){super(...t),this.set("_isCssTransitionsDisabled",!1),this.initializeCssTransitionDisablerMixin()}initializeCssTransitionDisablerMixin(){this.extendTemplate({attributes:{class:[this.bindTemplate.if("_isCssTransitionsDisabled","ck-transitions-disabled")]}})}}}function Qm({view:t}){t.listenTo(t.element,"submit",((e,n)=>{n.preventDefault(),t.fire("submit")}),{useCapture:!0})}function Xm({keystrokeHandler:t,focusTracker:e,gridItems:n,numberOfColumns:i,uiLanguageDirection:o}){const r="number"==typeof i?()=>i:i;function s(t){return i=>{const o=n.find((t=>t.element===e.focusedElement)),r=n.getIndex(o),s=t(r,n);n.get(s).focus(),i.stopPropagation(),i.preventDefault()}}function a(t,e){return t===e-1?0:t+1}function c(t,e){return 0===t?e-1:t-1}t.set("arrowright",s(((t,e)=>"rtl"===o?c(t,e.length):a(t,e.length)))),t.set("arrowleft",s(((t,e)=>"rtl"===o?a(t,e.length):c(t,e.length)))),t.set("arrowup",s(((t,e)=>{let n=t-r();return n<0&&(n=t+r()*Math.floor(e.length/r()),n>e.length-1&&(n-=r())),n}))),t.set("arrowdown",s(((t,e)=>{let n=t+r();return n>e.length-1&&(n=t%r()),n})))}var tg=n(7801),eg={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(tg.A,eg);tg.A.locals;class ng extends Jm{constructor(t){super(t),this.set("text",void 0),this.set("for",void 0),this.id=`ck-editor__label_${p()}`;const e=this.bindTemplate;this.setTemplate({tag:"label",attributes:{class:["ck","ck-label"],id:this.id,for:e.to("for")},children:[{text:e.to("text")}]})}}var ig=n(8527),og={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(ig.A,og);ig.A.locals;class rg extends xm{constructor(t,e=[]){super(e),this.locale=t}get bodyCollectionContainer(){return this._bodyCollectionContainer}attachToDom(){this._bodyCollectionContainer=new Em({tag:"div",attributes:{class:["ck","ck-reset_all","ck-body","ck-rounded-corners"],dir:this.locale.uiLanguageDirection},children:this}).render();let t=document.querySelector(".ck-body-wrapper");t||(t=ft(document,"div",{class:"ck-body-wrapper"}),document.body.appendChild(t)),t.appendChild(this._bodyCollectionContainer)}detachFromDom(){super.destroy(),this._bodyCollectionContainer&&this._bodyCollectionContainer.remove();const t=document.querySelector(".ck-body-wrapper");t&&0==t.childElementCount&&t.remove()}}var sg=n(7621),ag={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(sg.A,ag);sg.A.locals;const cg=class extends Jm{constructor(){super();const t=this.bindTemplate;this.set("content",""),this.set("viewBox","0 0 20 20"),this.set("fillColor",""),this.set("isColorInherited",!0),this.set("isVisible",!0),this.setTemplate({tag:"svg",ns:"http://www.w3.org/2000/svg",attributes:{class:["ck","ck-icon",t.if("isVisible","ck-hidden",(t=>!t)),"ck-reset_all-excluded",t.if("isColorInherited","ck-icon_inherit-color")],viewBox:t.to("viewBox")}})}render(){super.render(),this._updateXMLContent(),this._colorFillPaths(),this.on("change:content",(()=>{this._updateXMLContent(),this._colorFillPaths()})),this.on("change:fillColor",(()=>{this._colorFillPaths()}))}_updateXMLContent(){if(this.content){const t=(new DOMParser).parseFromString(this.content.trim(),"image/svg+xml").querySelector("svg"),e=t.getAttribute("viewBox");e&&(this.viewBox=e);for(const{name:e,value:n}of Array.from(t.attributes))cg.presentationalAttributeNames.includes(e)&&this.element.setAttribute(e,n);for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);for(;t.childNodes.length>0;)this.element.appendChild(t.childNodes[0])}}_colorFillPaths(){this.fillColor&&this.element.querySelectorAll(".ck-icon__fill").forEach((t=>{t.style.fill=this.fillColor}))}};let lg=cg;lg.presentationalAttributeNames=["alignment-baseline","baseline-shift","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-rendering","cursor","direction","display","dominant-baseline","fill","fill-opacity","fill-rule","filter","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","mask","opacity","overflow","paint-order","pointer-events","shape-rendering","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-overflow","text-rendering","transform","unicode-bidi","vector-effect","visibility","white-space","word-spacing","writing-mode"];class dg extends Jm{constructor(){super(),this.set({style:void 0,text:void 0,id:void 0});const t=this.bindTemplate;this.setTemplate({tag:"span",attributes:{class:["ck","ck-button__label"],style:t.to("style"),id:t.to("id")},children:[{text:t.to("text")}]})}}var hg=n(9715),ug={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(hg.A,ug);hg.A.locals;class mg extends Jm{constructor(t,e=new dg){super(t),this._focusDelayed=null;const n=this.bindTemplate,i=p();this.set("ariaLabel",void 0),this.set("ariaLabelledBy",`ck-editor__aria-label_${i}`),this.set("class",void 0),this.set("labelStyle",void 0),this.set("icon",void 0),this.set("isEnabled",!0),this.set("isOn",!1),this.set("isVisible",!0),this.set("isToggleable",!1),this.set("keystroke",void 0),this.set("label",void 0),this.set("role",void 0),this.set("tabindex",-1),this.set("tooltip",!1),this.set("tooltipPosition","s"),this.set("type","button"),this.set("withText",!1),this.set("withKeystroke",!1),this.children=this.createCollection(),this.labelView=this._setupLabelView(e),this.iconView=new lg,this.iconView.extendTemplate({attributes:{class:"ck-button__icon"}}),this.keystrokeView=this._createKeystrokeView(),this.bind("_tooltipString").to(this,"tooltip",this,"label",this,"keystroke",this._getTooltipString.bind(this));const o={tag:"button",attributes:{class:["ck","ck-button",n.to("class"),n.if("isEnabled","ck-disabled",(t=>!t)),n.if("isVisible","ck-hidden",(t=>!t)),n.to("isOn",(t=>t?"ck-on":"ck-off")),n.if("withText","ck-button_with-text"),n.if("withKeystroke","ck-button_with-keystroke")],role:n.to("role"),type:n.to("type",(t=>t||"button")),tabindex:n.to("tabindex"),"aria-checked":n.to("ariaChecked"),"aria-label":n.to("ariaLabel"),"aria-labelledby":n.to("ariaLabelledBy"),"aria-disabled":n.if("isEnabled",!0,(t=>!t)),"aria-pressed":n.to("isOn",(t=>!!this.isToggleable&&String(!!t))),"data-cke-tooltip-text":n.to("_tooltipString"),"data-cke-tooltip-position":n.to("tooltipPosition")},children:this.children,on:{click:n.to((t=>{this.isEnabled?this.fire("execute"):t.preventDefault()}))}};s.isSafari&&(this._focusDelayed||(this._focusDelayed=Zo((()=>this.focus()),0)),o.on.mousedown=n.to((()=>{this._focusDelayed()})),o.on.mouseup=n.to((()=>{this._focusDelayed.cancel()}))),this.setTemplate(o)}render(){super.render(),this.icon&&(this.iconView.bind("content").to(this,"icon"),this.children.add(this.iconView)),this.children.add(this.labelView),this.withKeystroke&&this.keystroke&&this.children.add(this.keystrokeView)}focus(){this.element.focus()}destroy(){this._focusDelayed&&this._focusDelayed.cancel(),super.destroy()}_setupLabelView(t){return t.bind("text","style","id").to(this,"label","labelStyle","ariaLabelledBy"),t}_createKeystrokeView(){const t=new Jm;return t.setTemplate({tag:"span",attributes:{class:["ck","ck-button__keystroke"]},children:[{text:this.bindTemplate.to("keystroke",(t=>ko(t)))}]}),t}_getTooltipString(t,e,n){return t?"string"==typeof t?t:(n&&(n=ko(n)),t instanceof Function?t(e,n):`${e}${n?` (${n})`:""}`):""}}var gg=n(4391),pg={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(gg.A,pg);gg.A.locals;class fg extends mg{constructor(t){super(t),this.isToggleable=!0,this.toggleSwitchView=this._createToggleView(),this.extendTemplate({attributes:{class:"ck-switchbutton"}})}render(){super.render(),this.children.add(this.toggleSwitchView)}_createToggleView(){const t=new Jm;return t.setTemplate({tag:"span",attributes:{class:["ck","ck-button__toggle"]},children:[{tag:"span",attributes:{class:["ck","ck-button__toggle__inner"]}}]}),t}}class bg extends mg{constructor(t){super(t),this.buttonView=this,this._fileInputView=new kg(t),this._fileInputView.bind("acceptedType").to(this),this._fileInputView.bind("allowMultipleFiles").to(this),this._fileInputView.delegate("done").to(this),this.on("execute",(()=>{this._fileInputView.open()})),this.extendTemplate({attributes:{class:"ck-file-dialog-button"}})}render(){super.render(),this.children.add(this._fileInputView)}}class kg extends Jm{constructor(t){super(t),this.set("acceptedType",void 0),this.set("allowMultipleFiles",!1);const e=this.bindTemplate;this.setTemplate({tag:"input",attributes:{class:["ck-hidden"],type:"file",tabindex:"-1",accept:e.to("acceptedType"),multiple:e.to("allowMultipleFiles")},on:{change:e.to((()=>{this.element&&this.element.files&&this.element.files.length&&this.fire("done",this.element.files),this.element.value=""}))}})}open(){this.element.click()}}const wg='';var _g=n(25),Ag={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(_g.A,Ag);_g.A.locals;class Cg extends Jm{constructor(t,e){super(t);const n=this.bindTemplate;this.set("isCollapsed",!1),this.set("label",""),this.buttonView=this._createButtonView(),this.children=this.createCollection(),this.set("_collapsibleAriaLabelUid",void 0),e&&this.children.addMany(e),this.setTemplate({tag:"div",attributes:{class:["ck","ck-collapsible",n.if("isCollapsed","ck-collapsible_collapsed")]},children:[this.buttonView,{tag:"div",attributes:{class:["ck","ck-collapsible__children"],role:"region",hidden:n.if("isCollapsed","hidden"),"aria-labelledby":n.to("_collapsibleAriaLabelUid")},children:this.children}]})}render(){super.render(),this._collapsibleAriaLabelUid=this.buttonView.labelView.element.id}focus(){this.buttonView.focus()}_createButtonView(){const t=new mg(this.locale),e=t.bindTemplate;return t.set({withText:!0,icon:wg}),t.extendTemplate({attributes:{"aria-expanded":e.to("isOn",(t=>String(t)))}}),t.bind("label").to(this),t.bind("isOn").to(this,"isCollapsed",(t=>!t)),t.on("execute",(()=>{this.isCollapsed=!this.isCollapsed})),t}}function vg(t,e){const n=t.t,i={Black:n("Black"),"Dim grey":n("Dim grey"),Grey:n("Grey"),"Light grey":n("Light grey"),White:n("White"),Red:n("Red"),Orange:n("Orange"),Yellow:n("Yellow"),"Light green":n("Light green"),Green:n("Green"),Aquamarine:n("Aquamarine"),Turquoise:n("Turquoise"),"Light blue":n("Light blue"),Blue:n("Blue"),Purple:n("Purple")};return e.map((t=>{const e=i[t.label];return e&&e!=t.label&&(t.label=e),t}))}function yg(t){return t.map(xg).filter((t=>!!t))}function xg(t){return"string"==typeof t?{model:t,label:t,hasBorder:!1,view:{name:"span",styles:{color:t}}}:{model:t.color,label:t.label||t.color,hasBorder:void 0!==t.hasBorder&&t.hasBorder,view:{name:"span",styles:{color:`${t.color}`}}}}class Eg extends mg{constructor(t){super(t);const e=this.bindTemplate;this.set("color",void 0),this.set("hasBorder",!1),this.icon='',this.extendTemplate({attributes:{style:{backgroundColor:e.to("color",(t=>s.isMediaForcedColors?null:t))},class:["ck","ck-color-grid__tile",e.if("hasBorder","ck-color-selector__color-tile_bordered")]}})}render(){super.render(),this.iconView.fillColor="hsl(0, 0%, 100%)"}}var Dg=n(7317),Bg={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Dg.A,Bg);Dg.A.locals;class Sg extends Jm{constructor(t,e){super(t);const n=e&&e.colorDefinitions?e.colorDefinitions:[];this.columns=e&&e.columns?e.columns:5;const i={gridTemplateColumns:`repeat( ${this.columns}, 1fr)`};this.set("selectedColor",void 0),this.items=this.createCollection(),this.focusTracker=new Go,this.keystrokes=new Ko,this.items.on("add",((t,e)=>{e.isOn=e.color===this.selectedColor})),n.forEach((t=>{const e=new Eg;e.set({color:t.color,label:t.label,tooltip:!0,hasBorder:t.options.hasBorder}),e.on("execute",(()=>{this.fire("execute",{value:t.color,hasBorder:t.options.hasBorder,label:t.label})})),this.items.add(e)})),this.setTemplate({tag:"div",children:this.items,attributes:{class:["ck","ck-color-grid"],style:i}}),this.on("change:selectedColor",((t,e,n)=>{for(const t of this.items)t.isOn=t.color===n}))}focus(){this.items.length&&this.items.first.focus()}focusLast(){this.items.length&&this.items.last.focus()}render(){super.render();for(const t of this.items)this.focusTracker.add(t.element);this.items.on("add",((t,e)=>{this.focusTracker.add(e.element)})),this.items.on("remove",((t,e)=>{this.focusTracker.remove(e.element)})),this.keystrokes.listenTo(this.element),Xm({keystrokeHandler:this.keystrokes,focusTracker:this.focusTracker,gridItems:this.items,numberOfColumns:this.columns,uiLanguageDirection:this.locale&&this.locale.uiLanguageDirection})}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}}var Tg=n(6931);const Ig=function(t){var e,n,i=[],o=1;if("string"==typeof t)if(Tg[t])i=Tg[t].slice(),n="rgb";else if("transparent"===t)o=0,n="rgb",i=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(t)){var r=t.slice(1);o=1,(c=r.length)<=4?(i=[parseInt(r[0]+r[0],16),parseInt(r[1]+r[1],16),parseInt(r[2]+r[2],16)],4===c&&(o=parseInt(r[3]+r[3],16)/255)):(i=[parseInt(r[0]+r[1],16),parseInt(r[2]+r[3],16),parseInt(r[4]+r[5],16)],8===c&&(o=parseInt(r[6]+r[7],16)/255)),i[0]||(i[0]=0),i[1]||(i[1]=0),i[2]||(i[2]=0),n="rgb"}else if(e=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(t)){var s=e[1],a="rgb"===s;n=r=s.replace(/a$/,"");var c="cmyk"===r?4:"gray"===r?1:3;i=e[2].trim().split(/\s*[,\/]\s*|\s+/).map((function(t,e){if(/%$/.test(t))return e===c?parseFloat(t)/100:"rgb"===r?255*parseFloat(t)/100:parseFloat(t);if("h"===r[e]){if(/deg$/.test(t))return parseFloat(t);if(void 0!==Pg[t])return Pg[t]}return parseFloat(t)})),s===r&&i.push(1),o=a||void 0===i[c]?1:i[c],i=i.slice(0,c)}else t.length>10&&/[0-9](?:\s|\/)/.test(t)&&(i=t.match(/([0-9]+)/g).map((function(t){return parseFloat(t)})),n=t.match(/([a-z])/gi).join("").toLowerCase());else isNaN(t)?Array.isArray(t)||t.length?(i=[t[0],t[1],t[2]],n="rgb",o=4===t.length?t[3]:1):t instanceof Object&&(null!=t.r||null!=t.red||null!=t.R?(n="rgb",i=[t.r||t.red||t.R||0,t.g||t.green||t.G||0,t.b||t.blue||t.B||0]):(n="hsl",i=[t.h||t.hue||t.H||0,t.s||t.saturation||t.S||0,t.l||t.lightness||t.L||t.b||t.brightness]),o=t.a||t.alpha||t.opacity||1,null!=t.opacity&&(o/=100)):(n="rgb",i=[t>>>16,(65280&t)>>>8,255&t]);return{space:n,values:i,alpha:o}};var Pg={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};var Rg=n(9047);function Vg(t,e){if(!t)return"";const n=Fg(t);if(!n)return"";if(n.space===e)return t;if(i=n,!Object.keys(Rg).includes(i.space))return"";var i;const o=Rg[n.space][e];if(!o)return"";return function(t,e){switch(e){case"hex":return`#${t}`;case"rgb":return`rgb( ${t[0]}, ${t[1]}, ${t[2]} )`;case"hsl":return`hsl( ${t[0]}, ${t[1]}%, ${t[2]}% )`;case"hwb":return`hwb( ${t[0]}, ${t[1]}, ${t[2]} )`;case"lab":return`lab( ${t[0]}% ${t[1]} ${t[2]} )`;case"lch":return`lch( ${t[0]}% ${t[1]} ${t[2]} )`;default:return""}}(o("hex"===n.space?n.hexValue:n.values),e)}function Fg(t){if(t.startsWith("#")){const e=Ig(t);return{space:"hex",values:e.values,hexValue:t,alpha:e.alpha}}const e=Ig(t);return e.space?e:null}var Lg=n(4962),Og={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Lg.A,Og);Lg.A.locals;class zg extends Jm{constructor(t,e){super(t);const n=`ck-labeled-field-view-${p()}`,i=`ck-labeled-field-view-status-${p()}`;this.fieldView=e(this,n,i),this.set("label",void 0),this.set("isEnabled",!0),this.set("isEmpty",!0),this.set("isFocused",!1),this.set("errorText",null),this.set("infoText",null),this.set("class",void 0),this.set("placeholder",void 0),this.labelView=this._createLabelView(n),this.statusView=this._createStatusView(i),this.fieldWrapperChildren=this.createCollection([this.fieldView,this.labelView]),this.bind("_statusText").to(this,"errorText",this,"infoText",((t,e)=>t||e));const o=this.bindTemplate;this.setTemplate({tag:"div",attributes:{class:["ck","ck-labeled-field-view",o.to("class"),o.if("isEnabled","ck-disabled",(t=>!t)),o.if("isEmpty","ck-labeled-field-view_empty"),o.if("isFocused","ck-labeled-field-view_focused"),o.if("placeholder","ck-labeled-field-view_placeholder"),o.if("errorText","ck-error")]},children:[{tag:"div",attributes:{class:["ck","ck-labeled-field-view__input-wrapper"]},children:this.fieldWrapperChildren},this.statusView]})}_createLabelView(t){const e=new ng(this.locale);return e.for=t,e.bind("text").to(this,"label"),e}_createStatusView(t){const e=new Jm(this.locale),n=this.bindTemplate;return e.setTemplate({tag:"div",attributes:{class:["ck","ck-labeled-field-view__status",n.if("errorText","ck-labeled-field-view__status_error"),n.if("_statusText","ck-hidden",(t=>!t))],id:t,role:n.if("errorText","alert")},children:[{text:n.to("_statusText")}]}),e}focus(t){this.fieldView.focus(t)}}class Mg extends Jm{constructor(t){super(t),this.set("value",void 0),this.set("id",void 0),this.set("placeholder",void 0),this.set("tabIndex",void 0),this.set("isReadOnly",!1),this.set("hasError",!1),this.set("ariaDescribedById",void 0),this.set("ariaLabel",void 0),this.focusTracker=new Go,this.bind("isFocused").to(this.focusTracker),this.set("isEmpty",!0);const e=this.bindTemplate;this.setTemplate({tag:"input",attributes:{class:["ck","ck-input",e.if("isFocused","ck-input_focused"),e.if("isEmpty","ck-input-text_empty"),e.if("hasError","ck-error")],id:e.to("id"),placeholder:e.to("placeholder"),tabindex:e.to("tabIndex"),readonly:e.to("isReadOnly"),"aria-invalid":e.if("hasError",!0),"aria-describedby":e.to("ariaDescribedById"),"aria-label":e.to("ariaLabel")},on:{input:e.to(((...t)=>{this.fire("input",...t),this._updateIsEmpty()})),change:e.to(this._updateIsEmpty.bind(this))}})}render(){super.render(),this.focusTracker.add(this.element),this._setDomElementValue(this.value),this._updateIsEmpty(),this.on("change:value",((t,e,n)=>{this._setDomElementValue(n),this._updateIsEmpty()}))}destroy(){super.destroy(),this.focusTracker.destroy()}select(){this.element.select()}focus(){this.element.focus()}reset(){this.value=this.element.value="",this._updateIsEmpty()}_updateIsEmpty(){this.isEmpty=!this.element.value}_setDomElementValue(t){this.element.value=t||0===t?t:""}}var Ng=n(253),Hg={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Ng.A,Hg);Ng.A.locals;class jg extends Mg{constructor(t){super(t),this.set("inputMode","text");const e=this.bindTemplate;this.extendTemplate({attributes:{inputmode:e.to("inputMode")}})}}class qg extends jg{constructor(t){super(t),this.extendTemplate({attributes:{type:"text",class:["ck-input-text"]}})}}class Wg extends jg{constructor(t,{min:e,max:n,step:i}={}){super(t);const o=this.bindTemplate;this.set("min",e),this.set("max",n),this.set("step",i),this.extendTemplate({attributes:{type:"number",class:["ck-input-number"],min:o.to("min"),max:o.to("max"),step:o.to("step")}})}}var Ug=n(1671),$g={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Ug.A,$g);Ug.A.locals;class Gg extends Jm{constructor(t){super(t);const e=this.bindTemplate;this.set("isVisible",!1),this.set("position","se"),this.children=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-reset","ck-dropdown__panel",e.to("position",(t=>`ck-dropdown__panel_${t}`)),e.if("isVisible","ck-dropdown__panel-visible")],tabindex:"-1"},children:this.children,on:{selectstart:e.to((t=>{"input"!==t.target.tagName.toLocaleLowerCase()&&t.preventDefault()}))}})}focus(){if(this.children.length){const t=this.children.first;"function"==typeof t.focus?t.focus():_("ui-dropdown-panel-focus-child-missing-focus",{childView:this.children.first,dropdownPanel:this})}}focusLast(){if(this.children.length){const t=this.children.last;"function"==typeof t.focusLast?t.focusLast():t.focus()}}}var Kg=n(8149),Jg={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Kg.A,Jg);Kg.A.locals;const Zg=class extends Jm{constructor(t,e,n){super(t);const i=this.bindTemplate;this.buttonView=e,this.panelView=n,this.set("isOpen",!1),this.set("isEnabled",!0),this.set("class",void 0),this.set("id",void 0),this.set("panelPosition","auto"),this.panelView.bind("isVisible").to(this,"isOpen"),this.keystrokes=new Ko,this.focusTracker=new Go,this.setTemplate({tag:"div",attributes:{class:["ck","ck-dropdown",i.to("class"),i.if("isEnabled","ck-disabled",(t=>!t))],id:i.to("id"),"aria-describedby":i.to("ariaDescribedById")},children:[e,n]}),e.extendTemplate({attributes:{class:["ck-dropdown__button"],"data-cke-tooltip-disabled":i.to("isOpen")}})}render(){super.render(),this.focusTracker.add(this.buttonView.element),this.focusTracker.add(this.panelView.element),this.listenTo(this.buttonView,"open",(()=>{this.isOpen=!this.isOpen})),this.on("change:isOpen",((t,e,n)=>{if(n)if("auto"===this.panelPosition){const t=Zg._getOptimalPosition({element:this.panelView.element,target:this.buttonView.element,fitInViewport:!0,positions:this._panelPositions});this.panelView.position=t?t.name:this._panelPositions[0].name}else this.panelView.position=this.panelPosition})),this.keystrokes.listenTo(this.element);const t=(t,e)=>{this.isOpen&&(this.isOpen=!1,e())};this.keystrokes.set("arrowdown",((t,e)=>{this.buttonView.isEnabled&&!this.isOpen&&(this.isOpen=!0,e())})),this.keystrokes.set("arrowright",((t,e)=>{this.isOpen&&e()})),this.keystrokes.set("arrowleft",t),this.keystrokes.set("esc",t)}focus(){this.buttonView.focus()}get _panelPositions(){const{south:t,north:e,southEast:n,southWest:i,northEast:o,northWest:r,southMiddleEast:s,southMiddleWest:a,northMiddleEast:c,northMiddleWest:l}=Zg.defaultPanelPositions;return"rtl"!==this.locale.uiLanguageDirection?[n,i,s,a,t,o,r,c,l,e]:[i,n,a,s,t,r,o,l,c,e]}};let Yg=Zg;Yg.defaultPanelPositions={south:(t,e)=>({top:t.bottom,left:t.left-(e.width-t.width)/2,name:"s"}),southEast:t=>({top:t.bottom,left:t.left,name:"se"}),southWest:(t,e)=>({top:t.bottom,left:t.left-e.width+t.width,name:"sw"}),southMiddleEast:(t,e)=>({top:t.bottom,left:t.left-(e.width-t.width)/4,name:"sme"}),southMiddleWest:(t,e)=>({top:t.bottom,left:t.left-3*(e.width-t.width)/4,name:"smw"}),north:(t,e)=>({top:t.top-e.height,left:t.left-(e.width-t.width)/2,name:"n"}),northEast:(t,e)=>({top:t.top-e.height,left:t.left,name:"ne"}),northWest:(t,e)=>({top:t.top-e.height,left:t.left-e.width+t.width,name:"nw"}),northMiddleEast:(t,e)=>({top:t.top-e.height,left:t.left-(e.width-t.width)/4,name:"nme"}),northMiddleWest:(t,e)=>({top:t.top-e.height,left:t.left-3*(e.width-t.width)/4,name:"nmw"})},Yg._getOptimalPosition=Zi;class Qg extends mg{constructor(t){super(t),this.arrowView=this._createArrowView(),this.extendTemplate({attributes:{"aria-haspopup":!0,"aria-expanded":this.bindTemplate.to("isOn",(t=>String(t)))}}),this.delegate("execute").to(this,"open")}render(){super.render(),this.children.add(this.arrowView)}_createArrowView(){const t=new lg;return t.content=wg,t.extendTemplate({attributes:{class:"ck-dropdown__arrow"}}),t}}class Xg extends(S()){constructor(t){if(super(),this.focusables=t.focusables,this.focusTracker=t.focusTracker,this.keystrokeHandler=t.keystrokeHandler,this.actions=t.actions,t.actions&&t.keystrokeHandler)for(const e in t.actions){let n=t.actions[e];"string"==typeof n&&(n=[n]);for(const i of n)t.keystrokeHandler.set(i,((t,n)=>{this[e](),n()}))}this.on("forwardCycle",(()=>this.focusFirst()),{priority:"low"}),this.on("backwardCycle",(()=>this.focusLast()),{priority:"low"})}get first(){return this.focusables.find(tp)||null}get last(){return this.focusables.filter(tp).slice(-1)[0]||null}get next(){return this._getDomFocusableItem(1)}get previous(){return this._getDomFocusableItem(-1)}get current(){let t=null;return null===this.focusTracker.focusedElement?null:(this.focusables.find(((e,n)=>{const i=e.element===this.focusTracker.focusedElement;return i&&(t=n),i})),t)}focusFirst(){this._focus(this.first,1)}focusLast(){this._focus(this.last,-1)}focusNext(){const t=this.next;t&&this.focusables.getIndex(t)===this.current||t===this.first?this.fire("forwardCycle"):this._focus(t,1)}focusPrevious(){const t=this.previous;t&&this.focusables.getIndex(t)===this.current||t===this.last?this.fire("backwardCycle"):this._focus(t,-1)}_focus(t,e){t&&this.focusTracker.focusedElement!==t.element&&t.focus(e)}_getDomFocusableItem(t){const e=this.focusables.length;if(!e)return null;const n=this.current;if(null===n)return this[1===t?"first":"last"];let i=this.focusables.get(n),o=(n+e+t)%e;do{const n=this.focusables.get(o);if(tp(n)){i=n;break}o=(o+e+t)%e}while(o!==n);return i}}function tp(t){return ep(t)&&Ki(t.element)}function ep(t){return!(!("focus"in t)||"function"!=typeof t.focus)}class np extends Jm{constructor(t){super(t),this.setTemplate({tag:"span",attributes:{class:["ck","ck-toolbar__separator"]}})}}class ip extends Jm{constructor(t){super(t),this.setTemplate({tag:"span",attributes:{class:["ck","ck-toolbar__line-break"]}})}}var op=Object.defineProperty,rp=Object.getOwnPropertySymbols,sp=Object.prototype.hasOwnProperty,ap=Object.prototype.propertyIsEnumerable,cp=(t,e,n)=>e in t?op(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,lp=(t,e)=>{for(var n in e||(e={}))sp.call(e,n)&&cp(t,n,e[n]);if(rp)for(var n of rp(e))ap.call(e,n)&&cp(t,n,e[n]);return t};function dp(t){if(Array.isArray(t))return{items:t,removeItems:[]};const e={items:[],removeItems:[]};return t?lp(lp({},e),t):e}var hp=n(9677),up={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(hp.A,up);hp.A.locals;const mp={alignLeft:ym.alignLeft,bold:ym.bold,importExport:ym.importExport,paragraph:ym.paragraph,plus:ym.plus,text:ym.text,threeVerticalDots:ym.threeVerticalDots,pilcrow:ym.pilcrow,dragIndicator:ym.dragIndicator};class gp extends Jm{constructor(t,e){super(t);const n=this.bindTemplate,i=this.t;this.options=e||{},this.set("ariaLabel",i("Editor toolbar")),this.set("maxWidth","auto"),this.items=this.createCollection(),this.focusTracker=new Go,this.keystrokes=new Ko,this.set("class",void 0),this.set("isCompact",!1),this.itemsView=new pp(t),this.children=this.createCollection(),this.children.add(this.itemsView),this.focusables=this.createCollection();const o="rtl"===t.uiLanguageDirection;this._focusCycler=new Xg({focusables:this.focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:[o?"arrowright":"arrowleft","arrowup"],focusNext:[o?"arrowleft":"arrowright","arrowdown"]}});const r=["ck","ck-toolbar",n.to("class"),n.if("isCompact","ck-toolbar_compact")];var s;this.options.shouldGroupWhenFull&&this.options.isFloating&&r.push("ck-toolbar_floating"),this.setTemplate({tag:"div",attributes:{class:r,role:"toolbar","aria-label":n.to("ariaLabel"),style:{maxWidth:n.to("maxWidth")},tabindex:-1},children:this.children,on:{mousedown:(s=this,s.bindTemplate.to((t=>{t.target===s.element&&t.preventDefault()})))}}),this._behavior=this.options.shouldGroupWhenFull?new bp(this):new fp(this)}render(){super.render(),this.focusTracker.add(this.element);for(const t of this.items)this.focusTracker.add(t.element);this.items.on("add",((t,e)=>{this.focusTracker.add(e.element)})),this.items.on("remove",((t,e)=>{this.focusTracker.remove(e.element)})),this.keystrokes.listenTo(this.element),this._behavior.render(this)}destroy(){return this._behavior.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy(),super.destroy()}focus(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}fillFromConfig(t,e,n){this.items.addMany(this._buildItemsFromConfig(t,e,n))}_buildItemsFromConfig(t,e,n){const i=dp(t),o=n||i.removeItems;return this._cleanItemsConfiguration(i.items,e,o).map((t=>O(t)?this._createNestedToolbarDropdown(t,e,o):"|"===t?new np:"-"===t?new ip:e.create(t))).filter((t=>!!t))}_cleanItemsConfiguration(t,e,n){const i=t.filter(((t,i,o)=>"|"===t||-1===n.indexOf(t)&&("-"===t?!this.options.shouldGroupWhenFull||(_("toolbarview-line-break-ignored-when-grouping-items",o),!1):!(!O(t)&&!e.has(t))||(_("toolbarview-item-unavailable",{item:t}),!1))));return this._cleanSeparatorsAndLineBreaks(i)}_cleanSeparatorsAndLineBreaks(t){const e=t=>"-"!==t&&"|"!==t,n=t.length,i=t.findIndex(e);if(-1===i)return[];const o=n-t.slice().reverse().findIndex(e);return t.slice(i,o).filter(((t,n,i)=>{if(e(t))return!0;return!(n>0&&i[n-1]===t)}))}_createNestedToolbarDropdown(t,e,n){let{label:i,icon:o,items:r,tooltip:s=!0,withText:a=!1}=t;if(r=this._cleanItemsConfiguration(r,e,n),!r.length)return null;const c=Ip(this.locale);return i||_("toolbarview-nested-toolbar-dropdown-missing-label",t),c.class="ck-toolbar__nested-toolbar-dropdown",c.buttonView.set({label:i,tooltip:s,withText:!!a}),!1!==o?c.buttonView.icon=mp[o]||o||ym.threeVerticalDots:c.buttonView.withText=!0,Pp(c,(()=>c.toolbarView._buildItemsFromConfig(r,e,n))),c}}class pp extends Jm{constructor(t){super(t),this.children=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-toolbar__items"]},children:this.children})}}class fp{constructor(t){const e=t.bindTemplate;t.set("isVertical",!1),t.itemsView.children.bindTo(t.items).using((t=>t)),t.focusables.bindTo(t.items).using((t=>ep(t)?t:null)),t.extendTemplate({attributes:{class:[e.if("isVertical","ck-toolbar_vertical")]}})}render(){}destroy(){}}class bp{constructor(t){this.resizeObserver=null,this.cachedPadding=null,this.shouldUpdateGroupingOnNextResize=!1,this.view=t,this.viewChildren=t.children,this.viewFocusables=t.focusables,this.viewItemsView=t.itemsView,this.viewFocusTracker=t.focusTracker,this.viewLocale=t.locale,this.ungroupedItems=t.createCollection(),this.groupedItems=t.createCollection(),this.groupedItemsDropdown=this._createGroupedItemsDropdown(),t.itemsView.children.bindTo(this.ungroupedItems).using((t=>t)),this.ungroupedItems.on("change",this._updateFocusCyclableItems.bind(this)),t.children.on("change",this._updateFocusCyclableItems.bind(this)),t.items.on("change",((t,e)=>{const n=e.index,i=Array.from(e.added);for(const t of e.removed)n>=this.ungroupedItems.length?this.groupedItems.remove(t):this.ungroupedItems.remove(t);for(let t=n;tthis.ungroupedItems.length?this.groupedItems.add(e,t-this.ungroupedItems.length):this.ungroupedItems.add(e,t)}this._updateGrouping()})),t.extendTemplate({attributes:{class:["ck-toolbar_grouping"]}})}render(t){this.viewElement=t.element,this._enableGroupingOnResize(),this._enableGroupingOnMaxWidthChange(t)}destroy(){this.groupedItemsDropdown.destroy(),this.resizeObserver.destroy()}_updateGrouping(){if(!this.viewElement.ownerDocument.body.contains(this.viewElement))return;if(!Ki(this.viewElement))return void(this.shouldUpdateGroupingOnNextResize=!0);const t=this.groupedItems.length;let e;for(;this._areItemsOverflowing;)this._groupLastItem(),e=!0;if(!e&&this.groupedItems.length){for(;this.groupedItems.length&&!this._areItemsOverflowing;)this._ungroupFirstItem();this._areItemsOverflowing&&this._groupLastItem()}this.groupedItems.length!==t&&this.view.fire("groupedItemsUpdate")}get _areItemsOverflowing(){if(!this.ungroupedItems.length)return!1;const t=this.viewElement,n=this.viewLocale.uiLanguageDirection,i=new Li(t.lastChild),o=new Li(t);if(!this.cachedPadding){const i=e.window.getComputedStyle(t),o="ltr"===n?"paddingRight":"paddingLeft";this.cachedPadding=Number.parseInt(i[o])}return"ltr"===n?i.right>o.right-this.cachedPadding:i.left{t&&t===e.contentRect.width&&!this.shouldUpdateGroupingOnNextResize||(this.shouldUpdateGroupingOnNextResize=!1,this._updateGrouping(),t=e.contentRect.width)})),this._updateGrouping()}_enableGroupingOnMaxWidthChange(t){t.on("change:maxWidth",(()=>{this._updateGrouping()}))}_groupLastItem(){this.groupedItems.length||(this.viewChildren.add(new np),this.viewChildren.add(this.groupedItemsDropdown),this.viewFocusTracker.add(this.groupedItemsDropdown.element)),this.groupedItems.add(this.ungroupedItems.remove(this.ungroupedItems.last),0)}_ungroupFirstItem(){this.ungroupedItems.add(this.groupedItems.remove(this.groupedItems.first)),this.groupedItems.length||(this.viewChildren.remove(this.groupedItemsDropdown),this.viewChildren.remove(this.viewChildren.last),this.viewFocusTracker.remove(this.groupedItemsDropdown.element))}_createGroupedItemsDropdown(){const t=this.viewLocale,e=t.t,n=Ip(t);return n.class="ck-toolbar__grouped-dropdown",n.panelPosition="ltr"===t.uiLanguageDirection?"sw":"se",Pp(n,this.groupedItems),n.buttonView.set({label:e("Show more items"),tooltip:!0,tooltipPosition:"rtl"===t.uiLanguageDirection?"se":"sw",icon:ym.threeVerticalDots}),n}_updateFocusCyclableItems(){this.viewFocusables.clear(),this.ungroupedItems.map((t=>{ep(t)&&this.viewFocusables.add(t)})),this.groupedItems.length&&this.viewFocusables.add(this.groupedItemsDropdown)}}class kp extends Jm{constructor(t){super(t);const e=this.bindTemplate;this.set("isVisible",!0),this.children=this.createCollection(),this.setTemplate({tag:"li",attributes:{class:["ck","ck-list__item",e.if("isVisible","ck-hidden",(t=>!t))],role:"presentation"},children:this.children})}focus(){this.children.first&&this.children.first.focus()}}class wp extends Jm{constructor(t){super(t),this.setTemplate({tag:"li",attributes:{class:["ck","ck-list__separator"]}})}}class _p extends Jm{constructor(t,e=new ng){super(t);const n=this.bindTemplate,i=new vp(t);this.set({label:"",isVisible:!0}),this.labelView=e,this.labelView.bind("text").to(this,"label"),this.children=this.createCollection(),this.children.addMany([this.labelView,i]),i.set({role:"group",ariaLabelledBy:e.id}),i.focusTracker.destroy(),i.keystrokes.destroy(),this.items=i.items,this.setTemplate({tag:"li",attributes:{role:"presentation",class:["ck","ck-list__group",n.if("isVisible","ck-hidden",(t=>!t))]},children:this.children})}focus(){if(this.items){const t=this.items.find((t=>!(t instanceof wp)));t&&t.focus()}}}var Ap=n(5199),Cp={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Ap.A,Cp);Ap.A.locals;class vp extends Jm{constructor(t){super(t),this._listItemGroupToChangeListeners=new WeakMap;const e=this.bindTemplate;this.focusables=new xm,this.items=this.createCollection(),this.focusTracker=new Go,this.keystrokes=new Ko,this._focusCycler=new Xg({focusables:this.focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"arrowup",focusNext:"arrowdown"}}),this.set("ariaLabel",void 0),this.set("ariaLabelledBy",void 0),this.set("role",void 0),this.setTemplate({tag:"ul",attributes:{class:["ck","ck-reset","ck-list"],role:e.to("role"),"aria-label":e.to("ariaLabel"),"aria-labelledby":e.to("ariaLabelledBy")},children:this.items})}render(){super.render();for(const t of this.items)t instanceof _p?this._registerFocusableItemsGroup(t):t instanceof kp&&this._registerFocusableListItem(t);this.items.on("change",((t,e)=>{for(const t of e.removed)t instanceof _p?this._deregisterFocusableItemsGroup(t):t instanceof kp&&this._deregisterFocusableListItem(t);for(const t of Array.from(e.added).reverse())t instanceof _p?this._registerFocusableItemsGroup(t,e.index):this._registerFocusableListItem(t,e.index)})),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}focusFirst(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}_registerFocusableListItem(t,e){this.focusTracker.add(t.element),this.focusables.add(t,e)}_deregisterFocusableListItem(t){this.focusTracker.remove(t.element),this.focusables.remove(t)}_getOnGroupItemsChangeCallback(t){return(e,n)=>{for(const t of n.removed)this._deregisterFocusableListItem(t);for(const e of Array.from(n.added).reverse())this._registerFocusableListItem(e,this.items.getIndex(t)+n.index)}}_registerFocusableItemsGroup(t,e){Array.from(t.items).forEach(((t,n)=>{const i=void 0!==e?e+n:void 0;this._registerFocusableListItem(t,i)}));const n=this._getOnGroupItemsChangeCallback(t);this._listItemGroupToChangeListeners.set(t,n),t.items.on("change",n)}_deregisterFocusableItemsGroup(t){for(const e of t.items)this._deregisterFocusableListItem(e);t.items.off("change",this._listItemGroupToChangeListeners.get(t)),this._listItemGroupToChangeListeners.delete(t)}}var yp=n(1792),xp={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(yp.A,xp);yp.A.locals;class Ep extends Jm{constructor(t,e){super(t);const n=this.bindTemplate;this.set("class",void 0),this.set("labelStyle",void 0),this.set("icon",void 0),this.set("isEnabled",!0),this.set("isOn",!1),this.set("isToggleable",!1),this.set("isVisible",!0),this.set("keystroke",void 0),this.set("withKeystroke",!1),this.set("label",void 0),this.set("tabindex",-1),this.set("tooltip",!1),this.set("tooltipPosition","s"),this.set("type","button"),this.set("withText",!1),this.children=this.createCollection(),this.actionView=this._createActionView(e),this.arrowView=this._createArrowView(),this.keystrokes=new Ko,this.focusTracker=new Go,this.setTemplate({tag:"div",attributes:{class:["ck","ck-splitbutton",n.to("class"),n.if("isVisible","ck-hidden",(t=>!t)),this.arrowView.bindTemplate.if("isOn","ck-splitbutton_open")]},children:this.children})}render(){super.render(),this.children.add(this.actionView),this.children.add(this.arrowView),this.focusTracker.add(this.actionView.element),this.focusTracker.add(this.arrowView.element),this.keystrokes.listenTo(this.element),this.keystrokes.set("arrowright",((t,e)=>{this.focusTracker.focusedElement===this.actionView.element&&(this.arrowView.focus(),e())})),this.keystrokes.set("arrowleft",((t,e)=>{this.focusTracker.focusedElement===this.arrowView.element&&(this.actionView.focus(),e())}))}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this.actionView.focus()}_createActionView(t){const e=t||new mg;return t||e.bind("icon","isEnabled","isOn","isToggleable","keystroke","label","tabindex","tooltip","tooltipPosition","type","withText").to(this),e.extendTemplate({attributes:{class:"ck-splitbutton__action"}}),e.delegate("execute").to(this),e}_createArrowView(){const t=new mg,e=t.bindTemplate;return t.icon=wg,t.extendTemplate({attributes:{class:["ck-splitbutton__arrow"],"data-cke-tooltip-disabled":e.to("isOn"),"aria-haspopup":!0,"aria-expanded":e.to("isOn",(t=>String(t)))}}),t.bind("isEnabled").to(this),t.bind("label").to(this),t.bind("tooltip").to(this),t.delegate("execute").to(this,"open"),t}}var Dp=n(1666),Bp={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Dp.A,Bp);Dp.A.locals;var Sp=n(3629),Tp={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Sp.A,Tp);Sp.A.locals;function Ip(t,n=Qg){const i="function"==typeof n?new n(t):n,o=new Gg(t),r=new Yg(t,i,o);return i.bind("isEnabled").to(r),i instanceof Ep?i.arrowView.bind("isOn").to(r,"isOpen"):i.bind("isOn").to(r,"isOpen"),function(t){(function(t){t.on("render",(()=>{Zm({emitter:t,activator:()=>t.isOpen,callback:()=>{t.isOpen=!1},contextElements:()=>[t.element,...t.focusTracker._elements]})}))})(t),function(t){t.on("execute",(e=>{e.source instanceof fg||(t.isOpen=!1)}))}(t),function(t){t.focusTracker.on("change:isFocused",((e,n,i)=>{t.isOpen&&!i&&(t.isOpen=!1)}))}(t),function(t){t.keystrokes.set("arrowdown",((e,n)=>{t.isOpen&&(t.panelView.focus(),n())})),t.keystrokes.set("arrowup",((e,n)=>{t.isOpen&&(t.panelView.focusLast(),n())}))}(t),function(t){t.on("change:isOpen",((n,i,o)=>{if(o)return;const r=t.panelView.element;r&&r.contains(e.document.activeElement)&&t.buttonView.focus()}))}(t),function(t){t.on("change:isOpen",((e,n,i)=>{i&&t.panelView.focus()}),{priority:"low"})}(t)}(r),r}function Pp(t,e,n={}){t.extendTemplate({attributes:{class:["ck-toolbar-dropdown"]}}),t.isOpen?Rp(t,e,n):t.once("change:isOpen",(()=>Rp(t,e,n)),{priority:"highest"}),n.enableActiveItemFocusOnDropdownOpen&&Lp(t,(()=>t.toolbarView.items.find((t=>t.isOn))))}function Rp(t,e,n){const i=t.locale,o=i.t,r=t.toolbarView=new gp(i),s="function"==typeof e?e():e;r.ariaLabel=n.ariaLabel||o("Dropdown toolbar"),n.maxWidth&&(r.maxWidth=n.maxWidth),n.class&&(r.class=n.class),n.isCompact&&(r.isCompact=n.isCompact),n.isVertical&&(r.isVertical=!0),s instanceof xm?r.items.bindTo(s).using((t=>t)):r.items.addMany(s),t.panelView.children.add(r),r.items.delegate("execute").to(t)}function Vp(t,e,n={}){t.isOpen?Fp(t,e,n):t.once("change:isOpen",(()=>Fp(t,e,n)),{priority:"highest"}),Lp(t,(()=>t.listView.items.find((t=>t instanceof kp&&t.children.first.isOn))))}function Fp(t,e,n){const i=t.locale,o=t.listView=new vp(i),r="function"==typeof e?e():e;o.ariaLabel=n.ariaLabel,o.role=n.role,Op(t,o.items,r,i),t.panelView.children.add(o),o.items.delegate("execute").to(t)}function Lp(t,e){t.on("change:isOpen",(()=>{if(!t.isOpen)return;const n=e();n&&("function"==typeof n.focus?n.focus():_("ui-dropdown-focus-child-on-open-child-missing-focus",{view:n}))}),{priority:f.low-10})}function Op(t,e,n,i){e.bindTo(n).using((e=>{if("separator"===e.type)return new wp(i);if("group"===e.type){const n=new _p(i);return n.set({label:e.label}),Op(t,n.items,e.items,i),n.items.delegate("execute").to(t),n}if("button"===e.type||"switchbutton"===e.type){const t=new kp(i);let n;return"button"===e.type?(n=new mg(i),n.bind("ariaChecked").to(n,"isOn")):n=new fg(i),n.bind(...Object.keys(e.model)).to(e.model),n.delegate("execute").to(t),t.children.add(n),t}return null}))}const zp=(t,e,n)=>{const i=new qg(t.locale);return i.set({id:e,ariaDescribedById:n}),i.bind("isReadOnly").to(t,"isEnabled",(t=>!t)),i.bind("hasError").to(t,"errorText",(t=>!!t)),i.on("input",(()=>{t.errorText=null})),t.bind("isEmpty","isFocused","placeholder").to(i),i},Mp=(t,e,n)=>{const i=new Wg(t.locale);return i.set({id:e,ariaDescribedById:n,inputMode:"numeric"}),i.bind("isReadOnly").to(t,"isEnabled",(t=>!t)),i.bind("hasError").to(t,"errorText",(t=>!!t)),i.on("input",(()=>{t.errorText=null})),t.bind("isEmpty","isFocused","placeholder").to(i),i},Np=(t,e,n)=>{const i=Ip(t.locale);return i.set({id:e,ariaDescribedById:n}),i.bind("isEnabled").to(t),i},Hp=(t,e=0,n=1)=>t>n?n:tMath.round(n*t)/n,qp=(Math.PI,t=>("#"===t[0]&&(t=t.substring(1)),t.length<6?{r:parseInt(t[0]+t[0],16),g:parseInt(t[1]+t[1],16),b:parseInt(t[2]+t[2],16),a:4===t.length?jp(parseInt(t[3]+t[3],16)/255,2):1}:{r:parseInt(t.substring(0,2),16),g:parseInt(t.substring(2,4),16),b:parseInt(t.substring(4,6),16),a:8===t.length?jp(parseInt(t.substring(6,8),16)/255,2):1})),Wp=({h:t,s:e,v:n,a:i})=>{const o=(200-e)*n/100;return{h:jp(t),s:jp(o>0&&o<200?e*n/100/(o<=100?o:200-o)*100:0),l:jp(o/2),a:jp(i,2)}},Up=t=>{const{h:e,s:n,l:i}=Wp(t);return`hsl(${e}, ${n}%, ${i}%)`},$p=({h:t,s:e,v:n,a:i})=>{t=t/360*6,e/=100,n/=100;const o=Math.floor(t),r=n*(1-e),s=n*(1-(t-o)*e),a=n*(1-(1-t+o)*e),c=o%6;return{r:jp(255*[n,s,r,r,a,n][c]),g:jp(255*[a,n,n,s,r,r][c]),b:jp(255*[r,r,a,n,n,s][c]),a:jp(i,2)}},Gp=t=>{const e=t.toString(16);return e.length<2?"0"+e:e},Kp=({r:t,g:e,b:n,a:i})=>{const o=i<1?Gp(jp(255*i)):"";return"#"+Gp(t)+Gp(e)+Gp(n)+o},Jp=({r:t,g:e,b:n,a:i})=>{const o=Math.max(t,e,n),r=o-Math.min(t,e,n),s=r?o===t?(e-n)/r:o===e?2+(n-t)/r:4+(t-e)/r:0;return{h:jp(60*(s<0?s+6:s)),s:jp(o?r/o*100:0),v:jp(o/255*100),a:i}},Zp=(t,e)=>{if(t===e)return!0;for(const n in t)if(t[n]!==e[n])return!1;return!0},Yp={},Qp=t=>{let e=Yp[t];return e||(e=document.createElement("template"),e.innerHTML=t,Yp[t]=e),e},Xp=(t,e,n)=>{t.dispatchEvent(new CustomEvent(e,{bubbles:!0,detail:n}))};let tf=!1;const ef=t=>"touches"in t,nf=(t,e)=>{const n=ef(e)?e.touches[0]:e,i=t.el.getBoundingClientRect();Xp(t.el,"move",t.getMove({x:Hp((n.pageX-(i.left+window.pageXOffset))/i.width),y:Hp((n.pageY-(i.top+window.pageYOffset))/i.height)}))};class of{constructor(t,e,n,i){const o=Qp(`
    `);t.appendChild(o.content.cloneNode(!0));const r=t.querySelector(`[part=${e}]`);r.addEventListener("mousedown",this),r.addEventListener("touchstart",this),r.addEventListener("keydown",this),this.el=r,this.xy=i,this.nodes=[r.firstChild,r]}set dragging(t){const e=t?document.addEventListener:document.removeEventListener;e(tf?"touchmove":"mousemove",this),e(tf?"touchend":"mouseup",this)}handleEvent(t){switch(t.type){case"mousedown":case"touchstart":if(t.preventDefault(),!(t=>!(tf&&!ef(t)||(tf||(tf=ef(t)),0)))(t)||!tf&&0!=t.button)return;this.el.focus(),nf(this,t),this.dragging=!0;break;case"mousemove":case"touchmove":t.preventDefault(),nf(this,t);break;case"mouseup":case"touchend":this.dragging=!1;break;case"keydown":((t,e)=>{const n=e.keyCode;n>40||t.xy&&n<37||n<33||(e.preventDefault(),Xp(t.el,"move",t.getMove({x:39===n?.01:37===n?-.01:34===n?.05:33===n?-.05:35===n?1:36===n?-1:0,y:40===n?.01:38===n?-.01:0},!0)))})(this,t)}}style(t){t.forEach(((t,e)=>{for(const n in t)this.nodes[e].style.setProperty(n,t[n])}))}}class rf extends of{constructor(t){super(t,"hue",'aria-label="Hue" aria-valuemin="0" aria-valuemax="360"',!1)}update({h:t}){this.h=t,this.style([{left:t/360*100+"%",color:Up({h:t,s:100,v:100,a:1})}]),this.el.setAttribute("aria-valuenow",`${jp(t)}`)}getMove(t,e){return{h:e?Hp(this.h+360*t.x,0,360):360*t.x}}}class sf extends of{constructor(t){super(t,"saturation",'aria-label="Color"',!0)}update(t){this.hsva=t,this.style([{top:100-t.v+"%",left:`${t.s}%`,color:Up(t)},{"background-color":Up({h:t.h,s:100,v:100,a:1})}]),this.el.setAttribute("aria-valuetext",`Saturation ${jp(t.s)}%, Brightness ${jp(t.v)}%`)}getMove(t,e){return{s:e?Hp(this.hsva.s+100*t.x,0,100):100*t.x,v:e?Hp(this.hsva.v-100*t.y,0,100):Math.round(100-100*t.y)}}}const af=Symbol("same"),cf=Symbol("color"),lf=Symbol("hsva"),df=Symbol("update"),hf=Symbol("parts"),uf=Symbol("css"),mf=Symbol("sliders");class gf extends HTMLElement{static get observedAttributes(){return["color"]}get[uf](){return[':host{display:flex;flex-direction:column;position:relative;width:200px;height:200px;user-select:none;-webkit-user-select:none;cursor:default}:host([hidden]){display:none!important}[role=slider]{position:relative;touch-action:none;user-select:none;-webkit-user-select:none;outline:0}[role=slider]:last-child{border-radius:0 0 8px 8px}[part$=pointer]{position:absolute;z-index:1;box-sizing:border-box;width:28px;height:28px;display:flex;place-content:center center;transform:translate(-50%,-50%);background-color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}[part$=pointer]::after{content:"";width:100%;height:100%;border-radius:inherit;background-color:currentColor}[role=slider]:focus [part$=pointer]{transform:translate(-50%,-50%) scale(1.1)}',"[part=hue]{flex:0 0 24px;background:linear-gradient(to right,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)}[part=hue-pointer]{top:50%;z-index:2}","[part=saturation]{flex-grow:1;border-color:transparent;border-bottom:12px solid #000;border-radius:8px 8px 0 0;background-image:linear-gradient(to top,#000,transparent),linear-gradient(to right,#fff,rgba(255,255,255,0));box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}[part=saturation-pointer]{z-index:3}"]}get[mf](){return[sf,rf]}get color(){return this[cf]}set color(t){if(!this[af](t)){const e=this.colorModel.toHsva(t);this[df](e),this[cf]=t}}constructor(){super();const t=Qp(``),e=this.attachShadow({mode:"open"});e.appendChild(t.content.cloneNode(!0)),e.addEventListener("move",this),this[hf]=this[mf].map((t=>new t(e)))}connectedCallback(){if(this.hasOwnProperty("color")){const t=this.color;delete this.color,this.color=t}else this.color||(this.color=this.colorModel.defaultColor)}attributeChangedCallback(t,e,n){const i=this.colorModel.fromAttr(n);this[af](i)||(this.color=i)}handleEvent(t){const e=this[lf],n={...e,...t.detail};let i;this[df](n),Zp(n,e)||this[af](i=this.colorModel.fromHsva(n))||(this[cf]=i,Xp(this,"color-changed",{value:i}))}[af](t){return this.color&&this.colorModel.equal(t,this.color)}[df](t){this[lf]=t,this[hf].forEach((e=>e.update(t)))}}const pf={defaultColor:"#000",toHsva:t=>Jp(qp(t)),fromHsva:({h:t,s:e,v:n})=>Kp($p({h:t,s:e,v:n,a:1})),equal:(t,e)=>t.toLowerCase()===e.toLowerCase()||Zp(qp(t),qp(e)),fromAttr:t=>t};class ff extends gf{get colorModel(){return pf}}var bf=n(1905),kf={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(bf.A,kf);bf.A.locals;class wf extends Jm{constructor(t,e={}){super(t),this.set({color:"",_hexColor:""}),this.hexInputRow=this._createInputRow();const n=this.createCollection();e.hideInput||n.add(this.hexInputRow),this.setTemplate({tag:"div",attributes:{class:["ck","ck-color-picker"],tabindex:-1},children:n}),this._config=e,this._debounceColorPickerEvent=Wa((t=>{this.set("color",t),this.fire("colorSelected",{color:this.color})}),150,{leading:!0}),this.on("set:color",((t,e,n)=>{t.return=Vg(n,this._config.format||"hsl")})),this.on("change:color",(()=>{this._hexColor=_f(this.color)})),this.on("change:_hexColor",(()=>{document.activeElement!==this.picker&&this.picker.setAttribute("color",this._hexColor),_f(this.color)!=_f(this._hexColor)&&(this.color=this._hexColor)}))}render(){var t,n;if(super.render(),t="hex-color-picker",n=ff,void 0===customElements.get(t)&&customElements.define(t,n),this.picker=e.document.createElement("hex-color-picker"),this.picker.setAttribute("class","hex-color-picker"),this.picker.setAttribute("tabindex","-1"),this._createSlidersView(),this.element){this.hexInputRow.element?this.element.insertBefore(this.picker,this.hexInputRow.element):this.element.appendChild(this.picker);const t=document.createElement("style");t.textContent='[role="slider"]:focus [part$="pointer"] {border: 1px solid #fff;outline: 1px solid var(--ck-color-focus-border);box-shadow: 0 0 0 2px #fff;}',this.picker.shadowRoot.appendChild(t)}this.picker.addEventListener("color-changed",(t=>{const e=t.detail.value;this._debounceColorPickerEvent(e)}))}focus(){if(!this._config.hideInput&&(s.isGecko||s.isiOS||s.isSafari)){this.hexInputRow.children.get(1).focus()}this.slidersView.first.focus()}_createSlidersView(){const t=[...this.picker.shadowRoot.children].filter((t=>"slider"===t.getAttribute("role"))).map((t=>new Af(t)));this.slidersView=this.createCollection(),t.forEach((t=>{this.slidersView.add(t)}))}_createInputRow(){const t=this._createColorInput();return new vf(this.locale,t)}_createColorInput(){const t=new zg(this.locale,zp),{t:e}=this.locale;return t.set({label:e("HEX"),class:"color-picker-hex-input"}),t.fieldView.bind("value").to(this,"_hexColor",(e=>t.isFocused?t.fieldView.value:e.startsWith("#")?e.substring(1):e)),t.fieldView.on("input",(()=>{const e=t.fieldView.element.value;if(e){const t=yf(e);t&&this._debounceColorPickerEvent(t)}})),t}isValid(){const{t}=this.locale;return this.resetValidationStatus(),!!this.hexInputRow.getParsedColor()||(this.hexInputRow.inputView.errorText=t('Please enter a valid color (e.g. "ff0000").'),!1)}resetValidationStatus(){this.hexInputRow.inputView.errorText=null}}function _f(t){let e=function(t){if(!t)return"";const e=Fg(t);return e?"hex"===e.space?e.hexValue:Vg(t,"hex"):"#000"}(t);return e||(e="#000"),4===e.length&&(e="#"+[e[1],e[1],e[2],e[2],e[3],e[3]].join("")),e.toLowerCase()}class Af extends Jm{constructor(t){super(),this.element=t}focus(){this.element.focus()}}class Cf extends Jm{constructor(t){super(t),this.setTemplate({tag:"div",attributes:{class:["ck","ck-color-picker__hash-view"]},children:"#"})}}class vf extends Jm{constructor(t,e){super(t),this.inputView=e,this.children=this.createCollection([new Cf,this.inputView]),this.setTemplate({tag:"div",attributes:{class:["ck","ck-color-picker__row"]},children:this.children})}getParsedColor(){return yf(this.inputView.fieldView.element.value)}}function yf(t){if(!t)return null;const e=t.trim().replace(/^#/,"");return[3,4,6,8].includes(e.length)&&/^(([0-9a-fA-F]{2}){3,4}|([0-9a-fA-F]){3,4})$/.test(e)?`#${e}`:null}class xf extends(W(Uo)){constructor(t){super(t),this.set("isEmpty",!0),this.on("change",(()=>{this.set("isEmpty",0===this.length)}))}add(t,e){return this.find((e=>e.color===t.color))?this:super.add(t,e)}hasColor(t){return!!this.find((e=>e.color===t))}}const{eraser:Ef,colorPalette:Df}=ym;class Bf extends Jm{constructor(t,{colors:e,columns:n,removeButtonLabel:i,documentColorsLabel:o,documentColorsCount:r,colorPickerLabel:s,focusTracker:a,focusables:c}){super(t);const l=this.bindTemplate;this.set("isVisible",!0),this.focusTracker=a,this.items=this.createCollection(),this.colorDefinitions=e,this.columns=n,this.documentColors=new xf,this.documentColorsCount=r,this._focusables=c,this._removeButtonLabel=i,this._colorPickerLabel=s,this._documentColorsLabel=o,this.setTemplate({tag:"div",attributes:{class:["ck-color-grids-fragment",l.if("isVisible","ck-hidden",(t=>!t))]},children:this.items}),this.removeColorButtonView=this._createRemoveColorButton(),this.items.add(this.removeColorButtonView)}updateDocumentColors(t,e){const n=t.document,i=this.documentColorsCount;this.documentColors.clear();for(const o of n.getRoots()){const n=t.createRangeIn(o);for(const t of n.getItems())if(t.is("$textProxy")&&t.hasAttribute(e)&&(this._addColorToDocumentColors(t.getAttribute(e)),this.documentColors.length>=i))return}}updateSelectedColors(){const t=this.documentColorsGrid,e=this.staticColorsGrid,n=this.selectedColor;e.selectedColor=n,t&&(t.selectedColor=n)}render(){if(super.render(),this.staticColorsGrid=this._createStaticColorsGrid(),this.items.add(this.staticColorsGrid),this.documentColorsCount){const t=Em.bind(this.documentColors,this.documentColors),e=new ng(this.locale);e.text=this._documentColorsLabel,e.extendTemplate({attributes:{class:["ck","ck-color-grid__label",t.if("isEmpty","ck-hidden")]}}),this.items.add(e),this.documentColorsGrid=this._createDocumentColorsGrid(),this.items.add(this.documentColorsGrid)}this._createColorPickerButton(),this._addColorSelectorElementsToFocusTracker()}focus(){this.removeColorButtonView.focus()}destroy(){super.destroy()}addColorPickerButton(){this.colorPickerButtonView&&(this.items.add(this.colorPickerButtonView),this.focusTracker.add(this.colorPickerButtonView.element),this._focusables.add(this.colorPickerButtonView))}_addColorSelectorElementsToFocusTracker(){this.focusTracker.add(this.removeColorButtonView.element),this._focusables.add(this.removeColorButtonView),this.staticColorsGrid&&(this.focusTracker.add(this.staticColorsGrid.element),this._focusables.add(this.staticColorsGrid)),this.documentColorsGrid&&(this.focusTracker.add(this.documentColorsGrid.element),this._focusables.add(this.documentColorsGrid))}_createColorPickerButton(){this.colorPickerButtonView=new mg,this.colorPickerButtonView.set({label:this._colorPickerLabel,withText:!0,icon:Df,class:"ck-color-selector__color-picker"}),this.colorPickerButtonView.on("execute",(()=>{this.fire("colorPicker:show")}))}_createRemoveColorButton(){const t=new mg;return t.set({withText:!0,icon:Ef,label:this._removeButtonLabel}),t.class="ck-color-selector__remove-color",t.on("execute",(()=>{this.fire("execute",{value:null,source:"removeColorButton"})})),t.render(),t}_createStaticColorsGrid(){const t=new Sg(this.locale,{colorDefinitions:this.colorDefinitions,columns:this.columns});return t.on("execute",((t,e)=>{this.fire("execute",{value:e.value,source:"staticColorsGrid"})})),t}_createDocumentColorsGrid(){const t=Em.bind(this.documentColors,this.documentColors),e=new Sg(this.locale,{columns:this.columns});return e.extendTemplate({attributes:{class:t.if("isEmpty","ck-hidden")}}),e.items.bindTo(this.documentColors).using((t=>{const e=new Eg;return e.set({color:t.color,hasBorder:t.options&&t.options.hasBorder}),t.label&&e.set({label:t.label,tooltip:!0}),e.on("execute",(()=>{this.fire("execute",{value:t.color,source:"documentColorsGrid"})})),e})),this.documentColors.on("change:isEmpty",((t,n,i)=>{i&&(e.selectedColor=null)})),e}_addColorToDocumentColors(t){const e=this.colorDefinitions.find((e=>e.color===t));e?this.documentColors.add(Object.assign({},e)):this.documentColors.add({color:t,label:t,options:{hasBorder:!1}})}}var Sf=Object.defineProperty,Tf=Object.getOwnPropertySymbols,If=Object.prototype.hasOwnProperty,Pf=Object.prototype.propertyIsEnumerable,Rf=(t,e,n)=>e in t?Sf(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class Vf extends Jm{constructor(t,{focusTracker:e,focusables:n,keystrokes:i,colorPickerViewConfig:o}){super(t),this.items=this.createCollection(),this.focusTracker=e,this.keystrokes=i,this.set("isVisible",!1),this.set("selectedColor",void 0),this._focusables=n,this._colorPickerViewConfig=o;const r=this.bindTemplate,{saveButtonView:s,cancelButtonView:a}=this._createActionButtons();this.saveButtonView=s,this.cancelButtonView=a,this.actionBarView=this._createActionBarView({saveButtonView:s,cancelButtonView:a}),this.setTemplate({tag:"div",attributes:{class:["ck-color-picker-fragment",r.if("isVisible","ck-hidden",(t=>!t))]},children:this.items})}render(){super.render();const t=new wf(this.locale,((t,e)=>{for(var n in e||(e={}))If.call(e,n)&&Rf(t,n,e[n]);if(Tf)for(var n of Tf(e))Pf.call(e,n)&&Rf(t,n,e[n]);return t})({},this._colorPickerViewConfig));this.colorPickerView=t,this.colorPickerView.render(),this.selectedColor&&(t.color=this.selectedColor),this.listenTo(this,"change:selectedColor",((e,n,i)=>{t.color=i})),this.items.add(this.colorPickerView),this.items.add(this.actionBarView),this._addColorPickersElementsToFocusTracker(),this._stopPropagationOnArrowsKeys(),this._executeOnEnterPress(),this._executeUponColorChange()}destroy(){super.destroy()}focus(){this.colorPickerView.focus()}resetValidationStatus(){this.colorPickerView.resetValidationStatus()}_executeOnEnterPress(){this.keystrokes.set("enter",(t=>{this.isVisible&&this.focusTracker.focusedElement!==this.cancelButtonView.element&&this.colorPickerView.isValid()&&(this.fire("execute",{value:this.selectedColor}),t.stopPropagation(),t.preventDefault())}))}_stopPropagationOnArrowsKeys(){const t=t=>t.stopPropagation();this.keystrokes.set("arrowright",t),this.keystrokes.set("arrowleft",t),this.keystrokes.set("arrowup",t),this.keystrokes.set("arrowdown",t)}_addColorPickersElementsToFocusTracker(){for(const t of this.colorPickerView.slidersView)this.focusTracker.add(t.element),this._focusables.add(t);const t=this.colorPickerView.hexInputRow.children.get(1);t.element&&(this.focusTracker.add(t.element),this._focusables.add(t)),this.focusTracker.add(this.saveButtonView.element),this._focusables.add(this.saveButtonView),this.focusTracker.add(this.cancelButtonView.element),this._focusables.add(this.cancelButtonView)}_createActionBarView({saveButtonView:t,cancelButtonView:e}){const n=new Jm,i=this.createCollection();return i.add(t),i.add(e),n.setTemplate({tag:"div",attributes:{class:["ck","ck-color-selector_action-bar"]},children:i}),n}_createActionButtons(){const t=this.locale,e=t.t,n=new mg(t),i=new mg(t);return n.set({icon:ym.check,class:"ck-button-save",type:"button",withText:!1,label:e("Accept")}),i.set({icon:ym.cancel,class:"ck-button-cancel",type:"button",withText:!1,label:e("Cancel")}),n.on("execute",(()=>{this.colorPickerView.isValid()&&this.fire("execute",{source:"colorPickerSaveButton",value:this.selectedColor})})),i.on("execute",(()=>{this.fire("colorPicker:cancel")})),{saveButtonView:n,cancelButtonView:i}}_executeUponColorChange(){this.colorPickerView.on("colorSelected",((t,e)=>{this.fire("execute",{value:e.color,source:"colorPicker"}),this.set("selectedColor",e.color)}))}}var Ff=n(6309),Lf={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Ff.A,Lf);Ff.A.locals;class Of extends Jm{constructor(t,{colors:e,columns:n,removeButtonLabel:i,documentColorsLabel:o,documentColorsCount:r,colorPickerLabel:s,colorPickerViewConfig:a}){super(t),this.items=this.createCollection(),this.focusTracker=new Go,this.keystrokes=new Ko,this._focusables=new xm,this._colorPickerViewConfig=a,this._focusCycler=new Xg({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.colorGridsFragmentView=new Bf(t,{colors:e,columns:n,removeButtonLabel:i,documentColorsLabel:o,documentColorsCount:r,colorPickerLabel:s,focusTracker:this.focusTracker,focusables:this._focusables}),this.colorPickerFragmentView=new Vf(t,{focusables:this._focusables,focusTracker:this.focusTracker,keystrokes:this.keystrokes,colorPickerViewConfig:a}),this.set("_isColorGridsFragmentVisible",!0),this.set("_isColorPickerFragmentVisible",!1),this.set("selectedColor",void 0),this.colorGridsFragmentView.bind("isVisible").to(this,"_isColorGridsFragmentVisible"),this.colorPickerFragmentView.bind("isVisible").to(this,"_isColorPickerFragmentVisible"),this.on("change:selectedColor",((t,e,n)=>{this.colorGridsFragmentView.set("selectedColor",n),this.colorPickerFragmentView.set("selectedColor",n)})),this.colorGridsFragmentView.on("change:selectedColor",((t,e,n)=>{this.set("selectedColor",n)})),this.colorPickerFragmentView.on("change:selectedColor",((t,e,n)=>{this.set("selectedColor",n)})),this.setTemplate({tag:"div",attributes:{class:["ck","ck-color-selector"]},children:this.items})}render(){super.render(),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}appendUI(){this._appendColorGridsFragment(),this._colorPickerViewConfig&&this._appendColorPickerFragment()}showColorPickerFragment(){this.colorPickerFragmentView.colorPickerView&&!this._isColorPickerFragmentVisible&&(this._isColorPickerFragmentVisible=!0,this.colorPickerFragmentView.focus(),this.colorPickerFragmentView.resetValidationStatus(),this._isColorGridsFragmentVisible=!1)}showColorGridsFragment(){this._isColorGridsFragmentVisible||(this._isColorGridsFragmentVisible=!0,this.colorGridsFragmentView.focus(),this._isColorPickerFragmentVisible=!1)}focus(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}updateDocumentColors(t,e){this.colorGridsFragmentView.updateDocumentColors(t,e)}updateSelectedColors(){this.colorGridsFragmentView.updateSelectedColors()}_appendColorGridsFragment(){this.items.length||(this.items.add(this.colorGridsFragmentView),this.colorGridsFragmentView.delegate("execute").to(this),this.colorGridsFragmentView.delegate("colorPicker:show").to(this))}_appendColorPickerFragment(){2!==this.items.length&&(this.items.add(this.colorPickerFragmentView),this.colorGridsFragmentView.colorPickerButtonView&&this.colorGridsFragmentView.colorPickerButtonView.on("execute",(()=>{this.showColorPickerFragment()})),this.colorGridsFragmentView.addColorPickerButton(),this.colorPickerFragmentView.delegate("execute").to(this),this.colorPickerFragmentView.delegate("colorPicker:cancel").to(this))}}class zf{constructor(t){this._components=new Map,this.editor=t}*names(){for(const t of this._components.values())yield t.originalName}add(t,e){this._components.set(Mf(t),{callback:e,originalName:t})}create(t){if(!this.has(t))throw new w("componentfactory-item-missing",this,{name:t});return this._components.get(Mf(t)).callback(this.editor.locale)}has(t){return this._components.has(Mf(t))}}function Mf(t){return String(t).toLowerCase()}var Nf=n(7913),Hf={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Nf.A,Hf);Nf.A.locals;class jf extends Jm{constructor(t,e={}){super(t);const n=this.bindTemplate;this.set("label",e.label||""),this.set("class",e.class||null),this.children=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-form__header",n.to("class")]},children:this.children}),e.icon&&(this.iconView=new lg,this.iconView.content=e.icon,this.children.add(this.iconView));const i=new Jm(t);i.setTemplate({tag:"h2",attributes:{class:["ck","ck-form__header__label"],role:"presentation"},children:[{text:n.to("label")}]}),this.children.add(i)}}var qf=n(9822),Wf={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(qf.A,Wf);qf.A.locals;class Uf extends Jm{constructor(t){super(t),this.children=this.createCollection(),this.keystrokes=new Ko,this._focusTracker=new Go,this._focusables=new xm,this.focusCycler=new Xg({focusables:this._focusables,focusTracker:this._focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-dialog__actions"]},children:this.children})}render(){super.render(),this.keystrokes.listenTo(this.element)}setButtons(t){for(const e of t){const t=new mg(this.locale);let n;for(n in t.on("execute",(()=>e.onExecute())),e.onCreate&&e.onCreate(t),e)"onExecute"!=n&&"onCreate"!=n&&t.set(n,e[n]);this.children.add(t)}this._updateFocusCyclableItems()}focus(t){-1===t?this.focusCycler.focusLast():this.focusCycler.focusFirst()}_updateFocusCyclableItems(){Array.from(this.children).forEach((t=>{this._focusables.add(t),this._focusTracker.add(t.element)}))}}class $f extends Jm{constructor(t){super(t),this.children=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-dialog__content"]},children:this.children})}reset(){for(;this.children.length;)this.children.remove(0)}}var Gf=n(9819),Kf={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Gf.A,Kf);Gf.A.locals;const Jf="screen-center",Zf="editor-center",Yf="editor-top-side",Qf="editor-top-center",Xf="editor-bottom-center",tb="editor-above-center",eb="editor-below-center",nb=Wi("px"),ib=class extends(function(t){return class extends t{constructor(...t){super(...t),this._onDragBound=this._onDrag.bind(this),this._onDragEndBound=this._onDragEnd.bind(this),this._lastDraggingCoordinates={x:0,y:0},this.on("render",(()=>{this._attachListeners()})),this.set("isDragging",!1)}_attachListeners(){this.listenTo(this.element,"mousedown",this._onDragStart.bind(this)),this.listenTo(this.element,"touchstart",this._onDragStart.bind(this))}_attachDragListeners(){this.listenTo(e.document,"mouseup",this._onDragEndBound),this.listenTo(e.document,"touchend",this._onDragEndBound),this.listenTo(e.document,"mousemove",this._onDragBound),this.listenTo(e.document,"touchmove",this._onDragBound)}_detachDragListeners(){this.stopListening(e.document,"mouseup",this._onDragEndBound),this.stopListening(e.document,"touchend",this._onDragEndBound),this.stopListening(e.document,"mousemove",this._onDragBound),this.stopListening(e.document,"touchmove",this._onDragBound)}_onDragStart(t,e){if(!this._isHandleElementPressed(e))return;this._attachDragListeners();let n=0,i=0;e instanceof MouseEvent?(n=e.clientX,i=e.clientY):(n=e.touches[0].clientX,i=e.touches[0].clientY),this._lastDraggingCoordinates={x:n,y:i},this.isDragging=!0}_onDrag(t,e){if(!this.isDragging)return void this._detachDragListeners();let n=0,i=0;e instanceof MouseEvent?(n=e.clientX,i=e.clientY):(n=e.touches[0].clientX,i=e.touches[0].clientY),e.preventDefault(),this.fire("drag",{deltaX:Math.round(n-this._lastDraggingCoordinates.x),deltaY:Math.round(i-this._lastDraggingCoordinates.y)}),this._lastDraggingCoordinates={x:n,y:i}}_onDragEnd(){this._detachDragListeners(),this.isDragging=!1}_isHandleElementPressed(t){return!!this.dragHandleElement&&(this.dragHandleElement===t.target||t.target instanceof HTMLElement&&this.dragHandleElement.contains(t.target))}}}(Jm)){constructor(t,{getCurrentDomRoot:e,getViewportOffset:n}){super(t),this.wasMoved=!1;const i=this.bindTemplate,o=t.t;this.set("className",""),this.set("ariaLabel",o("Editor dialog")),this.set("isModal",!1),this.set("position",Jf),this.set("_isVisible",!1),this.set("_isTransparent",!1),this.set("_top",0),this.set("_left",0),this._getCurrentDomRoot=e,this._getViewportOffset=n,this.decorate("moveTo"),this.parts=this.createCollection(),this.keystrokes=new Ko,this.focusTracker=new Go,this._focusables=new xm,this._focusCycler=new Xg({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-dialog-overlay",i.if("isModal","ck-dialog-overlay__transparent",(t=>!t)),i.if("_isVisible","ck-hidden",(t=>!t))],tabindex:"-1"},children:[{tag:"div",attributes:{tabindex:"-1",class:["ck","ck-dialog",i.to("className")],role:"dialog","aria-label":i.to("ariaLabel"),style:{top:i.to("_top",(t=>nb(t))),left:i.to("_left",(t=>nb(t))),visibility:i.if("_isTransparent","hidden")}},children:this.parts}]})}render(){super.render(),this.keystrokes.set("Esc",((t,e)=>{this.fire("close",{source:"escKeyPress"}),e()})),this.on("drag",((t,{deltaX:e,deltaY:n})=>{this.wasMoved=!0,this.moveBy(e,n)})),this.listenTo(e.window,"resize",(()=>{this._isVisible&&!this.wasMoved&&this.updatePosition()})),this.listenTo(e.document,"scroll",(()=>{this._isVisible&&!this.wasMoved&&this.updatePosition()})),this.on("change:_isVisible",((t,e,n)=>{n&&(this._isTransparent=!0,setTimeout((()=>{this.updatePosition(),this._isTransparent=!1,this.focus()}),10))})),this.keystrokes.listenTo(this.element)}get dragHandleElement(){return this.headerView?this.headerView.element:null}setupParts({icon:t,title:e,hasCloseButton:n=!0,content:i,actionButtons:o}){e&&(this.headerView=new jf(this.locale,{icon:t}),n&&(this.closeButtonView=this._createCloseButton(),this.headerView.children.add(this.closeButtonView)),this.headerView.label=e,this.ariaLabel=e,this.parts.add(this.headerView,0)),i&&(i instanceof Jm&&(i=[i]),this.contentView=new $f(this.locale),this.contentView.children.addMany(i),this.parts.add(this.contentView)),o&&(this.actionsView=new Uf(this.locale),this.actionsView.setButtons(o),this.parts.add(this.actionsView)),this._updateFocusCyclableItems()}focus(){this._focusCycler.focusFirst()}moveTo(t,e){const n=this._getViewportRect(),i=this._getDialogRect();t+i.width>n.right&&(t=n.right-i.width),t{var e;this._focusables.add(t),this.focusTracker.add(t.element),ep(e=t)&&"focusCycler"in e&&e.focusCycler instanceof Xg&&(this.listenTo(t.focusCycler,"forwardCycle",(t=>{this._focusCycler.focusNext(),this._focusCycler.next!==this._focusCycler.focusables.get(this._focusCycler.current)&&t.stop()})),this.listenTo(t.focusCycler,"backwardCycle",(t=>{this._focusCycler.focusPrevious(),this._focusCycler.previous!==this._focusCycler.focusables.get(this._focusCycler.current)&&t.stop()})))}))}_createCloseButton(){const t=new mg(this.locale),e=this.locale.t;return t.set({label:e("Close"),tooltip:!0,icon:ym.cancel}),t.on("execute",(()=>this.fire("close",{source:"closeButton"}))),t}};let ob=ib;ob.defaultOffset=15;class rb extends er{constructor(t){super(t);const e=t.t;this._initShowHideListeners(),this._initFocusToggler(),this._initMultiRootIntegration(),this.set("id",null),t.accessibility.addKeystrokeInfos({categoryId:"navigation",keystrokes:[{label:e("Move focus in and out of an active dialog window"),keystroke:"Ctrl+F6",mayRequireFn:!0}]})}static get pluginName(){return"Dialog"}_initShowHideListeners(){this.on("show",((t,e)=>{this._show(e)})),this.on("show",((t,e)=>{e.onShow&&e.onShow(this)}),{priority:"low"}),this.on("hide",(()=>{rb._visibleDialogPlugin&&rb._visibleDialogPlugin._hide()})),this.on("hide",(()=>{this._onHide&&(this._onHide(this),this._onHide=void 0)}),{priority:"low"})}_initFocusToggler(){const t=this.editor;t.keystrokes.set("Ctrl+F6",((e,n)=>{this.isOpen&&!this.view.isModal&&(this.view.focusTracker.isFocused?t.editing.view.focus():this.view.focus(),n())}))}_initMultiRootIntegration(){const t=this.editor.model;t.document.on("change:data",(()=>{if(!this.view)return;const e=t.document.differ.getChangedRoots();for(const t of e)t.state&&this.view.updatePosition()}))}show(t){this.hide(),this.fire(`show:${t.id}`,t)}_show({id:t,icon:e,title:n,hasCloseButton:i=!0,content:o,actionButtons:r,className:s,isModal:a,position:c,onHide:l}){const d=this.editor;this.view=new ob(d.locale,{getCurrentDomRoot:()=>d.editing.view.getDomRoot(d.model.document.selection.anchor.root.rootName),getViewportOffset:()=>d.ui.viewportOffset});const h=this.view;h.on("close",(()=>{this.hide()})),d.ui.view.body.add(h),d.ui.focusTracker.add(h.element),d.keystrokes.listenTo(h.element),c||(c=a?Jf:Zf),h.set({position:c,_isVisible:!0,className:s,isModal:a}),h.setupParts({icon:e,title:n,hasCloseButton:i,content:o,actionButtons:r}),this.id=t,l&&(this._onHide=l),this.isOpen=!0,rb._visibleDialogPlugin=this}hide(){rb._visibleDialogPlugin&&rb._visibleDialogPlugin.fire(`hide:${rb._visibleDialogPlugin.id}`)}_hide(){if(!this.view)return;const t=this.editor,e=this.view;e.contentView&&e.contentView.reset(),t.ui.view.body.remove(e),t.ui.focusTracker.remove(e.element),t.keystrokes.stopListening(e.element),e.destroy(),t.editing.view.focus(),this.id=null,this.isOpen=!1,rb._visibleDialogPlugin=null}}var sb=n(3710),ab={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(sb.A,ab);sb.A.locals;var cb=Object.defineProperty,lb=Object.getOwnPropertySymbols,db=Object.prototype.hasOwnProperty,hb=Object.prototype.propertyIsEnumerable,ub=(t,e,n)=>e in t?cb(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,mb=(t,e)=>{for(var n in e||(e={}))db.call(e,n)&&ub(t,n,e[n]);if(lb)for(var n of lb(e))hb.call(e,n)&&ub(t,n,e[n]);return t};const gb=Wi("px"),pb=e.document.body,fb={top:-99999,left:-99999,name:"arrowless",config:{withArrow:!1}},bb=class extends Jm{constructor(t){super(t);const e=this.bindTemplate;this.set("top",0),this.set("left",0),this.set("position","arrow_nw"),this.set("isVisible",!1),this.set("withArrow",!0),this.set("class",void 0),this._pinWhenIsVisibleCallback=null,this.content=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-balloon-panel",e.to("position",(t=>`ck-balloon-panel_${t}`)),e.if("isVisible","ck-balloon-panel_visible"),e.if("withArrow","ck-balloon-panel_with-arrow"),e.to("class")],style:{top:e.to("top",gb),left:e.to("left",gb)}},children:this.content})}show(){this.isVisible=!0}hide(){this.isVisible=!1}attachTo(t){this.show();const e=bb.defaultPositions,n=Object.assign({},{element:this.element,positions:[e.southArrowNorth,e.southArrowNorthMiddleWest,e.southArrowNorthMiddleEast,e.southArrowNorthWest,e.southArrowNorthEast,e.northArrowSouth,e.northArrowSouthMiddleWest,e.northArrowSouthMiddleEast,e.northArrowSouthWest,e.northArrowSouthEast,e.viewportStickyNorth],limiter:pb,fitInViewport:!0},t),i=bb._getOptimalPosition(n)||fb,o=parseInt(i.left),r=parseInt(i.top),s=i.name,a=i.config||{},{withArrow:c=!0}=a;this.top=r,this.left=o,this.position=s,this.withArrow=c}pin(t){this.unpin(),this._pinWhenIsVisibleCallback=()=>{this.isVisible?this._startPinning(t):this._stopPinning()},this._startPinning(t),this.listenTo(this,"change:isVisible",this._pinWhenIsVisibleCallback)}unpin(){this._pinWhenIsVisibleCallback&&(this._stopPinning(),this.stopListening(this,"change:isVisible",this._pinWhenIsVisibleCallback),this._pinWhenIsVisibleCallback=null,this.hide())}_startPinning(t){this.attachTo(t);const n=wb(t.target),i=t.limiter?wb(t.limiter):pb;this.listenTo(e.document,"scroll",((e,o)=>{const r=o.target,s=n&&r.contains(n),a=i&&r.contains(i);!s&&!a&&n&&i||this.attachTo(t)}),{useCapture:!0}),this.listenTo(e.window,"resize",(()=>{this.attachTo(t)}))}_stopPinning(){this.stopListening(e.document,"scroll"),this.stopListening(e.window,"resize")}};let kb=bb;function wb(t){return Ai(t)?t:Ri(t)?t.commonAncestorContainer:"function"==typeof t?wb(t()):null}function _b(t={}){const{sideOffset:e=kb.arrowSideOffset,heightOffset:n=kb.arrowHeightOffset,stickyVerticalOffset:i=kb.stickyVerticalOffset,config:o}=t;return{northWestArrowSouthWest:(t,n)=>mb({top:r(t,n),left:t.left-e,name:"arrow_sw"},o&&{config:o}),northWestArrowSouthMiddleWest:(t,n)=>mb({top:r(t,n),left:t.left-.25*n.width-e,name:"arrow_smw"},o&&{config:o}),northWestArrowSouth:(t,e)=>mb({top:r(t,e),left:t.left-e.width/2,name:"arrow_s"},o&&{config:o}),northWestArrowSouthMiddleEast:(t,n)=>mb({top:r(t,n),left:t.left-.75*n.width+e,name:"arrow_sme"},o&&{config:o}),northWestArrowSouthEast:(t,n)=>mb({top:r(t,n),left:t.left-n.width+e,name:"arrow_se"},o&&{config:o}),northArrowSouthWest:(t,n)=>mb({top:r(t,n),left:t.left+t.width/2-e,name:"arrow_sw"},o&&{config:o}),northArrowSouthMiddleWest:(t,n)=>mb({top:r(t,n),left:t.left+t.width/2-.25*n.width-e,name:"arrow_smw"},o&&{config:o}),northArrowSouth:(t,e)=>mb({top:r(t,e),left:t.left+t.width/2-e.width/2,name:"arrow_s"},o&&{config:o}),northArrowSouthMiddleEast:(t,n)=>mb({top:r(t,n),left:t.left+t.width/2-.75*n.width+e,name:"arrow_sme"},o&&{config:o}),northArrowSouthEast:(t,n)=>mb({top:r(t,n),left:t.left+t.width/2-n.width+e,name:"arrow_se"},o&&{config:o}),northEastArrowSouthWest:(t,n)=>mb({top:r(t,n),left:t.right-e,name:"arrow_sw"},o&&{config:o}),northEastArrowSouthMiddleWest:(t,n)=>mb({top:r(t,n),left:t.right-.25*n.width-e,name:"arrow_smw"},o&&{config:o}),northEastArrowSouth:(t,e)=>mb({top:r(t,e),left:t.right-e.width/2,name:"arrow_s"},o&&{config:o}),northEastArrowSouthMiddleEast:(t,n)=>mb({top:r(t,n),left:t.right-.75*n.width+e,name:"arrow_sme"},o&&{config:o}),northEastArrowSouthEast:(t,n)=>mb({top:r(t,n),left:t.right-n.width+e,name:"arrow_se"},o&&{config:o}),southWestArrowNorthWest:t=>mb({top:s(t),left:t.left-e,name:"arrow_nw"},o&&{config:o}),southWestArrowNorthMiddleWest:(t,n)=>mb({top:s(t),left:t.left-.25*n.width-e,name:"arrow_nmw"},o&&{config:o}),southWestArrowNorth:(t,e)=>mb({top:s(t),left:t.left-e.width/2,name:"arrow_n"},o&&{config:o}),southWestArrowNorthMiddleEast:(t,n)=>mb({top:s(t),left:t.left-.75*n.width+e,name:"arrow_nme"},o&&{config:o}),southWestArrowNorthEast:(t,n)=>mb({top:s(t),left:t.left-n.width+e,name:"arrow_ne"},o&&{config:o}),southArrowNorthWest:t=>mb({top:s(t),left:t.left+t.width/2-e,name:"arrow_nw"},o&&{config:o}),southArrowNorthMiddleWest:(t,n)=>mb({top:s(t),left:t.left+t.width/2-.25*n.width-e,name:"arrow_nmw"},o&&{config:o}),southArrowNorth:(t,e)=>mb({top:s(t),left:t.left+t.width/2-e.width/2,name:"arrow_n"},o&&{config:o}),southArrowNorthMiddleEast:(t,n)=>mb({top:s(t),left:t.left+t.width/2-.75*n.width+e,name:"arrow_nme"},o&&{config:o}),southArrowNorthEast:(t,n)=>mb({top:s(t),left:t.left+t.width/2-n.width+e,name:"arrow_ne"},o&&{config:o}),southEastArrowNorthWest:t=>mb({top:s(t),left:t.right-e,name:"arrow_nw"},o&&{config:o}),southEastArrowNorthMiddleWest:(t,n)=>mb({top:s(t),left:t.right-.25*n.width-e,name:"arrow_nmw"},o&&{config:o}),southEastArrowNorth:(t,e)=>mb({top:s(t),left:t.right-e.width/2,name:"arrow_n"},o&&{config:o}),southEastArrowNorthMiddleEast:(t,n)=>mb({top:s(t),left:t.right-.75*n.width+e,name:"arrow_nme"},o&&{config:o}),southEastArrowNorthEast:(t,n)=>mb({top:s(t),left:t.right-n.width+e,name:"arrow_ne"},o&&{config:o}),westArrowEast:(t,e)=>mb({top:t.top+t.height/2-e.height/2,left:t.left-e.width-n,name:"arrow_e"},o&&{config:o}),eastArrowWest:(t,e)=>mb({top:t.top+t.height/2-e.height/2,left:t.right+n,name:"arrow_w"},o&&{config:o}),viewportStickyNorth:(t,e,n,r)=>{const s=r||n;return t.getIntersection(s)?s.height-t.height>i?null:{top:s.top+i,left:t.left+t.width/2-e.width/2,name:"arrowless",config:mb({withArrow:!1},o)}:null}};function r(t,e){return t.top-e.height-n}function s(t){return t.bottom+n}}kb.arrowSideOffset=25,kb.arrowHeightOffset=10,kb.stickyVerticalOffset=20,kb._getOptimalPosition=Zi,kb.defaultPositions=_b();var Ab=n(9205),Cb={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Ab.A,Cb);Ab.A.locals;const vb="ck-tooltip",yb=class extends(Bi()){constructor(t){if(super(),this._currentElementWithTooltip=null,this._currentTooltipPosition=null,this._resizeObserver=null,this._mutationObserver=null,yb._editors.add(t),yb._instance)return yb._instance;yb._instance=this,this.tooltipTextView=new Jm(t.locale),this.tooltipTextView.set("text",""),this.tooltipTextView.setTemplate({tag:"span",attributes:{class:["ck","ck-tooltip__text"]},children:[{text:this.tooltipTextView.bindTemplate.to("text")}]}),this.balloonPanelView=new kb(t.locale),this.balloonPanelView.class=vb,this.balloonPanelView.content.add(this.tooltipTextView),this._mutationObserver=function(t){const e=new MutationObserver((()=>{t()}));return{attach(t){e.observe(t,{attributes:!0,attributeFilter:["data-cke-tooltip-text","data-cke-tooltip-position"]})},detach(){e.disconnect()}}}((()=>{this._updateTooltipPosition()})),this._pinTooltipDebounced=Wa(this._pinTooltip,600),this._unpinTooltipDebounced=Wa(this._unpinTooltip,400),this.listenTo(e.document,"keydown",this._onKeyDown.bind(this),{useCapture:!0}),this.listenTo(e.document,"mouseenter",this._onEnterOrFocus.bind(this),{useCapture:!0}),this.listenTo(e.document,"mouseleave",this._onLeaveOrBlur.bind(this),{useCapture:!0}),this.listenTo(e.document,"focus",this._onEnterOrFocus.bind(this),{useCapture:!0}),this.listenTo(e.document,"blur",this._onLeaveOrBlur.bind(this),{useCapture:!0}),this.listenTo(e.document,"scroll",this._onScroll.bind(this),{useCapture:!0}),this._watchdogExcluded=!0}destroy(t){const e=t.ui.view&&t.ui.view.body;yb._editors.delete(t),this.stopListening(t.ui),e&&e.has(this.balloonPanelView)&&e.remove(this.balloonPanelView),yb._editors.size||(this._unpinTooltip(),this.balloonPanelView.destroy(),this.stopListening(),yb._instance=null)}static getPositioningFunctions(t){const e=yb.defaultBalloonPositions;return{s:[e.southArrowNorth,e.southArrowNorthEast,e.southArrowNorthWest],n:[e.northArrowSouth],e:[e.eastArrowWest],w:[e.westArrowEast],sw:[e.southArrowNorthEast],se:[e.southArrowNorthWest]}[t]}_onKeyDown(t,e){"Escape"===e.key&&this._currentElementWithTooltip&&(this._unpinTooltip(),e.stopPropagation())}_onEnterOrFocus(t,{target:e}){const n=Eb(e);n?n!==this._currentElementWithTooltip&&(this._unpinTooltip(),this._pinTooltipDebounced(n,Db(n))):"focus"===t.name&&this._unpinTooltip()}_onLeaveOrBlur(t,{target:e,relatedTarget:n}){if("mouseleave"===t.name){if(!Ai(e))return;const t=this.balloonPanelView.element,i=t&&(t===n||t.contains(n)),o=!i&&e===t;if(i)return void this._unpinTooltipDebounced.cancel();if(!o&&this._currentElementWithTooltip&&e!==this._currentElementWithTooltip)return;const r=Eb(e),s=Eb(n);(o||r&&r!==s)&&this._unpinTooltipDebounced()}else{if(this._currentElementWithTooltip&&e!==this._currentElementWithTooltip)return;this._unpinTooltipDebounced()}}_onScroll(t,{target:e}){this._currentElementWithTooltip&&(e.contains(this.balloonPanelView.element)&&e.contains(this._currentElementWithTooltip)||this._unpinTooltip())}_pinTooltip(t,{text:e,position:n,cssClass:i}){this._unpinTooltip();const o=$o(yb._editors.values()).ui.view.body;o.has(this.balloonPanelView)||o.add(this.balloonPanelView),this.tooltipTextView.text=e,this.balloonPanelView.pin({target:t,positions:yb.getPositioningFunctions(n)}),this._resizeObserver=new ji(t,(()=>{Ki(t)||this._unpinTooltip()})),this._mutationObserver.attach(t),this.balloonPanelView.class=[vb,i].filter((t=>t)).join(" ");for(const t of yb._editors)this.listenTo(t.ui,"update",this._updateTooltipPosition.bind(this),{priority:"low"});this._currentElementWithTooltip=t,this._currentTooltipPosition=n}_unpinTooltip(){this._unpinTooltipDebounced.cancel(),this._pinTooltipDebounced.cancel(),this.balloonPanelView.unpin();for(const t of yb._editors)this.stopListening(t.ui,"update");this._currentElementWithTooltip=null,this._currentTooltipPosition=null,this.tooltipTextView.text="",this._resizeObserver&&this._resizeObserver.destroy(),this._mutationObserver.detach()}_updateTooltipPosition(){if(!this._currentElementWithTooltip)return;const t=Db(this._currentElementWithTooltip);Ki(this._currentElementWithTooltip)&&t.text?this.balloonPanelView.pin({target:this._currentElementWithTooltip,positions:yb.getPositioningFunctions(t.position)}):this._unpinTooltip()}};let xb=yb;function Eb(t){return Ai(t)?t.closest("[data-cke-tooltip-text]:not([data-cke-tooltip-disabled])"):null}function Db(t){return{text:t.dataset.ckeTooltipText,position:t.dataset.ckeTooltipPosition||"s",cssClass:t.dataset.ckeTooltipClass||""}}xb.defaultBalloonPositions=_b({heightOffset:5,sideOffset:13}),xb._editors=new Set,xb._instance=null;const Bb=function(t,e,n){var i=!0,o=!0;if("function"!=typeof t)throw new TypeError("Expected a function");return O(n)&&(i="leading"in n?!!n.leading:i,o="trailing"in n?!!n.trailing:o),Wa(t,e,{leading:i,maxWait:e,trailing:o})};var Sb=Object.defineProperty,Tb=Object.getOwnPropertySymbols,Ib=Object.prototype.hasOwnProperty,Pb=Object.prototype.propertyIsEnumerable,Rb=(t,e,n)=>e in t?Sb(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Vb=(t,e)=>{for(var n in e||(e={}))Ib.call(e,n)&&Rb(t,n,e[n]);if(Tb)for(var n of Tb(e))Pb.call(e,n)&&Rb(t,n,e[n]);return t};const Fb=50,Lb=350,Ob="Powered by";class zb extends(Bi()){constructor(t){super(),this.editor=t,this._balloonView=null,this._lastFocusedEditableElement=null,this._showBalloonThrottled=Bb(this._showBalloon.bind(this),50,{leading:!0}),t.on("ready",this._handleEditorReady.bind(this))}destroy(){const t=this._balloonView;t&&(t.unpin(),this._balloonView=null),this._showBalloonThrottled.cancel(),this.stopListening()}_handleEditorReady(){const t=this.editor;(!!t.config.get("ui.poweredBy.forceVisible")||"VALID"!==function(t){function e(t){return t.length>=40&&t.length<=255?"VALID":"INVALID"}if(!t)return"INVALID";let n="";try{n=atob(t)}catch(t){return"INVALID"}const i=n.split("-"),o=i[0],r=i[1];if(!r)return e(t);try{atob(r)}catch(n){try{if(atob(o),!atob(o).length)return e(t)}catch(n){return e(t)}}if(o.length<40||o.length>255)return"INVALID";let s="";try{atob(o),s=atob(r)}catch(t){return"INVALID"}if(8!==s.length)return"INVALID";const a=Number(s.substring(0,4)),c=Number(s.substring(4,6))-1,l=Number(s.substring(6,8)),d=new Date(a,c,l);return d{this._updateLastFocusedEditableElement(),n?this._showBalloon():this._hideBalloon()})),t.ui.focusTracker.on("change:focusedElement",((t,e,n)=>{this._updateLastFocusedEditableElement(),n&&this._showBalloon()})),t.ui.on("update",(()=>{this._showBalloonThrottled()})))}_createBalloonView(){const t=this.editor,e=this._balloonView=new kb,n=Hb(t),i=new Mb(t.locale,n.label);e.content.add(i),e.set({class:"ck-powered-by-balloon"}),t.ui.view.body.add(e),t.ui.focusTracker.add(e.element),this._balloonView=e}_showBalloon(){if(!this._lastFocusedEditableElement)return;const t=function(t,e){const n=Hb(t),i="right"===n.side?function(t,e){return Nb(t,e,((t,n)=>t.left+t.width-n.width-e.horizontalOffset))}(e,n):function(t,e){return Nb(t,e,(t=>t.left+e.horizontalOffset))}(e,n);return{target:e,positions:[i]}}(this.editor,this._lastFocusedEditableElement);t&&(this._balloonView||this._createBalloonView(),this._balloonView.pin(t))}_hideBalloon(){this._balloonView&&this._balloonView.unpin()}_updateLastFocusedEditableElement(){const t=this.editor,e=t.ui.focusTracker.isFocused,n=t.ui.focusTracker.focusedElement;if(!e||!n)return void(this._lastFocusedEditableElement=null);const i=Array.from(t.ui.getEditableElementsNames()).map((e=>t.ui.getEditableElement(e)));i.includes(n)?this._lastFocusedEditableElement=n:this._lastFocusedEditableElement=i[0]}}class Mb extends Jm{constructor(t,e){super(t);const n=new lg,i=this.bindTemplate;n.set({content:'\n',isColorInherited:!1}),n.extendTemplate({attributes:{style:{width:"53px",height:"10px"}}}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-powered-by"],"aria-hidden":!0},children:[{tag:"a",attributes:{href:"https://ckeditor.com/?utm_source=ckeditor&utm_medium=referral&utm_campaign=701Dn000000hVgmIAE_powered_by_ckeditor_logo",target:"_blank",tabindex:"-1"},children:[...e?[{tag:"span",attributes:{class:["ck","ck-powered-by__label"]},children:[e]}]:[],n],on:{dragstart:i.to((t=>t.preventDefault()))}}]})}}function Nb(t,e,n){return(i,o)=>{const r=new Li(t);if(r.width{for(const t of Object.values(Wb))this.announce("",t)}))}announce(t,e=Wb.POLITE){const n=this.editor;if(!n.ui.view)return;this.view||(this.view=new $b(n.locale),n.ui.view.body.add(this.view));const{politeness:i,isUnsafeHTML:o}="string"==typeof e?{politeness:e}:e;let r=this.view.regionViews.find((t=>t.politeness===i));r||(r=new Gb(n,i),this.view.regionViews.add(r)),r.announce({announcement:t,isUnsafeHTML:o})}}class $b extends Jm{constructor(t){super(t),this.regionViews=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-aria-live-announcer"]},children:this.regionViews})}}class Gb extends Jm{constructor(t,e){super(t.locale),this.setTemplate({tag:"div",attributes:{role:"region","aria-live":e,"aria-relevant":"additions"},children:[{tag:"ul",attributes:{class:["ck","ck-aria-live-region-list"]}}]}),t.on("destroy",(()=>{null!==this._pruneAnnouncementsInterval&&(clearInterval(this._pruneAnnouncementsInterval),this._pruneAnnouncementsInterval=null)})),this.politeness=e,this._domConverter=t.data.htmlProcessor.domConverter,this._pruneAnnouncementsInterval=setInterval((()=>{this.element&&this._listElement.firstChild&&this._listElement.firstChild.remove()}),5e3)}announce({announcement:t,isUnsafeHTML:e}){if(!t.trim().length)return;const n=document.createElement("li");e?this._domConverter.setContentOf(n,t):n.innerText=t,this._listElement.appendChild(n)}get _listElement(){return this.element.querySelector("ul")}}var Kb=Object.defineProperty,Jb=Object.getOwnPropertySymbols,Zb=Object.prototype.hasOwnProperty,Yb=Object.prototype.propertyIsEnumerable,Qb=(t,e,n)=>e in t?Kb(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class Xb extends(W()){constructor(t){super(),this.isReady=!1,this._editableElementsMap=new Map,this._focusableToolbarDefinitions=[];const e=t.editing.view;this.editor=t,this.componentFactory=new zf(t),this.focusTracker=new Go,this.tooltipManager=new xb(t),this.poweredBy=new zb(t),this.ariaLiveAnnouncer=new Ub(t),this.set("viewportOffset",this._readViewportOffsetFromConfig()),this.once("ready",(()=>{this.isReady=!0})),this.listenTo(e.document,"layoutChanged",this.update.bind(this)),this.listenTo(e,"scrollToTheSelection",this._handleScrollToTheSelection.bind(this)),this._initFocusTracking()}get element(){return null}update(){this.fire("update")}destroy(){this.stopListening(),this.focusTracker.destroy(),this.tooltipManager.destroy(this.editor),this.poweredBy.destroy();for(const t of this._editableElementsMap.values())t.ckeditorInstance=null,this.editor.keystrokes.stopListening(t);this._editableElementsMap=new Map,this._focusableToolbarDefinitions=[]}setEditableElement(t,e){this._editableElementsMap.set(t,e),e.ckeditorInstance||(e.ckeditorInstance=this.editor),this.focusTracker.add(e);const n=()=>{this.editor.editing.view.getDomRoot(t)||this.editor.keystrokes.listenTo(e)};this.isReady?n():this.once("ready",n)}removeEditableElement(t){const e=this._editableElementsMap.get(t);e&&(this._editableElementsMap.delete(t),this.editor.keystrokes.stopListening(e),this.focusTracker.remove(e),e.ckeditorInstance=null)}getEditableElement(t="main"){return this._editableElementsMap.get(t)}getEditableElementsNames(){return this._editableElementsMap.keys()}addToolbar(t,e={}){t.isRendered?(this.focusTracker.add(t.element),this.editor.keystrokes.listenTo(t.element)):t.once("render",(()=>{this.focusTracker.add(t.element),this.editor.keystrokes.listenTo(t.element)})),this._focusableToolbarDefinitions.push({toolbarView:t,options:e})}get _editableElements(){return console.warn("editor-ui-deprecated-editable-elements: The EditorUI#_editableElements property has been deprecated and will be removed in the near future.",{editorUI:this}),this._editableElementsMap}_readViewportOffsetFromConfig(){const t=this.editor,e=t.config.get("ui.viewportOffset");if(e)return e;const n=t.config.get("toolbar.viewportTopOffset");return n?(console.warn("editor-ui-deprecated-viewport-offset-config: The `toolbar.vieportTopOffset` configuration option is deprecated. It will be removed from future CKEditor versions. Use `ui.viewportOffset.top` instead."),{top:n}):{top:0}}_initFocusTracking(){const t=this.editor,e=t.editing.view;let n,i;t.keystrokes.set("Alt+F10",((t,o)=>{const r=this.focusTracker.focusedElement;Array.from(this._editableElementsMap.values()).includes(r)&&!Array.from(e.domRoots.values()).includes(r)&&(n=r);const s=this._getCurrentFocusedToolbarDefinition();s&&i||(i=this._getFocusableCandidateToolbarDefinitions());for(let t=0;t{const o=this._getCurrentFocusedToolbarDefinition();o&&(n?(n.focus(),n=null):t.editing.view.focus(),o.options.afterBlur&&o.options.afterBlur(),i())}))}_getFocusableCandidateToolbarDefinitions(){const t=[];for(const e of this._focusableToolbarDefinitions){const{toolbarView:n,options:i}=e;(Ki(n.element)||i.beforeFocus)&&t.push(e)}return t.sort(((t,e)=>tk(t)-tk(e))),t}_getCurrentFocusedToolbarDefinition(){for(const t of this._focusableToolbarDefinitions)if(t.toolbarView.element&&t.toolbarView.element.contains(this.focusTracker.focusedElement))return t;return null}_focusFocusableCandidateToolbar(t){const{toolbarView:e,options:{beforeFocus:n}}=t;return n&&n(),!!Ki(e.element)&&(e.focus(),!0)}_handleScrollToTheSelection(t,e){const n=((t,e)=>{for(var n in e||(e={}))Zb.call(e,n)&&Qb(t,n,e[n]);if(Jb)for(var n of Jb(e))Yb.call(e,n)&&Qb(t,n,e[n]);return t})({top:0,bottom:0,left:0,right:0},this.viewportOffset);e.viewportOffset.top+=n.top,e.viewportOffset.bottom+=n.bottom,e.viewportOffset.left+=n.left,e.viewportOffset.right+=n.right}}function tk(t){const{toolbarView:e,options:n}=t;let i=10;return Ki(e.element)&&i--,n.isContextual&&i--,i}var ek=n(1185),nk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(ek.A,nk);ek.A.locals;class ik extends Jm{constructor(t){super(t),this.body=new rg(t)}render(){super.render(),this.body.attachToDom()}destroy(){return this.body.detachFromDom(),super.destroy()}}class ok extends Jm{constructor(t,e,n){super(t),this.name=null,this.setTemplate({tag:"div",attributes:{class:["ck","ck-content","ck-editor__editable","ck-rounded-corners"],lang:t.contentLanguage,dir:t.contentLanguageDirection}}),this.set("isFocused",!1),this._editableElement=n,this._hasExternalElement=!!this._editableElement,this._editingView=e}render(){super.render(),this._hasExternalElement?this.template.apply(this.element=this._editableElement):this._editableElement=this.element,this.on("change:isFocused",(()=>this._updateIsFocusedClasses())),this._updateIsFocusedClasses()}destroy(){this._hasExternalElement&&this.template.revert(this._editableElement),super.destroy()}get hasExternalElement(){return this._hasExternalElement}_updateIsFocusedClasses(){const t=this._editingView;function e(e){t.change((n=>{const i=t.document.getRoot(e.name);n.addClass(e.isFocused?"ck-focused":"ck-blurred",i),n.removeClass(e.isFocused?"ck-blurred":"ck-focused",i)}))}t.isRenderingInProgress?function n(i){t.once("change:isRenderingInProgress",((t,o,r)=>{r?n(i):e(i)}))}(this):e(this)}}class rk extends ok{constructor(t,e,n,i={}){super(t,e,n);const o=t.t;this.extendTemplate({attributes:{role:"textbox",class:"ck-editor__editable_inline"}}),this._generateLabel=i.label||(()=>o("Editor editing area: %0",this.name))}render(){super.render();const t=this._editingView;t.change((e=>{const n=t.document.getRoot(this.name);e.setAttribute("aria-label",this._generateLabel(this),n)}))}}class sk extends hr{static get pluginName(){return"Notification"}init(){this.on("show:warning",((t,e)=>{window.alert(e.message)}),{priority:"lowest"})}showSuccess(t,e={}){this._showNotification({message:t,type:"success",namespace:e.namespace,title:e.title})}showInfo(t,e={}){this._showNotification({message:t,type:"info",namespace:e.namespace,title:e.title})}showWarning(t,e={}){this._showNotification({message:t,type:"warning",namespace:e.namespace,title:e.title})}_showNotification(t){const e=t.namespace?`show:${t.type}:${t.namespace}`:`show:${t.type}`;this.fire(e,{message:t.message,type:t.type,title:t.title||""})}}class ak extends(W()){constructor(t,e){super(),e&&Ba(this,e),t&&this.set(t)}}var ck=n(991),lk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(ck.A,lk);ck.A.locals;var dk=n(5380),hk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(dk.A,hk);dk.A.locals;const uk=Wi("px");class mk extends er{constructor(t){super(t),this._viewToStack=new Map,this._idToStack=new Map,this._view=null,this._rotatorView=null,this._fakePanelsView=null,this.positionLimiter=()=>{const t=this.editor.editing.view,e=t.document.selection.editableElement;return e?t.domConverter.mapViewToDom(e.root):null},this.set("visibleView",null),this.set("_numberOfStacks",0),this.set("_singleViewMode",!1)}static get pluginName(){return"ContextualBalloon"}destroy(){super.destroy(),this._view&&this._view.destroy(),this._rotatorView&&this._rotatorView.destroy(),this._fakePanelsView&&this._fakePanelsView.destroy()}get view(){return this._view||this._createPanelView(),this._view}hasView(t){return Array.from(this._viewToStack.keys()).includes(t)}add(t){if(this._view||this._createPanelView(),this.hasView(t.view))throw new w("contextualballoon-add-view-exist",[this,t]);const e=t.stackId||"main";if(!this._idToStack.has(e))return this._idToStack.set(e,new Map([[t.view,t]])),this._viewToStack.set(t.view,this._idToStack.get(e)),this._numberOfStacks=this._idToStack.size,void(this._visibleStack&&!t.singleViewMode||this.showStack(e));const n=this._idToStack.get(e);t.singleViewMode&&this.showStack(e),n.set(t.view,t),this._viewToStack.set(t.view,n),n===this._visibleStack&&this._showView(t)}remove(t){if(!this.hasView(t))throw new w("contextualballoon-remove-view-not-exist",[this,t]);const e=this._viewToStack.get(t);this._singleViewMode&&this.visibleView===t&&(this._singleViewMode=!1),this.visibleView===t&&(1===e.size?this._idToStack.size>1?this._showNextStack():(this.view.hide(),this.visibleView=null,this._rotatorView.hideView()):this._showView(Array.from(e.values())[e.size-2])),1===e.size?(this._idToStack.delete(this._getStackId(e)),this._numberOfStacks=this._idToStack.size):e.delete(t),this._viewToStack.delete(t)}updatePosition(t){t&&(this._visibleStack.get(this.visibleView).position=t),this.view.pin(this._getBalloonPosition()),this._fakePanelsView.updatePosition()}showStack(t){this.visibleStack=t;const e=this._idToStack.get(t);if(!e)throw new w("contextualballoon-showstack-stack-not-exist",this);this._visibleStack!==e&&this._showView(Array.from(e.values()).pop())}_createPanelView(){this._view=new kb(this.editor.locale),this.editor.ui.view.body.add(this._view),this.editor.ui.focusTracker.add(this._view.element),this._rotatorView=this._createRotatorView(),this._fakePanelsView=this._createFakePanelsView()}get _visibleStack(){return this._viewToStack.get(this.visibleView)}_getStackId(t){return Array.from(this._idToStack.entries()).find((e=>e[1]===t))[0]}_showNextStack(){const t=Array.from(this._idToStack.values());let e=t.indexOf(this._visibleStack)+1;t[e]||(e=0),this.showStack(this._getStackId(t[e]))}_showPrevStack(){const t=Array.from(this._idToStack.values());let e=t.indexOf(this._visibleStack)-1;t[e]||(e=t.length-1),this.showStack(this._getStackId(t[e]))}_createRotatorView(){const t=new gk(this.editor.locale),e=this.editor.locale.t;return this.view.content.add(t),t.bind("isNavigationVisible").to(this,"_numberOfStacks",this,"_singleViewMode",((t,e)=>!e&&t>1)),t.on("change:isNavigationVisible",(()=>this.updatePosition()),{priority:"low"}),t.bind("counter").to(this,"visibleView",this,"_numberOfStacks",((t,n)=>{if(n<2)return"";const i=Array.from(this._idToStack.values()).indexOf(this._visibleStack)+1;return e("%0 of %1",[i,n])})),t.buttonNextView.on("execute",(()=>{t.focusTracker.isFocused&&this.editor.editing.view.focus(),this._showNextStack()})),t.buttonPrevView.on("execute",(()=>{t.focusTracker.isFocused&&this.editor.editing.view.focus(),this._showPrevStack()})),t}_createFakePanelsView(){const t=new pk(this.editor.locale,this.view);return t.bind("numberOfPanels").to(this,"_numberOfStacks",this,"_singleViewMode",((t,e)=>!e&&t>=2?Math.min(t-1,2):0)),t.listenTo(this.view,"change:top",(()=>t.updatePosition())),t.listenTo(this.view,"change:left",(()=>t.updatePosition())),this.editor.ui.view.body.add(t),t}_showView({view:t,balloonClassName:e="",withArrow:n=!0,singleViewMode:i=!1}){this.view.class=e,this.view.withArrow=n,this._rotatorView.showView(t),this.visibleView=t,this.view.pin(this._getBalloonPosition()),this._fakePanelsView.updatePosition(),i&&(this._singleViewMode=!0)}_getBalloonPosition(){let t=Array.from(this._visibleStack.values()).pop().position;return t&&(t.limiter||(t=Object.assign({},t,{limiter:this.positionLimiter})),t=Object.assign({},t,{viewportOffsetConfig:this.editor.ui.viewportOffset})),t}}class gk extends Jm{constructor(t){super(t);const e=t.t,n=this.bindTemplate;this.set("isNavigationVisible",!0),this.focusTracker=new Go,this.buttonPrevView=this._createButtonView(e("Previous"),ym.previousArrow),this.buttonNextView=this._createButtonView(e("Next"),ym.nextArrow),this.content=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-balloon-rotator"],"z-index":"-1"},children:[{tag:"div",attributes:{class:["ck-balloon-rotator__navigation",n.to("isNavigationVisible",(t=>t?"":"ck-hidden"))]},children:[this.buttonPrevView,{tag:"span",attributes:{class:["ck-balloon-rotator__counter"]},children:[{text:n.to("counter")}]},this.buttonNextView]},{tag:"div",attributes:{class:"ck-balloon-rotator__content"},children:this.content}]})}render(){super.render(),this.focusTracker.add(this.element)}destroy(){super.destroy(),this.focusTracker.destroy()}showView(t){this.hideView(),this.content.add(t)}hideView(){this.content.clear()}_createButtonView(t,e){const n=new mg(this.locale);return n.set({label:t,icon:e,tooltip:!0}),n}}class pk extends Jm{constructor(t,e){super(t);const n=this.bindTemplate;this.set("top",0),this.set("left",0),this.set("height",0),this.set("width",0),this.set("numberOfPanels",0),this.content=this.createCollection(),this._balloonPanelView=e,this.setTemplate({tag:"div",attributes:{class:["ck-fake-panel",n.to("numberOfPanels",(t=>t?"":"ck-hidden"))],style:{top:n.to("top",uk),left:n.to("left",uk),width:n.to("width",uk),height:n.to("height",uk)}},children:this.content}),this.on("change:numberOfPanels",((t,e,n,i)=>{n>i?this._addPanels(n-i):this._removePanels(i-n),this.updatePosition()}))}_addPanels(t){for(;t--;){const t=new Jm;t.setTemplate({tag:"div"}),this.content.add(t),this.registerChild(t)}}_removePanels(t){for(;t--;){const t=this.content.last;this.content.remove(t),this.deregisterChild(t),t.destroy()}}updatePosition(){if(this.numberOfPanels){const{top:t,left:e}=this._balloonPanelView,{width:n,height:i}=new Li(this._balloonPanelView.element);Object.assign(this,{top:t,left:e,width:n,height:i})}}}var fk=n(8298),bk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(fk.A,bk);fk.A.locals,Wi("px");class kk extends zg{constructor(t,e){const n=t.t,i=Object.assign({},{showResetButton:!0,showIcon:!0,creator:zp},e);super(t,i.creator),this.label=e.label,this._viewConfig=i,this._viewConfig.showIcon&&(this.iconView=new lg,this.iconView.content=ym.loupe,this.fieldWrapperChildren.add(this.iconView,0),this.extendTemplate({attributes:{class:"ck-search__query_with-icon"}})),this._viewConfig.showResetButton&&(this.resetButtonView=new mg(t),this.resetButtonView.set({label:n("Clear"),icon:ym.cancel,class:"ck-search__reset",isVisible:!1,tooltip:!0}),this.resetButtonView.on("execute",(()=>{this.reset(),this.focus(),this.fire("reset")})),this.resetButtonView.bind("isVisible").to(this.fieldView,"isEmpty",(t=>!t)),this.fieldWrapperChildren.add(this.resetButtonView),this.extendTemplate({attributes:{class:"ck-search__query_with-reset"}}))}reset(){this.fieldView.reset(),this._viewConfig.showResetButton&&(this.resetButtonView.isVisible=!1)}}class wk extends Jm{constructor(){super();const t=this.bindTemplate;this.set({isVisible:!1,primaryText:"",secondaryText:""}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-search__info",t.if("isVisible","ck-hidden",(t=>!t))],tabindex:-1},children:[{tag:"span",children:[{text:[t.to("primaryText")]}]},{tag:"span",children:[{text:[t.to("secondaryText")]}]}]})}focus(){this.element.focus()}}class _k extends Jm{constructor(t){super(t),this.children=this.createCollection(),this.focusTracker=new Go,this.setTemplate({tag:"div",attributes:{class:["ck","ck-search__results"],tabindex:-1},children:this.children}),this._focusCycler=new Xg({focusables:this.children,focusTracker:this.focusTracker})}render(){super.render();for(const t of this.children)this.focusTracker.add(t.element)}focus(){this._focusCycler.focusFirst()}focusFirst(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}}var Ak=/[\\^$.*+?()[\]{}|]/g,Ck=RegExp(Ak.source);const vk=function(t){return(t=Jr(t))&&Ck.test(t)?t.replace(Ak,"\\$&"):t};var yk=n(8107),xk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(yk.A,xk);yk.A.locals;var Ek=Object.defineProperty,Dk=Object.getOwnPropertySymbols,Bk=Object.prototype.hasOwnProperty,Sk=Object.prototype.propertyIsEnumerable,Tk=(t,e,n)=>e in t?Ek(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class Ik extends Jm{constructor(t,e){super(t),this._config=e,this.filteredView=e.filteredView,this.queryView=this._createSearchTextQueryView(),this.focusTracker=new Go,this.keystrokes=new Ko,this.resultsView=new _k(t),this.children=this.createCollection(),this.focusableChildren=this.createCollection([this.queryView,this.resultsView]),this.set("isEnabled",!0),this.set("resultsCount",0),this.set("totalItemsCount",0),e.infoView&&e.infoView.instance?this.infoView=e.infoView.instance:(this.infoView=new wk,this._enableDefaultInfoViewBehavior(),this.on("render",(()=>{this.search("")}))),this.resultsView.children.addMany([this.infoView,this.filteredView]),this.focusCycler=new Xg({focusables:this.focusableChildren,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.on("search",((t,{resultsCount:e,totalItemsCount:n})=>{this.resultsCount=e,this.totalItemsCount=n})),this.setTemplate({tag:"div",attributes:{class:["ck","ck-search",e.class||null],tabindex:"-1"},children:this.children})}render(){super.render(),this.children.addMany([this.queryView,this.resultsView]);const t=t=>t.stopPropagation();for(const t of this.focusableChildren)this.focusTracker.add(t.element);this.keystrokes.listenTo(this.element),this.keystrokes.set("arrowright",t),this.keystrokes.set("arrowleft",t),this.keystrokes.set("arrowup",t),this.keystrokes.set("arrowdown",t)}focus(){this.queryView.focus()}reset(){this.queryView.reset(),this.search("")}search(t){const e=t?new RegExp(vk(t),"ig"):null,n=this.filteredView.filter(e);this.fire("search",((t,e)=>{for(var n in e||(e={}))Bk.call(e,n)&&Tk(t,n,e[n]);if(Dk)for(var n of Dk(e))Sk.call(e,n)&&Tk(t,n,e[n]);return t})({query:t},n))}_createSearchTextQueryView(){const t=new kk(this.locale,this._config.queryView);return this.listenTo(t.fieldView,"input",(()=>{this.search(t.fieldView.element.value)})),t.on("reset",(()=>this.reset())),t.bind("isEnabled").to(this),t}_enableDefaultInfoViewBehavior(){const t=this.locale.t,e=this.infoView;function n(t,{query:e,resultsCount:n,totalItemsCount:i}){return"function"==typeof t?t(e,n,i):t}this.on("search",((i,o)=>{if(o.resultsCount)e.set({isVisible:!1});else{const i=this._config.infoView&&this._config.infoView.text;let r,s;o.totalItemsCount?i&&i.notFound?(r=i.notFound.primary,s=i.notFound.secondary):(r=t("No results found"),s=""):i&&i.noSearchableItems?(r=i.noSearchableItems.primary,s=i.noSearchableItems.secondary):(r=t("No searchable items"),s=""),e.set({primaryText:n(r,o),secondaryText:n(s,o),isVisible:!0})}}))}}var Pk=n(5727),Rk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Pk.A,Rk);Pk.A.locals;const Vk=class extends Ik{constructor(t,n){super(t,n),this._config=n;const i=Wi("px");this.extendTemplate({attributes:{class:["ck-autocomplete"]}});const o=this.resultsView.bindTemplate;this.resultsView.set("isVisible",!1),this.resultsView.set("_position","s"),this.resultsView.set("_width",0),this.resultsView.extendTemplate({attributes:{class:[o.if("isVisible","ck-hidden",(t=>!t)),o.to("_position",(t=>`ck-search__results_${t}`))],style:{width:o.to("_width",i)}}}),this.focusTracker.on("change:isFocused",((t,e,i)=>{this._updateResultsVisibility(),i?this.resultsView.element.scrollTop=0:n.resetOnBlur&&this.queryView.reset()})),this.on("search",(()=>{this._updateResultsVisibility(),this._updateResultsViewWidthAndPosition()})),this.keystrokes.set("esc",((t,e)=>{this.resultsView.isVisible&&(this.queryView.focus(),this.resultsView.isVisible=!1,e())})),this.listenTo(e.document,"scroll",(()=>{this._updateResultsViewWidthAndPosition()})),this.on("change:isEnabled",(()=>{this._updateResultsVisibility()})),this.filteredView.on("execute",((t,{value:e})=>{this.focus(),this.reset(),this.queryView.fieldView.value=this.queryView.fieldView.element.value=e,this.resultsView.isVisible=!1})),this.resultsView.on("change:isVisible",(()=>{this._updateResultsViewWidthAndPosition()}))}_updateResultsViewWidthAndPosition(){if(!this.resultsView.isVisible)return;this.resultsView._width=new Li(this.queryView.fieldView.element).width;const t=Vk._getOptimalPosition({element:this.resultsView.element,target:this.queryView.element,fitInViewport:!0,positions:Vk.defaultResultsPositions});this.resultsView._position=t?t.name:"s"}_updateResultsVisibility(){const t=void 0===this._config.queryMinChars?0:this._config.queryMinChars,e=this.queryView.fieldView.element.value.length;this.resultsView.isVisible=this.focusTracker.isFocused&&this.isEnabled&&e>=t}};let Fk=Vk;Fk.defaultResultsPositions=[t=>({top:t.bottom,left:t.left,name:"s"}),(t,e)=>({top:t.top-e.height,left:t.left,name:"n"})],Fk._getOptimalPosition=Zi;Lk={"&":"&","<":"<",">":">",'"':""","'":"'"};var Lk;var Ok=/[&<>"']/g;RegExp(Ok.source);var zk=n(9529),Mk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(zk.A,Mk);zk.A.locals;var Nk=n(109),Hk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Nk.A,Hk);Nk.A.locals;const jk=Wi("px");class qk extends er{constructor(t){super(t),this._resizeObserver=null,this._balloonConfig=dp(t.config.get("balloonToolbar")),this.toolbarView=this._createToolbarView(),this.focusTracker=new Go,t.ui.once("ready",(()=>{this.focusTracker.add(t.ui.getEditableElement()),this.focusTracker.add(this.toolbarView.element)})),t.ui.addToolbar(this.toolbarView,{beforeFocus:()=>this.show(!0),afterBlur:()=>this.hide(),isContextual:!0}),this._balloon=t.plugins.get(mk),this._fireSelectionChangeDebounced=Wa((()=>this.fire("_selectionChangeDebounced")),200),this.decorate("show")}static get pluginName(){return"BalloonToolbar"}static get requires(){return[mk]}init(){const t=this.editor,e=t.model.document.selection;this.listenTo(this.focusTracker,"change:isFocused",((t,e,n)=>{const i=this._balloon.visibleView===this.toolbarView;!n&&i?this.hide():n&&this.show()})),this.listenTo(e,"change:range",((t,n)=>{(n.directChange||e.isCollapsed)&&this.hide(),this._fireSelectionChangeDebounced()})),this.listenTo(this,"_selectionChangeDebounced",(()=>{this.editor.editing.view.document.isFocused&&this.show()})),this._balloonConfig.shouldNotGroupWhenFull||this.listenTo(t,"ready",(()=>{const e=t.ui.view.editable.element;this._resizeObserver=new ji(e,(t=>{this.toolbarView.maxWidth=jk(.9*t.contentRect.width)}))})),this.listenTo(this.toolbarView,"groupedItemsUpdate",(()=>{this._updatePosition()})),t.ui.once("ready",(()=>{this.toolbarView.fillFromConfig(this._balloonConfig,this.editor.ui.componentFactory)}))}_createToolbarView(){const t=this.editor.locale.t,e=!this._balloonConfig.shouldNotGroupWhenFull,n=new gp(this.editor.locale,{shouldGroupWhenFull:e,isFloating:!0});return n.ariaLabel=t("Editor contextual toolbar"),n.render(),n}show(t=!1){const e=this.editor,n=e.model.document.selection,i=e.model.schema;this._balloon.hasView(this.toolbarView)||n.isCollapsed&&!t||function(t,e){if(1===t.rangeCount)return!1;return[...t.getRanges()].every((t=>{const n=t.getContainedElement();return n&&e.isSelectable(n)}))}(n,i)||Array.from(this.toolbarView.items).every((t=>void 0!==t.isEnabled&&!t.isEnabled))||(this.listenTo(this.editor.ui,"update",(()=>{this._updatePosition()})),this._balloon.add({view:this.toolbarView,position:this._getBalloonPositionData(),balloonClassName:"ck-toolbar-container"}))}hide(){this._balloon.hasView(this.toolbarView)&&(this.stopListening(this.editor.ui,"update"),this._balloon.remove(this.toolbarView))}_getBalloonPositionData(){const t=this.editor.editing.view,e=t.document,n=e.selection,i=e.selection.isBackward;return{target:()=>{const e=i?n.getFirstRange():n.getLastRange(),o=Li.getDomRangeRects(t.domConverter.viewRangeToDom(e));return i?o[0]:(o.length>1&&0===o[o.length-1].width&&o.pop(),o[o.length-1])},positions:this._getBalloonPositions(i)}}_updatePosition(){this._balloon.updatePosition(this._getBalloonPositionData())}destroy(){super.destroy(),this.stopListening(),this._fireSelectionChangeDebounced.cancel(),this.toolbarView.destroy(),this.focusTracker.destroy(),this._resizeObserver&&this._resizeObserver.destroy()}_getBalloonPositions(t){const n=s.isSafari&&s.isiOS?_b({heightOffset:Math.max(kb.arrowHeightOffset,Math.round(20/e.window.visualViewport.scale))}):kb.defaultPositions;return t?[n.northWestArrowSouth,n.northWestArrowSouthWest,n.northWestArrowSouthEast,n.northWestArrowSouthMiddleEast,n.northWestArrowSouthMiddleWest,n.southWestArrowNorth,n.southWestArrowNorthWest,n.southWestArrowNorthEast,n.southWestArrowNorthMiddleWest,n.southWestArrowNorthMiddleEast]:[n.southEastArrowNorth,n.southEastArrowNorthEast,n.southEastArrowNorthWest,n.southEastArrowNorthMiddleEast,n.southEastArrowNorthMiddleWest,n.northEastArrowSouth,n.northEastArrowSouthEast,n.northEastArrowSouthWest,n.northEastArrowSouthMiddleEast,n.northEastArrowSouthMiddleWest]}}var Wk=n(2710),Uk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Wk.A,Uk);Wk.A.locals;const $k=Wi("px");class Gk extends mg{constructor(t){super(t);const e=this.bindTemplate;this.isVisible=!1,this.isToggleable=!0,this.set("top",0),this.set("left",0),this.extendTemplate({attributes:{class:"ck-block-toolbar-button",style:{top:e.to("top",(t=>$k(t))),left:e.to("left",(t=>$k(t)))}}})}}const Kk=Wi("px");var Jk=n(3344),Zk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Jk.A,Zk);Jk.A.locals;class Yk extends mg{constructor(t){super(t);const e=this.bindTemplate;this.set({withText:!0,role:"menuitem"}),this.arrowView=this._createArrowView(),this.extendTemplate({attributes:{class:["ck-menu-bar__menu__button"],"aria-haspopup":!0,"aria-expanded":this.bindTemplate.to("isOn",(t=>String(t))),"data-cke-tooltip-disabled":e.to("isOn")},on:{mouseenter:e.to("mouseenter")}})}render(){super.render(),this.children.add(this.arrowView)}_createArrowView(){const t=new lg;return t.content=wg,t.extendTemplate({attributes:{class:"ck-menu-bar__menu__button__arrow"}}),t}}var Qk=n(9481),Xk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Qk.A,Xk);Qk.A.locals;class tw extends kp{constructor(t,e){super(t);const n=this.bindTemplate;this.extendTemplate({attributes:{class:["ck-menu-bar__menu__item"]},on:{mouseenter:n.to("mouseenter")}}),this.delegate("mouseenter").to(e)}}Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;const ew={openAndFocusPanelOnArrowDownKey(t){t.keystrokes.set("arrowdown",((e,n)=>{t.focusTracker.focusedElement===t.buttonView.element&&(t.isOpen||(t.isOpen=!0),t.panelView.focus(),n())}))},openOnArrowRightKey(t){const e="rtl"===t.locale.uiLanguageDirection?"arrowleft":"arrowright";t.keystrokes.set(e,((e,n)=>{t.focusTracker.focusedElement===t.buttonView.element&&t.isEnabled&&(t.isOpen||(t.isOpen=!0),t.panelView.focus(),n())}))},openOnButtonClick(t){t.buttonView.on("execute",(()=>{t.isOpen=!0,t.panelView.focus()}))},toggleOnButtonClick(t){t.buttonView.on("execute",(()=>{t.isOpen=!t.isOpen,t.isOpen&&t.panelView.focus()}))},closeOnArrowLeftKey(t){const e="rtl"===t.locale.uiLanguageDirection?"arrowright":"arrowleft";t.keystrokes.set(e,((e,n)=>{t.isOpen&&(t.isOpen=!1,t.focus(),n())}))},closeOnEscKey(t){t.keystrokes.set("esc",((e,n)=>{t.isOpen&&(t.isOpen=!1,t.focus(),n())}))},closeOnParentClose(t){t.parentMenuView.on("change:isOpen",((e,n,i)=>{i||e.source!==t.parentMenuView||(t.isOpen=!1)}))}},nw={southEast:t=>({top:t.bottom,left:t.left,name:"se"}),southWest:(t,e)=>({top:t.bottom,left:t.left-e.width+t.width,name:"sw"}),northEast:(t,e)=>({top:t.top-e.height,left:t.left,name:"ne"}),northWest:(t,e)=>({top:t.top-e.height,left:t.left-e.width+t.width,name:"nw"}),eastSouth:t=>({top:t.top,left:t.right-5,name:"es"}),eastNorth:(t,e)=>({top:t.top-e.height,left:t.right-5,name:"en"}),westSouth:(t,e)=>({top:t.top,left:t.left-e.width+5,name:"ws"}),westNorth:(t,e)=>({top:t.top-e.height,left:t.left-e.width+5,name:"wn"})};var iw=n(9108),ow={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(iw.A,ow);iw.A.locals;class rw extends Jm{constructor(t){super(t);const e=this.bindTemplate;this.set("isVisible",!1),this.set("position","se"),this.children=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-reset","ck-menu-bar__menu__panel",e.to("position",(t=>`ck-menu-bar__menu__panel_position_${t}`)),e.if("isVisible","ck-hidden",(t=>!t))],tabindex:"-1"},children:this.children,on:{selectstart:e.to((t=>{"input"!==t.target.tagName.toLocaleLowerCase()&&t.preventDefault()}))}})}focus(t=1){this.children.length&&(1===t?this.children.first.focus():this.children.last.focus())}}var sw=n(4),aw={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(sw.A,aw);sw.A.locals;const cw=class extends Jm{constructor(t){super(t);const e=this.bindTemplate;this.buttonView=new Yk(t),this.buttonView.delegate("mouseenter").to(this),this.buttonView.bind("isOn","isEnabled").to(this,"isOpen","isEnabled"),this.panelView=new rw(t),this.panelView.bind("isVisible").to(this,"isOpen"),this.keystrokes=new Ko,this.focusTracker=new Go,this.set("isOpen",!1),this.set("isEnabled",!0),this.set("panelPosition","w"),this.set("class",void 0),this.set("parentMenuView",null),this.setTemplate({tag:"div",attributes:{class:["ck","ck-menu-bar__menu",e.to("class"),e.if("isEnabled","ck-disabled",(t=>!t)),e.if("parentMenuView","ck-menu-bar__menu_top-level",(t=>!t))]},children:[this.buttonView,this.panelView]})}render(){super.render(),this.focusTracker.add(this.buttonView.element),this.focusTracker.add(this.panelView.element),this.keystrokes.listenTo(this.element),ew.closeOnEscKey(this),this._repositionPanelOnOpen()}_attachBehaviors(){this.parentMenuView?(ew.openOnButtonClick(this),ew.openOnArrowRightKey(this),ew.closeOnArrowLeftKey(this),ew.closeOnParentClose(this)):(this._propagateArrowKeystrokeEvents(),ew.openAndFocusPanelOnArrowDownKey(this),ew.toggleOnButtonClick(this))}_propagateArrowKeystrokeEvents(){this.keystrokes.set("arrowright",((t,e)=>{this.fire("arrowright"),e()})),this.keystrokes.set("arrowleft",((t,e)=>{this.fire("arrowleft"),e()}))}_repositionPanelOnOpen(){this.on("change:isOpen",((t,e,n)=>{if(!n)return;const i=cw._getOptimalPosition({element:this.panelView.element,target:this.buttonView.element,fitInViewport:!0,positions:this._panelPositions});this.panelView.position=i?i.name:this._panelPositions[0].name}))}focus(){this.buttonView.focus()}get _panelPositions(){const{southEast:t,southWest:e,northEast:n,northWest:i,westSouth:o,eastSouth:r,westNorth:s,eastNorth:a}=nw;return"ltr"===this.locale.uiLanguageDirection?this.parentMenuView?[r,a,o,s]:[t,e,n,i]:this.parentMenuView?[o,s,r,a]:[e,t,i,n]}};let lw=cw;lw._getOptimalPosition=Zi;class dw extends vp{constructor(t){super(t),this.role="menu"}}var hw=n(977),uw={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(hw.A,uw);hw.A.locals;class mw extends mg{constructor(t){super(t),this.set({withText:!0,withKeystroke:!0,tooltip:!1,role:"menuitem"}),this.extendTemplate({attributes:{class:["ck-menu-bar__menu__item__button"]}})}}class gw extends bg{constructor(t){super(t),this.set({withText:!0,withKeystroke:!0,tooltip:!1,role:"menuitem"}),this.extendTemplate({attributes:{class:["ck-menu-bar__menu__item__button"]}})}}var pw=n(497),fw={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(pw.A,fw);pw.A.locals;class bw{constructor(t){if(this.crashes=[],this.state="initializing",this._now=Date.now,this.crashes=[],this._crashNumberLimit="number"==typeof t.crashNumberLimit?t.crashNumberLimit:3,this._minimumNonErrorTimePeriod="number"==typeof t.minimumNonErrorTimePeriod?t.minimumNonErrorTimePeriod:5e3,this._boundErrorHandler=t=>{const e="error"in t?t.error:t.reason;e instanceof Error&&this._handleError(e,t)},this._listeners={},!this._restart)throw new Error("The Watchdog class was split into the abstract `Watchdog` class and the `EditorWatchdog` class. Please, use `EditorWatchdog` if you have used the `Watchdog` class previously.")}destroy(){this._stopErrorHandling(),this._listeners={}}on(t,e){this._listeners[t]||(this._listeners[t]=[]),this._listeners[t].push(e)}off(t,e){this._listeners[t]=this._listeners[t].filter((t=>t!==e))}_fire(t,...e){const n=this._listeners[t]||[];for(const t of n)t.apply(this,[null,...e])}_startErrorHandling(){window.addEventListener("error",this._boundErrorHandler),window.addEventListener("unhandledrejection",this._boundErrorHandler)}_stopErrorHandling(){window.removeEventListener("error",this._boundErrorHandler),window.removeEventListener("unhandledrejection",this._boundErrorHandler)}_handleError(t,e){if(this._shouldReactToError(t)){this.crashes.push({message:t.message,stack:t.stack,filename:e instanceof ErrorEvent?e.filename:void 0,lineno:e instanceof ErrorEvent?e.lineno:void 0,colno:e instanceof ErrorEvent?e.colno:void 0,date:this._now()});const n=this._shouldRestart();this.state="crashed",this._fire("stateChange"),this._fire("error",{error:t,causesRestart:n}),n?this._restart():(this.state="crashedPermanently",this._fire("stateChange"))}}_shouldReactToError(t){return t.is&&t.is("CKEditorError")&&void 0!==t.context&&null!==t.context&&"ready"===this.state&&this._isErrorComingFromThisItem(t)}_shouldRestart(){if(this.crashes.length<=this._crashNumberLimit)return!0;return(this.crashes[this.crashes.length-1].date-this.crashes[this.crashes.length-1-this._crashNumberLimit].date)/this._crashNumberLimit>this._minimumNonErrorTimePeriod}}function kw(t,e=new Set){const n=[t],i=new Set;let o=0;for(;n.length>o;){const t=n[o++];if(!i.has(t)&&ww(t)&&!e.has(t))if(i.add(t),Symbol.iterator in t)try{for(const e of t)n.push(e)}catch(t){}else for(const e in t)"defaultValue"!==e&&n.push(t[e])}return i}function ww(t){const e=Object.prototype.toString.call(t),n=typeof t;return!("number"===n||"boolean"===n||"string"===n||"symbol"===n||"function"===n||"[object Date]"===e||"[object RegExp]"===e||"[object Module]"===e||null==t||t._watchdogExcluded||t instanceof EventTarget||t instanceof Event)}function _w(t,e,n=new Set){if(t===e&&("object"==typeof(i=t)&&null!==i))return!0;var i;const o=kw(t,n),r=kw(e,n);for(const t of o)if(r.has(t))return!0;return!1}var Aw=Object.defineProperty,Cw=Object.defineProperties,vw=Object.getOwnPropertyDescriptors,yw=Object.getOwnPropertySymbols,xw=Object.prototype.hasOwnProperty,Ew=Object.prototype.propertyIsEnumerable,Dw=(t,e,n)=>e in t?Aw(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Bw=(t,e)=>{for(var n in e||(e={}))xw.call(e,n)&&Dw(t,n,e[n]);if(yw)for(var n of yw(e))Ew.call(e,n)&&Dw(t,n,e[n]);return t};class Sw extends bw{constructor(t,e={}){super(e),this._editor=null,this._lifecyclePromise=null,this._initUsingData=!0,this._editables={},this._throttledSave=Bb(this._save.bind(this),"number"==typeof e.saveInterval?e.saveInterval:5e3),t&&(this._creator=(e,n)=>t.create(e,n)),this._destructor=t=>t.destroy()}get editor(){return this._editor}get _item(){return this._editor}setCreator(t){this._creator=t}setDestructor(t){this._destructor=t}_restart(){return Promise.resolve().then((()=>(this.state="initializing",this._fire("stateChange"),this._destroy()))).catch((t=>{console.error("An error happened during the editor destroying.",t)})).then((()=>{const t={},e=[],n=this._config.rootsAttributes||{},i={};for(const[o,r]of Object.entries(this._data.roots))r.isLoaded?(t[o]="",i[o]=n[o]||{}):e.push(o);const o=(r=Bw({},this._config),s={extraPlugins:this._config.extraPlugins||[],lazyRoots:e,rootsAttributes:i,_watchdogInitialData:this._data},Cw(r,vw(s)));var r,s;return delete o.initialData,o.extraPlugins.push(Tw),this._initUsingData?this.create(t,o,o.context):Ai(this._elementOrData)?this.create(this._elementOrData,o,o.context):this.create(this._editables,o,o.context)})).then((()=>{this._fire("restart")}))}create(t=this._elementOrData,e=this._config,n){return this._lifecyclePromise=Promise.resolve(this._lifecyclePromise).then((()=>(super._startErrorHandling(),this._elementOrData=t,this._initUsingData="string"==typeof t||Object.keys(t).length>0&&"string"==typeof Object.values(t)[0],this._config=this._cloneEditorConfiguration(e)||{},this._config.context=n,this._creator(t,this._config)))).then((t=>{this._editor=t,t.model.document.on("change:data",this._throttledSave),this._lastDocumentVersion=t.model.document.version,this._data=this._getData(),this._initUsingData||(this._editables=this._getEditables()),this.state="ready",this._fire("stateChange")})).finally((()=>{this._lifecyclePromise=null})),this._lifecyclePromise}destroy(){return this._lifecyclePromise=Promise.resolve(this._lifecyclePromise).then((()=>(this.state="destroyed",this._fire("stateChange"),super.destroy(),this._destroy()))).finally((()=>{this._lifecyclePromise=null})),this._lifecyclePromise}_destroy(){return Promise.resolve().then((()=>{this._stopErrorHandling(),this._throttledSave.cancel();const t=this._editor;return this._editor=null,t.model.document.off("change:data",this._throttledSave),this._destructor(t)}))}_save(){const t=this._editor.model.document.version;try{this._data=this._getData(),this._initUsingData||(this._editables=this._getEditables()),this._lastDocumentVersion=t}catch(t){console.error(t,"An error happened during restoring editor data. Editor will be restored from the previously saved data.")}}_setExcludedProperties(t){this._excludedProps=t}_getData(){const t=this._editor,e=t.model.document.roots.filter((t=>t.isAttached()&&"$graveyard"!=t.rootName)),{plugins:n}=t,i=n.has("CommentsRepository")&&n.get("CommentsRepository"),o=n.has("TrackChanges")&&n.get("TrackChanges"),r={roots:{},markers:{},commentThreads:JSON.stringify([]),suggestions:JSON.stringify([])};e.forEach((t=>{r.roots[t.rootName]={content:JSON.stringify(Array.from(t.getChildren())),attributes:JSON.stringify(Array.from(t.getAttributes())),isLoaded:t._isLoaded}}));for(const e of t.model.markers)e._affectsData&&(r.markers[e.name]={rangeJSON:e.getRange().toJSON(),usingOperation:e._managedUsingOperations,affectsData:e._affectsData});return i&&(r.commentThreads=JSON.stringify(i.getCommentThreads({toJSON:!0,skipNotAttached:!0}))),o&&(r.suggestions=JSON.stringify(o.getSuggestions({toJSON:!0,skipNotAttached:!0}))),r}_getEditables(){const t={};for(const e of this.editor.model.document.getRootNames()){const n=this.editor.ui.getEditableElement(e);n&&(t[e]=n)}return t}_isErrorComingFromThisItem(t){return _w(this._editor,t.context,this._excludedProps)}_cloneEditorConfiguration(t){return _i(t,((t,e)=>Ai(t)||"context"===e?t:void 0))}}class Tw{constructor(t){this.editor=t,this._data=t.config.get("_watchdogInitialData")}init(){this.editor.data.on("init",(t=>{t.stop(),this.editor.model.enqueueChange({isUndoable:!1},(t=>{this._restoreCollaborationData(),this._restoreEditorData(t)})),this.editor.data.fire("ready")}),{priority:999})}_createNode(t,e){if("name"in e){const n=t.createElement(e.name,e.attributes);if(e.children)for(const i of e.children)n._appendChild(this._createNode(t,i));return n}return t.createText(e.data,e.attributes)}_restoreEditorData(t){const e=this.editor;Object.entries(this._data.roots).forEach((([n,{content:i,attributes:o}])=>{const r=JSON.parse(i),s=JSON.parse(o),a=e.model.document.getRoot(n);for(const[e,n]of s)t.setAttribute(e,n,a);for(const e of r){const n=this._createNode(t,e);t.insert(n,a,"end")}})),Object.entries(this._data.markers).forEach((([n,i])=>{const{document:o}=e.model,r=i,{rangeJSON:{start:s,end:a}}=r,c=((t,e)=>{var n={};for(var i in t)xw.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(null!=t&&yw)for(var i of yw(t))e.indexOf(i)<0&&Ew.call(t,i)&&(n[i]=t[i]);return n})(r,["rangeJSON"]),l=o.getRoot(s.root),d=t.createPositionFromPath(l,s.path,s.stickiness),h=t.createPositionFromPath(l,a.path,a.stickiness),u=t.createRange(d,h);t.addMarker(n,Bw({range:u},c))}))}_restoreCollaborationData(){const t=JSON.parse(this._data.commentThreads),e=JSON.parse(this._data.suggestions);t.forEach((t=>{const e=this.editor.config.get("collaboration.channelId"),n=this.editor.plugins.get("CommentsRepository");if(n.hasCommentThread(t.threadId)){n.getCommentThread(t.threadId).remove()}n.addCommentThread(Bw({channelId:e},t))})),e.forEach((t=>{const e=this.editor.plugins.get("TrackChangesEditing");if(e.hasSuggestion(t.id)){e.getSuggestion(t.id).attributes=t.attributes}else e.addSuggestionData(t)}))}}const Iw=Symbol("MainQueueId");class Pw{constructor(){this._onEmptyCallbacks=[],this._queues=new Map,this._activeActions=0}onEmpty(t){this._onEmptyCallbacks.push(t)}enqueue(t,e){const n=t===Iw;this._activeActions++,this._queues.get(t)||this._queues.set(t,Promise.resolve());const i=(n?Promise.all(this._queues.values()):Promise.all([this._queues.get(Iw),this._queues.get(t)])).then(e),o=i.catch((()=>{}));return this._queues.set(t,o),i.finally((()=>{this._activeActions--,this._queues.get(t)===o&&0===this._activeActions&&this._onEmptyCallbacks.forEach((t=>t()))}))}}function Rw(t){return Array.isArray(t)?t:[t]}class Vw extends Xb{constructor(t,e){super(t),this.view=e}get element(){return this.view.editable.element}init(){const t=this.editor,e=this.view,n=t.editing.view,i=e.editable,o=n.document.getRoot();i.name=o.rootName,e.render();const r=i.element;this.setEditableElement(i.name,r),i.bind("isFocused").to(this.focusTracker),n.attachDomRoot(r),this._initPlaceholder(),this.fire("ready")}destroy(){super.destroy();const t=this.view;this.editor.editing.view.detachDomRoot(t.editable.name),t.destroy()}_initPlaceholder(){const t=this.editor,e=t.editing.view,n=e.document.getRoot(),i=t.config.get("placeholder");if(i){const t="string"==typeof i?i:i[n.rootName];t&&(n.placeholder=t)}wr({view:e,element:n,isDirectHost:!1,keepOnFocus:!0})}}class Fw extends ik{constructor(t,e,n){super(t);const i=t.t;this.editable=new rk(t,e,n,{label:t=>i("Rich Text Editor. Editing area: %0",t.name)})}render(){super.render(),this.registerChild(this.editable)}}class Lw extends(Cm(Am)){constructor(t,e={}){if(!Ow(t)&&void 0!==e.initialData)throw new w("editor-create-initial-data",null);super(e),void 0===this.config.get("initialData")&&this.config.set("initialData",function(t){return Ow(t)?(e=t,e instanceof HTMLTextAreaElement?e.value:e.innerHTML):t;var e}(t)),Ow(t)&&(this.sourceElement=t,function(t,e){if(e.ckeditorInstance)throw new w("editor-source-element-already-used",t);e.ckeditorInstance=t,t.once("destroy",(()=>{delete e.ckeditorInstance}))}(this,t));const n=this.config.get("plugins");n.push(qk),this.config.set("plugins",n),this.config.define("balloonToolbar",this.config.get("toolbar")),this.model.document.createRoot();const i=new Fw(this.locale,this.editing.view,this.sourceElement);this.ui=new Vw(this,i),function(t){if(!Mt(t.updateSourceElement))throw new w("attachtoform-missing-elementapi-interface",t);const e=t.sourceElement;if(function(t){return!!t&&"textarea"===t.tagName.toLowerCase()}(e)&&e.form){let n;const i=e.form,o=()=>t.updateSourceElement();Mt(i.submit)&&(n=i.submit,i.submit=()=>{o(),n.apply(i)}),i.addEventListener("submit",o),t.on("destroy",(()=>{i.removeEventListener("submit",o),n&&(i.submit=n)}))}}(this)}destroy(){const t=this.getData();return this.ui.destroy(),super.destroy().then((()=>{this.sourceElement&&this.updateSourceElement(t)}))}static create(t,e={}){return new Promise((n=>{if(Ow(t)&&"TEXTAREA"===t.tagName)throw new w("editor-wrong-element",null);const i=new this(t,e);n(i.initPlugins().then((()=>i.ui.init())).then((()=>i.data.init(i.config.get("initialData")))).then((()=>i.fire("ready"))).then((()=>i)))}))}}function Ow(t){return Ai(t)}Lw.Context=dr,Lw.EditorWatchdog=Sw,Lw.ContextWatchdog=class extends bw{constructor(t,e={}){super(e),this._watchdogs=new Map,this._context=null,this._contextProps=new Set,this._actionQueues=new Pw,this._watchdogConfig=e,this._creator=e=>t.create(e),this._destructor=t=>t.destroy(),this._actionQueues.onEmpty((()=>{"initializing"===this.state&&(this.state="ready",this._fire("stateChange"))}))}setCreator(t){this._creator=t}setDestructor(t){this._destructor=t}get context(){return this._context}create(t={}){return this._actionQueues.enqueue(Iw,(()=>(this._contextConfig=t,this._create())))}getItem(t){return this._getWatchdog(t)._item}getItemState(t){return this._getWatchdog(t).state}add(t){const e=Rw(t);return Promise.all(e.map((t=>this._actionQueues.enqueue(t.id,(()=>{if("destroyed"===this.state)throw new Error("Cannot add items to destroyed watchdog.");if(!this._context)throw new Error("Context was not created yet. You should call the `ContextWatchdog#create()` method first.");let e;if(this._watchdogs.has(t.id))throw new Error(`Item with the given id is already added: '${t.id}'.`);if("editor"===t.type)return e=new Sw(null,this._watchdogConfig),e.setCreator(t.creator),e._setExcludedProperties(this._contextProps),t.destructor&&e.setDestructor(t.destructor),this._watchdogs.set(t.id,e),e.on("error",((n,{error:i,causesRestart:o})=>{this._fire("itemError",{itemId:t.id,error:i}),o&&this._actionQueues.enqueue(t.id,(()=>new Promise((n=>{const i=()=>{e.off("restart",i),this._fire("itemRestart",{itemId:t.id}),n()};e.on("restart",i)}))))})),e.create(t.sourceElementOrData,t.config,this._context);throw new Error(`Not supported item type: '${t.type}'.`)})))))}remove(t){const e=Rw(t);return Promise.all(e.map((t=>this._actionQueues.enqueue(t,(()=>{const e=this._getWatchdog(t);return this._watchdogs.delete(t),e.destroy()})))))}destroy(){return this._actionQueues.enqueue(Iw,(()=>(this.state="destroyed",this._fire("stateChange"),super.destroy(),this._destroy())))}_restart(){return this._actionQueues.enqueue(Iw,(()=>(this.state="initializing",this._fire("stateChange"),this._destroy().catch((t=>{console.error("An error happened during destroying the context or items.",t)})).then((()=>this._create())).then((()=>this._fire("restart"))))))}_create(){return Promise.resolve().then((()=>(this._startErrorHandling(),this._creator(this._contextConfig)))).then((t=>(this._context=t,this._contextProps=kw(this._context),Promise.all(Array.from(this._watchdogs.values()).map((t=>(t._setExcludedProperties(this._contextProps),t.create(void 0,void 0,this._context))))))))}_destroy(){return Promise.resolve().then((()=>{this._stopErrorHandling();const t=this._context;return this._context=null,this._contextProps=new Set,Promise.all(Array.from(this._watchdogs.values()).map((t=>t.destroy()))).then((()=>this._destructor(t)))}))}_getWatchdog(t){const e=this._watchdogs.get(t);if(!e)throw new Error(`Item with the given id was not registered: ${t}.`);return e}_isErrorComingFromThisItem(t){for(const e of this._watchdogs.values())if(e._isErrorComingFromThisItem(t))return!1;return _w(this._context,t.context)}};var zw=n(2722),Mw={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(zw.A,Mw);zw.A.locals;var Nw=n(9627),Hw={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Nw.A,Hw);Nw.A.locals;class jw extends Jm{constructor(t){super(t);const e=t.t;this.children=this.createCollection(),this.set("matchCount",0),this.set("highlightOffset",0),this.set("isDirty",!1),this.set("_areCommandsEnabled",{}),this.set("_resultsCounterText",""),this.set("_matchCase",!1),this.set("_wholeWordsOnly",!1),this.bind("_searchResultsFound").to(this,"matchCount",this,"isDirty",((t,e)=>t>0&&!e)),this._findInputView=this._createInputField(e("Find in text…")),this._findPrevButtonView=this._createButton({label:e("Previous result"),class:"ck-button-prev",icon:ym.previousArrow,keystroke:"Shift+F3",tooltip:!0}),this._findNextButtonView=this._createButton({label:e("Next result"),class:"ck-button-next",icon:ym.previousArrow,keystroke:"F3",tooltip:!0}),this._replaceInputView=this._createInputField(e("Replace with…"),"ck-labeled-field-replace"),this._inputsDivView=this._createInputsDiv(),this._matchCaseSwitchView=this._createMatchCaseSwitch(),this._wholeWordsOnlySwitchView=this._createWholeWordsOnlySwitch(),this._advancedOptionsCollapsibleView=this._createAdvancedOptionsCollapsible(),this._replaceAllButtonView=this._createButton({label:e("Replace all"),class:"ck-button-replaceall",withText:!0}),this._replaceButtonView=this._createButton({label:e("Replace"),class:"ck-button-replace",withText:!0}),this._findButtonView=this._createButton({label:e("Find"),class:"ck-button-find ck-button-action",withText:!0}),this._actionButtonsDivView=this._createActionButtonsDiv(),this._focusTracker=new Go,this._keystrokes=new Ko,this._focusables=new xm,this.focusCycler=new Xg({focusables:this._focusables,focusTracker:this._focusTracker,keystrokeHandler:this._keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.children.addMany([this._inputsDivView,this._advancedOptionsCollapsibleView,this._actionButtonsDivView]),this.setTemplate({tag:"form",attributes:{class:["ck","ck-find-and-replace-form"],tabindex:"-1"},children:this.children})}render(){super.render(),Qm({view:this}),this._initFocusCycling(),this._initKeystrokeHandling()}destroy(){super.destroy(),this._focusTracker.destroy(),this._keystrokes.destroy()}focus(t){-1===t?this.focusCycler.focusLast():this.focusCycler.focusFirst()}reset(){this._findInputView.errorText=null,this.isDirty=!0}get _textToFind(){return this._findInputView.fieldView.element.value}get _textToReplace(){return this._replaceInputView.fieldView.element.value}_createInputsDiv(){const t=this.locale,e=t.t,n=new Jm(t);return this._findInputView.fieldView.on("input",(()=>{this.isDirty=!0})),this._findPrevButtonView.delegate("execute").to(this,"findPrevious"),this._findNextButtonView.delegate("execute").to(this,"findNext"),this._findPrevButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",(({findPrevious:t})=>t)),this._findNextButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",(({findNext:t})=>t)),this._injectFindResultsCounter(),this._replaceInputView.bind("isEnabled").to(this,"_areCommandsEnabled",this,"_searchResultsFound",(({replace:t},e)=>t&&e)),this._replaceInputView.bind("infoText").to(this._replaceInputView,"isEnabled",this._replaceInputView,"isFocused",((t,n)=>t||!n?"":e("Tip: Find some text first in order to replace it."))),n.setTemplate({tag:"div",attributes:{class:["ck","ck-find-and-replace-form__inputs"]},children:[this._findInputView,this._findPrevButtonView,this._findNextButtonView,this._replaceInputView]}),n}_onFindButtonExecute(){if(this._textToFind)this.isDirty=!1,this.fire("findNext",{searchText:this._textToFind,matchCase:this._matchCase,wholeWords:this._wholeWordsOnly});else{const t=this.t;this._findInputView.errorText=t("Text to find must not be empty.")}}_injectFindResultsCounter(){const t=this.locale,e=t.t,n=this.bindTemplate,i=new Jm(this.locale);this.bind("_resultsCounterText").to(this,"highlightOffset",this,"matchCount",((t,n)=>e("%0 of %1",[t,n]))),i.setTemplate({tag:"span",attributes:{class:["ck","ck-results-counter",n.if("isDirty","ck-hidden")]},children:[{text:n.to("_resultsCounterText")}]});const o=()=>{const e=this._findInputView.fieldView.element;if(!e||!Ki(e))return;const n=new Li(i.element).width,o="ltr"===t.uiLanguageDirection?"paddingRight":"paddingLeft";e.style[o]=n?`calc( 2 * var(--ck-spacing-standard) + ${n}px )`:""};this.on("change:_resultsCounterText",o,{priority:"low"}),this.on("change:isDirty",o,{priority:"low"}),this._findInputView.template.children[0].children.push(i)}_createAdvancedOptionsCollapsible(){const t=this.locale.t,e=new Cg(this.locale,[this._matchCaseSwitchView,this._wholeWordsOnlySwitchView]);return e.set({label:t("Advanced options"),isCollapsed:!0}),e}_createActionButtonsDiv(){const t=new Jm(this.locale);return this._replaceButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",this,"_searchResultsFound",(({replace:t},e)=>t&&e)),this._replaceAllButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",this,"_searchResultsFound",(({replaceAll:t},e)=>t&&e)),this._replaceButtonView.on("execute",(()=>{this.fire("replace",{searchText:this._textToFind,replaceText:this._textToReplace})})),this._replaceAllButtonView.on("execute",(()=>{this.fire("replaceAll",{searchText:this._textToFind,replaceText:this._textToReplace}),this.focus()})),this._findButtonView.on("execute",this._onFindButtonExecute.bind(this)),t.setTemplate({tag:"div",attributes:{class:["ck","ck-find-and-replace-form__actions"]},children:[this._replaceAllButtonView,this._replaceButtonView,this._findButtonView]}),t}_createMatchCaseSwitch(){const t=this.locale.t,e=new fg(this.locale);return e.set({label:t("Match case"),withText:!0}),e.bind("isOn").to(this,"_matchCase"),e.on("execute",(()=>{this._matchCase=!this._matchCase,this.isDirty=!0})),e}_createWholeWordsOnlySwitch(){const t=this.locale.t,e=new fg(this.locale);return e.set({label:t("Whole words only"),withText:!0}),e.bind("isOn").to(this,"_wholeWordsOnly"),e.on("execute",(()=>{this._wholeWordsOnly=!this._wholeWordsOnly,this.isDirty=!0})),e}_initFocusCycling(){[this._findInputView,this._findPrevButtonView,this._findNextButtonView,this._replaceInputView,this._advancedOptionsCollapsibleView.buttonView,this._matchCaseSwitchView,this._wholeWordsOnlySwitchView,this._replaceAllButtonView,this._replaceButtonView,this._findButtonView].forEach((t=>{this._focusables.add(t),this._focusTracker.add(t.element)}))}_initKeystrokeHandling(){const t=t=>t.stopPropagation(),e=t=>{t.stopPropagation(),t.preventDefault()};this._keystrokes.listenTo(this.element),this._keystrokes.set("f3",(t=>{e(t),this._findNextButtonView.fire("execute")})),this._keystrokes.set("shift+f3",(t=>{e(t),this._findPrevButtonView.fire("execute")})),this._keystrokes.set("enter",(t=>{const n=t.target;n===this._findInputView.fieldView.element?(this._areCommandsEnabled.findNext?this._findNextButtonView.fire("execute"):this._findButtonView.fire("execute"),e(t)):n!==this._replaceInputView.fieldView.element||this.isDirty||(this._replaceButtonView.fire("execute"),e(t))})),this._keystrokes.set("shift+enter",(t=>{t.target===this._findInputView.fieldView.element&&(this._areCommandsEnabled.findPrevious?this._findPrevButtonView.fire("execute"):this._findButtonView.fire("execute"),e(t))})),this._keystrokes.set("arrowright",t),this._keystrokes.set("arrowleft",t),this._keystrokes.set("arrowup",t),this._keystrokes.set("arrowdown",t)}_createButton(t){const e=new mg(this.locale);return e.set(t),e}_createInputField(t,e){const n=new zg(this.locale,zp);return n.label=t,n.class=e,n}}const qw='';class Ww extends er{constructor(t){super(t),t.config.define("findAndReplace.uiType","dialog"),this.formView=null}static get requires(){return[rb]}static get pluginName(){return"FindAndReplaceUI"}init(){const t=this.editor,e="dropdown"===t.config.get("findAndReplace.uiType"),n=t.commands.get("find"),i=this.editor.t;t.ui.componentFactory.add("findAndReplace",(()=>{let i;return e?(i=this._createDropdown(),i.bind("isEnabled").to(n)):i=this._createDialogButtonForToolbar(),t.keystrokes.set("Ctrl+F",((e,o)=>{if(n.isEnabled){if(i instanceof Yg){const t=i.buttonView;t.isOn||t.fire("execute")}else i.isOn?t.plugins.get("Dialog").view.focus():i.fire("execute");o()}})),i})),e||t.ui.componentFactory.add("menuBar:findAndReplace",(()=>this._createDialogButtonForMenuBar())),t.accessibility.addKeystrokeInfos({keystrokes:[{label:i("Find in the document"),keystroke:"CTRL+F"}]})}_createDropdown(){const t=this.editor,e=t.locale.t,n=Ip(t.locale);return n.once("change:isOpen",(()=>{this.formView=this._createFormView(),this.formView.children.add(new jf(t.locale,{label:e("Find and replace")}),0),n.panelView.children.add(this.formView)})),n.on("change:isOpen",((t,e,n)=>{n?this._setupFormView():this.fire("searchReseted")}),{priority:"low"}),n.buttonView.set({icon:qw,label:e("Find and replace"),keystroke:"CTRL+F",tooltip:!0}),n}_createDialogButtonForToolbar(){const t=this.editor,e=this._createButton(mg),n=t.plugins.get("Dialog"),i=t.locale.t;return e.set({icon:qw,label:i("Find and replace"),tooltip:!0}),e.bind("isOn").to(n,"id",(t=>"findAndReplace"===t)),e.on("execute",(()=>{e.isOn?n.hide():this._showDialog()})),e}_createDialogButtonForMenuBar(){const t=this._createButton(mw),e=this.editor.plugins.get("Dialog");return t.on("execute",(()=>{"findAndReplace"!==e.id?this._showDialog():e.hide()})),t}_createButton(t){const e=this.editor,n=e.commands.get("find"),i=new t(e.locale),o=e.locale.t;return i.bind("isEnabled").to(n),i.set({icon:qw,label:o("Find and replace"),keystroke:"CTRL+F"}),i}_showDialog(){const t=this.editor,e=t.plugins.get("Dialog"),n=t.locale.t;this.formView||(this.formView=this._createFormView()),e.show({id:"findAndReplace",title:n("Find and replace"),content:this.formView,position:Yf,onShow:()=>{this._setupFormView()},onHide:()=>{this.fire("searchReseted")}})}_createFormView(){const t=this.editor,e=new(Ym(jw))(t.locale),n=t.commands,i=this.editor.plugins.get("FindAndReplaceEditing").state;e.bind("highlightOffset").to(i,"highlightedOffset"),e.listenTo(i.results,"change",(()=>{e.matchCount=i.results.length}));const o=n.get("findNext"),r=n.get("findPrevious"),s=n.get("replace"),a=n.get("replaceAll");return e.bind("_areCommandsEnabled").to(o,"isEnabled",r,"isEnabled",s,"isEnabled",a,"isEnabled",((t,e,n,i)=>({findNext:t,findPrevious:e,replace:n,replaceAll:i}))),e.delegate("findNext","findPrevious","replace","replaceAll").to(this),e.on("change:isDirty",((t,e,n)=>{n&&this.fire("searchReseted")})),e}_setupFormView(){this.formView.disableCssTransitions(),this.formView.reset(),this.formView._findInputView.fieldView.select(),this.formView.enableCssTransitions()}}class Uw extends ir{constructor(t,e){super(t),this.isEnabled=!0,this.affectsData=!1,this._state=e}execute(t,{matchCase:e,wholeWords:n}={}){const{editor:i}=this,{model:o}=i,r=i.plugins.get("FindAndReplaceUtils");let s;"string"==typeof t?(s=r.findByTextCallback(t,{matchCase:e,wholeWords:n}),this._state.searchText=t):s=t;const a=o.document.getRootNames().reduce(((t,e)=>r.updateFindResultFromRange(o.createRangeIn(o.document.getRoot(e)),o,s,t)),null);return this._state.clear(o),this._state.results.addMany(a),this._state.highlightedResult=a.get(0),"string"==typeof t&&(this._state.searchText=t),s&&(this._state.lastSearchCallback=s),this._state.matchCase=!!e,this._state.matchWholeWords=!!n,{results:a,findCallback:s}}}class $w extends ir{constructor(t,e){super(t),this.isEnabled=!0,this._state=e,this._isEnabledBasedOnSelection=!1}_replace(t,e){const{model:n}=this.editor,i=e.marker.getRange();n.canEditAt(i)&&n.change((o=>{if("$graveyard"===i.root.rootName)return void this._state.results.remove(e);let r={};for(const t of i.getItems())if(t.is("$text")||t.is("$textProxy")){r=t.getAttributes();break}n.insertContent(o.createText(t,r),i),this._state.results.has(e)&&this._state.results.remove(e)}))}}class Gw extends $w{execute(t,e){this._replace(t,e)}}class Kw extends $w{execute(t,e){const{editor:n}=this,{model:i}=n,o=n.plugins.get("FindAndReplaceUtils"),r=e instanceof Uo?e:i.document.getRootNames().reduce(((t,n)=>o.updateFindResultFromRange(i.createRangeIn(i.document.getRoot(n)),i,o.findByTextCallback(e,this._state),t)),null);r.length&&i.change((()=>{[...r].forEach((e=>{this._replace(t,e)}))}))}}class Jw extends ir{constructor(t,e){super(t),this.affectsData=!1,this._state=e,this.isEnabled=!1,this.listenTo(this._state.results,"change",(()=>{this.isEnabled=this._state.results.length>1}))}refresh(){this.isEnabled=this._state.results.length>1}execute(){const t=this._state.results,e=t.getIndex(this._state.highlightedResult),n=e+1>=t.length?0:e+1;this._state.highlightedResult=this._state.results.get(n)}}class Zw extends Jw{execute(){const t=this._state.results.getIndex(this._state.highlightedResult),e=t-1<0?this._state.results.length-1:t-1;this._state.highlightedResult=this._state.results.get(e)}}class Yw extends(W()){constructor(t){super(),this.set("results",new Uo),this.set("highlightedResult",null),this.set("highlightedOffset",0),this.set("searchText",""),this.set("replaceText",""),this.set("lastSearchCallback",null),this.set("matchCase",!1),this.set("matchWholeWords",!1),this.results.on("change",((e,{removed:n,index:i})=>{if(Array.from(n).length){let e=!1;if(t.change((i=>{for(const o of n)this.highlightedResult===o&&(e=!0),t.markers.has(o.marker.name)&&i.removeMarker(o.marker)})),e){const t=i>=this.results.length?0:i;this.highlightedResult=this.results.get(t)}}})),this.on("change:highlightedResult",(()=>{this.refreshHighlightOffset()}))}clear(t){this.searchText="",t.change((e=>{if(this.highlightedResult){const n=this.highlightedResult.marker.name.split(":")[1],i=t.markers.get(`findResultHighlighted:${n}`);i&&e.removeMarker(i)}[...this.results].forEach((({marker:t})=>{e.removeMarker(t)}))})),this.results.clear()}refreshHighlightOffset(){const{highlightedResult:t,results:e}=this,n={before:-1,same:0,after:1,different:1};this.highlightedOffset=t?Array.from(e).sort(((t,e)=>n[t.marker.getStart().compareWith(e.marker.getStart())])).indexOf(t)+1:0}}class Qw extends er{static get pluginName(){return"FindAndReplaceUtils"}updateFindResultFromRange(t,e,n,i){const o=i||new Uo;return e.change((i=>{[...t].forEach((({type:t,item:r})=>{if("elementStart"===t&&e.schema.checkChild(r,"$text")){const t=n({item:r,text:this.rangeToText(e.createRangeIn(r))});if(!t)return;t.forEach((t=>{const e=`findResult:${p()}`,n=i.addMarker(e,{usingOperation:!1,affectsData:!1,range:i.createRange(i.createPositionAt(r,t.start),i.createPositionAt(r,t.end))}),s=function(t,e){const n=t.find((({marker:t})=>e.getStart().isBefore(t.getStart())));return n?t.getIndex(n):t.length}(o,n);(t=>o.find((e=>{const{marker:n}=e,i=n.getRange(),o=t.getRange();return i.isEqual(o)})))(n)||o.add({id:e,label:t.label,marker:n},s)}))}}))})),o}rangeToText(t){return Array.from(t.getItems()).reduce(((t,e)=>e.is("$text")||e.is("$textProxy")?t+e.data:`${t}\n`),"")}findByTextCallback(t,e){let n="gu";e.matchCase||(n+="i");let i=`(${vk(t)})`;if(e.wholeWords){const e="[^a-zA-ZÀ-ɏḀ-ỿ]";new RegExp("^"+e).test(t)||(i=`(^|${e}|_)${i}`),new RegExp(e+"$").test(t)||(i=`${i}(?=_|${e}|$)`)}const o=new RegExp(i,n);return function({text:t}){return[...t.matchAll(o)].map(Xw)}}}function Xw(t){const e=t.length-1;let n=t.index;return 3===t.length&&(n+=t[1].length),{label:t[e],start:n,end:n+t[e].length}}var t_=n(4341),e_={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(t_.A,e_);t_.A.locals;class n_ extends er{constructor(){super(...arguments),this._onDocumentChange=()=>{const t=new Set,e=new Set,n=this.editor.model,{results:i}=this.state,o=n.document.differ.getChanges(),r=n.document.differ.getChangedMarkers();o.forEach((i=>{i.position&&("$text"===i.name||i.position.nodeAfter&&n.schema.isInline(i.position.nodeAfter)?(t.add(i.position.parent),[...n.markers.getMarkersAtPosition(i.position)].forEach((t=>{e.add(t.name)}))):"insert"===i.type&&i.position.nodeAfter&&t.add(i.position.nodeAfter))})),r.forEach((({name:t,data:{newRange:n}})=>{n&&"$graveyard"===n.start.root.rootName&&e.add(t)})),t.forEach((t=>{[...n.markers.getMarkersIntersectingRange(n.createRangeIn(t))].forEach((t=>e.add(t.name)))})),e.forEach((t=>{i.has(t)&&(i.get(t)===this.state.highlightedResult&&(this.state.highlightedResult=null),i.remove(t))}));const s=[],a=this.editor.plugins.get("FindAndReplaceUtils");t.forEach((t=>{const e=a.updateFindResultFromRange(n.createRangeOn(t),n,this.state.lastSearchCallback,i);s.push(...e)})),r.forEach((t=>{if(t.data.newRange){const e=a.updateFindResultFromRange(t.data.newRange,n,this.state.lastSearchCallback,i);s.push(...e)}})),!this.state.highlightedResult&&s.length?this.state.highlightedResult=s[0]:this.state.refreshHighlightOffset()}}static get requires(){return[Qw]}static get pluginName(){return"FindAndReplaceEditing"}init(){this.state=new Yw(this.editor.model),this.set("_isSearchActive",!1),this._defineConverters(),this._defineCommands(),this.listenTo(this.state,"change:highlightedResult",((t,e,n,i)=>{const{model:o}=this.editor;o.change((t=>{if(i){const e=i.marker.name.split(":")[1],n=o.markers.get(`findResultHighlighted:${e}`);n&&t.removeMarker(n)}if(n){const e=n.marker.name.split(":")[1];t.addMarker(`findResultHighlighted:${e}`,{usingOperation:!1,affectsData:!1,range:n.marker.getRange()})}}))}));const t=Wa(((t,e,n)=>{if(n){const t=this.editor.editing.view.domConverter,e=this.editor.editing.mapper.toViewRange(n.marker.getRange());to({target:t.viewRangeToDom(e),viewportOffset:40})}}).bind(this),32);this.listenTo(this.state,"change:highlightedResult",t,{priority:"low"}),this.listenTo(this.editor,"destroy",t.cancel),this.on("change:_isSearchActive",((t,e,n)=>{n?this.listenTo(this.editor.model.document,"change:data",this._onDocumentChange):this.stopListening(this.editor.model.document,"change:data",this._onDocumentChange)}))}find(t,e){return this._isSearchActive=!0,this.editor.execute("find",t,e),this.state.results}stop(){this.state.clear(this.editor.model),this._isSearchActive=!1}_defineCommands(){this.editor.commands.add("find",new Uw(this.editor,this.state)),this.editor.commands.add("findNext",new Jw(this.editor,this.state)),this.editor.commands.add("findPrevious",new Zw(this.editor,this.state)),this.editor.commands.add("replace",new Gw(this.editor,this.state)),this.editor.commands.add("replaceAll",new Kw(this.editor,this.state))}_defineConverters(){const{editor:t}=this;t.conversion.for("editingDowncast").markerToHighlight({model:"findResult",view:({markerName:t})=>{const[,e]=t.split(":");return{name:"span",classes:["ck-find-result"],attributes:{"data-find-result":e}}}}),t.conversion.for("editingDowncast").markerToHighlight({model:"findResultHighlighted",view:({markerName:t})=>{const[,e]=t.split(":");return{name:"span",classes:["ck-find-result_selected"],attributes:{"data-find-result":e}}}})}}class i_ extends(W()){constructor(){super();const t=new window.FileReader;this._reader=t,this._data=void 0,this.set("loaded",0),t.onprogress=t=>{this.loaded=t.loaded}}get error(){return this._reader.error}get data(){return this._data}read(t){const e=this._reader;return this.total=t.size,new Promise(((n,i)=>{e.onload=()=>{const t=e.result;this._data=t,n(t)},e.onerror=()=>{i("error")},e.onabort=()=>{i("aborted")},this._reader.readAsDataURL(t)}))}abort(){this._reader.abort()}}class o_ extends er{constructor(){super(...arguments),this.loaders=new Uo,this._loadersMap=new Map,this._pendingAction=null}static get pluginName(){return"FileRepository"}static get requires(){return[vm]}init(){this.loaders.on("change",(()=>this._updatePendingAction())),this.set("uploaded",0),this.set("uploadTotal",null),this.bind("uploadedPercent").to(this,"uploaded",this,"uploadTotal",((t,e)=>e?t/e*100:0))}getLoader(t){return this._loadersMap.get(t)||null}createLoader(t){if(!this.createUploadAdapter)return _("filerepository-no-upload-adapter"),null;const e=new r_(Promise.resolve(t),this.createUploadAdapter);return this.loaders.add(e),this._loadersMap.set(t,e),t instanceof Promise&&e.file.then((t=>{this._loadersMap.set(t,e)})).catch((()=>{})),e.on("change:uploaded",(()=>{let t=0;for(const e of this.loaders)t+=e.uploaded;this.uploaded=t})),e.on("change:uploadTotal",(()=>{let t=0;for(const e of this.loaders)e.uploadTotal&&(t+=e.uploadTotal);this.uploadTotal=t})),e}destroyLoader(t){const e=t instanceof r_?t:this.getLoader(t);e._destroy(),this.loaders.remove(e),this._loadersMap.forEach(((t,n)=>{t===e&&this._loadersMap.delete(n)}))}_updatePendingAction(){const t=this.editor.plugins.get(vm);if(this.loaders.length){if(!this._pendingAction){const e=this.editor.t,n=t=>`${e("Upload in progress")} ${parseInt(t)}%.`;this._pendingAction=t.add(n(this.uploadedPercent)),this._pendingAction.bind("message").to(this,"uploadedPercent",n)}}else t.remove(this._pendingAction),this._pendingAction=null}}class r_ extends(W()){constructor(t,e){super(),this.id=p(),this._filePromiseWrapper=this._createFilePromiseWrapper(t),this._adapter=e(this),this._reader=new i_,this.set("status","idle"),this.set("uploaded",0),this.set("uploadTotal",null),this.bind("uploadedPercent").to(this,"uploaded",this,"uploadTotal",((t,e)=>e?t/e*100:0)),this.set("uploadResponse",null)}get file(){return this._filePromiseWrapper?this._filePromiseWrapper.promise.then((t=>this._filePromiseWrapper?t:null)):Promise.resolve(null)}get data(){return this._reader.data}read(){if("idle"!=this.status)throw new w("filerepository-read-wrong-status",this);return this.status="reading",this.file.then((t=>this._reader.read(t))).then((t=>{if("reading"!==this.status)throw this.status;return this.status="idle",t})).catch((t=>{if("aborted"===t)throw this.status="aborted","aborted";throw this.status="error",this._reader.error?this._reader.error:t}))}upload(){if("idle"!=this.status)throw new w("filerepository-upload-wrong-status",this);return this.status="uploading",this.file.then((()=>this._adapter.upload())).then((t=>(this.uploadResponse=t,this.status="idle",t))).catch((t=>{if("aborted"===this.status)throw"aborted";throw this.status="error",t}))}abort(){const t=this.status;this.status="aborted",this._filePromiseWrapper.isFulfilled?"reading"==t?this._reader.abort():"uploading"==t&&this._adapter.abort&&this._adapter.abort():(this._filePromiseWrapper.promise.catch((()=>{})),this._filePromiseWrapper.rejecter("aborted")),this._destroy()}_destroy(){this._filePromiseWrapper=void 0,this._reader=void 0,this._adapter=void 0,this.uploadResponse=void 0}_createFilePromiseWrapper(t){const e={};return e.promise=new Promise(((n,i)=>{e.rejecter=i,e.isFulfilled=!1,t.then((t=>{e.isFulfilled=!0,n(t)})).catch((t=>{e.isFulfilled=!0,i(t)}))})),e}}Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;const s_="ckCsrfToken",a_="abcdefghijklmnopqrstuvwxyz0123456789";function c_(){let t=function(t){t=t.toLowerCase();const e=document.cookie.split(";");for(const n of e){const e=n.split("=");if(decodeURIComponent(e[0].trim().toLowerCase())===t)return decodeURIComponent(e[1])}return null}(s_);var e,n;return t&&40==t.length||(t=function(t){let e="";const n=new Uint8Array(t);window.crypto.getRandomValues(n);for(let t=0;t.5?i.toUpperCase():i}return e}(40),e=s_,n=t,document.cookie=encodeURIComponent(e)+"="+encodeURIComponent(n)+";path=/"),t}class l_{constructor(t,e,n){this.loader=t,this.url=e,this.t=n}upload(){return this.loader.file.then((t=>new Promise(((e,n)=>{this._initRequest(),this._initListeners(e,n,t),this._sendRequest(t)}))))}abort(){this.xhr&&this.xhr.abort()}_initRequest(){const t=this.xhr=new XMLHttpRequest;t.open("POST",this.url,!0),t.responseType="json"}_initListeners(t,e,n){const i=this.xhr,o=this.loader,r=(0,this.t)("Cannot upload file:")+` ${n.name}.`;i.addEventListener("error",(()=>e(r))),i.addEventListener("abort",(()=>e())),i.addEventListener("load",(()=>{const n=i.response;if(!n||!n.uploaded)return e(n&&n.error&&n.error.message?n.error.message:r);t({default:n.url})})),i.upload&&i.upload.addEventListener("progress",(t=>{t.lengthComputable&&(o.uploadTotal=t.total,o.uploaded=t.loaded)}))}_sendRequest(t){const e=new FormData;e.append("upload",t),e.append("ckCsrfToken",c_()),this.xhr.send(e)}}class d_{constructor(t,e=20){this._batch=null,this.model=t,this._size=0,this.limit=e,this._isLocked=!1,this._changeCallback=(t,e)=>{e.isLocal&&e.isUndoable&&e!==this._batch&&this._reset(!0)},this._selectionChangeCallback=()=>{this._reset()},this.model.document.on("change",this._changeCallback),this.model.document.selection.on("change:range",this._selectionChangeCallback),this.model.document.selection.on("change:attribute",this._selectionChangeCallback)}get batch(){return this._batch||(this._batch=this.model.createBatch({isTyping:!0})),this._batch}get size(){return this._size}input(t){this._size+=t,this._size>=this.limit&&this._reset(!0)}get isLocked(){return this._isLocked}lock(){this._isLocked=!0}unlock(){this._isLocked=!1}destroy(){this.model.document.off("change",this._changeCallback),this.model.document.selection.off("change:range",this._selectionChangeCallback),this.model.document.selection.off("change:attribute",this._selectionChangeCallback)}_reset(t=!1){this.isLocked&&!t||(this._batch=null,this._size=0)}}class h_ extends ir{constructor(t,e){super(t),this._buffer=new d_(t.model,e),this._isEnabledBasedOnSelection=!1}get buffer(){return this._buffer}destroy(){super.destroy(),this._buffer.destroy()}execute(t={}){const e=this.editor.model,n=e.document,i=t.text||"",o=i.length;let r=n.selection;if(t.selection?r=t.selection:t.range&&(r=e.createSelection(t.range)),!e.canEditAt(r))return;const s=t.resultRange;e.enqueueChange(this._buffer.batch,(t=>{this._buffer.lock();const a=Array.from(n.selection.getAttributes());e.deleteContent(r),i&&e.insertContent(t.createText(i,a),r),s?t.setSelection(s):r.is("documentSelection")||t.setSelection(r),this._buffer.unlock(),this._buffer.input(o)}))}}const u_=["insertText","insertReplacementText"];class m_ extends Da{constructor(t){super(t),this.focusObserver=t.getObserver(pc),s.isAndroid&&u_.push("insertCompositionText");const e=t.document;e.on("beforeinput",((n,i)=>{if(!this.isEnabled)return;const{data:o,targetRanges:r,inputType:s,domEvent:a}=i;if(!u_.includes(s))return;this.focusObserver.flush();const c=new m(e,"insertText");e.fire(c,new Sa(t,a,{text:o,selection:t.createSelection(r)})),c.stop.called&&n.stop()})),e.on("compositionend",((n,{data:i,domEvent:o})=>{this.isEnabled&&!s.isAndroid&&i&&e.fire("insertText",new Sa(t,o,{text:i,selection:e.selection}))}),{priority:"lowest"})}observe(){}stopObserving(){}}class g_ extends er{static get pluginName(){return"Input"}init(){const t=this.editor,e=t.model,n=t.editing.view,i=e.document.selection;n.addObserver(m_);const o=new h_(t,t.config.get("typing.undoStep")||20);t.commands.add("insertText",o),t.commands.add("input",o),this.listenTo(n.document,"insertText",((i,o)=>{n.document.isComposing||o.preventDefault();const{text:r,selection:a,resultRange:c}=o,l=Array.from(a.getRanges()).map((e=>t.editing.mapper.toModelRange(e)));let d=r;if(s.isAndroid){const t=Array.from(l[0].getItems()).reduce(((t,e)=>t+(e.is("$textProxy")?e.data:"")),"");t&&(t.length<=d.length?d.startsWith(t)&&(d=d.substring(t.length),l[0].start=l[0].start.getShiftedBy(t.length)):t.startsWith(d)&&(l[0].start=l[0].start.getShiftedBy(d.length),d=""))}const h={text:d,selection:e.createSelection(l)};c&&(h.resultRange=t.editing.mapper.toModelRange(c)),t.execute("insertText",h),n.scrollToTheSelection()})),s.isAndroid?this.listenTo(n.document,"keydown",((t,r)=>{!i.isCollapsed&&229==r.keyCode&&n.document.isComposing&&p_(e,o)})):this.listenTo(n.document,"compositionstart",(()=>{i.isCollapsed||p_(e,o)}))}}function p_(t,e){if(!e.isEnabled)return;const n=e.buffer;n.lock(),t.enqueueChange(n.batch,(()=>{t.deleteContent(t.document.selection)})),n.unlock()}class f_ extends ir{constructor(t,e){super(t),this.direction=e,this._buffer=new d_(t.model,t.config.get("typing.undoStep")),this._isEnabledBasedOnSelection=!1}get buffer(){return this._buffer}execute(t={}){const e=this.editor.model,n=e.document;e.enqueueChange(this._buffer.batch,(i=>{this._buffer.lock();const o=i.createSelection(t.selection||n.selection);if(!e.canEditAt(o))return;const r=t.sequence||1,s=o.isCollapsed;if(o.isCollapsed&&e.modifySelection(o,{direction:this.direction,unit:t.unit,treatEmojiAsSingleUnit:!0}),this._shouldEntireContentBeReplacedWithParagraph(r))return void this._replaceEntireContentWithParagraph(i);if(this._shouldReplaceFirstBlockWithParagraph(o,r))return void this.editor.execute("paragraph",{selection:o});if(o.isCollapsed)return;let a=0;o.getFirstRange().getMinimalFlatRanges().forEach((t=>{a+=Y(t.getWalker({singleCharacters:!0,ignoreElementEnd:!0,shallow:!0}))})),e.deleteContent(o,{doNotResetEntireContent:s,direction:this.direction}),this._buffer.input(a),i.setSelection(o),this._buffer.unlock()}))}_shouldEntireContentBeReplacedWithParagraph(t){if(t>1)return!1;const e=this.editor.model,n=e.document.selection,i=e.schema.getLimitElement(n);if(!(n.isCollapsed&&n.containsEntireContent(i)))return!1;if(!e.schema.checkChild(i,"paragraph"))return!1;const o=i.getChild(0);return!o||!o.is("element","paragraph")}_replaceEntireContentWithParagraph(t){const e=this.editor.model,n=e.document.selection,i=e.schema.getLimitElement(n),o=t.createElement("paragraph");t.remove(t.createRangeIn(i)),t.insert(o,i),t.setSelection(o,0)}_shouldReplaceFirstBlockWithParagraph(t,e){const n=this.editor.model;if(e>1||"backward"!=this.direction)return!1;if(!t.isCollapsed)return!1;const i=t.getFirstPosition(),o=n.schema.getLimitElement(i),r=o.getChild(0);return i.parent==r&&(!!t.containsEntireContent(r)&&(!!n.schema.checkChild(o,"paragraph")&&"paragraph"!=r.name))}}const b_="word",k_="selection",w_="backward",__="forward",A_={deleteContent:{unit:k_,direction:w_},deleteContentBackward:{unit:"codePoint",direction:w_},deleteWordBackward:{unit:b_,direction:w_},deleteHardLineBackward:{unit:k_,direction:w_},deleteSoftLineBackward:{unit:k_,direction:w_},deleteContentForward:{unit:"character",direction:__},deleteWordForward:{unit:b_,direction:__},deleteHardLineForward:{unit:k_,direction:__},deleteSoftLineForward:{unit:k_,direction:__}};class C_ extends Da{constructor(t){super(t);const e=t.document;let n=0;e.on("keydown",(()=>{n++})),e.on("keyup",(()=>{n=0})),e.on("beforeinput",((i,o)=>{if(!this.isEnabled)return;const{targetRanges:r,domEvent:a,inputType:c}=o,l=A_[c];if(!l)return;const d={direction:l.direction,unit:l.unit,sequence:n};d.unit==k_&&(d.selectionToRemove=t.createSelection(r[0])),"deleteContentBackward"===c&&(s.isAndroid&&(d.sequence=1),function(t){if(1!=t.length||t[0].isCollapsed)return!1;const e=t[0].getWalker({direction:"backward",singleCharacters:!0,ignoreElementEnd:!0});let n=0;for(const{nextPosition:t,item:i}of e){if(t.parent.is("$text")){const e=t.parent.data,i=t.offset;if(Yo(e,i)||Qo(e,i)||tr(e,i))continue;n++}else(i.is("containerElement")||i.is("emptyElement"))&&n++;if(n>1)return!0}return!1}(r)&&(d.unit=k_,d.selectionToRemove=t.createSelection(r)));const h=new ys(e,"delete",r[0]);e.fire(h,new Sa(t,a,d)),h.stop.called&&i.stop()})),s.isBlink&&function(t){const e=t.view,n=e.document;let i=null,o=!1;function r(t){return t==go.backspace||t==go.delete}function s(t){return t==go.backspace?w_:__}n.on("keydown",((t,{keyCode:e})=>{i=e,o=!1})),n.on("keyup",((a,{keyCode:c,domEvent:l})=>{const d=n.selection,h=t.isEnabled&&c==i&&r(c)&&!d.isCollapsed&&!o;if(i=null,h){const t=d.getFirstRange(),i=new ys(n,"delete",t),o={unit:k_,direction:s(c),selectionToRemove:d};n.fire(i,new Sa(e,l,o))}})),n.on("beforeinput",((t,{inputType:e})=>{const n=A_[e];r(i)&&n&&n.direction==s(i)&&(o=!0)}),{priority:"high"}),n.on("beforeinput",((t,{inputType:e,data:n})=>{i==go.delete&&"insertText"==e&&""==n&&t.stop()}),{priority:"high"})}(this)}observe(){}stopObserving(){}}class v_ extends er{static get pluginName(){return"Delete"}init(){const t=this.editor,e=t.editing.view,n=e.document,i=t.model.document;e.addObserver(C_),this._undoOnBackspace=!1;const o=new f_(t,"forward");t.commands.add("deleteForward",o),t.commands.add("forwardDelete",o),t.commands.add("delete",new f_(t,"backward")),this.listenTo(n,"delete",((i,o)=>{n.isComposing||o.preventDefault();const{direction:r,sequence:s,selectionToRemove:a,unit:c}=o,l="forward"===r?"deleteForward":"delete",d={sequence:s};if("selection"==c){const e=Array.from(a.getRanges()).map((e=>t.editing.mapper.toModelRange(e)));d.selection=t.model.createSelection(e)}else d.unit=c;t.execute(l,d),e.scrollToTheSelection()}),{priority:"low"}),this.editor.plugins.has("UndoEditing")&&(this.listenTo(n,"delete",((e,n)=>{this._undoOnBackspace&&"backward"==n.direction&&1==n.sequence&&"codePoint"==n.unit&&(this._undoOnBackspace=!1,t.execute("undo"),n.preventDefault(),e.stop())}),{context:"$capture"}),this.listenTo(i,"change",(()=>{this._undoOnBackspace=!1})))}requestUndoOnBackspace(){this.editor.plugins.has("UndoEditing")&&(this._undoOnBackspace=!0)}}class y_ extends er{static get requires(){return[g_,v_]}static get pluginName(){return"Typing"}}function x_(t,e){let n=t.start;return{text:Array.from(t.getWalker({ignoreElementEnd:!1})).reduce(((t,{item:i})=>i.is("$text")||i.is("$textProxy")?t+i.data:(n=e.createPositionAfter(i),"")),""),range:e.createRange(n,t.end)}}class E_ extends(W()){constructor(t,e){super(),this.model=t,this.testCallback=e,this._hasMatch=!1,this.set("isEnabled",!0),this.on("change:isEnabled",(()=>{this.isEnabled?this._startListening():(this.stopListening(t.document.selection),this.stopListening(t.document))})),this._startListening()}get hasMatch(){return this._hasMatch}_startListening(){const t=this.model.document;this.listenTo(t.selection,"change:range",((e,{directChange:n})=>{n&&(t.selection.isCollapsed?this._evaluateTextBeforeSelection("selection"):this.hasMatch&&(this.fire("unmatched"),this._hasMatch=!1))})),this.listenTo(t,"change:data",((t,e)=>{!e.isUndo&&e.isLocal&&this._evaluateTextBeforeSelection("data",{batch:e})}))}_evaluateTextBeforeSelection(t,e={}){const n=this.model,i=n.document.selection,o=n.createRange(n.createPositionAt(i.focus.parent,0),i.focus),{text:r,range:s}=x_(o,n),a=this.testCallback(r);if(!a&&this.hasMatch&&this.fire("unmatched"),this._hasMatch=!!a,a){const n=Object.assign(e,{text:r,range:s});"object"==typeof a&&Object.assign(n,a),this.fire(`matched:${t}`,n)}}}class D_ extends er{constructor(t){super(t),this._isNextGravityRestorationSkipped=!1,this.attributes=new Set,this._overrideUid=null}static get pluginName(){return"TwoStepCaretMovement"}init(){const t=this.editor,e=t.model,n=t.editing.view,i=t.locale,o=e.document.selection;this.listenTo(n.document,"arrowKey",((t,e)=>{if(!o.isCollapsed)return;if(e.shiftKey||e.altKey||e.ctrlKey)return;const n=e.keyCode==go.arrowright,r=e.keyCode==go.arrowleft;if(!n&&!r)return;const s=i.contentLanguageDirection;let a=!1;a="ltr"===s&&n||"rtl"===s&&r?this._handleForwardMovement(e):this._handleBackwardMovement(e),!0===a&&t.stop()}),{context:"$text",priority:"highest"}),this.listenTo(o,"change:range",((t,e)=>{this._isNextGravityRestorationSkipped?this._isNextGravityRestorationSkipped=!1:this._isGravityOverridden&&(!e.directChange&&R_(o.getFirstPosition(),this.attributes)||this._restoreGravity())})),this._enableClickingAfterNode(),this._enableInsertContentSelectionAttributesFixer(),this._handleDeleteContentAfterNode()}registerAttribute(t){this.attributes.add(t)}_handleForwardMovement(t){const e=this.attributes,n=this.editor.model,i=n.document.selection,o=i.getFirstPosition();return!this._isGravityOverridden&&((!o.isAtStart||!B_(i,e))&&(!!R_(o,e)&&(I_(t),B_(i,e)&&R_(o,e,!0)?T_(n,e):this._overrideGravity(),!0)))}_handleBackwardMovement(t){const e=this.attributes,n=this.editor.model,i=n.document.selection,o=i.getFirstPosition();return this._isGravityOverridden?(I_(t),this._restoreGravity(),R_(o,e,!0)?T_(n,e):S_(n,e,o),!0):o.isAtStart?!!B_(i,e)&&(I_(t),S_(n,e,o),!0):!B_(i,e)&&R_(o,e,!0)?(I_(t),S_(n,e,o),!0):!!P_(o,e)&&(o.isAtEnd&&!B_(i,e)&&R_(o,e)?(I_(t),S_(n,e,o),!0):(this._isNextGravityRestorationSkipped=!0,this._overrideGravity(),!1))}_enableClickingAfterNode(){const t=this.editor,e=t.model,n=e.document.selection,i=t.editing.view.document;t.editing.view.addObserver(_u);let o=!1;this.listenTo(i,"mousedown",(()=>{o=!0})),this.listenTo(i,"selectionChange",(()=>{const t=this.attributes;if(!o)return;if(o=!1,!n.isCollapsed)return;if(!B_(n,t))return;const i=n.getFirstPosition();R_(i,t)&&(i.isAtStart||R_(i,t,!0)?T_(e,t):this._isGravityOverridden||this._overrideGravity())}))}_enableInsertContentSelectionAttributesFixer(){const t=this.editor.model,e=t.document.selection,n=this.attributes;this.listenTo(t,"insertContent",(()=>{const i=e.getFirstPosition();B_(e,n)&&R_(i,n)&&T_(t,n)}),{priority:"low"})}_handleDeleteContentAfterNode(){const t=this.editor,e=t.model,n=e.document.selection,i=t.editing.view;let o=!1,r=!1;this.listenTo(i.document,"delete",((t,e)=>{o="backward"===e.direction}),{priority:"high"}),this.listenTo(e,"deleteContent",(()=>{if(!o)return;const t=n.getFirstPosition();r=B_(n,this.attributes)&&!P_(t,this.attributes)}),{priority:"high"}),this.listenTo(e,"deleteContent",(()=>{o&&(o=!1,r||t.model.enqueueChange((()=>{const t=n.getFirstPosition();B_(n,this.attributes)&&R_(t,this.attributes)&&(t.isAtStart||R_(t,this.attributes,!0)?T_(e,this.attributes):this._isGravityOverridden||this._overrideGravity())})))}),{priority:"low"})}get _isGravityOverridden(){return!!this._overrideUid}_overrideGravity(){this._overrideUid=this.editor.model.change((t=>t.overrideSelectionGravity()))}_restoreGravity(){this.editor.model.change((t=>{t.restoreSelectionGravity(this._overrideUid),this._overrideUid=null}))}}function B_(t,e){for(const n of e)if(t.hasAttribute(n))return!0;return!1}function S_(t,e,n){const i=n.nodeBefore;t.change((n=>{if(i){const e=[],o=t.schema.isObject(i)&&t.schema.isInline(i);for(const[n,r]of i.getAttributes())!t.schema.checkAttribute("$text",n)||o&&!1===t.schema.getAttributeProperties(n).copyFromObject||e.push([n,r]);n.setSelectionAttribute(e)}else n.removeSelectionAttribute(e)}))}function T_(t,e){t.change((t=>{t.removeSelectionAttribute(e)}))}function I_(t){t.preventDefault()}function P_(t,e){return R_(t.getShiftedBy(-1),e)}function R_(t,e,n=!1){const{nodeBefore:i,nodeAfter:o}=t;for(const t of e){const e=i?i.getAttribute(t):void 0,r=o?o.getAttribute(t):void 0;if((!n||void 0!==e&&void 0!==r)&&r!==e)return!0}return!1}const V_={copyright:{from:"(c)",to:"©"},registeredTrademark:{from:"(r)",to:"®"},trademark:{from:"(tm)",to:"™"},oneHalf:{from:/(^|[^/a-z0-9])(1\/2)([^/a-z0-9])$/i,to:[null,"½",null]},oneThird:{from:/(^|[^/a-z0-9])(1\/3)([^/a-z0-9])$/i,to:[null,"⅓",null]},twoThirds:{from:/(^|[^/a-z0-9])(2\/3)([^/a-z0-9])$/i,to:[null,"⅔",null]},oneForth:{from:/(^|[^/a-z0-9])(1\/4)([^/a-z0-9])$/i,to:[null,"¼",null]},threeQuarters:{from:/(^|[^/a-z0-9])(3\/4)([^/a-z0-9])$/i,to:[null,"¾",null]},lessThanOrEqual:{from:"<=",to:"≤"},greaterThanOrEqual:{from:">=",to:"≥"},notEqual:{from:"!=",to:"≠"},arrowLeft:{from:"<-",to:"←"},arrowRight:{from:"->",to:"→"},horizontalEllipsis:{from:"...",to:"…"},enDash:{from:/(^| )(--)( )$/,to:[null,"–",null]},emDash:{from:/(^| )(---)( )$/,to:[null,"—",null]},quotesPrimary:{from:N_('"'),to:[null,"“",null,"”"]},quotesSecondary:{from:N_("'"),to:[null,"‘",null,"’"]},quotesPrimaryEnGb:{from:N_("'"),to:[null,"‘",null,"’"]},quotesSecondaryEnGb:{from:N_('"'),to:[null,"“",null,"”"]},quotesPrimaryPl:{from:N_('"'),to:[null,"„",null,"”"]},quotesSecondaryPl:{from:N_("'"),to:[null,"‚",null,"’"]}},F_={symbols:["copyright","registeredTrademark","trademark"],mathematical:["oneHalf","oneThird","twoThirds","oneForth","threeQuarters","lessThanOrEqual","greaterThanOrEqual","notEqual","arrowLeft","arrowRight"],typography:["horizontalEllipsis","enDash","emDash"],quotes:["quotesPrimary","quotesSecondary"]},L_=["symbols","mathematical","typography","quotes"];function O_(t){return"string"==typeof t?new RegExp(`(${vk(t)})$`):t}function z_(t){return"string"==typeof t?()=>[t]:t instanceof Array?()=>t:t}function M_(t){return(t.textNode?t.textNode:t.nodeAfter).getAttributes()}function N_(t){return new RegExp(`(^|\\s)(${t})([^${t}]*)(${t})$`)}function H_(t,e,n,i){return i.createRange(j_(t,e,n,!0,i),j_(t,e,n,!1,i))}function j_(t,e,n,i,o){let r=t.textNode||(i?t.nodeBefore:t.nodeAfter),s=null;for(;r&&r.getAttribute(e)==n;)s=r,r=i?r.previousSibling:r.nextSibling;return s?o.createPositionAt(s,i?"before":"after"):t}function q_(t,e,n,i){const o=t.editing.view,r=new Set;o.document.registerPostFixer((o=>{const s=t.model.document.selection;let a=!1;if(s.hasAttribute(e)){const c=H_(s.getFirstPosition(),e,s.getAttribute(e),t.model),l=t.editing.mapper.toViewRange(c);for(const t of l.getItems())t.is("element",n)&&!t.hasClass(i)&&(o.addClass(i,t),r.add(t),a=!0)}return a})),t.conversion.for("editingDowncast").add((t=>{function e(){o.change((t=>{for(const e of r.values())t.removeClass(i,e),r.delete(e)}))}t.on("insert",e,{priority:"highest"}),t.on("remove",e,{priority:"highest"}),t.on("attribute",e,{priority:"highest"}),t.on("selection",e,{priority:"highest"})}))}function W_(t,e,n,i){let o,r=null;"function"==typeof i?o=i:(r=t.commands.get(i),o=()=>{t.execute(i)}),t.model.document.on("change:data",((s,a)=>{if(r&&!r.isEnabled||!e.isEnabled)return;const c=$o(t.model.document.selection.getRanges());if(!c.isCollapsed)return;if(a.isUndo||!a.isLocal)return;const l=Array.from(t.model.document.differ.getChanges()),d=l[0];if(1!=l.length||"insert"!==d.type||"$text"!=d.name||1!=d.length)return;const h=d.position.parent;if(h.is("element","codeBlock"))return;if(h.is("element","listItem")&&"function"!=typeof i&&!["numberedList","bulletedList","todoList"].includes(i))return;if(r&&!0===r.value)return;const u=h.getChild(0),m=t.model.createRangeOn(u);if(!m.containsRange(c)&&!c.end.isEqual(m.end))return;const g=n.exec(u.data.substr(0,c.end.offset));g&&t.model.enqueueChange((e=>{const n=e.createPositionAt(h,0),i=e.createPositionAt(h,g[0].length),r=new cl(n,i);if(!1!==o({match:g})){e.remove(r);const n=t.model.document.selection.getFirstRange(),i=e.createRangeIn(h);!h.isEmpty||i.isEqual(n)||i.containsRange(n,!0)||e.remove(h)}r.detach(),t.model.enqueueChange((()=>{t.plugins.get("Delete").requestUndoOnBackspace()}))}))}))}function U_(t,e,n,i){let o,r;n instanceof RegExp?o=n:r=n,r=r||(t=>{let e;const n=[],i=[];for(;null!==(e=o.exec(t))&&!(e&&e.length<4);){let{index:t,1:o,2:r,3:s}=e;const a=o+r+s;t+=e[0].length-a.length;const c=[t,t+o.length],l=[t+o.length+r.length,t+o.length+r.length+s.length];n.push(c),n.push(l),i.push([t+o.length,t+o.length+r.length])}return{remove:n,format:i}}),t.model.document.on("change:data",((n,o)=>{if(o.isUndo||!o.isLocal||!e.isEnabled)return;const s=t.model,a=s.document.selection;if(!a.isCollapsed)return;const c=Array.from(s.document.differ.getChanges()),l=c[0];if(1!=c.length||"insert"!==l.type||"$text"!=l.name||1!=l.length)return;const d=a.focus,h=d.parent,{text:u,range:m}=function(t,e){let n=t.start;const i=Array.from(t.getItems()).reduce(((t,i)=>!i.is("$text")&&!i.is("$textProxy")||i.getAttribute("code")?(n=e.createPositionAfter(i),""):t+i.data),"");return{text:i,range:e.createRange(n,t.end)}}(s.createRange(s.createPositionAt(h,0),d),s),g=r(u),p=$_(m.start,g.format,s),f=$_(m.start,g.remove,s);p.length&&f.length&&s.enqueueChange((e=>{if(!1!==i(e,p)){for(const t of f.reverse())e.remove(t);s.enqueueChange((()=>{t.plugins.get("Delete").requestUndoOnBackspace()}))}}))}))}function $_(t,e,n){return e.filter((t=>void 0!==t[0]&&void 0!==t[1])).map((e=>n.createRange(t.getShiftedBy(e[0]),t.getShiftedBy(e[1]))))}function G_(t,e){return(n,i)=>{if(!t.commands.get(e).isEnabled)return!1;const o=t.model.schema.getValidRanges(i,e);for(const t of o)n.setAttribute(e,!0,t);n.removeSelectionAttribute(e)}}class K_ extends ir{constructor(t,e){super(t),this.attributeKey=e}refresh(){const t=this.editor.model,e=t.document;this.value=this._getValueFromFirstAllowedNode(),this.isEnabled=t.schema.checkAttributeInSelection(e.selection,this.attributeKey)}execute(t={}){const e=this.editor.model,n=e.document.selection,i=void 0===t.forceValue?!this.value:t.forceValue;e.change((t=>{if(n.isCollapsed)i?t.setSelectionAttribute(this.attributeKey,!0):t.removeSelectionAttribute(this.attributeKey);else{const o=e.schema.getValidRanges(n.getRanges(),this.attributeKey);for(const e of o)i?t.setAttribute(this.attributeKey,i,e):t.removeAttribute(this.attributeKey,e)}}))}_getValueFromFirstAllowedNode(){const t=this.editor.model,e=t.schema,n=t.document.selection;if(n.isCollapsed)return n.hasAttribute(this.attributeKey);for(const t of n.getRanges())for(const n of t.getItems())if(e.checkAttribute(n,this.attributeKey))return n.hasAttribute(this.attributeKey);return!1}}const J_="bold";class Z_ extends er{static get pluginName(){return"BoldEditing"}init(){const t=this.editor,e=this.editor.t;t.model.schema.extend("$text",{allowAttributes:J_}),t.model.schema.setAttributeProperties(J_,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:J_,view:"strong",upcastAlso:["b",t=>{const e=t.getStyle("font-weight");return e&&("bold"==e||Number(e)>=600)?{name:!0,styles:["font-weight"]}:null}]}),t.commands.add(J_,new K_(t,J_)),t.keystrokes.set("CTRL+B",J_),t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Bold text"),keystroke:"CTRL+B"}]})}}function Y_({editor:t,commandName:e,plugin:n,icon:i,label:o,keystroke:r}){return s=>{const a=t.commands.get(e),c=new s(t.locale);return c.set({label:o,icon:i,keystroke:r,isToggleable:!0}),c.bind("isEnabled").to(a,"isEnabled"),n.listenTo(c,"execute",(()=>{t.execute(e),t.editing.view.focus()})),c}}const Q_="bold";class X_ extends er{static get pluginName(){return"BoldUI"}init(){const t=this.editor,e=t.locale.t,n=t.commands.get(Q_),i=Y_({editor:t,commandName:Q_,plugin:this,icon:ym.bold,label:e("Bold"),keystroke:"CTRL+B"});t.ui.componentFactory.add(Q_,(()=>{const t=i(mg);return t.set({tooltip:!0}),t.bind("isOn").to(n,"value"),t})),t.ui.componentFactory.add("menuBar:"+Q_,(()=>i(mw)))}}const tA="code";class eA extends er{static get pluginName(){return"CodeEditing"}static get requires(){return[D_]}init(){const t=this.editor,e=this.editor.t;t.model.schema.extend("$text",{allowAttributes:tA}),t.model.schema.setAttributeProperties(tA,{isFormatting:!0,copyOnEnter:!1}),t.conversion.attributeToElement({model:tA,view:"code",upcastAlso:{styles:{"word-wrap":"break-word"}}}),t.commands.add(tA,new K_(t,tA)),t.plugins.get(D_).registerAttribute(tA),q_(t,tA,"code","ck-code_selected"),t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Move out of an inline code style"),keystroke:[["arrowleft","arrowleft"],["arrowright","arrowright"]]}]})}}var nA=n(4199),iA={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(nA.A,iA);nA.A.locals;const oA="code";class rA extends er{static get pluginName(){return"CodeUI"}init(){const t=this.editor,e=t.locale.t,n=Y_({editor:t,commandName:oA,plugin:this,icon:'',label:e("Code")});t.ui.componentFactory.add(oA,(()=>{const e=n(mg),i=t.commands.get(oA);return e.set({tooltip:!0}),e.bind("isOn").to(i,"value"),e})),t.ui.componentFactory.add("menuBar:"+oA,(()=>n(mw)))}}const sA="italic";class aA extends er{static get pluginName(){return"ItalicEditing"}init(){const t=this.editor,e=this.editor.t;t.model.schema.extend("$text",{allowAttributes:sA}),t.model.schema.setAttributeProperties(sA,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:sA,view:"i",upcastAlso:["em",{styles:{"font-style":"italic"}}]}),t.commands.add(sA,new K_(t,sA)),t.keystrokes.set("CTRL+I",sA),t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Italic text"),keystroke:"CTRL+I"}]})}}const cA="italic";class lA extends er{static get pluginName(){return"ItalicUI"}init(){const t=this.editor,e=t.commands.get(cA),n=t.locale.t,i=Y_({editor:t,commandName:cA,plugin:this,icon:'',keystroke:"CTRL+I",label:n("Italic")});t.ui.componentFactory.add(cA,(()=>{const t=i(mg);return t.set({tooltip:!0}),t.bind("isOn").to(e,"value"),t})),t.ui.componentFactory.add("menuBar:"+cA,(()=>i(mw)))}}const dA="strikethrough";class hA extends er{static get pluginName(){return"StrikethroughEditing"}init(){const t=this.editor,e=this.editor.t;t.model.schema.extend("$text",{allowAttributes:dA}),t.model.schema.setAttributeProperties(dA,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:dA,view:"s",upcastAlso:["del","strike",{styles:{"text-decoration":"line-through"}}]}),t.commands.add(dA,new K_(t,dA)),t.keystrokes.set("CTRL+SHIFT+X","strikethrough"),t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Strikethrough text"),keystroke:"CTRL+SHIFT+X"}]})}}const uA="strikethrough";class mA extends er{static get pluginName(){return"StrikethroughUI"}init(){const t=this.editor,e=t.locale.t,n=Y_({editor:t,commandName:uA,plugin:this,icon:'',keystroke:"CTRL+SHIFT+X",label:e("Strikethrough")});t.ui.componentFactory.add(uA,(()=>{const e=n(mg),i=t.commands.get(uA);return e.set({tooltip:!0}),e.bind("isOn").to(i,"value"),e})),t.ui.componentFactory.add("menuBar:"+uA,(()=>n(mw)))}}const gA="subscript";class pA extends er{static get pluginName(){return"SubscriptEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:gA}),t.model.schema.setAttributeProperties(gA,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:gA,view:"sub",upcastAlso:[{styles:{"vertical-align":"sub"}}]}),t.commands.add(gA,new K_(t,gA))}}const fA="subscript";class bA extends er{static get pluginName(){return"SubscriptUI"}init(){const t=this.editor,e=t.locale.t,n=Y_({editor:t,commandName:fA,plugin:this,icon:'',label:e("Subscript")});t.ui.componentFactory.add(fA,(()=>{const e=n(mg),i=t.commands.get(fA);return e.set({tooltip:!0}),e.bind("isOn").to(i,"value"),e})),t.ui.componentFactory.add("menuBar:"+fA,(()=>n(mw)))}}const kA="superscript";class wA extends er{static get pluginName(){return"SuperscriptEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:kA}),t.model.schema.setAttributeProperties(kA,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:kA,view:"sup",upcastAlso:[{styles:{"vertical-align":"super"}}]}),t.commands.add(kA,new K_(t,kA))}}const _A="superscript";class AA extends er{static get pluginName(){return"SuperscriptUI"}init(){const t=this.editor,e=t.locale.t,n=Y_({editor:t,commandName:_A,plugin:this,icon:'',label:e("Superscript")});t.ui.componentFactory.add(_A,(()=>{const e=n(mg),i=t.commands.get(_A);return e.set({tooltip:!0}),e.bind("isOn").to(i,"value"),e})),t.ui.componentFactory.add("menuBar:"+_A,(()=>n(mw)))}}const CA="underline";class vA extends er{static get pluginName(){return"UnderlineEditing"}init(){const t=this.editor,e=this.editor.t;t.model.schema.extend("$text",{allowAttributes:CA}),t.model.schema.setAttributeProperties(CA,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:CA,view:"u",upcastAlso:{styles:{"text-decoration":"underline"}}}),t.commands.add(CA,new K_(t,CA)),t.keystrokes.set("CTRL+U","underline"),t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Underline text"),keystroke:"CTRL+U"}]})}}const yA="underline";class xA extends er{static get pluginName(){return"UnderlineUI"}init(){const t=this.editor,e=t.commands.get(yA),n=t.locale.t,i=Y_({editor:t,commandName:yA,plugin:this,icon:'',label:n("Underline"),keystroke:"CTRL+U"});t.ui.componentFactory.add(yA,(()=>{const t=i(mg);return t.set({tooltip:!0}),t.bind("isOn").to(e,"value"),t})),t.ui.componentFactory.add("menuBar:"+yA,(()=>i(mw)))}}function*EA(t,e){for(const n of e)n&&t.getAttributeProperties(n[0]).copyOnEnter&&(yield n)}class DA extends ir{execute(){this.editor.model.change((t=>{this.enterBlock(t),this.fire("afterExecute",{writer:t})}))}enterBlock(t){const e=this.editor.model,n=e.document.selection,i=e.schema,o=n.isCollapsed,r=n.getFirstRange(),s=r.start.parent,a=r.end.parent;if(i.isLimit(s)||i.isLimit(a))return o||s!=a||e.deleteContent(n),!1;if(o){const e=EA(t.model.schema,n.getAttributes());return BA(t,r.start),t.setSelectionAttribute(e),!0}{const i=!(r.start.isAtStart&&r.end.isAtEnd),o=s==a;if(e.deleteContent(n,{leaveUnmerged:i}),i){if(o)return BA(t,n.focus),!0;t.setSelection(a,0)}}return!1}}function BA(t,e){t.split(e),t.setSelection(e.parent.nextSibling,0)}const SA={insertParagraph:{isSoft:!1},insertLineBreak:{isSoft:!0}};class TA extends Da{constructor(t){super(t);const e=this.document;let n=!1;e.on("keydown",((t,e)=>{n=e.shiftKey})),e.on("beforeinput",((i,o)=>{if(!this.isEnabled)return;let r=o.inputType;s.isSafari&&n&&"insertParagraph"==r&&(r="insertLineBreak");const a=o.domEvent,c=SA[r];if(!c)return;const l=new ys(e,"enter",o.targetRanges[0]);e.fire(l,new Sa(t,a,{isSoft:c.isSoft})),l.stop.called&&i.stop()}))}observe(){}stopObserving(){}}class IA extends er{static get pluginName(){return"Enter"}init(){const t=this.editor,e=t.editing.view,n=e.document,i=this.editor.t;e.addObserver(TA),t.commands.add("enter",new DA(t)),this.listenTo(n,"enter",((i,o)=>{n.isComposing||o.preventDefault(),o.isSoft||(t.execute("enter"),e.scrollToTheSelection())}),{priority:"low"}),t.accessibility.addKeystrokeInfos({keystrokes:[{label:i("Insert a hard break (a new paragraph)"),keystroke:"Enter"}]})}}class PA extends ir{execute(){const t=this.editor.model,e=t.document;t.change((n=>{!function(t,e,n){const i=n.isCollapsed,o=n.getFirstRange(),r=o.start.parent,s=o.end.parent,a=r==s;if(i){const i=EA(t.schema,n.getAttributes());RA(t,e,o.end),e.removeSelectionAttribute(n.getAttributeKeys()),e.setSelectionAttribute(i)}else{const i=!(o.start.isAtStart&&o.end.isAtEnd);t.deleteContent(n,{leaveUnmerged:i}),a?RA(t,e,n.focus):i&&e.setSelection(s,0)}}(t,n,e.selection),this.fire("afterExecute",{writer:n})}))}refresh(){const t=this.editor.model,e=t.document;this.isEnabled=function(t,e){if(e.rangeCount>1)return!1;const n=e.anchor;if(!n||!t.checkChild(n,"softBreak"))return!1;const i=e.getFirstRange(),o=i.start.parent,r=i.end.parent;if((VA(o,t)||VA(r,t))&&o!==r)return!1;return!0}(t.schema,e.selection)}}function RA(t,e,n){const i=e.createElement("softBreak");t.insertContent(i,n),e.setSelection(i,"after")}function VA(t,e){return!t.is("rootElement")&&(e.isLimit(t)||VA(t.parent,e))}class FA extends er{static get pluginName(){return"ShiftEnter"}init(){const t=this.editor,e=t.model.schema,n=t.conversion,i=t.editing.view,o=i.document,r=this.editor.t;e.register("softBreak",{allowWhere:"$text",isInline:!0}),n.for("upcast").elementToElement({model:"softBreak",view:"br"}),n.for("downcast").elementToElement({model:"softBreak",view:(t,{writer:e})=>e.createEmptyElement("br")}),i.addObserver(TA),t.commands.add("shiftEnter",new PA(t)),this.listenTo(o,"enter",((e,n)=>{o.isComposing||n.preventDefault(),n.isSoft&&(t.execute("shiftEnter"),i.scrollToTheSelection())}),{priority:"low"}),t.accessibility.addKeystrokeInfos({keystrokes:[{label:r("Insert a soft break (a <br> element)"),keystroke:"Shift+Enter"}]})}}class LA extends ir{refresh(){this.value=this._getValue(),this.isEnabled=this._checkEnabled()}execute(t={}){const e=this.editor.model,n=e.schema,i=e.document.selection,o=Array.from(i.getSelectedBlocks()),r=void 0===t.forceValue?!this.value:t.forceValue;e.change((t=>{if(r){const e=o.filter((t=>OA(t)||MA(n,t)));this._applyQuote(t,e)}else this._removeQuote(t,o.filter(OA))}))}_getValue(){const t=$o(this.editor.model.document.selection.getSelectedBlocks());return!(!t||!OA(t))}_checkEnabled(){if(this.value)return!0;const t=this.editor.model.document.selection,e=this.editor.model.schema,n=$o(t.getSelectedBlocks());return!!n&&MA(e,n)}_removeQuote(t,e){zA(t,e).reverse().forEach((e=>{if(e.start.isAtStart&&e.end.isAtEnd)return void t.unwrap(e.start.parent);if(e.start.isAtStart){const n=t.createPositionBefore(e.start.parent);return void t.move(e,n)}e.end.isAtEnd||t.split(e.end);const n=t.createPositionAfter(e.end.parent);t.move(e,n)}))}_applyQuote(t,e){const n=[];zA(t,e).reverse().forEach((e=>{let i=OA(e.start);i||(i=t.createElement("blockQuote"),t.wrap(e,i)),n.push(i)})),n.reverse().reduce(((e,n)=>e.nextSibling==n?(t.merge(t.createPositionAfter(e)),e):n))}}function OA(t){return"blockQuote"==t.parent.name?t.parent:null}function zA(t,e){let n,i=0;const o=[];for(;i{const i=t.model.document.differ.getChanges();for(const t of i)if("insert"==t.type){const i=t.position.nodeAfter;if(!i)continue;if(i.is("element","blockQuote")&&i.isEmpty)return n.remove(i),!0;if(i.is("element","blockQuote")&&!e.checkChild(t.position,i))return n.unwrap(i),!0;if(i.is("element")){const t=n.createRangeIn(i);for(const i of t.getItems())if(i.is("element","blockQuote")&&!e.checkChild(n.createPositionBefore(i),i))return n.unwrap(i),!0}}else if("remove"==t.type){const e=t.position.parent;if(e.is("element","blockQuote")&&e.isEmpty)return n.remove(e),!0}return!1}));const n=this.editor.editing.view.document,i=t.model.document.selection,o=t.commands.get("blockQuote");this.listenTo(n,"enter",((e,n)=>{if(!i.isCollapsed||!o.value)return;i.getLastPosition().parent.isEmpty&&(t.execute("blockQuote"),t.editing.view.scrollToTheSelection(),n.preventDefault(),e.stop())}),{context:"blockquote"}),this.listenTo(n,"delete",((e,n)=>{if("backward"!=n.direction||!i.isCollapsed||!o.value)return;const r=i.getLastPosition().parent;r.isEmpty&&!r.previousSibling&&(t.execute("blockQuote"),t.editing.view.scrollToTheSelection(),n.preventDefault(),e.stop())}),{context:"blockquote"})}}var HA=n(8708),jA={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(HA.A,jA);HA.A.locals;class qA extends er{static get pluginName(){return"BlockQuoteUI"}init(){const t=this.editor,e=t.commands.get("blockQuote");t.ui.componentFactory.add("blockQuote",(()=>{const t=this._createButton(mg);return t.set({tooltip:!0}),t.bind("isOn").to(e,"value"),t})),t.ui.componentFactory.add("menuBar:blockQuote",(()=>this._createButton(mw)))}_createButton(t){const e=this.editor,n=e.locale,i=e.commands.get("blockQuote"),o=new t(e.locale),r=n.t;return o.set({label:r("Block quote"),icon:ym.quote,isToggleable:!0}),o.bind("isEnabled").to(i,"isEnabled"),this.listenTo(o,"execute",(()=>{e.execute("blockQuote"),e.editing.view.focus()})),o}}class WA extends ir{constructor(t){super(t),this._isEnabledBasedOnSelection=!1}refresh(){const t=this.editor.model,e=$o(t.document.selection.getSelectedBlocks());this.value=!!e&&e.is("element","paragraph"),this.isEnabled=!!e&&UA(e,t.schema)}execute(t={}){const e=this.editor.model,n=e.document,i=t.selection||n.selection;e.canEditAt(i)&&e.change((t=>{const n=i.getSelectedBlocks();for(const i of n)!i.is("element","paragraph")&&UA(i,e.schema)&&t.rename(i,"paragraph")}))}}function UA(t,e){return e.checkChild(t.parent,"paragraph")&&!e.isObject(t)}class $A extends ir{constructor(t){super(t),this._isEnabledBasedOnSelection=!1}execute(t){const e=this.editor.model,n=t.attributes;let i=t.position;e.canEditAt(i)&&e.change((t=>{if(i=this._findPositionToInsertParagraph(i,t),!i)return;const o=t.createElement("paragraph");n&&e.schema.setAllowedAttributes(o,n,t),e.insertContent(o,i),t.setSelection(o,"in")}))}_findPositionToInsertParagraph(t,e){const n=this.editor.model;if(n.schema.checkChild(t,"paragraph"))return t;const i=n.schema.findAllowedParent(t,"paragraph");if(!i)return null;const o=t.parent,r=n.schema.checkChild(o,"$text");return o.isEmpty||r&&t.isAtEnd?n.createPositionAfter(o):!o.isEmpty&&r&&t.isAtStart?n.createPositionBefore(o):e.split(t,i).position}}const GA=class extends er{static get pluginName(){return"Paragraph"}init(){const t=this.editor,e=t.model;t.commands.add("paragraph",new WA(t)),t.commands.add("insertParagraph",new $A(t)),e.schema.register("paragraph",{inheritAllFrom:"$block"}),t.conversion.elementToElement({model:"paragraph",view:"p"}),t.conversion.for("upcast").elementToElement({model:(t,{writer:e})=>GA.paragraphLikeElements.has(t.name)?t.isEmpty?null:e.createElement("paragraph"):null,view:/.+/,converterPriority:"low"})}};let KA=GA;KA.paragraphLikeElements=new Set(["blockquote","dd","div","dt","h1","h2","h3","h4","h5","h6","li","p","td","th"]);const JA=ym.paragraph;class ZA extends ir{constructor(t,e){super(t),this.modelElements=e}refresh(){const t=$o(this.editor.model.document.selection.getSelectedBlocks());this.value=!!t&&this.modelElements.includes(t.name)&&t.name,this.isEnabled=!!t&&this.modelElements.some((e=>YA(t,e,this.editor.model.schema)))}execute(t){const e=this.editor.model,n=e.document,i=t.value;e.change((t=>{const o=Array.from(n.selection.getSelectedBlocks()).filter((t=>YA(t,i,e.schema)));for(const e of o)e.is("element",i)||t.rename(e,i)}))}}function YA(t,e,n){return n.checkChild(t.parent,e)&&!n.isObject(t)}const QA="paragraph";class XA extends er{static get pluginName(){return"HeadingEditing"}constructor(t){super(t),t.config.define("heading",{options:[{model:"paragraph",title:"Paragraph",class:"ck-heading_paragraph"},{model:"heading1",view:"h2",title:"Heading 1",class:"ck-heading_heading1"},{model:"heading2",view:"h3",title:"Heading 2",class:"ck-heading_heading2"},{model:"heading3",view:"h4",title:"Heading 3",class:"ck-heading_heading3"}]})}static get requires(){return[KA]}init(){const t=this.editor,e=t.config.get("heading.options"),n=[];for(const i of e)"paragraph"!==i.model&&(t.model.schema.register(i.model,{inheritAllFrom:"$block"}),t.conversion.elementToElement(i),n.push(i.model));this._addDefaultH1Conversion(t),t.commands.add("heading",new ZA(t,n))}afterInit(){const t=this.editor,e=t.commands.get("enter"),n=t.config.get("heading.options");e&&this.listenTo(e,"afterExecute",((e,i)=>{const o=t.model.document.selection.getFirstPosition().parent;n.some((t=>o.is("element",t.model)))&&!o.is("element",QA)&&0===o.childCount&&i.writer.rename(o,QA)}))}_addDefaultH1Conversion(t){t.conversion.for("upcast").elementToElement({model:"heading1",view:"h1",converterPriority:f.low+1})}}function tC(t){const e=t.t,n={Paragraph:e("Paragraph"),"Heading 1":e("Heading 1"),"Heading 2":e("Heading 2"),"Heading 3":e("Heading 3"),"Heading 4":e("Heading 4"),"Heading 5":e("Heading 5"),"Heading 6":e("Heading 6")};return t.config.get("heading.options").map((t=>{const e=n[t.title];return e&&e!=t.title&&(t.title=e),t}))}var eC=n(6269),nC={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(eC.A,nC);eC.A.locals;class iC extends er{static get pluginName(){return"HeadingUI"}init(){const t=this.editor,e=t.t,n=tC(t),i=e("Choose heading"),o=e("Heading");t.ui.componentFactory.add("heading",(e=>{const r={},s=new Uo,a=t.commands.get("heading"),c=t.commands.get("paragraph"),l=[a];for(const t of n){const e={type:"button",model:new ak({label:t.title,class:t.class,role:"menuitemradio",withText:!0})};"paragraph"===t.model?(e.model.bind("isOn").to(c,"value"),e.model.set("commandName","paragraph"),l.push(c)):(e.model.bind("isOn").to(a,"value",(e=>e===t.model)),e.model.set({commandName:"heading",commandValue:t.model})),s.add(e),r[t.model]=t.title}const d=Ip(e);return Vp(d,s,{ariaLabel:o,role:"menu"}),d.buttonView.set({ariaLabel:o,ariaLabelledBy:void 0,isOn:!1,withText:!0,tooltip:o}),d.extendTemplate({attributes:{class:["ck-heading-dropdown"]}}),d.bind("isEnabled").toMany(l,"isEnabled",((...t)=>t.some((t=>t)))),d.buttonView.bind("label").to(a,"value",c,"value",((t,e)=>{const n=e?"paragraph":t;return"boolean"==typeof n?i:r[n]?r[n]:i})),d.buttonView.bind("ariaLabel").to(a,"value",c,"value",((t,e)=>{const n=e?"paragraph":t;return"boolean"==typeof n?o:r[n]?`${r[n]}, ${o}`:o})),this.listenTo(d,"execute",(e=>{const{commandName:n,commandValue:i}=e.source;t.execute(n,i?{value:i}:void 0),t.editing.view.focus()})),d})),t.ui.componentFactory.add("menuBar:heading",(i=>{const o=new lw(i),r=t.commands.get("heading"),s=t.commands.get("paragraph"),a=[r],c=new dw(i);o.set({class:"ck-heading-dropdown"}),c.set({ariaLabel:e("Heading"),role:"menu"}),o.buttonView.set({label:e("Heading")}),o.panelView.children.add(c);for(const e of n){const n=new tw(i,o),l=new mw(i);n.children.add(l),c.items.add(n),l.set({label:e.title,role:"menuitemradio",class:e.class}),l.bind("ariaChecked").to(l,"isOn"),l.delegate("execute").to(o),l.on("execute",(()=>{const n="paragraph"===e.model?"paragraph":"heading";t.execute(n,{value:e.model}),t.editing.view.focus()})),"paragraph"===e.model?(l.bind("isOn").to(s,"value"),a.push(s)):l.bind("isOn").to(r,"value",(t=>t===e.model))}return o.bind("isEnabled").toMany(a,"isEnabled",((...t)=>t.some((t=>t)))),o}))}}const oC={heading1:ym.heading1,heading2:ym.heading2,heading3:ym.heading3,heading4:ym.heading4,heading5:ym.heading5,heading6:ym.heading6};class rC extends Ta{constructor(t){super(t),this.domEventType=["paste","copy","cut","drop","dragover","dragstart","dragend","dragenter","dragleave"];const e=this.document;function n(t){return(n,i)=>{i.preventDefault();const o=i.dropRange?[i.dropRange]:null,r=new m(e,t);e.fire(r,{dataTransfer:i.dataTransfer,method:n.name,targetRanges:o,target:i.target,domEvent:i.domEvent}),r.stop.called&&i.stopPropagation()}}this.listenTo(e,"paste",n("clipboardInput"),{priority:"low"}),this.listenTo(e,"drop",n("clipboardInput"),{priority:"low"}),this.listenTo(e,"dragover",n("dragging"),{priority:"low"})}onDomEvent(t){const e="clipboardData"in t?t.clipboardData:t.dataTransfer,n="drop"==t.type||"paste"==t.type,i={dataTransfer:new kc(e,{cacheFiles:n})};"drop"!=t.type&&"dragover"!=t.type||(i.dropRange=function(t,e){const n=e.target.ownerDocument,i=e.clientX,o=e.clientY;let r;n.caretRangeFromPoint&&n.caretRangeFromPoint(i,o)?r=n.caretRangeFromPoint(i,o):e.rangeParent&&(r=n.createRange(),r.setStart(e.rangeParent,e.rangeOffset),r.collapse(!0));if(r)return t.domConverter.domRangeToView(r);return null}(this.view,t)),this.fire(t.type,t,i)}}const sC=["figcaption","li"],aC=["ol","ul"];function cC(t){if(t.is("$text")||t.is("$textProxy"))return t.data;if(t.is("element","img")&&t.hasAttribute("alt"))return t.getAttribute("alt");if(t.is("element","br"))return"\n";let e="",n=null;for(const i of t.getChildren())e+=lC(i,n)+cC(i),n=i;return e}function lC(t,e){return e?t.is("element","li")&&!t.isEmpty&&t.getChild(0).is("containerElement")||aC.includes(t.name)&&aC.includes(e.name)?"\n\n":t.is("containerElement")||e.is("containerElement")?sC.includes(t.name)||sC.includes(e.name)?"\n":"\n\n":"":""}const dC=function(t,e){return t&&Co(t,e,an)};const hC=function(t,e,n,i){var o=n.length,r=o,s=!i;if(null==t)return!r;for(t=Object(t);o--;){var a=n[o];if(s&&a[2]?a[1]!==t[a[0]]:!(a[0]in t))return!1}for(;++oe in t?xC(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class PC extends er{constructor(){super(...arguments),this._markersToCopy=new Map}static get pluginName(){return"ClipboardMarkersUtils"}_registerMarkerToCopy(t,e){this._markersToCopy.set(t,e)}_copySelectedFragmentWithMarkers(t,e,n=t=>t.model.getSelectedContent(t.model.document.selection)){return this.editor.model.change((i=>{const o=i.model.document.selection;i.setSelection(e);const r=this._insertFakeMarkersIntoSelection(i,i.model.document.selection,t),s=n(i),a=this._removeFakeMarkersInsideElement(i,s);for(const[t,e]of Object.entries(r)){a[t]||(a[t]=i.createRangeIn(s));for(const t of e)i.remove(t)}s.markers.clear();for(const[t,e]of Object.entries(a))s.markers.set(t,e);return i.setSelection(o),s}))}_pasteMarkersIntoTransformedElement(t,e){const n=this._getPasteMarkersFromRangeMap(t);return this.editor.model.change((t=>{const i=this._insertFakeMarkersElements(t,n),o=e(t),r=this._removeFakeMarkersInsideElement(t,o);for(const e of Object.values(i).flat())t.remove(e);for(const[e,n]of Object.entries(r))t.model.markers.has(e)||t.addMarker(e,{usingOperation:!0,affectsData:!0,range:n});return o}))}_pasteFragmentWithMarkers(t){const e=this._getPasteMarkersFromRangeMap(t.markers);t.markers.clear();for(const n of e)t.markers.set(n.name,n.range);return this.editor.model.insertContent(t)}_forceMarkersCopy(t,e,n={allowedActions:"all",copyPartiallySelected:!0,duplicateOnPaste:!0}){const i=this._markersToCopy.get(t);this._markersToCopy.set(t,n),e(),i?this._markersToCopy.set(t,i):this._markersToCopy.delete(t)}_isMarkerCopyable(t,e){const n=this._getMarkerClipboardConfig(t);if(!n)return!1;if(!e)return!0;const{allowedActions:i}=n;return"all"===i||i.includes(e)}_hasMarkerConfiguration(t){return!!this._getMarkerClipboardConfig(t)}_getMarkerClipboardConfig(t){const[e]=t.split(":");return this._markersToCopy.get(e)||null}_insertFakeMarkersIntoSelection(t,e,n){const i=this._getCopyableMarkersFromSelection(t,e,n);return this._insertFakeMarkersElements(t,i)}_getCopyableMarkersFromSelection(t,e,n){const i=Array.from(e.getRanges()),o=new Set(i.flatMap((e=>Array.from(t.model.markers.getMarkersIntersectingRange(e)))));return Array.from(o).filter((t=>{if(!this._isMarkerCopyable(t.name,n))return!1;const{copyPartiallySelected:e}=this._getMarkerClipboardConfig(t.name);if(!e){const e=t.getRange();return i.some((t=>t.containsRange(e,!0)))}return!0})).map((t=>({name:"dragstart"===n?this._getUniqueMarkerName(t.name):t.name,range:t.getRange()})))}_getPasteMarkersFromRangeMap(t,e=null){const{model:n}=this.editor;return(t instanceof Map?Array.from(t.entries()):Object.entries(t)).flatMap((([t,i])=>{if(!this._hasMarkerConfiguration(t))return[{name:t,range:i}];if(this._isMarkerCopyable(t,e)){const e=this._getMarkerClipboardConfig(t),o=n.markers.has(t)&&"$graveyard"===n.markers.get(t).getRange().root.rootName;return(e.duplicateOnPaste||o)&&(t=this._getUniqueMarkerName(t)),[{name:t,range:i}]}return[]}))}_insertFakeMarkersElements(t,e){const n={},i=e.flatMap((t=>{const{start:e,end:n}=t.range;return[{position:e,marker:t,type:"start"},{position:n,marker:t,type:"end"}]})).sort((({position:t},{position:e})=>t.isBefore(e)?1:-1));for(const{position:e,marker:o,type:r}of i){const i=t.createElement("$marker",{"data-name":o.name,"data-type":r});n[o.name]||(n[o.name]=[]),n[o.name].push(i),t.insert(i,e)}return n}_removeFakeMarkersInsideElement(t,e){const n=this._getAllFakeMarkersFromElement(t,e).reduce(((e,n)=>{const i=n.markerElement&&t.createPositionBefore(n.markerElement);let o=e[n.name],r=!1;if(o&&o.start&&o.end){this._getMarkerClipboardConfig(n.name).duplicateOnPaste?e[this._getUniqueMarkerName(n.name)]=e[n.name]:r=!0,o=null}var s,a;return r||(e[n.name]=(s=((t,e)=>{for(var n in e||(e={}))SC.call(e,n)&&IC(t,n,e[n]);if(BC)for(var n of BC(e))TC.call(e,n)&&IC(t,n,e[n]);return t})({},o),a={[n.type]:i},EC(s,DC(a)))),n.markerElement&&t.remove(n.markerElement),e}),{});return yC(n,(n=>new Mc(n.start||t.createPositionFromPath(e,[0]),n.end||t.createPositionAt(e,"end"))))}_getAllFakeMarkersFromElement(t,e){const n=Array.from(t.createRangeIn(e)).flatMap((({item:t})=>{if(!t.is("element","$marker"))return[];const e=t.getAttribute("data-name"),n=t.getAttribute("data-type");return[{markerElement:t,name:e,type:n}]})),i=[],o=[];for(const t of n){if("end"===t.type){n.some((e=>e.name===t.name&&"start"===e.type))||i.push({markerElement:null,name:t.name,type:"start"})}if("start"===t.type){n.some((e=>e.name===t.name&&"end"===e.type))||o.unshift({markerElement:null,name:t.name,type:"end"})}}return[...i,...n,...o]}_getUniqueMarkerName(t){const e=t.split(":"),n=p().substring(1,6);return 3===e.length?`${e.slice(0,2).join(":")}:${n}`:`${e.join(":")}:${n}`}}class RC extends er{static get pluginName(){return"ClipboardPipeline"}static get requires(){return[PC]}init(){this.editor.editing.view.addObserver(rC),this._setupPasteDrop(),this._setupCopyCut()}_fireOutputTransformationEvent(t,e,n){const i=this.editor.plugins.get("ClipboardMarkersUtils");this.editor.model.enqueueChange({isUndoable:"cut"===n},(()=>{const o=i._copySelectedFragmentWithMarkers(n,e);this.fire("outputTransformation",{dataTransfer:t,content:o,method:n})}))}_setupPasteDrop(){const t=this.editor,e=t.model,n=t.editing.view,i=n.document,o=this.editor.plugins.get("ClipboardMarkersUtils");this.listenTo(i,"clipboardInput",((e,n)=>{"paste"!=n.method||t.model.canEditAt(t.model.document.selection)||e.stop()}),{priority:"highest"}),this.listenTo(i,"clipboardInput",((t,e)=>{const i=e.dataTransfer;let o;if(e.content)o=e.content;else{let t="";i.getData("text/html")?t=function(t){return t.replace(/(\s+)<\/span>/g,((t,e)=>1==e.length?" ":e)).replace(//g,"")}(i.getData("text/html")):i.getData("text/plain")&&(((r=(r=i.getData("text/plain")).replace(/&/g,"&").replace(//g,">").replace(/\r?\n\r?\n/g,"

    ").replace(/\r?\n/g,"
    ").replace(/\t/g,"    ").replace(/^\s/," ").replace(/\s$/," ").replace(/\s\s/g,"  ")).includes("

    ")||r.includes("
    "))&&(r=`

    ${r}

    `),t=r),o=this.editor.data.htmlProcessor.toView(t)}var r;const s=new m(this,"inputTransformation");this.fire(s,{content:o,dataTransfer:i,targetRanges:e.targetRanges,method:e.method}),s.stop.called&&t.stop(),n.scrollToTheSelection()}),{priority:"low"}),this.listenTo(this,"inputTransformation",((t,n)=>{if(n.content.isEmpty)return;const i=this.editor.data.toModel(n.content,"$clipboardHolder");0!=i.childCount&&(t.stop(),e.change((()=>{this.fire("contentInsertion",{content:i,method:n.method,dataTransfer:n.dataTransfer,targetRanges:n.targetRanges})})))}),{priority:"low"}),this.listenTo(this,"contentInsertion",((t,e)=>{e.resultRange=o._pasteFragmentWithMarkers(e.content)}),{priority:"low"})}_setupCopyCut(){const t=this.editor,e=t.model.document,n=t.editing.view.document,i=(t,n)=>{const i=n.dataTransfer;n.preventDefault(),this._fireOutputTransformationEvent(i,e.selection,t.name)};this.listenTo(n,"copy",i,{priority:"low"}),this.listenTo(n,"cut",((e,n)=>{t.model.canEditAt(t.model.document.selection)?i(e,n):n.preventDefault()}),{priority:"low"}),this.listenTo(this,"outputTransformation",((e,i)=>{const o=t.data.toView(i.content);n.fire("clipboardOutput",{dataTransfer:i.dataTransfer,content:o,method:i.method})}),{priority:"low"}),this.listenTo(n,"clipboardOutput",((n,i)=>{i.content.isEmpty||(i.dataTransfer.setData("text/html",this.editor.data.htmlProcessor.toData(i.content)),i.dataTransfer.setData("text/plain",cC(i.content))),"cut"==i.method&&t.model.deleteContent(e.selection)}),{priority:"low"})}}class VC extends(S()){constructor(){super(...arguments),this._stack=[]}add(t,e){const n=this._stack,i=n[0];this._insertDescriptor(t);const o=n[0];i===o||FC(i,o)||this.fire("change:top",{oldDescriptor:i,newDescriptor:o,writer:e})}remove(t,e){const n=this._stack,i=n[0];this._removeDescriptor(t);const o=n[0];i===o||FC(i,o)||this.fire("change:top",{oldDescriptor:i,newDescriptor:o,writer:e})}_insertDescriptor(t){const e=this._stack,n=e.findIndex((e=>e.id===t.id));if(FC(t,e[n]))return;n>-1&&e.splice(n,1);let i=0;for(;e[i]&&LC(e[i],t);)i++;e.splice(i,0,t)}_removeDescriptor(t){const e=this._stack,n=e.findIndex((e=>e.id===t));n>-1&&e.splice(n,1)}}function FC(t,e){return t&&e&&t.priority==e.priority&&OC(t.classes)==OC(e.classes)}function LC(t,e){return t.priority>e.priority||!(t.priorityOC(e.classes)}function OC(t){return Array.isArray(t)?t.sort().join(","):t}const zC='',MC="ck-widget",NC="ck-widget_selected";function HC(t){return!!t.is("element")&&!!t.getCustomProperty("widget")}function jC(t,e,n={}){if(!t.is("containerElement"))throw new w("widget-to-widget-wrong-element-type",null,{element:t});return e.setAttribute("contenteditable","false",t),e.addClass(MC,t),e.setCustomProperty("widget",!0,t),t.getFillerOffset=JC,e.setCustomProperty("widgetLabel",[],t),n.label&&function(t,e){const n=t.getCustomProperty("widgetLabel");n.push(e)}(t,n.label),n.hasSelectionHandle&&function(t,e){const n=e.createUIElement("div",{class:"ck ck-widget__selection-handle"},(function(t){const e=this.toDomElement(t),n=new lg;return n.set("content",zC),n.render(),e.appendChild(n.element),e}));e.insert(e.createPositionAt(t,0),n),e.addClass(["ck-widget_with-selection-handle"],t)}(t,e),UC(t,e),t}function qC(t,e,n){if(e.classes&&n.addClass(_o(e.classes),t),e.attributes)for(const i in e.attributes)n.setAttribute(i,e.attributes[i],t)}function WC(t,e,n){if(e.classes&&n.removeClass(_o(e.classes),t),e.attributes)for(const i in e.attributes)n.removeAttribute(i,t)}function UC(t,e,n=qC,i=WC){const o=new VC;o.on("change:top",((e,o)=>{o.oldDescriptor&&i(t,o.oldDescriptor,o.writer),o.newDescriptor&&n(t,o.newDescriptor,o.writer)}));e.setCustomProperty("addHighlight",((t,e,n)=>o.add(e,n)),t),e.setCustomProperty("removeHighlight",((t,e,n)=>o.remove(e,n)),t)}function $C(t,e,n={}){return e.addClass(["ck-editor__editable","ck-editor__nested-editable"],t),e.setAttribute("role","textbox",t),e.setAttribute("tabindex","-1",t),n.label&&e.setAttribute("aria-label",n.label,t),e.setAttribute("contenteditable",t.isReadOnly?"false":"true",t),t.on("change:isReadOnly",((n,i,o)=>{e.setAttribute("contenteditable",o?"false":"true",t)})),t.on("change:isFocused",((n,i,o)=>{o?e.addClass("ck-editor__nested-editable_focused",t):e.removeClass("ck-editor__nested-editable_focused",t)})),UC(t,e),t}function GC(t,e){const n=t.getSelectedElement();if(n){const i=XC(t);if(i)return e.createRange(e.createPositionAt(n,i))}return e.schema.findOptimalInsertionRange(t)}function KC(t,e){return(n,i)=>{const{mapper:o,viewPosition:r}=i,s=o.findMappedViewAncestor(r);if(!e(s))return;const a=o.toModelElement(s);i.modelPosition=t.createPositionAt(a,r.isAtStart?"before":"after")}}function JC(){return null}function ZC(t){const e=t=>{const{width:e,paddingLeft:n,paddingRight:i}=t.ownerDocument.defaultView.getComputedStyle(t);return parseFloat(e)-(parseFloat(n)||0)-(parseFloat(i)||0)},n=t.parentElement;if(!n)return 0;let i=e(n);let o=0,r=n;for(;isNaN(i);){if(r=r.parentElement,++o>5)return 0;i=e(r)}return i}const YC="widget-type-around";function QC(t,e,n){return!!t&&HC(t)&&!n.isInline(e)}function XC(t){return t.getAttribute(YC)}var tv=n(8508),ev={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(tv.A,ev);tv.A.locals;const nv=["before","after"],iv=(new DOMParser).parseFromString('',"image/svg+xml").firstChild,ov="ck-widget__type-around_disabled";class rv extends er{constructor(){super(...arguments),this._currentFakeCaretModelElement=null}static get pluginName(){return"WidgetTypeAround"}static get requires(){return[IA,v_]}init(){const t=this.editor,e=t.editing.view;this.on("change:isEnabled",((n,i,o)=>{e.change((t=>{for(const n of e.document.roots)o?t.removeClass(ov,n):t.addClass(ov,n)})),o||t.model.change((t=>{t.removeSelectionAttribute(YC)}))})),this._enableTypeAroundUIInjection(),this._enableInsertingParagraphsOnButtonClick(),this._enableInsertingParagraphsOnEnterKeypress(),this._enableInsertingParagraphsOnTypingKeystroke(),this._enableTypeAroundFakeCaretActivationUsingKeyboardArrows(),this._enableDeleteIntegration(),this._enableInsertContentIntegration(),this._enableInsertObjectIntegration(),this._enableDeleteContentIntegration()}destroy(){super.destroy(),this._currentFakeCaretModelElement=null}_insertParagraph(t,e){const n=this.editor,i=n.editing.view,o=n.model.schema.getAttributesWithProperty(t,"copyOnReplace",!0);n.execute("insertParagraph",{position:n.model.createPositionAt(t,e),attributes:o}),i.focus(),i.scrollToTheSelection()}_listenToIfEnabled(t,e,n,i){this.listenTo(t,e,((...t)=>{this.isEnabled&&n(...t)}),i)}_insertParagraphAccordingToFakeCaretPosition(){const t=this.editor.model.document.selection,e=XC(t);if(!e)return!1;const n=t.getSelectedElement();return this._insertParagraph(n,e),!0}_enableTypeAroundUIInjection(){const t=this.editor,e=t.model.schema,n=t.locale.t,i={before:n("Insert paragraph before block"),after:n("Insert paragraph after block")};t.editing.downcastDispatcher.on("insert",((t,o,r)=>{const s=r.mapper.toViewElement(o.item);if(s&&QC(s,o.item,e)){!function(t,e,n){const i=t.createUIElement("div",{class:"ck ck-reset_all ck-widget__type-around"},(function(t){const n=this.toDomElement(t);return function(t,e){for(const n of nv){const i=new Em({tag:"div",attributes:{class:["ck","ck-widget__type-around__button",`ck-widget__type-around__button_${n}`],title:e[n],"aria-hidden":"true"},children:[t.ownerDocument.importNode(iv,!0)]});t.appendChild(i.render())}}(n,e),function(t){const e=new Em({tag:"div",attributes:{class:["ck","ck-widget__type-around__fake-caret"]}});t.appendChild(e.render())}(n),n}));t.insert(t.createPositionAt(n,"end"),i)}(r.writer,i,s);s.getCustomProperty("widgetLabel").push((()=>this.isEnabled?n("Press Enter to type after or press Shift + Enter to type before the widget"):""))}}),{priority:"low"})}_enableTypeAroundFakeCaretActivationUsingKeyboardArrows(){const t=this.editor,e=t.model,n=e.document.selection,i=e.schema,o=t.editing.view;function r(t){return`ck-widget_type-around_show-fake-caret_${t}`}this._listenToIfEnabled(o.document,"arrowKey",((t,e)=>{this._handleArrowKeyPress(t,e)}),{context:[HC,"$text"],priority:"high"}),this._listenToIfEnabled(n,"change:range",((e,n)=>{n.directChange&&t.model.change((t=>{t.removeSelectionAttribute(YC)}))})),this._listenToIfEnabled(e.document,"change:data",(()=>{const e=n.getSelectedElement();if(e){if(QC(t.editing.mapper.toViewElement(e),e,i))return}t.model.change((t=>{t.removeSelectionAttribute(YC)}))})),this._listenToIfEnabled(t.editing.downcastDispatcher,"selection",((t,e,n)=>{const o=n.writer;if(this._currentFakeCaretModelElement){const t=n.mapper.toViewElement(this._currentFakeCaretModelElement);t&&(o.removeClass(nv.map(r),t),this._currentFakeCaretModelElement=null)}const s=e.selection.getSelectedElement();if(!s)return;const a=n.mapper.toViewElement(s);if(!QC(a,s,i))return;const c=XC(e.selection);c&&(o.addClass(r(c),a),this._currentFakeCaretModelElement=s)})),this._listenToIfEnabled(t.ui.focusTracker,"change:isFocused",((e,n,i)=>{i||t.model.change((t=>{t.removeSelectionAttribute(YC)}))}))}_handleArrowKeyPress(t,e){const n=this.editor,i=n.model,o=i.document.selection,r=i.schema,s=n.editing.view,a=function(t,e){const n=wo(t,e);return"down"===n||"right"===n}(e.keyCode,n.locale.contentLanguageDirection),c=s.document.selection.getSelectedElement();let l;QC(c,n.editing.mapper.toModelElement(c),r)?l=this._handleArrowKeyPressOnSelectedWidget(a):o.isCollapsed?l=this._handleArrowKeyPressWhenSelectionNextToAWidget(a):e.shiftKey||(l=this._handleArrowKeyPressWhenNonCollapsedSelection(a)),l&&(e.preventDefault(),t.stop())}_handleArrowKeyPressOnSelectedWidget(t){const e=this.editor.model,n=XC(e.document.selection);return e.change((e=>{if(!n)return e.setSelectionAttribute(YC,t?"after":"before"),!0;if(!(n===(t?"after":"before")))return e.removeSelectionAttribute(YC),!0;return!1}))}_handleArrowKeyPressWhenSelectionNextToAWidget(t){const e=this.editor,n=e.model,i=n.schema,o=e.plugins.get("Widget"),r=o._getObjectElementNextToSelection(t);return!!QC(e.editing.mapper.toViewElement(r),r,i)&&(n.change((e=>{o._setSelectionOverElement(r),e.setSelectionAttribute(YC,t?"before":"after")})),!0)}_handleArrowKeyPressWhenNonCollapsedSelection(t){const e=this.editor,n=e.model,i=n.schema,o=e.editing.mapper,r=n.document.selection,s=t?r.getLastPosition().nodeBefore:r.getFirstPosition().nodeAfter;return!!QC(o.toViewElement(s),s,i)&&(n.change((e=>{e.setSelection(s,"on"),e.setSelectionAttribute(YC,t?"after":"before")})),!0)}_enableInsertingParagraphsOnButtonClick(){const t=this.editor,e=t.editing.view;this._listenToIfEnabled(e.document,"mousedown",((n,i)=>{const o=i.domTarget.closest(".ck-widget__type-around__button");if(!o)return;const r=function(t){return t.classList.contains("ck-widget__type-around__button_before")?"before":"after"}(o),s=function(t,e){const n=t.closest(".ck-widget");return e.mapDomToView(n)}(o,e.domConverter),a=t.editing.mapper.toModelElement(s);this._insertParagraph(a,r),i.preventDefault(),n.stop()}))}_enableInsertingParagraphsOnEnterKeypress(){const t=this.editor,e=t.model.document.selection,n=t.editing.view;this._listenToIfEnabled(n.document,"enter",((n,i)=>{if("atTarget"!=n.eventPhase)return;const o=e.getSelectedElement(),r=t.editing.mapper.toViewElement(o),s=t.model.schema;let a;this._insertParagraphAccordingToFakeCaretPosition()?a=!0:QC(r,o,s)&&(this._insertParagraph(o,i.isSoft?"before":"after"),a=!0),a&&(i.preventDefault(),n.stop())}),{context:HC})}_enableInsertingParagraphsOnTypingKeystroke(){const t=this.editor.editing.view.document;this._listenToIfEnabled(t,"insertText",((e,n)=>{this._insertParagraphAccordingToFakeCaretPosition()&&(n.selection=t.selection)}),{priority:"high"}),s.isAndroid?this._listenToIfEnabled(t,"keydown",((t,e)=>{229==e.keyCode&&this._insertParagraphAccordingToFakeCaretPosition()})):this._listenToIfEnabled(t,"compositionstart",(()=>{this._insertParagraphAccordingToFakeCaretPosition()}),{priority:"high"})}_enableDeleteIntegration(){const t=this.editor,e=t.editing.view,n=t.model,i=n.schema;this._listenToIfEnabled(e.document,"delete",((e,o)=>{if("atTarget"!=e.eventPhase)return;const r=XC(n.document.selection);if(!r)return;const s=o.direction,a=n.document.selection.getSelectedElement(),c="forward"==s;if("before"===r===c)t.execute("delete",{selection:n.createSelection(a,"on")});else{const e=i.getNearestSelectionRange(n.createPositionAt(a,r),s);if(e)if(e.isCollapsed){const o=n.createSelection(e.start);if(n.modifySelection(o,{direction:s}),o.focus.isEqual(e.start)){const t=function(t,e){let n=e;for(const i of e.getAncestors({parentFirst:!0})){if(i.childCount>1||t.isLimit(i))break;n=i}return n}(i,e.start.parent);n.deleteContent(n.createSelection(t,"on"),{doNotAutoparagraph:!0})}else n.change((n=>{n.setSelection(e),t.execute(c?"deleteForward":"delete")}))}else n.change((n=>{n.setSelection(e),t.execute(c?"deleteForward":"delete")}))}o.preventDefault(),e.stop()}),{context:HC})}_enableInsertContentIntegration(){const t=this.editor,e=this.editor.model,n=e.document.selection;this._listenToIfEnabled(t.model,"insertContent",((t,[i,o])=>{if(o&&!o.is("documentSelection"))return;const r=XC(n);return r?(t.stop(),e.change((t=>{const o=n.getSelectedElement(),s=e.createPositionAt(o,r),a=t.createSelection(s),c=e.insertContent(i,a);return t.setSelection(a),c}))):void 0}),{priority:"high"})}_enableInsertObjectIntegration(){const t=this.editor,e=this.editor.model.document.selection;this._listenToIfEnabled(t.model,"insertObject",((t,n)=>{const[,i,o={}]=n;if(i&&!i.is("documentSelection"))return;const r=XC(e);r&&(o.findOptimalPosition=r,n[3]=o)}),{priority:"high"})}_enableDeleteContentIntegration(){const t=this.editor,e=this.editor.model.document.selection;this._listenToIfEnabled(t.model,"deleteContent",((t,[n])=>{if(n&&!n.is("documentSelection"))return;XC(e)&&t.stop()}),{priority:"high"})}}function sv(t){const e=t.model;return(n,i)=>{const o=i.keyCode==go.arrowup,r=i.keyCode==go.arrowdown,s=i.shiftKey,a=e.document.selection;if(!o&&!r)return;const c=r;if(s&&function(t,e){return!t.isCollapsed&&t.isBackward==e}(a,c))return;const l=function(t,e,n){const i=t.model;if(n){const t=e.isCollapsed?e.focus:e.getLastPosition(),n=av(i,t,"forward");if(!n)return null;const o=i.createRange(t,n),r=cv(i.schema,o,"backward");return r?i.createRange(t,r):null}{const t=e.isCollapsed?e.focus:e.getFirstPosition(),n=av(i,t,"backward");if(!n)return null;const o=i.createRange(n,t),r=cv(i.schema,o,"forward");return r?i.createRange(r,t):null}}(t,a,c);if(l){if(l.isCollapsed){if(a.isCollapsed)return;if(s)return}(l.isCollapsed||function(t,e,n){const i=t.model,o=t.view.domConverter;if(n){const t=i.createSelection(e.start);i.modifySelection(t),t.focus.isAtEnd||e.start.isEqual(t.focus)||(e=i.createRange(t.focus,e.end))}const r=t.mapper.toViewRange(e),s=o.viewRangeToDom(r),a=Li.getDomRangeRects(s);let c;for(const t of a)if(void 0!==c){if(Math.round(t.top)>=c)return!1;c=Math.max(c,Math.round(t.bottom))}else c=Math.round(t.bottom);return!0}(t,l,c))&&(e.change((t=>{const n=c?l.end:l.start;if(s){const i=e.createSelection(a.anchor);i.setFocus(n),t.setSelection(i)}else t.setSelection(n)})),n.stop(),i.preventDefault(),i.stopPropagation())}}}function av(t,e,n){const i=t.schema,o=t.createRangeIn(e.root),r="forward"==n?"elementStart":"elementEnd";for(const{previousPosition:t,item:s,type:a}of o.getWalker({startPosition:e,direction:n})){if(i.isLimit(s)&&!i.isInline(s))return t;if(a==r&&i.isBlock(s))return null}return null}function cv(t,e,n){const i="backward"==n?e.end:e.start;if(t.checkChild(i,"$text"))return i;for(const{nextPosition:i}of e.getWalker({direction:n}))if(t.checkChild(i,"$text"))return i;return null}var lv=n(695),dv={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(lv.A,dv);lv.A.locals;class hv extends er{constructor(){super(...arguments),this._previouslySelected=new Set}static get pluginName(){return"Widget"}static get requires(){return[rv,v_]}init(){const t=this.editor,e=t.editing.view,n=e.document,i=t.t;this.editor.editing.downcastDispatcher.on("selection",((e,n,i)=>{const o=i.writer,r=n.selection;if(r.isCollapsed)return;const s=r.getSelectedElement();if(!s)return;const a=t.editing.mapper.toViewElement(s);var c;HC(a)&&(i.consumable.consume(r,"selection")&&o.setSelection(o.createRangeOn(a),{fake:!0,label:(c=a,c.getCustomProperty("widgetLabel").reduce(((t,e)=>"function"==typeof e?t?t+". "+e():e():t?t+". "+e:e),""))}))})),this.editor.editing.downcastDispatcher.on("selection",((t,e,n)=>{this._clearPreviouslySelectedWidgets(n.writer);const i=n.writer,o=i.document.selection;let r=null;for(const t of o.getRanges())for(const e of t){const t=e.item;HC(t)&&!uv(t,r)&&(i.addClass(NC,t),this._previouslySelected.add(t),r=t)}}),{priority:"low"}),e.addObserver(_u),this.listenTo(n,"mousedown",((...t)=>this._onMousedown(...t))),this.listenTo(n,"arrowKey",((...t)=>{this._handleSelectionChangeOnArrowKeyPress(...t)}),{context:[HC,"$text"]}),this.listenTo(n,"arrowKey",((...t)=>{this._preventDefaultOnArrowKeyPress(...t)}),{context:"$root"}),this.listenTo(n,"arrowKey",sv(this.editor.editing),{context:"$text"}),this.listenTo(n,"delete",((t,e)=>{this._handleDelete("forward"==e.direction)&&(e.preventDefault(),t.stop())}),{context:"$root"}),this.listenTo(n,"tab",((t,e)=>{"atTarget"==t.eventPhase&&(e.shiftKey||this._selectFirstNestedEditable()&&(e.preventDefault(),t.stop()))}),{context:HC,priority:"low"}),this.listenTo(n,"tab",((t,e)=>{e.shiftKey&&this._selectAncestorWidget()&&(e.preventDefault(),t.stop())}),{priority:"low"}),this.listenTo(n,"keydown",((t,e)=>{e.keystroke==go.esc&&this._selectAncestorWidget()&&(e.preventDefault(),t.stop())}),{priority:"low"}),t.accessibility.addKeystrokeInfoGroup({id:"widget",label:i("Keystrokes that can be used when a widget is selected (for example: image, table, etc.)"),keystrokes:[{label:i("Insert a new paragraph directly after a widget"),keystroke:"Enter"},{label:i("Insert a new paragraph directly before a widget"),keystroke:"Shift+Enter"},{label:i("Move the caret to allow typing directly before a widget"),keystroke:[["arrowup"],["arrowleft"]]},{label:i("Move the caret to allow typing directly after a widget"),keystroke:[["arrowdown"],["arrowright"]]}]})}_onMousedown(t,e){const n=this.editor,i=n.editing.view,o=i.document;let r=e.target;if(e.domEvent.detail>=3)return void(this._selectBlockContent(r)&&e.preventDefault());if(function(t){let e=t;for(;e;){if(e.is("editableElement")&&!e.is("rootElement"))return!0;if(HC(e))return!1;e=e.parent}return!1}(r))return;if(!HC(r)&&(r=r.findAncestor(HC),!r))return;s.isAndroid&&e.preventDefault(),o.isFocused||i.focus();const a=n.editing.mapper.toModelElement(r);this._setSelectionOverElement(a)}_selectBlockContent(t){const e=this.editor,n=e.model,i=e.editing.mapper,o=n.schema,r=i.findMappedViewAncestor(this.editor.editing.view.createPositionAt(t,0)),s=function(t,e){for(const n of t.getAncestors({includeSelf:!0,parentFirst:!0})){if(e.checkChild(n,"$text"))return n;if(e.isLimit(n)&&!e.isObject(n))break}return null}(i.toModelElement(r),n.schema);return!!s&&(n.change((t=>{const e=o.isLimit(s)?null:function(t,e){const n=new Ic({startPosition:t});for(const{item:t}of n){if(e.isLimit(t)||!t.is("element"))return null;if(e.checkChild(t,"$text"))return t}return null}(t.createPositionAfter(s),o),n=t.createPositionAt(s,0),i=e?t.createPositionAt(e,0):t.createPositionAt(s,"end");t.setSelection(t.createRange(n,i))})),!0)}_handleSelectionChangeOnArrowKeyPress(t,e){const n=e.keyCode,i=this.editor.model,o=i.schema,r=i.document.selection,s=r.getSelectedElement(),a=wo(n,this.editor.locale.contentLanguageDirection),c="down"==a||"right"==a,l="up"==a||"down"==a;if(s&&o.isObject(s)){const n=c?r.getLastPosition():r.getFirstPosition(),s=o.getNearestSelectionRange(n,c?"forward":"backward");return void(s&&(i.change((t=>{t.setSelection(s)})),e.preventDefault(),t.stop()))}if(!r.isCollapsed&&!e.shiftKey){const n=r.getFirstPosition(),s=r.getLastPosition(),a=n.nodeAfter,l=s.nodeBefore;return void((a&&o.isObject(a)||l&&o.isObject(l))&&(i.change((t=>{t.setSelection(c?s:n)})),e.preventDefault(),t.stop()))}if(!r.isCollapsed)return;const d=this._getObjectElementNextToSelection(c);if(d&&o.isObject(d)){if(o.isInline(d)&&l)return;this._setSelectionOverElement(d),e.preventDefault(),t.stop()}}_preventDefaultOnArrowKeyPress(t,e){const n=this.editor.model,i=n.schema,o=n.document.selection.getSelectedElement();o&&i.isObject(o)&&(e.preventDefault(),t.stop())}_handleDelete(t){const e=this.editor.model.document.selection;if(!this.editor.model.canEditAt(e))return;if(!e.isCollapsed)return;const n=this._getObjectElementNextToSelection(t);return n?(this.editor.model.change((t=>{let i=e.anchor.parent;for(;i.isEmpty;){const e=i;i=e.parent,t.remove(e)}this._setSelectionOverElement(n)})),!0):void 0}_setSelectionOverElement(t){this.editor.model.change((e=>{e.setSelection(e.createRangeOn(t))}))}_getObjectElementNextToSelection(t){const e=this.editor.model,n=e.schema,i=e.document.selection,o=e.createSelection(i);if(e.modifySelection(o,{direction:t?"forward":"backward"}),o.isEqual(i))return null;const r=t?o.focus.nodeBefore:o.focus.nodeAfter;return r&&n.isObject(r)?r:null}_clearPreviouslySelectedWidgets(t){for(const e of this._previouslySelected)t.removeClass(NC,e);this._previouslySelected.clear()}_selectFirstNestedEditable(){const t=this.editor,e=this.editor.editing.view.document;for(const n of e.selection.getFirstRange().getItems())if(n.is("editableElement")){const e=t.editing.mapper.toModelElement(n);if(!e)continue;const i=t.model.createPositionAt(e,0),o=t.model.schema.getNearestSelectionRange(i,"forward");return t.model.change((t=>{t.setSelection(o)})),!0}return!1}_selectAncestorWidget(){const t=this.editor,e=t.editing.mapper,n=t.editing.view.document.selection.getFirstPosition().parent,i=(n.is("$text")?n.parent:n).findAncestor(HC);if(!i)return!1;const o=e.toModelElement(i);return!!o&&(t.model.change((t=>{t.setSelection(o,"on")})),!0)}}function uv(t,e){return!!e&&Array.from(t.getAncestors()).includes(e)}class mv extends er{constructor(){super(...arguments),this._toolbarDefinitions=new Map}static get requires(){return[mk]}static get pluginName(){return"WidgetToolbarRepository"}init(){const t=this.editor;if(t.plugins.has("BalloonToolbar")){const e=t.plugins.get("BalloonToolbar");this.listenTo(e,"show",(e=>{(function(t){const e=t.getSelectedElement();return!(!e||!HC(e))})(t.editing.view.document.selection)&&e.stop()}),{priority:"high"})}this._balloon=this.editor.plugins.get("ContextualBalloon"),this.on("change:isEnabled",(()=>{this._updateToolbarsVisibility()})),this.listenTo(t.ui,"update",(()=>{this._updateToolbarsVisibility()})),this.listenTo(t.ui.focusTracker,"change:isFocused",(()=>{this._updateToolbarsVisibility()}),{priority:"low"})}destroy(){super.destroy();for(const t of this._toolbarDefinitions.values())t.view.destroy()}register(t,{ariaLabel:e,items:n,getRelatedElement:i,balloonClassName:o="ck-toolbar-container"}){if(!n.length)return void _("widget-toolbar-no-items",{toolbarId:t});const r=this.editor,s=r.t,a=new gp(r.locale);if(a.ariaLabel=e||s("Widget toolbar"),this._toolbarDefinitions.has(t))throw new w("widget-toolbar-duplicated",this,{toolbarId:t});const c={view:a,getRelatedElement:i,balloonClassName:o,itemsConfig:n,initialized:!1};r.ui.addToolbar(a,{isContextual:!0,beforeFocus:()=>{const t=i(r.editing.view.document.selection);t&&this._showToolbar(c,t)},afterBlur:()=>{this._hideToolbar(c)}}),this._toolbarDefinitions.set(t,c)}_updateToolbarsVisibility(){let t=0,e=null,n=null;for(const i of this._toolbarDefinitions.values()){const o=i.getRelatedElement(this.editor.editing.view.document.selection);if(this.isEnabled&&o)if(this.editor.ui.focusTracker.isFocused){const r=o.getAncestors().length;r>t&&(t=r,e=o,n=i)}else this._isToolbarVisible(i)&&this._hideToolbar(i);else this._isToolbarInBalloon(i)&&this._hideToolbar(i)}n&&this._showToolbar(n,e)}_hideToolbar(t){this._balloon.remove(t.view),this.stopListening(this._balloon,"change:visibleView")}_showToolbar(t,e){this._isToolbarVisible(t)?gv(this.editor,e):this._isToolbarInBalloon(t)||(t.initialized||(t.initialized=!0,t.view.fillFromConfig(t.itemsConfig,this.editor.ui.componentFactory)),this._balloon.add({view:t.view,position:pv(this.editor,e),balloonClassName:t.balloonClassName}),this.listenTo(this._balloon,"change:visibleView",(()=>{for(const t of this._toolbarDefinitions.values())if(this._isToolbarVisible(t)){const e=t.getRelatedElement(this.editor.editing.view.document.selection);gv(this.editor,e)}})))}_isToolbarVisible(t){return this._balloon.visibleView===t.view}_isToolbarInBalloon(t){return this._balloon.hasView(t.view)}}function gv(t,e){const n=t.plugins.get("ContextualBalloon"),i=pv(t,e);n.updatePosition(i)}function pv(t,e){const n=t.editing.view,i=kb.defaultPositions;return{target:n.domConverter.mapViewToDom(e),positions:[i.northArrowSouth,i.northArrowSouthWest,i.northArrowSouthEast,i.southArrowNorth,i.southArrowNorthWest,i.southArrowNorthEast,i.viewportStickyNorth]}}class fv extends(W()){constructor(t){super(),this.set("activeHandlePosition",null),this.set("proposedWidthPercents",null),this.set("proposedWidth",null),this.set("proposedHeight",null),this.set("proposedHandleHostWidth",null),this.set("proposedHandleHostHeight",null),this._options=t,this._referenceCoordinates=null}get originalWidth(){return this._originalWidth}get originalHeight(){return this._originalHeight}get originalWidthPercents(){return this._originalWidthPercents}get aspectRatio(){return this._aspectRatio}begin(t,e,n){const i=new Li(e);this.activeHandlePosition=function(t){const e=["top-left","top-right","bottom-right","bottom-left"];for(const n of e)if(t.classList.contains(bv(n)))return n}(t),this._referenceCoordinates=function(t,e){const n=new Li(t),i=e.split("-"),o={x:"right"==i[1]?n.right:n.left,y:"bottom"==i[0]?n.bottom:n.top};return o.x+=t.ownerDocument.defaultView.scrollX,o.y+=t.ownerDocument.defaultView.scrollY,o}(e,function(t){const e=t.split("-"),n={top:"bottom",bottom:"top",left:"right",right:"left"};return`${n[e[0]]}-${n[e[1]]}`}(this.activeHandlePosition)),this._originalWidth=i.width,this._originalHeight=i.height,this._aspectRatio=i.width/i.height;const o=n.style.width;o&&o.match(/^\d+(\.\d*)?%$/)?this._originalWidthPercents=parseFloat(o):this._originalWidthPercents=function(t,e=new Li(t)){const n=ZC(t);return n?e.width/n*100:0}(n,i)}update(t){this.proposedWidth=t.width,this.proposedHeight=t.height,this.proposedWidthPercents=t.widthPercents,this.proposedHandleHostWidth=t.handleHostWidth,this.proposedHandleHostHeight=t.handleHostHeight}}function bv(t){return`ck-widget__resizer__handle-${t}`}class kv extends Jm{constructor(){super();const t=this.bindTemplate;this.setTemplate({tag:"div",attributes:{class:["ck","ck-size-view",t.to("_viewPosition",(t=>t?`ck-orientation-${t}`:""))],style:{display:t.if("_isVisible","none",(t=>!t))}},children:[{text:t.to("_label")}]})}_bindToState(t,e){this.bind("_isVisible").to(e,"proposedWidth",e,"proposedHeight",((t,e)=>null!==t&&null!==e)),this.bind("_label").to(e,"proposedHandleHostWidth",e,"proposedHandleHostHeight",e,"proposedWidthPercents",((e,n,i)=>"px"===t.unit?`${e}×${n}`:`${i}%`)),this.bind("_viewPosition").to(e,"activeHandlePosition",e,"proposedHandleHostWidth",e,"proposedHandleHostHeight",((t,e,n)=>e<50||n<50?"above-center":t))}_dismiss(){this.unbind(),this._isVisible=!1}}var wv=Object.defineProperty,_v=Object.defineProperties,Av=Object.getOwnPropertyDescriptors,Cv=Object.getOwnPropertySymbols,vv=Object.prototype.hasOwnProperty,yv=Object.prototype.propertyIsEnumerable,xv=(t,e,n)=>e in t?wv(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class Ev extends(W()){constructor(t){super(),this._viewResizerWrapper=null,this._options=t,this.set("isEnabled",!0),this.set("isSelected",!1),this.bind("isVisible").to(this,"isEnabled",this,"isSelected",((t,e)=>t&&e)),this.decorate("begin"),this.decorate("cancel"),this.decorate("commit"),this.decorate("updateSize"),this.on("commit",(t=>{this.state.proposedWidth||this.state.proposedWidthPercents||(this._cleanup(),t.stop())}),{priority:"high"})}get state(){return this._state}show(){this._options.editor.editing.view.change((t=>{t.removeClass("ck-hidden",this._viewResizerWrapper)}))}hide(){this._options.editor.editing.view.change((t=>{t.addClass("ck-hidden",this._viewResizerWrapper)}))}attach(){const t=this,e=this._options.viewElement;this._options.editor.editing.view.change((n=>{const i=n.createUIElement("div",{class:"ck ck-reset_all ck-widget__resizer"},(function(e){const n=this.toDomElement(e);return t._appendHandles(n),t._appendSizeUI(n),n}));n.insert(n.createPositionAt(e,"end"),i),n.addClass("ck-widget_with-resizer",e),this._viewResizerWrapper=i,this.isVisible||this.hide()})),this.on("change:isVisible",(()=>{this.isVisible?(this.show(),this.redraw()):this.hide()}))}begin(t){this._state=new fv(this._options),this._sizeView._bindToState(this._options,this.state),this._initialViewWidth=this._options.viewElement.getStyle("width"),this.state.begin(t,this._getHandleHost(),this._getResizeHost())}updateSize(t){const e=this._proposeNewSize(t);this._options.editor.editing.view.change((t=>{const n=this._options.unit||"%",i=("%"===n?e.widthPercents:e.width)+n;t.setStyle("width",i,this._options.viewElement)}));const n=this._getHandleHost(),i=new Li(n),o=Math.round(i.width),r=Math.round(i.height),s=new Li(n);var a;e.width=Math.round(s.width),e.height=Math.round(s.height),this.redraw(i),this.state.update((a=((t,e)=>{for(var n in e||(e={}))vv.call(e,n)&&xv(t,n,e[n]);if(Cv)for(var n of Cv(e))yv.call(e,n)&&xv(t,n,e[n]);return t})({},e),_v(a,Av({handleHostWidth:o,handleHostHeight:r}))))}commit(){const t=this._options.unit||"%",e=("%"===t?this.state.proposedWidthPercents:this.state.proposedWidth)+t;this._options.editor.editing.view.change((()=>{this._cleanup(),this._options.onCommit(e)}))}cancel(){this._cleanup()}destroy(){this.cancel()}redraw(t){const e=this._domResizerWrapper;if(!((n=e)&&n.ownerDocument&&n.ownerDocument.contains(n)))return;var n;const i=e.parentElement,o=this._getHandleHost(),r=this._viewResizerWrapper,s=[r.getStyle("width"),r.getStyle("height"),r.getStyle("left"),r.getStyle("top")];let a;if(i.isSameNode(o)){const e=t||new Li(o);a=[e.width+"px",e.height+"px",void 0,void 0]}else a=[o.offsetWidth+"px",o.offsetHeight+"px",o.offsetLeft+"px",o.offsetTop+"px"];"same"!==Q(s,a)&&this._options.editor.editing.view.change((t=>{t.setStyle({width:a[0],height:a[1],left:a[2],top:a[3]},r)}))}containsHandle(t){return this._domResizerWrapper.contains(t)}static isResizeHandle(t){return t.classList.contains("ck-widget__resizer__handle")}_cleanup(){this._sizeView._dismiss();this._options.editor.editing.view.change((t=>{t.setStyle("width",this._initialViewWidth,this._options.viewElement)}))}_proposeNewSize(t){const e=this.state,n={x:(i=t).pageX,y:i.pageY};var i;const o=!this._options.isCentered||this._options.isCentered(this),r={x:e._referenceCoordinates.x-(n.x+e.originalWidth),y:n.y-e.originalHeight-e._referenceCoordinates.y};o&&e.activeHandlePosition.endsWith("-right")&&(r.x=n.x-(e._referenceCoordinates.x+e.originalWidth)),o&&(r.x*=2);let s=Math.abs(e.originalWidth+r.x),a=Math.abs(e.originalHeight+r.y);return"width"==(s/e.aspectRatio>a?"width":"height")?a=s/e.aspectRatio:s=a*e.aspectRatio,{width:Math.round(s),height:Math.round(a),widthPercents:Math.min(Math.round(e.originalWidthPercents/e.originalWidth*s*100)/100,100)}}_getResizeHost(){const t=this._domResizerWrapper.parentElement;return this._options.getResizeHost(t)}_getHandleHost(){const t=this._domResizerWrapper.parentElement;return this._options.getHandleHost(t)}get _domResizerWrapper(){return this._options.editor.editing.view.domConverter.mapViewToDom(this._viewResizerWrapper)}_appendHandles(t){const e=["top-left","top-right","bottom-right","bottom-left"];for(const i of e)t.appendChild(new Em({tag:"div",attributes:{class:"ck-widget__resizer__handle "+(n=i,`ck-widget__resizer__handle-${n}`)}}).render());var n}_appendSizeUI(t){this._sizeView=new kv,this._sizeView.render(),t.appendChild(this._sizeView.element)}}var Dv=n(4095),Bv={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Dv.A,Bv);Dv.A.locals;class Sv extends er{constructor(){super(...arguments),this._resizers=new Map}static get pluginName(){return"WidgetResize"}init(){const t=this.editor.editing,n=e.window.document;this.set("selectedResizer",null),this.set("_activeResizer",null),t.view.addObserver(_u),this._observer=new(Bi()),this.listenTo(t.view.document,"mousedown",this._mouseDownListener.bind(this),{priority:"high"}),this._observer.listenTo(n,"mousemove",this._mouseMoveListener.bind(this)),this._observer.listenTo(n,"mouseup",this._mouseUpListener.bind(this)),this._redrawSelectedResizerThrottled=Bb((()=>this.redrawSelectedResizer()),200),this.editor.ui.on("update",this._redrawSelectedResizerThrottled),this.editor.model.document.on("change",(()=>{for(const[t,e]of this._resizers)t.isAttached()||(this._resizers.delete(t),e.destroy())}),{priority:"lowest"}),this._observer.listenTo(e.window,"resize",this._redrawSelectedResizerThrottled);const i=this.editor.editing.view.document.selection;i.on("change",(()=>{const t=i.getSelectedElement(),e=this.getResizerByViewElement(t)||null;e?this.select(e):this.deselect()}))}redrawSelectedResizer(){this.selectedResizer&&this.selectedResizer.isVisible&&this.selectedResizer.redraw()}destroy(){super.destroy(),this._observer.stopListening();for(const t of this._resizers.values())t.destroy();this._redrawSelectedResizerThrottled.cancel()}select(t){this.deselect(),this.selectedResizer=t,this.selectedResizer.isSelected=!0}deselect(){this.selectedResizer&&(this.selectedResizer.isSelected=!1),this.selectedResizer=null}attachTo(t){const e=new Ev(t),n=this.editor.plugins;if(e.attach(),n.has("WidgetToolbarRepository")){const t=n.get("WidgetToolbarRepository");e.on("begin",(()=>{t.forceDisabled("resize")}),{priority:"lowest"}),e.on("cancel",(()=>{t.clearForceDisabled("resize")}),{priority:"highest"}),e.on("commit",(()=>{t.clearForceDisabled("resize")}),{priority:"highest"})}this._resizers.set(t.viewElement,e);const i=this.editor.editing.view.document.selection.getSelectedElement();return this.getResizerByViewElement(i)==e&&this.select(e),e}getResizerByViewElement(t){return this._resizers.get(t)}_getResizerByHandle(t){for(const e of this._resizers.values())if(e.containsHandle(t))return e}_mouseDownListener(t,e){const n=e.domTarget;Ev.isResizeHandle(n)&&(this._activeResizer=this._getResizerByHandle(n)||null,this._activeResizer&&(this._activeResizer.begin(n),t.stop(),e.preventDefault()))}_mouseMoveListener(t,e){this._activeResizer&&this._activeResizer.updateSize(e)}_mouseUpListener(){this._activeResizer&&(this._activeResizer.commit(),this._activeResizer=null)}}const Tv=Wi("px");class Iv extends Jm{constructor(){super();const t=this.bindTemplate;this.set({isVisible:!1,left:null,top:null,width:null}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-clipboard-drop-target-line",t.if("isVisible","ck-hidden",(t=>!t))],style:{left:t.to("left",(t=>Tv(t))),top:t.to("top",(t=>Tv(t))),width:t.to("width",(t=>Tv(t)))}}})}}class Pv extends er{constructor(){super(...arguments),this.removeDropMarkerDelayed=Zo((()=>this.removeDropMarker()),40),this._updateDropMarkerThrottled=Bb((t=>this._updateDropMarker(t)),40),this._reconvertMarkerThrottled=Bb((()=>{this.editor.model.markers.has("drop-target")&&this.editor.editing.reconvertMarker("drop-target")}),0),this._dropTargetLineView=new Iv,this._domEmitter=new(Bi()),this._scrollables=new Map}static get pluginName(){return"DragDropTarget"}init(){this._setupDropMarker()}destroy(){this._domEmitter.stopListening();for(const{resizeObserver:t}of this._scrollables.values())t.destroy();return this._updateDropMarkerThrottled.cancel(),this.removeDropMarkerDelayed.cancel(),this._reconvertMarkerThrottled.cancel(),super.destroy()}updateDropMarker(t,e,n,i,o,r){this.removeDropMarkerDelayed.cancel();const s=Rv(this.editor,t,e,n,i,o,r);if(s)return r&&r.containsRange(s)?this.removeDropMarker():void this._updateDropMarkerThrottled(s)}getFinalDropRange(t,e,n,i,o,r){const s=Rv(this.editor,t,e,n,i,o,r);return this.removeDropMarker(),s}removeDropMarker(){const t=this.editor.model;this.removeDropMarkerDelayed.cancel(),this._updateDropMarkerThrottled.cancel(),this._dropTargetLineView.isVisible=!1,t.markers.has("drop-target")&&t.change((t=>{t.removeMarker("drop-target")}))}_setupDropMarker(){const t=this.editor;t.ui.view.body.add(this._dropTargetLineView),t.conversion.for("editingDowncast").markerToHighlight({model:"drop-target",view:{classes:["ck-clipboard-drop-target-range"]}}),t.conversion.for("editingDowncast").markerToElement({model:"drop-target",view:(e,{writer:n})=>{if(t.model.schema.checkChild(e.markerRange.start,"$text"))return this._dropTargetLineView.isVisible=!1,this._createDropTargetPosition(n);e.markerRange.isCollapsed?this._updateDropTargetLine(e.markerRange):this._dropTargetLineView.isVisible=!1}})}_updateDropMarker(t){const e=this.editor,n=e.model.markers;e.model.change((e=>{n.has("drop-target")?n.get("drop-target").getRange().isEqual(t)||e.updateMarker("drop-target",{range:t}):e.addMarker("drop-target",{range:t,usingOperation:!1,affectsData:!1})}))}_createDropTargetPosition(t){return t.createUIElement("span",{class:"ck ck-clipboard-drop-target-position"},(function(t){const e=this.toDomElement(t);return e.append("⁠",t.createElement("span"),"⁠"),e}))}_updateDropTargetLine(t){const n=this.editor.editing,i=t.start.nodeBefore,o=t.start.nodeAfter,r=t.start.parent,s=i?n.mapper.toViewElement(i):null,a=s?n.view.domConverter.mapViewToDom(s):null,c=o?n.mapper.toViewElement(o):null,l=c?n.view.domConverter.mapViewToDom(c):null,d=n.mapper.toViewElement(r);if(!d)return;const h=n.view.domConverter.mapViewToDom(d),u=this._getScrollableRect(d),{scrollX:m,scrollY:g}=e.window,p=a?new Li(a):null,f=l?new Li(l):null,b=new Li(h).excludeScrollbarsAndBorders(),k=p?p.bottom:b.top,w=f?f.top:b.bottom,_=e.window.getComputedStyle(h),A=k<=w?(k+w)/2:w;if(u.topa.schema.checkChild(r,t)))){if(a.schema.checkChild(r,"$text"))return a.createRange(r);if(e)return Fv(t,Ov(t,e.parent),i,o)}}}else if(a.schema.isInline(l))return Fv(t,l,i,o);if(a.schema.isBlock(l))return Fv(t,l,i,o);if(a.schema.checkChild(l,"$block")){const e=Array.from(l.getChildren()).filter((e=>e.is("element")&&!Vv(t,e)));let n=0,r=e.length;if(0==r)return a.createRange(a.createPositionAt(l,"end"));for(;ne in t?zv(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class Uv extends er{constructor(){super(...arguments),this._isBlockDragging=!1,this._domEmitter=new(Bi())}static get pluginName(){return"DragDropBlockToolbar"}init(){const t=this.editor;if(this.listenTo(t,"change:isReadOnly",((t,e,n)=>{n?(this.forceDisabled("readOnlyMode"),this._isBlockDragging=!1):this.clearForceDisabled("readOnlyMode")})),s.isAndroid&&this.forceDisabled("noAndroidSupport"),t.plugins.has("BlockToolbar")){const n=t.plugins.get("BlockToolbar").buttonView.element;this._domEmitter.listenTo(n,"dragstart",((t,e)=>this._handleBlockDragStart(e))),this._domEmitter.listenTo(e.document,"dragover",((t,e)=>this._handleBlockDragging(e))),this._domEmitter.listenTo(e.document,"drop",((t,e)=>this._handleBlockDragging(e))),this._domEmitter.listenTo(e.document,"dragend",(()=>this._handleBlockDragEnd()),{useCapture:!0}),this.isEnabled&&n.setAttribute("draggable","true"),this.on("change:isEnabled",((t,e,i)=>{n.setAttribute("draggable",i?"true":"false")}))}}destroy(){return this._domEmitter.stopListening(),super.destroy()}_handleBlockDragStart(t){if(!this.isEnabled)return;const e=this.editor.model,n=e.document.selection,i=this.editor.editing.view,o=Array.from(n.getSelectedBlocks()),r=e.createRange(e.createPositionBefore(o[0]),e.createPositionAfter(o[o.length-1]));e.change((t=>t.setSelection(r))),this._isBlockDragging=!0,i.focus(),i.getObserver(rC).onDomEvent(t)}_handleBlockDragging(t){if(!this.isEnabled||!this._isBlockDragging)return;const e=t.clientX+("ltr"==this.editor.locale.contentLanguageDirection?100:-100),n=t.clientY,i=document.elementFromPoint(e,n),o=this.editor.editing.view;var r,s;i&&i.closest(".ck-editor__editable")&&o.getObserver(rC).onDomEvent((r=((t,e)=>{for(var n in e||(e={}))jv.call(e,n)&&Wv(t,n,e[n]);if(Hv)for(var n of Hv(e))qv.call(e,n)&&Wv(t,n,e[n]);return t})({},t),s={type:t.type,dataTransfer:t.dataTransfer,target:i,clientX:e,clientY:n,preventDefault:()=>t.preventDefault(),stopPropagation:()=>t.stopPropagation()},Mv(r,Nv(s))))}_handleBlockDragEnd(){this._isBlockDragging=!1}}var $v=n(7793),Gv={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()($v.A,Gv);$v.A.locals;class Kv extends er{constructor(){super(...arguments),this._clearDraggableAttributesDelayed=Zo((()=>this._clearDraggableAttributes()),40),this._blockMode=!1,this._domEmitter=new(Bi())}static get pluginName(){return"DragDrop"}static get requires(){return[RC,hv,Pv,Uv]}init(){const t=this.editor,e=t.editing.view;this._draggedRange=null,this._draggingUid="",this._draggableElement=null,e.addObserver(rC),e.addObserver(_u),this._setupDragging(),this._setupContentInsertionIntegration(),this._setupClipboardInputIntegration(),this._setupDraggableAttributeHandling(),this.listenTo(t,"change:isReadOnly",((t,e,n)=>{n?this.forceDisabled("readOnlyMode"):this.clearForceDisabled("readOnlyMode")})),this.on("change:isEnabled",((t,e,n)=>{n||this._finalizeDragging(!1)})),s.isAndroid&&this.forceDisabled("noAndroidSupport")}destroy(){return this._draggedRange&&(this._draggedRange.detach(),this._draggedRange=null),this._previewContainer&&this._previewContainer.remove(),this._domEmitter.stopListening(),this._clearDraggableAttributesDelayed.cancel(),super.destroy()}_setupDragging(){const t=this.editor,n=t.model,i=t.editing.view,o=i.document,r=t.plugins.get(Pv);this.listenTo(o,"dragstart",((t,e)=>{if(e.target&&e.target.is("editableElement"))return void e.preventDefault();if(this._prepareDraggedRange(e.target),!this._draggedRange)return void e.preventDefault();this._draggingUid=p(),e.dataTransfer.effectAllowed=this.isEnabled?"copyMove":"copy",e.dataTransfer.setData("application/ckeditor5-dragging-uid",this._draggingUid);const i=n.createSelection(this._draggedRange.toRange());this.editor.plugins.get("ClipboardPipeline")._fireOutputTransformationEvent(e.dataTransfer,i,"dragstart");const{dataTransfer:o,domTarget:r,domEvent:s}=e,{clientX:a}=s;this._updatePreview({dataTransfer:o,domTarget:r,clientX:a}),e.stopPropagation(),this.isEnabled||(this._draggedRange.detach(),this._draggedRange=null,this._draggingUid="")}),{priority:"low"}),this.listenTo(o,"dragend",((t,e)=>{this._finalizeDragging(!e.dataTransfer.isCanceled&&"move"==e.dataTransfer.dropEffect)}),{priority:"low"}),this._domEmitter.listenTo(e.document,"dragend",(()=>{this._blockMode=!1}),{useCapture:!0}),this.listenTo(o,"dragenter",(()=>{this.isEnabled&&i.focus()})),this.listenTo(o,"dragleave",(()=>{r.removeDropMarkerDelayed()})),this.listenTo(o,"dragging",((t,e)=>{if(!this.isEnabled)return void(e.dataTransfer.dropEffect="none");const{clientX:n,clientY:i}=e.domEvent;r.updateDropMarker(e.target,e.targetRanges,n,i,this._blockMode,this._draggedRange),this._draggedRange||(e.dataTransfer.dropEffect="copy"),s.isGecko||("copy"==e.dataTransfer.effectAllowed?e.dataTransfer.dropEffect="copy":["all","copyMove"].includes(e.dataTransfer.effectAllowed)&&(e.dataTransfer.dropEffect="move")),t.stop()}),{priority:"low"})}_setupClipboardInputIntegration(){const t=this.editor,e=t.editing.view.document,n=t.plugins.get(Pv);this.listenTo(e,"clipboardInput",((e,i)=>{if("drop"!=i.method)return;const{clientX:o,clientY:r}=i.domEvent,s=n.getFinalDropRange(i.target,i.targetRanges,o,r,this._blockMode,this._draggedRange);if(!s)return this._finalizeDragging(!1),void e.stop();this._draggedRange&&this._draggingUid!=i.dataTransfer.getData("application/ckeditor5-dragging-uid")&&(this._draggedRange.detach(),this._draggedRange=null,this._draggingUid="");if("move"==Jv(i.dataTransfer)&&this._draggedRange&&this._draggedRange.containsRange(s,!0))return this._finalizeDragging(!1),void e.stop();i.targetRanges=[t.editing.mapper.toViewRange(s)]}),{priority:"high"})}_setupContentInsertionIntegration(){const t=this.editor.plugins.get(RC);t.on("contentInsertion",((t,e)=>{if(!this.isEnabled||"drop"!==e.method)return;const n=e.targetRanges.map((t=>this.editor.editing.mapper.toModelRange(t)));this.editor.model.change((t=>t.setSelection(n)))}),{priority:"high"}),t.on("contentInsertion",((t,e)=>{if(!this.isEnabled||"drop"!==e.method)return;const n="move"==Jv(e.dataTransfer),i=!e.resultRange||!e.resultRange.isCollapsed;this._finalizeDragging(i&&n)}),{priority:"lowest"})}_setupDraggableAttributeHandling(){const t=this.editor,e=t.editing.view,n=e.document;this.listenTo(n,"mousedown",((i,o)=>{if(s.isAndroid||!o)return;this._clearDraggableAttributesDelayed.cancel();let r=Zv(o.target);if(s.isBlink&&!t.isReadOnly&&!r&&!n.selection.isCollapsed){const t=n.selection.getSelectedElement();t&&HC(t)||(r=n.selection.editableElement)}r&&(e.change((t=>{t.setAttribute("draggable","true",r)})),this._draggableElement=t.editing.mapper.toModelElement(r))})),this.listenTo(n,"mouseup",(()=>{s.isAndroid||this._clearDraggableAttributesDelayed()}))}_clearDraggableAttributes(){const t=this.editor.editing;t.view.change((e=>{this._draggableElement&&"$graveyard"!=this._draggableElement.root.rootName&&e.removeAttribute("draggable",t.mapper.toViewElement(this._draggableElement)),this._draggableElement=null}))}_finalizeDragging(t){const e=this.editor,n=e.model;if(e.plugins.get(Pv).removeDropMarker(),this._clearDraggableAttributes(),e.plugins.has("WidgetToolbarRepository")){e.plugins.get("WidgetToolbarRepository").clearForceDisabled("dragDrop")}this._draggingUid="",this._previewContainer&&(this._previewContainer.remove(),this._previewContainer=void 0),this._draggedRange&&(t&&this.isEnabled&&n.change((t=>{const e=n.createSelection(this._draggedRange);n.deleteContent(e,{doNotAutoparagraph:!0});const i=e.getFirstPosition().parent;i.isEmpty&&!n.schema.checkChild(i,"$text")&&n.schema.checkChild(i,"paragraph")&&t.insertElement("paragraph",i,0)})),this._draggedRange.detach(),this._draggedRange=null)}_prepareDraggedRange(t){const e=this.editor,n=e.model,i=n.document.selection,o=t?Zv(t):null;if(o){const t=e.editing.mapper.toModelElement(o);if(this._draggedRange=cl.fromRange(n.createRangeOn(t)),this._blockMode=n.schema.isBlock(t),e.plugins.has("WidgetToolbarRepository")){e.plugins.get("WidgetToolbarRepository").forceDisabled("dragDrop")}return}if(i.isCollapsed&&!i.getFirstPosition().parent.isEmpty)return;const r=Array.from(i.getSelectedBlocks()),s=i.getFirstRange();if(0==r.length)return void(this._draggedRange=cl.fromRange(s));const a=Yv(n,r);if(r.length>1)this._draggedRange=cl.fromRange(a),this._blockMode=!0;else if(1==r.length){const t=s.start.isTouching(a.start)&&s.end.isTouching(a.end);this._draggedRange=cl.fromRange(t?a:s),this._blockMode=t}n.change((t=>t.setSelection(this._draggedRange.toRange())))}_updatePreview({dataTransfer:t,domTarget:n,clientX:i}){const o=this.editor.editing.view,r=o.document.selection.editableElement,a=o.domConverter.mapViewToDom(r),c=e.window.getComputedStyle(a);this._previewContainer?this._previewContainer.firstElementChild&&this._previewContainer.removeChild(this._previewContainer.firstElementChild):(this._previewContainer=ft(e.document,"div",{style:"position: fixed; left: -999999px;"}),e.document.body.appendChild(this._previewContainer));const l=new Li(a);if(a.contains(n))return;const d=parseFloat(c.paddingLeft),h=ft(e.document,"div");h.className="ck ck-content",h.style.width=c.width,h.style.paddingLeft=`${l.left-i+d}px`,s.isiOS&&(h.style.backgroundColor="white"),h.innerHTML=t.getData("text/html"),t.setDragImage(h,0,0),this._previewContainer.appendChild(h)}}function Jv(t){return s.isGecko?t.dropEffect:["all","copyMove"].includes(t.effectAllowed)?"move":"copy"}function Zv(t){if(t.is("editableElement"))return null;if(t.hasClass("ck-widget__selection-handle"))return t.findAncestor(HC);if(HC(t))return t;const e=t.findAncestor((t=>HC(t)||t.is("editableElement")));return HC(e)?e:null}function Yv(t,e){const n=e[0],i=e[e.length-1],o=n.getCommonAncestor(i),r=t.createPositionBefore(n),s=t.createPositionAfter(i);if(o&&o.is("element")&&!t.schema.isLimit(o)){const e=t.createRangeOn(o),n=r.isTouching(e.start),i=s.isTouching(e.end);if(n&&i)return Yv(t,[o])}return t.createRange(r,s)}class Qv extends er{static get pluginName(){return"PastePlainText"}static get requires(){return[RC]}init(){const t=this.editor,e=t.model,n=t.editing.view,i=n.document,o=e.document.selection;let r=!1;n.addObserver(rC),this.listenTo(i,"keydown",((t,e)=>{r=e.shiftKey})),t.plugins.get(RC).on("contentInsertion",((t,n)=>{(r||function(t,e){if(t.childCount>1)return!1;const n=t.getChild(0);if(e.isObject(n))return!1;return 0==Array.from(n.getAttributeKeys()).length}(n.content,e.schema))&&e.change((t=>{const i=Array.from(o.getAttributes()).filter((([t])=>e.schema.getAttributeProperties(t).isFormatting));o.isCollapsed||e.deleteContent(o,{doNotAutoparagraph:!0}),i.push(...o.getAttributes());const r=t.createRangeIn(n.content);for(const e of r.getItems())e.is("$textProxy")&&t.setAttributes(i,e)}))}))}}class Xv extends er{static get pluginName(){return"Clipboard"}static get requires(){return[PC,RC,Kv,Qv]}init(){const t=this.editor,e=this.editor.t;t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Copy selected content"),keystroke:"CTRL+C"},{label:e("Paste content"),keystroke:"CTRL+V"},{label:e("Paste content as plain text"),keystroke:"CTRL+SHIFT+V"}]})}}var ty=Object.defineProperty,ey=Object.getOwnPropertySymbols,ny=Object.prototype.hasOwnProperty,iy=Object.prototype.propertyIsEnumerable,oy=(t,e,n)=>e in t?ty(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class ry extends ir{constructor(t){super(t),this._stack=[],this._createdBatches=new WeakSet,this.refresh(),this._isEnabledBasedOnSelection=!1,this.listenTo(t.data,"set",((t,e)=>{e[1]=((t,e)=>{for(var n in e||(e={}))ny.call(e,n)&&oy(t,n,e[n]);if(ey)for(var n of ey(e))iy.call(e,n)&&oy(t,n,e[n]);return t})({},e[1]);const n=e[1];n.batchType||(n.batchType={isUndoable:!1})}),{priority:"high"}),this.listenTo(t.data,"set",((t,e)=>{e[1].batchType.isUndoable||this.clearStack()}))}refresh(){this.isEnabled=this._stack.length>0}get createdBatches(){return this._createdBatches}addBatch(t){const e=this.editor.model.document.selection,n={ranges:e.hasOwnRange?Array.from(e.getRanges()):[],isBackward:e.isBackward};this._stack.push({batch:t,selection:n}),this.refresh()}clearStack(){this._stack=[],this.refresh()}_restoreSelection(t,e,n){const i=this.editor.model,o=i.document,r=[],s=t.map((t=>t.getTransformedByOperations(n))),a=s.flat();for(const t of s){const e=t.filter((t=>t.root!=o.graveyard)).filter((t=>!ay(t,a)));e.length&&(sy(e),r.push(e[0]))}r.length&&i.change((t=>{t.setSelection(r,{backward:e})}))}_undo(t,e){const n=this.editor.model,i=n.document;this._createdBatches.add(e);const o=t.operations.slice().filter((t=>t.isDocumentOperation));o.reverse();for(const t of o){const o=t.baseVersion+1,r=Array.from(i.history.getOperations(o)),s=ih([t.getReversed()],r,{useRelations:!0,document:this.editor.model.document,padWithNoOps:!1,forceWeakRemove:!0}).operationsA;for(let o of s){const r=o.affectedSelectable;r&&!n.canEditAt(r)&&(o=new Gd(o.baseVersion)),e.addOperation(o),n.applyOperation(o),i.history.setOperationAsUndone(t,o)}}}}function sy(t){t.sort(((t,e)=>t.start.isBefore(e.start)?-1:1));for(let e=1;ee!==t&&e.containsRange(t,!0)))}class cy extends ry{execute(t=null){const e=t?this._stack.findIndex((e=>e.batch==t)):this._stack.length-1,n=this._stack.splice(e,1)[0],i=this.editor.model.createBatch({isUndo:!0});this.editor.model.enqueueChange(i,(()=>{this._undo(n.batch,i);const t=this.editor.model.document.history.getOperations(n.batch.baseVersion);this._restoreSelection(n.selection.ranges,n.selection.isBackward,t)})),this.fire("revert",n.batch,i),this.refresh()}}class ly extends ry{execute(){const t=this._stack.pop(),e=this.editor.model.createBatch({isUndo:!0});this.editor.model.enqueueChange(e,(()=>{const n=t.batch.operations[t.batch.operations.length-1].baseVersion+1,i=this.editor.model.document.history.getOperations(n);this._restoreSelection(t.selection.ranges,t.selection.isBackward,i),this._undo(t.batch,e)})),this.refresh()}}class dy extends er{constructor(){super(...arguments),this._batchRegistry=new WeakSet}static get pluginName(){return"UndoEditing"}init(){const t=this.editor,e=t.t;this._undoCommand=new cy(t),this._redoCommand=new ly(t),t.commands.add("undo",this._undoCommand),t.commands.add("redo",this._redoCommand),this.listenTo(t.model,"applyOperation",((t,e)=>{const n=e[0];if(!n.isDocumentOperation)return;const i=n.batch,o=this._redoCommand.createdBatches.has(i),r=this._undoCommand.createdBatches.has(i);this._batchRegistry.has(i)||(this._batchRegistry.add(i),i.isUndoable&&(o?this._undoCommand.addBatch(i):r||(this._undoCommand.addBatch(i),this._redoCommand.clearStack())))}),{priority:"highest"}),this.listenTo(this._undoCommand,"revert",((t,e,n)=>{this._redoCommand.addBatch(n)})),t.keystrokes.set("CTRL+Z","undo"),t.keystrokes.set("CTRL+Y","redo"),t.keystrokes.set("CTRL+SHIFT+Z","redo"),t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Undo"),keystroke:"CTRL+Z"},{label:e("Redo"),keystroke:[["CTRL+Y"],["CTRL+SHIFT+Z"]]}]})}}class hy extends er{static get pluginName(){return"UndoUI"}init(){const t=this.editor,e=t.locale,n=t.t,i="ltr"==e.uiLanguageDirection?ym.undo:ym.redo,o="ltr"==e.uiLanguageDirection?ym.redo:ym.undo;this._addButtonsToFactory("undo",n("Undo"),"CTRL+Z",i),this._addButtonsToFactory("redo",n("Redo"),"CTRL+Y",o)}_addButtonsToFactory(t,e,n,i){const o=this.editor;o.ui.componentFactory.add(t,(()=>{const o=this._createButton(mg,t,e,n,i);return o.set({tooltip:!0}),o})),o.ui.componentFactory.add("menuBar:"+t,(()=>this._createButton(mw,t,e,n,i)))}_createButton(t,e,n,i,o){const r=this.editor,s=r.locale,a=r.commands.get(e),c=new t(s);return c.set({label:n,icon:o,keystroke:i}),c.bind("isEnabled").to(a,"isEnabled"),this.listenTo(c,"execute",(()=>{r.execute(e),r.editing.view.focus()})),c}}class uy extends er{static get requires(){return[dy,hy]}static get pluginName(){return"Undo"}}function my(t){return t.createContainerElement("figure",{class:"image"},[t.createEmptyElement("img"),t.createSlot("children")])}function gy(t,e){const n=t.plugins.get("ImageUtils"),i=t.plugins.has("ImageInlineEditing")&&t.plugins.has("ImageBlockEditing");return t=>{if(!n.isInlineImageView(t))return null;if(!i)return o(t);return("block"==t.getStyle("display")||t.findAncestor(n.isBlockImageView)?"imageBlock":"imageInline")!==e?null:o(t)};function o(t){const e={name:!0};return t.hasAttribute("src")&&(e.attributes=["src"]),e}}function py(t,e){const n=$o(e.getSelectedBlocks());return!n||t.isObject(n)||n.isEmpty&&"listItem"!=n.name?"imageBlock":"imageInline"}function fy(t){return t&&t.endsWith("px")?parseInt(t):null}function by(t){const e=fy(t.getStyle("width")),n=fy(t.getStyle("height"));return!(!e||!n)}var ky=Object.defineProperty,wy=Object.getOwnPropertySymbols,_y=Object.prototype.hasOwnProperty,Ay=Object.prototype.propertyIsEnumerable,Cy=(t,e,n)=>e in t?ky(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,vy=(t,e)=>{for(var n in e||(e={}))_y.call(e,n)&&Cy(t,n,e[n]);if(wy)for(var n of wy(e))Ay.call(e,n)&&Cy(t,n,e[n]);return t};const yy=/^(image|image-inline)$/;class xy extends er{constructor(){super(...arguments),this._domEmitter=new(Bi())}static get pluginName(){return"ImageUtils"}isImage(t){return this.isInlineImage(t)||this.isBlockImage(t)}isInlineImageView(t){return!!t&&t.is("element","img")}isBlockImageView(t){return!!t&&t.is("element","figure")&&t.hasClass("image")}insertImage(t={},e=null,n=null,i={}){const o=this.editor,r=o.model,s=r.document.selection,a=Ey(o,e||s,n);t=vy(vy({},Object.fromEntries(s.getAttributes())),t);for(const e in t)r.schema.checkAttribute(a,e)||delete t[e];return r.change((n=>{const{setImageSizes:o=!0}=i,s=n.createElement(a,t);return r.insertObject(s,e,null,{setSelection:"on",findOptimalPosition:e||"imageInline"==a?void 0:"auto"}),s.parent?(o&&this.setImageNaturalSizeAttributes(s),s):null}))}setImageNaturalSizeAttributes(t){const n=t.getAttribute("src");n&&(t.getAttribute("width")||t.getAttribute("height")||this.editor.model.change((i=>{const o=new e.window.Image;this._domEmitter.listenTo(o,"load",(()=>{t.getAttribute("width")||t.getAttribute("height")||this.editor.model.enqueueChange(i.batch,(e=>{e.setAttribute("width",o.naturalWidth,t),e.setAttribute("height",o.naturalHeight,t)})),this._domEmitter.stopListening(o,"load")})),o.src=n})))}getClosestSelectedImageWidget(t){const e=t.getFirstPosition();if(!e)return null;const n=t.getSelectedElement();if(n&&this.isImageWidget(n))return n;let i=e.parent;for(;i;){if(i.is("element")&&this.isImageWidget(i))return i;i=i.parent}return null}getClosestSelectedImageElement(t){const e=t.getSelectedElement();return this.isImage(e)?e:t.getFirstPosition().findAncestor("imageBlock")}getImageWidgetFromImageView(t){return t.findAncestor({classes:yy})}isImageAllowed(){const t=this.editor.model.document.selection;return function(t,e){const n=Ey(t,e,null);if("imageBlock"==n){const n=function(t,e){const n=GC(t,e),i=n.start.parent;if(i.isEmpty&&!i.is("element","$root"))return i.parent;return i}(e,t.model);if(t.model.schema.checkChild(n,"imageBlock"))return!0}else if(t.model.schema.checkChild(e.focus,"imageInline"))return!0;return!1}(this.editor,t)&&function(t){return[...t.focus.getAncestors()].every((t=>!t.is("element","imageBlock")))}(t)}toImageWidget(t,e,n){e.setCustomProperty("image",!0,t);return jC(t,e,{label:()=>{const e=this.findViewImgElement(t).getAttribute("alt");return e?`${e} ${n}`:n}})}isImageWidget(t){return!!t.getCustomProperty("image")&&HC(t)}isBlockImage(t){return!!t&&t.is("element","imageBlock")}isInlineImage(t){return!!t&&t.is("element","imageInline")}findViewImgElement(t){if(this.isInlineImageView(t))return t;const e=this.editor.editing.view;for(const{item:n}of e.createRangeIn(t))if(this.isInlineImageView(n))return n}destroy(){return this._domEmitter.stopListening(),super.destroy()}}function Ey(t,e,n){const i=t.model.schema,o=t.config.get("image.insert.type");return t.plugins.has("ImageBlockEditing")?t.plugins.has("ImageInlineEditing")?n||("inline"===o?"imageInline":"auto"!==o?"imageBlock":e.is("selection")?py(i,e):i.checkChild(e,"imageInline")?"imageInline":"imageBlock"):"imageBlock":"imageInline"}Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;new RegExp(String(/^(http(s)?:\/\/)?[\w-]+\.[\w.~:/[\]@!$&'()*+,;=%-]+/.source+/\.(jpg|jpeg|png|gif|ico|webp|JPG|JPEG|PNG|GIF|ICO|WEBP)/.source+/(\?[\w.~:/[\]@!$&'()*+,;=%-]*)?/.source+/(#[\w.~:/[\]@!$&'()*+,;=%-]*)?$/.source));class Dy extends ir{refresh(){const t=this.editor.plugins.get("ImageUtils").getClosestSelectedImageElement(this.editor.model.document.selection);this.isEnabled=!!t,this.isEnabled&&t.hasAttribute("alt")?this.value=t.getAttribute("alt"):this.value=!1}execute(t){const e=this.editor,n=e.plugins.get("ImageUtils"),i=e.model,o=n.getClosestSelectedImageElement(i.document.selection);i.change((e=>{e.setAttribute("alt",t.newValue,o)}))}}class By extends er{static get requires(){return[xy]}static get pluginName(){return"ImageTextAlternativeEditing"}init(){this.editor.commands.add("imageTextAlternative",new Dy(this.editor))}}var Sy=n(4062),Ty={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Sy.A,Ty);Sy.A.locals;class Iy extends Jm{constructor(t){super(t);const e=this.locale.t;this.focusTracker=new Go,this.keystrokes=new Ko,this.labeledInput=this._createLabeledInputView(),this.saveButtonView=this._createButton(e("Save"),ym.check,"ck-button-save"),this.saveButtonView.type="submit",this.cancelButtonView=this._createButton(e("Cancel"),ym.cancel,"ck-button-cancel","cancel"),this._focusables=new xm,this._focusCycler=new Xg({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"form",attributes:{class:["ck","ck-text-alternative-form","ck-responsive-form"],tabindex:"-1"},children:[this.labeledInput,this.saveButtonView,this.cancelButtonView]})}render(){super.render(),this.keystrokes.listenTo(this.element),Qm({view:this}),[this.labeledInput,this.saveButtonView,this.cancelButtonView].forEach((t=>{this._focusables.add(t),this.focusTracker.add(t.element)}))}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}_createButton(t,e,n,i){const o=new mg(this.locale);return o.set({label:t,icon:e,tooltip:!0}),o.extendTemplate({attributes:{class:n}}),i&&o.delegate("execute").to(this,i),o}_createLabeledInputView(){const t=this.locale.t,e=new zg(this.locale,zp);return e.label=t("Text alternative"),e}}function Py(t){const e=t.editing.view,n=kb.defaultPositions,i=t.plugins.get("ImageUtils");return{target:e.domConverter.mapViewToDom(i.getClosestSelectedImageWidget(e.document.selection)),positions:[n.northArrowSouth,n.northArrowSouthWest,n.northArrowSouthEast,n.southArrowNorth,n.southArrowNorthWest,n.southArrowNorthEast,n.viewportStickyNorth]}}class Ry extends er{static get requires(){return[mk]}static get pluginName(){return"ImageTextAlternativeUI"}init(){this._createButton()}destroy(){super.destroy(),this._form&&this._form.destroy()}_createButton(){const t=this.editor,e=t.t;t.ui.componentFactory.add("imageTextAlternative",(n=>{const i=t.commands.get("imageTextAlternative"),o=new mg(n);return o.set({label:e("Change image text alternative"),icon:ym.textAlternative,tooltip:!0}),o.bind("isEnabled").to(i,"isEnabled"),o.bind("isOn").to(i,"value",(t=>!!t)),this.listenTo(o,"execute",(()=>{this._showForm()})),o}))}_createForm(){const t=this.editor,e=t.editing.view.document,n=t.plugins.get("ImageUtils");this._balloon=this.editor.plugins.get("ContextualBalloon"),this._form=new(Ym(Iy))(t.locale),this._form.render(),this.listenTo(this._form,"submit",(()=>{t.execute("imageTextAlternative",{newValue:this._form.labeledInput.fieldView.element.value}),this._hideForm(!0)})),this.listenTo(this._form,"cancel",(()=>{this._hideForm(!0)})),this._form.keystrokes.set("Esc",((t,e)=>{this._hideForm(!0),e()})),this.listenTo(t.ui,"update",(()=>{n.getClosestSelectedImageWidget(e.selection)?this._isVisible&&function(t){const e=t.plugins.get("ContextualBalloon");if(t.plugins.get("ImageUtils").getClosestSelectedImageWidget(t.editing.view.document.selection)){const n=Py(t);e.updatePosition(n)}}(t):this._hideForm(!0)})),Zm({emitter:this._form,activator:()=>this._isVisible,contextElements:()=>[this._balloon.view.element],callback:()=>this._hideForm()})}_showForm(){if(this._isVisible)return;this._form||this._createForm();const t=this.editor,e=t.commands.get("imageTextAlternative"),n=this._form.labeledInput;this._form.disableCssTransitions(),this._isInBalloon||this._balloon.add({view:this._form,position:Py(t)}),n.fieldView.value=n.fieldView.element.value=e.value||"",this._form.labeledInput.fieldView.select(),this._form.enableCssTransitions()}_hideForm(t=!1){this._isInBalloon&&(this._form.focusTracker.isFocused&&this._form.saveButtonView.focus(),this._balloon.remove(this._form),t&&this.editor.editing.view.focus())}get _isVisible(){return!!this._balloon&&this._balloon.visibleView===this._form}get _isInBalloon(){return!!this._balloon&&this._balloon.hasView(this._form)}}class Vy extends er{static get requires(){return[By,Ry]}static get pluginName(){return"ImageTextAlternative"}}function Fy(t,e){const n=(e,n,i)=>{if(!i.consumable.consume(n.item,e.name))return;const o=i.writer,r=i.mapper.toViewElement(n.item),s=t.findViewImgElement(r);null===n.attributeNewValue?(o.removeAttribute("srcset",s),o.removeAttribute("sizes",s)):n.attributeNewValue&&(o.setAttribute("srcset",n.attributeNewValue,s),o.setAttribute("sizes","100vw",s))};return t=>{t.on(`attribute:srcset:${e}`,n)}}function Ly(t,e,n){const i=(e,n,i)=>{if(!i.consumable.consume(n.item,e.name))return;const o=i.writer,r=i.mapper.toViewElement(n.item),s=t.findViewImgElement(r);o.setAttribute(n.attributeKey,n.attributeNewValue||"",s)};return t=>{t.on(`attribute:${n}:${e}`,i)}}class Oy extends Da{observe(t){this.listenTo(t,"load",((t,e)=>{const n=e.target;this.checkShouldIgnoreEventFromTarget(n)||"IMG"==n.tagName&&this._fireEvents(e)}),{useCapture:!0})}stopObserving(t){this.stopListening(t)}_fireEvents(t){this.isEnabled&&(this.document.fire("layoutChanged"),this.document.fire("imageLoaded",t))}}var zy=Object.defineProperty,My=Object.getOwnPropertySymbols,Ny=Object.prototype.hasOwnProperty,Hy=Object.prototype.propertyIsEnumerable,jy=(t,e,n)=>e in t?zy(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,qy=(t,e)=>{for(var n in e||(e={}))Ny.call(e,n)&&jy(t,n,e[n]);if(My)for(var n of My(e))Hy.call(e,n)&&jy(t,n,e[n]);return t};class Wy extends ir{constructor(t){super(t);const e=t.config.get("image.insert.type");t.plugins.has("ImageBlockEditing")||"block"===e&&_("image-block-plugin-required"),t.plugins.has("ImageInlineEditing")||"inline"===e&&_("image-inline-plugin-required")}refresh(){const t=this.editor.plugins.get("ImageUtils");this.isEnabled=t.isImageAllowed()}execute(t){const e=_o(t.source),n=this.editor.model.document.selection,i=this.editor.plugins.get("ImageUtils"),o=Object.fromEntries(n.getAttributes());e.forEach(((t,e)=>{const r=n.getSelectedElement();if("string"==typeof t&&(t={src:t}),e&&r&&i.isImage(r)){const e=this.editor.model.createPositionAfter(r);i.insertImage(qy(qy({},t),o),e)}else i.insertImage(qy(qy({},t),o))}))}}class Uy extends ir{constructor(t){super(t),this.decorate("cleanupImage")}refresh(){const t=this.editor.plugins.get("ImageUtils"),e=this.editor.model.document.selection.getSelectedElement();this.isEnabled=t.isImage(e),this.value=this.isEnabled?e.getAttribute("src"):null}execute(t){const e=this.editor.model.document.selection.getSelectedElement(),n=this.editor.plugins.get("ImageUtils");this.editor.model.change((i=>{i.setAttribute("src",t.source,e),this.cleanupImage(i,e),n.setImageNaturalSizeAttributes(e)}))}cleanupImage(t,e){t.removeAttribute("srcset",e),t.removeAttribute("sizes",e),t.removeAttribute("sources",e),t.removeAttribute("width",e),t.removeAttribute("height",e),t.removeAttribute("alt",e)}}class $y extends er{static get requires(){return[xy]}static get pluginName(){return"ImageEditing"}init(){const t=this.editor,e=t.conversion;t.editing.view.addObserver(Oy),e.for("upcast").attributeToAttribute({view:{name:"img",key:"alt"},model:"alt"}).attributeToAttribute({view:{name:"img",key:"srcset"},model:"srcset"});const n=new Wy(t),i=new Uy(t);t.commands.add("insertImage",n),t.commands.add("replaceImageSource",i),t.commands.add("imageInsert",n)}}class Gy extends er{static get requires(){return[xy]}static get pluginName(){return"ImageSizeAttributes"}afterInit(){this._registerSchema(),this._registerConverters("imageBlock"),this._registerConverters("imageInline")}_registerSchema(){this.editor.plugins.has("ImageBlockEditing")&&this.editor.model.schema.extend("imageBlock",{allowAttributes:["width","height"]}),this.editor.plugins.has("ImageInlineEditing")&&this.editor.model.schema.extend("imageInline",{allowAttributes:["width","height"]})}_registerConverters(t){const e=this.editor,n=e.plugins.get("ImageUtils"),i="imageBlock"===t?"figure":"img";function o(e,i,o,r){e.on(`attribute:${i}:${t}`,((e,i,s)=>{if(!s.consumable.consume(i.item,e.name))return;const a=s.writer,c=s.mapper.toViewElement(i.item),l=n.findViewImgElement(c);if(null!==i.attributeNewValue?a.setAttribute(o,i.attributeNewValue,l):a.removeAttribute(o,l),i.item.hasAttribute("sources"))return;const d=i.item.hasAttribute("resizedWidth");if("imageInline"===t&&!d&&!r)return;const h=i.item.getAttribute("width"),u=i.item.getAttribute("height");h&&u&&a.setStyle("aspect-ratio",`${h}/${u}`,l)}))}e.conversion.for("upcast").attributeToAttribute({view:{name:i,styles:{width:/.+/}},model:{key:"width",value:t=>by(t)?fy(t.getStyle("width")):null}}).attributeToAttribute({view:{name:i,key:"width"},model:"width"}).attributeToAttribute({view:{name:i,styles:{height:/.+/}},model:{key:"height",value:t=>by(t)?fy(t.getStyle("height")):null}}).attributeToAttribute({view:{name:i,key:"height"},model:"height"}),e.conversion.for("editingDowncast").add((t=>{o(t,"width","width",!0),o(t,"height","height",!0)})),e.conversion.for("dataDowncast").add((t=>{o(t,"width","width",!1),o(t,"height","height",!1)}))}}class Ky extends ir{constructor(t,e){super(t),this._modelElementName=e}refresh(){const t=this.editor.plugins.get("ImageUtils"),e=t.getClosestSelectedImageElement(this.editor.model.document.selection);"imageBlock"===this._modelElementName?this.isEnabled=t.isInlineImage(e):this.isEnabled=t.isBlockImage(e)}execute(t={}){const e=this.editor,n=this.editor.model,i=e.plugins.get("ImageUtils"),o=i.getClosestSelectedImageElement(n.document.selection),r=Object.fromEntries(o.getAttributes());return r.src||r.uploadId?n.change((e=>{const{setImageSizes:s=!0}=t,a=Array.from(n.markers).filter((t=>t.getRange().containsItem(o))),c=i.insertImage(r,n.createSelection(o,"on"),this._modelElementName,{setImageSizes:s});if(!c)return null;const l=e.createRangeOn(c);for(const t of a){const n=t.getRange(),i="$graveyard"!=n.root.rootName?n.getJoined(l,!0):l;e.updateMarker(t,{range:i})}return{oldElement:o,newElement:c}})):null}}var Jy=n(7378),Zy={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Jy.A,Zy);Jy.A.locals;class Yy extends er{static get requires(){return[xy]}static get pluginName(){return"ImagePlaceholder"}afterInit(){this._setupSchema(),this._setupConversion(),this._setupLoadListener()}_setupSchema(){const t=this.editor.model.schema;t.isRegistered("imageBlock")&&t.extend("imageBlock",{allowAttributes:["placeholder"]}),t.isRegistered("imageInline")&&t.extend("imageInline",{allowAttributes:["placeholder"]})}_setupConversion(){const t=this.editor,e=t.conversion,n=t.plugins.get("ImageUtils");e.for("editingDowncast").add((t=>{t.on("attribute:placeholder",((t,e,i)=>{if(!i.consumable.test(e.item,t.name))return;if(!e.item.is("element","imageBlock")&&!e.item.is("element","imageInline"))return;i.consumable.consume(e.item,t.name);const o=i.writer,r=i.mapper.toViewElement(e.item),s=n.findViewImgElement(r);e.attributeNewValue?(o.addClass("image_placeholder",s),o.setStyle("background-image",`url(${e.attributeNewValue})`,s),o.setCustomProperty("editingPipeline:doNotReuseOnce",!0,s)):(o.removeClass("image_placeholder",s),o.removeStyle("background-image",s))}))}))}_setupLoadListener(){const t=this.editor,e=t.model,n=t.editing,i=n.view,o=t.plugins.get("ImageUtils");i.addObserver(Oy),this.listenTo(i.document,"imageLoaded",((t,r)=>{const s=i.domConverter.mapDomToView(r.target);if(!s)return;const a=o.getImageWidgetFromImageView(s);if(!a)return;const c=n.mapper.toModelElement(a);c&&c.hasAttribute("placeholder")&&e.enqueueChange({isUndoable:!1},(t=>{t.removeAttribute("placeholder",c)}))}))}}class Qy extends er{static get requires(){return[$y,Gy,xy,Yy,RC]}static get pluginName(){return"ImageBlockEditing"}init(){const t=this.editor;t.model.schema.register("imageBlock",{inheritAllFrom:"$blockObject",allowAttributes:["alt","src","srcset"]}),this._setupConversion(),t.plugins.has("ImageInlineEditing")&&(t.commands.add("imageTypeBlock",new Ky(this.editor,"imageBlock")),this._setupClipboardIntegration())}_setupConversion(){const t=this.editor,e=t.t,n=t.conversion,i=t.plugins.get("ImageUtils");n.for("dataDowncast").elementToStructure({model:"imageBlock",view:(t,{writer:e})=>my(e)}),n.for("editingDowncast").elementToStructure({model:"imageBlock",view:(t,{writer:n})=>i.toImageWidget(my(n),n,e("image widget"))}),n.for("downcast").add(Ly(i,"imageBlock","src")).add(Ly(i,"imageBlock","alt")).add(Fy(i,"imageBlock")),n.for("upcast").elementToElement({view:gy(t,"imageBlock"),model:(t,{writer:e})=>e.createElement("imageBlock",t.hasAttribute("src")?{src:t.getAttribute("src")}:void 0)}).add(function(t){const e=(e,n,i)=>{if(!i.consumable.test(n.viewItem,{name:!0,classes:"image"}))return;const o=t.findViewImgElement(n.viewItem);if(!o||!i.consumable.test(o,{name:!0}))return;i.consumable.consume(n.viewItem,{name:!0,classes:"image"});const r=$o(i.convertItem(o,n.modelCursor).modelRange.getItems());r?(i.convertChildren(n.viewItem,r),i.updateConversionResult(r,n)):i.consumable.revert(n.viewItem,{name:!0,classes:"image"})};return t=>{t.on("element:figure",e)}}(i))}_setupClipboardIntegration(){const t=this.editor,e=t.model,n=t.editing.view,i=t.plugins.get("ImageUtils"),o=t.plugins.get("ClipboardPipeline");this.listenTo(o,"inputTransformation",((o,r)=>{const s=Array.from(r.content.getChildren());let a;if(!s.every(i.isInlineImageView))return;a=r.targetRanges?t.editing.mapper.toModelRange(r.targetRanges[0]):e.document.selection.getFirstRange();const c=e.createSelection(a);if("imageBlock"===py(e.schema,c)){const t=new Au(n.document),e=s.map((e=>t.createElement("figure",{class:"image"},e)));r.content=t.createDocumentFragment(e)}})),this.listenTo(o,"contentInsertion",((t,n)=>{"paste"===n.method&&e.change((t=>{const e=t.createRangeIn(n.content);for(const t of e.getItems())t.is("element","imageBlock")&&i.setImageNaturalSizeAttributes(t)}))}))}}var Xy=n(3350),tx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Xy.A,tx);Xy.A.locals;class ex extends Jm{constructor(t,e=[]){super(t),this.focusTracker=new Go,this.keystrokes=new Ko,this._focusables=new xm,this.children=this.createCollection(),this._focusCycler=new Xg({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});for(const t of e)this.children.add(t),this._focusables.add(t),t instanceof Cg&&this._focusables.addMany(t.children);if(this._focusables.length>1)for(const t of this._focusables)nx(t)&&(t.focusCycler.on("forwardCycle",(t=>{this._focusCycler.focusNext(),t.stop()})),t.focusCycler.on("backwardCycle",(t=>{this._focusCycler.focusPrevious(),t.stop()})));this.setTemplate({tag:"form",attributes:{class:["ck","ck-image-insert-form"],tabindex:-1},children:this.children})}render(){super.render(),Qm({view:this});for(const t of this._focusables)this.focusTracker.add(t.element);this.keystrokes.listenTo(this.element);const t=t=>t.stopPropagation();this.keystrokes.set("arrowright",t),this.keystrokes.set("arrowleft",t),this.keystrokes.set("arrowup",t),this.keystrokes.set("arrowdown",t)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}}function nx(t){return"focusCycler"in t}class ix extends er{constructor(t){super(t),this._integrations=new Map,t.config.define("image.insert.integrations",["upload","assetManager","url"])}static get pluginName(){return"ImageInsertUI"}static get requires(){return[xy]}init(){const t=this.editor,e=t.model.document.selection,n=t.plugins.get("ImageUtils");this.set("isImageSelected",!1),this.listenTo(t.model.document,"change",(()=>{this.isImageSelected=n.isImage(e.getSelectedElement())}));const i=t=>this._createToolbarComponent(t);t.ui.componentFactory.add("insertImage",i),t.ui.componentFactory.add("imageInsert",i)}registerIntegration({name:t,observable:e,buttonViewCreator:n,formViewCreator:i,requiresForm:o}){this._integrations.has(t)&&_("image-insert-integration-exists",{name:t}),this._integrations.set(t,{observable:e,buttonViewCreator:n,formViewCreator:i,requiresForm:!!o})}_createToolbarComponent(t){const e=this.editor,n=t.t,i=this._prepareIntegrations();if(!i.length)return null;let o;const r=i[0];if(1==i.length){if(!r.requiresForm)return r.buttonViewCreator(!0);o=r.buttonViewCreator(!0)}else{const e=r.buttonViewCreator(!1);o=new Ep(t,e),o.tooltip=!0,o.bind("label").to(this,"isImageSelected",(t=>n(t?"Replace image":"Insert image")))}const s=this.dropdownView=Ip(t,o),a=i.map((({observable:t})=>"function"==typeof t?t():t));return s.bind("isEnabled").toMany(a,"isEnabled",((...t)=>t.some((t=>t)))),s.once("change:isOpen",(()=>{const t=i.map((({formViewCreator:t})=>t(1==i.length))),n=new ex(e.locale,t);s.panelView.children.add(n)})),s}_prepareIntegrations(){const t=this.editor.config.get("image.insert.integrations"),e=[];if(!t.length)return _("image-insert-integrations-not-specified"),e;for(const n of t)this._integrations.has(n)?e.push(this._integrations.get(n)):["upload","assetManager","url"].includes(n)||_("image-insert-unknown-integration",{item:n});return e.length||_("image-insert-integrations-not-registered"),e}}var ox=n(265),rx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(ox.A,rx);ox.A.locals;class sx extends er{static get requires(){return[Qy,hv,Vy,ix]}static get pluginName(){return"ImageBlock"}}class ax extends er{static get requires(){return[$y,Gy,xy,Yy,RC]}static get pluginName(){return"ImageInlineEditing"}init(){const t=this.editor,e=t.model.schema;e.register("imageInline",{inheritAllFrom:"$inlineObject",allowAttributes:["alt","src","srcset"]}),e.addChildCheck(((t,e)=>{if(t.endsWith("caption")&&"imageInline"===e.name)return!1})),this._setupConversion(),t.plugins.has("ImageBlockEditing")&&(t.commands.add("imageTypeInline",new Ky(this.editor,"imageInline")),this._setupClipboardIntegration())}_setupConversion(){const t=this.editor,e=t.t,n=t.conversion,i=t.plugins.get("ImageUtils");n.for("dataDowncast").elementToElement({model:"imageInline",view:(t,{writer:e})=>e.createEmptyElement("img")}),n.for("editingDowncast").elementToStructure({model:"imageInline",view:(t,{writer:n})=>i.toImageWidget(function(t){return t.createContainerElement("span",{class:"image-inline"},t.createEmptyElement("img"))}(n),n,e("image widget"))}),n.for("downcast").add(Ly(i,"imageInline","src")).add(Ly(i,"imageInline","alt")).add(Fy(i,"imageInline")),n.for("upcast").elementToElement({view:gy(t,"imageInline"),model:(t,{writer:e})=>e.createElement("imageInline",t.hasAttribute("src")?{src:t.getAttribute("src")}:void 0)})}_setupClipboardIntegration(){const t=this.editor,e=t.model,n=t.editing.view,i=t.plugins.get("ImageUtils"),o=t.plugins.get("ClipboardPipeline");this.listenTo(o,"inputTransformation",((o,r)=>{const s=Array.from(r.content.getChildren());let a;if(!s.every(i.isBlockImageView))return;a=r.targetRanges?t.editing.mapper.toModelRange(r.targetRanges[0]):e.document.selection.getFirstRange();const c=e.createSelection(a);if("imageInline"===py(e.schema,c)){const t=new Au(n.document),e=s.map((e=>1===e.childCount?(Array.from(e.getAttributes()).forEach((n=>t.setAttribute(...n,i.findViewImgElement(e)))),e.getChild(0)):e));r.content=t.createDocumentFragment(e)}})),this.listenTo(o,"contentInsertion",((t,n)=>{"paste"===n.method&&e.change((t=>{const e=t.createRangeIn(n.content);for(const t of e.getItems())t.is("element","imageInline")&&i.setImageNaturalSizeAttributes(t)}))}))}}class cx extends er{static get requires(){return[ax,hv,Vy,ix]}static get pluginName(){return"ImageInline"}}class lx extends er{static get pluginName(){return"ImageCaptionUtils"}static get requires(){return[xy]}getCaptionFromImageModelElement(t){for(const e of t.getChildren())if(e&&e.is("element","caption"))return e;return null}getCaptionFromModelSelection(t){const e=this.editor.plugins.get("ImageUtils"),n=t.getFirstPosition().findAncestor("caption");return n&&e.isBlockImage(n.parent)?n:null}matchImageCaptionViewElement(t){const e=this.editor.plugins.get("ImageUtils");return"figcaption"==t.name&&e.isBlockImageView(t.parent)?{name:!0}:null}}class dx extends ir{refresh(){const t=this.editor,e=t.plugins.get("ImageCaptionUtils"),n=t.plugins.get("ImageUtils");if(!t.plugins.has(Qy))return this.isEnabled=!1,void(this.value=!1);const i=t.model.document.selection,o=i.getSelectedElement();if(!o){const t=e.getCaptionFromModelSelection(i);return this.isEnabled=!!t,void(this.value=!!t)}this.isEnabled=n.isImage(o),this.isEnabled?this.value=!!e.getCaptionFromImageModelElement(o):this.value=!1}execute(t={}){const{focusCaptionOnShow:e}=t;this.editor.model.change((t=>{this.value?this._hideImageCaption(t):this._showImageCaption(t,e)}))}_showImageCaption(t,e){const n=this.editor.model.document.selection,i=this.editor.plugins.get("ImageCaptionEditing"),o=this.editor.plugins.get("ImageUtils");let r=n.getSelectedElement();const s=i._getSavedCaption(r);o.isInlineImage(r)&&(this.editor.execute("imageTypeBlock"),r=n.getSelectedElement());const a=s||t.createElement("caption");t.append(a,r),e&&t.setSelection(a,"in")}_hideImageCaption(t){const e=this.editor,n=e.model.document.selection,i=e.plugins.get("ImageCaptionEditing"),o=e.plugins.get("ImageCaptionUtils");let r,s=n.getSelectedElement();s?r=o.getCaptionFromImageModelElement(s):(r=o.getCaptionFromModelSelection(n),s=r.parent),i._saveCaption(s,r),t.setSelection(s,"on"),t.remove(r)}}class hx extends er{constructor(t){super(t),this._savedCaptionsMap=new WeakMap}static get requires(){return[xy,lx]}static get pluginName(){return"ImageCaptionEditing"}init(){const t=this.editor,e=t.model.schema;e.isRegistered("caption")?e.extend("caption",{allowIn:"imageBlock"}):e.register("caption",{allowIn:"imageBlock",allowContentOf:"$block",isLimit:!0}),t.commands.add("toggleImageCaption",new dx(this.editor)),this._setupConversion(),this._setupImageTypeCommandsIntegration(),this._registerCaptionReconversion()}_setupConversion(){const t=this.editor,e=t.editing.view,n=t.plugins.get("ImageUtils"),i=t.plugins.get("ImageCaptionUtils"),o=t.t;t.conversion.for("upcast").elementToElement({view:t=>i.matchImageCaptionViewElement(t),model:"caption"}),t.conversion.for("dataDowncast").elementToElement({model:"caption",view:(t,{writer:e})=>n.isBlockImage(t.parent)?e.createContainerElement("figcaption"):null}),t.conversion.for("editingDowncast").elementToElement({model:"caption",view:(t,{writer:i})=>{if(!n.isBlockImage(t.parent))return null;const r=i.createEditableElement("figcaption");i.setCustomProperty("imageCaption",!0,r),r.placeholder=o("Enter image caption"),wr({view:e,element:r,keepOnFocus:!0});const s=t.parent.getAttribute("alt");return $C(r,i,{label:s?o("Caption for image: %0",[s]):o("Caption for the image")})}})}_setupImageTypeCommandsIntegration(){const t=this.editor,e=t.plugins.get("ImageUtils"),n=t.plugins.get("ImageCaptionUtils"),i=t.commands.get("imageTypeInline"),o=t.commands.get("imageTypeBlock"),r=t=>{if(!t.return)return;const{oldElement:i,newElement:o}=t.return;if(!i)return;if(e.isBlockImage(i)){const t=n.getCaptionFromImageModelElement(i);if(t)return void this._saveCaption(o,t)}const r=this._getSavedCaption(i);r&&this._saveCaption(o,r)};i&&this.listenTo(i,"execute",r,{priority:"low"}),o&&this.listenTo(o,"execute",r,{priority:"low"})}_getSavedCaption(t){const e=this._savedCaptionsMap.get(t);return e?Tc.fromJSON(e):null}_saveCaption(t,e){this._savedCaptionsMap.set(t,e.toJSON())}_registerCaptionReconversion(){const t=this.editor,e=t.model,n=t.plugins.get("ImageUtils"),i=t.plugins.get("ImageCaptionUtils");e.document.on("change:data",(()=>{const o=e.document.differ.getChanges();for(const e of o){if("alt"!==e.attributeKey)continue;const o=e.range.start.nodeAfter;if(n.isBlockImage(o)){const e=i.getCaptionFromImageModelElement(o);if(!e)return;t.editing.reconvertItem(e)}}}))}}class ux extends er{static get requires(){return[lx]}static get pluginName(){return"ImageCaptionUI"}init(){const t=this.editor,e=t.editing.view,n=t.plugins.get("ImageCaptionUtils"),i=t.t;t.ui.componentFactory.add("toggleImageCaption",(o=>{const r=t.commands.get("toggleImageCaption"),s=new mg(o);return s.set({icon:ym.caption,tooltip:!0,isToggleable:!0}),s.bind("isOn","isEnabled").to(r,"value","isEnabled"),s.bind("label").to(r,"value",(t=>i(t?"Toggle caption off":"Toggle caption on"))),this.listenTo(s,"execute",(()=>{t.execute("toggleImageCaption",{focusCaptionOnShow:!0});const i=n.getCaptionFromModelSelection(t.model.document.selection);if(i){const n=t.editing.mapper.toViewElement(i);e.scrollToTheSelection(),e.change((t=>{t.addClass("image__caption_highlighted",n)}))}t.editing.view.focus()})),s}))}}var mx=n(5247),gx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(mx.A,gx);mx.A.locals;function px(t){const e=t.map((t=>t.replace("+","\\+")));return new RegExp(`^image\\/(${e.join("|")})$`)}function fx(t){return new Promise(((n,i)=>{const o=t.getAttribute("src");fetch(o).then((t=>t.blob())).then((t=>{const e=bx(t,o),i=e.replace("image/",""),r=new File([t],`image.${i}`,{type:e});n(r)})).catch((t=>t&&"TypeError"===t.name?function(t){return function(t){return new Promise(((n,i)=>{const o=e.document.createElement("img");o.addEventListener("load",(()=>{const t=e.document.createElement("canvas");t.width=o.width,t.height=o.height;t.getContext("2d").drawImage(o,0,0),t.toBlob((t=>t?n(t):i()))})),o.addEventListener("error",(()=>i())),o.src=t}))}(t).then((e=>{const n=bx(e,t),i=n.replace("image/","");return new File([e],`image.${i}`,{type:n})}))}(o).then(n).catch(i):i(t)))}))}function bx(t,e){return t.type?t.type:e.match(/data:(image\/\w+);base64/)?e.match(/data:(image\/\w+);base64/)[1].toLowerCase():"image/jpeg"}class kx extends er{static get pluginName(){return"ImageUploadUI"}init(){const t=this.editor,e=t.t,n=()=>{const t=this._createButton(bg);return t.set({label:e("Upload image from computer"),tooltip:!0}),t};if(t.ui.componentFactory.add("uploadImage",n),t.ui.componentFactory.add("imageUpload",n),t.ui.componentFactory.add("menuBar:uploadImage",(()=>{const t=this._createButton(gw);return t.label=e("Image from computer"),t})),t.plugins.has("ImageInsertUI")){const n=t.plugins.get("ImageInsertUI");n.registerIntegration({name:"upload",observable:()=>t.commands.get("uploadImage"),buttonViewCreator:()=>{const i=t.ui.componentFactory.create("uploadImage");return i.bind("label").to(n,"isImageSelected",(t=>e(t?"Replace image from computer":"Upload image from computer"))),i},formViewCreator:()=>{const i=t.ui.componentFactory.create("uploadImage");return i.withText=!0,i.bind("label").to(n,"isImageSelected",(t=>e(t?"Replace from computer":"Upload from computer"))),i.on("execute",(()=>{n.dropdownView.isOpen=!1})),i}})}}_createButton(t){const e=this.editor,n=e.locale,i=e.commands.get("uploadImage"),o=e.config.get("image.upload.types"),r=px(o),s=new t(e.locale),a=n.t;return s.set({acceptedType:o.map((t=>`image/${t}`)).join(","),allowMultipleFiles:!0,label:a("Upload image from computer"),icon:ym.imageUpload}),s.bind("isEnabled").to(i),s.on("done",((t,n)=>{const i=Array.from(n).filter((t=>r.test(t.type)));i.length&&(e.execute("uploadImage",{file:i}),e.editing.view.focus())})),s}}var wx=n(2267),_x={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(wx.A,_x);wx.A.locals;var Ax=n(7693),Cx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Ax.A,Cx);Ax.A.locals;var vx=n(1559),yx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(vx.A,yx);vx.A.locals;class xx extends er{constructor(t){super(t),this.uploadStatusChange=(t,e,n)=>{const i=this.editor,o=e.item,r=o.getAttribute("uploadId");if(!n.consumable.consume(e.item,t.name))return;const s=i.plugins.get("ImageUtils"),a=i.plugins.get(o_),c=r?e.attributeNewValue:null,l=this.placeholder,d=i.editing.mapper.toViewElement(o),h=n.writer;if("reading"==c)return Ex(d,h),void Dx(s,l,d,h);if("uploading"==c){const t=a.loaders.get(r);return Ex(d,h),void(t?(Bx(d,h),function(t,e,n,i){const o=function(t){const e=t.createUIElement("div",{class:"ck-progress-bar"});return t.setCustomProperty("progressBar",!0,e),e}(e);e.insert(e.createPositionAt(t,"end"),o),n.on("change:uploadedPercent",((t,e,n)=>{i.change((t=>{t.setStyle("width",n+"%",o)}))}))}(d,h,t,i.editing.view),function(t,e,n,i){if(i.data){const o=t.findViewImgElement(e);n.setAttribute("src",i.data,o)}}(s,d,h,t)):Dx(s,l,d,h))}"complete"==c&&a.loaders.get(r)&&function(t,e,n){const i=e.createUIElement("div",{class:"ck-image-upload-complete-icon"});e.insert(e.createPositionAt(t,"end"),i),setTimeout((()=>{n.change((t=>t.remove(t.createRangeOn(i))))}),3e3)}(d,h,i.editing.view),function(t,e){Tx(t,e,"progressBar")}(d,h),Bx(d,h),function(t,e){e.removeClass("ck-appear",t)}(d,h)},this.placeholder="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="}static get pluginName(){return"ImageUploadProgress"}init(){const t=this.editor;t.plugins.has("ImageBlockEditing")&&t.editing.downcastDispatcher.on("attribute:uploadStatus:imageBlock",this.uploadStatusChange),t.plugins.has("ImageInlineEditing")&&t.editing.downcastDispatcher.on("attribute:uploadStatus:imageInline",this.uploadStatusChange)}}function Ex(t,e){t.hasClass("ck-appear")||e.addClass("ck-appear",t)}function Dx(t,e,n,i){n.hasClass("ck-image-upload-placeholder")||i.addClass("ck-image-upload-placeholder",n);const o=t.findViewImgElement(n);o.getAttribute("src")!==e&&i.setAttribute("src",e,o),Sx(n,"placeholder")||i.insert(i.createPositionAfter(o),function(t){const e=t.createUIElement("div",{class:"ck-upload-placeholder-loader"});return t.setCustomProperty("placeholder",!0,e),e}(i))}function Bx(t,e){t.hasClass("ck-image-upload-placeholder")&&e.removeClass("ck-image-upload-placeholder",t),Tx(t,e,"placeholder")}function Sx(t,e){for(const n of t.getChildren())if(n.getCustomProperty(e))return n}function Tx(t,e,n){const i=Sx(t,n);i&&e.remove(e.createRangeOn(i))}var Ix=Object.defineProperty,Px=Object.defineProperties,Rx=Object.getOwnPropertyDescriptors,Vx=Object.getOwnPropertySymbols,Fx=Object.prototype.hasOwnProperty,Lx=Object.prototype.propertyIsEnumerable,Ox=(t,e,n)=>e in t?Ix(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class zx extends ir{refresh(){const t=this.editor,e=t.plugins.get("ImageUtils"),n=t.model.document.selection.getSelectedElement();this.isEnabled=e.isImageAllowed()||e.isImage(n)}execute(t){const e=_o(t.file),n=this.editor.model.document.selection,i=this.editor.plugins.get("ImageUtils"),o=Object.fromEntries(n.getAttributes());e.forEach(((t,e)=>{const r=n.getSelectedElement();if(e&&r&&i.isImage(r)){const e=this.editor.model.createPositionAfter(r);this._uploadImage(t,o,e)}else this._uploadImage(t,o)}))}_uploadImage(t,e,n){const i=this.editor,o=i.plugins.get(o_).createLoader(t),r=i.plugins.get("ImageUtils");var s,a;o&&r.insertImage((s=((t,e)=>{for(var n in e||(e={}))Fx.call(e,n)&&Ox(t,n,e[n]);if(Vx)for(var n of Vx(e))Lx.call(e,n)&&Ox(t,n,e[n]);return t})({},e),a={uploadId:o.id},Px(s,Rx(a))),n)}}class Mx extends er{constructor(t){super(t),t.config.define("image",{upload:{types:["jpeg","png","gif","bmp","webp","tiff"]}}),this._uploadImageElements=new Map}static get requires(){return[o_,sk,RC,xy]}static get pluginName(){return"ImageUploadEditing"}init(){const t=this.editor,e=t.model.document,n=t.conversion,i=t.plugins.get(o_),o=t.plugins.get("ImageUtils"),r=t.plugins.get("ClipboardPipeline"),s=px(t.config.get("image.upload.types")),a=new zx(t);t.commands.add("uploadImage",a),t.commands.add("imageUpload",a),n.for("upcast").attributeToAttribute({view:{name:"img",key:"uploadId"},model:"uploadId"}),this.listenTo(t.editing.view.document,"clipboardInput",((e,n)=>{if(i=n.dataTransfer,Array.from(i.types).includes("text/html")&&""!==i.getData("text/html"))return;var i;const o=Array.from(n.dataTransfer.files).filter((t=>!!t&&s.test(t.type)));o.length&&(e.stop(),t.model.change((e=>{n.targetRanges&&e.setSelection(n.targetRanges.map((e=>t.editing.mapper.toModelRange(e)))),t.execute("uploadImage",{file:o})})))})),this.listenTo(r,"inputTransformation",((e,n)=>{const r=Array.from(t.editing.view.createRangeIn(n.content)).map((t=>t.item)).filter((t=>function(t,e){return!(!t.isInlineImageView(e)||!e.getAttribute("src")||!e.getAttribute("src").match(/^data:image\/\w+;base64,/g)&&!e.getAttribute("src").match(/^blob:/g))}(o,t)&&!t.getAttribute("uploadProcessed"))).map((t=>({promise:fx(t),imageElement:t})));if(!r.length)return;const s=new Au(t.editing.view.document);for(const t of r){s.setAttribute("uploadProcessed",!0,t.imageElement);const e=i.createLoader(t.promise);e&&(s.setAttribute("src","",t.imageElement),s.setAttribute("uploadId",e.id,t.imageElement))}})),t.editing.view.document.on("dragover",((t,e)=>{e.preventDefault()})),e.on("change",(()=>{const n=e.differ.getChanges({includeChangesInGraveyard:!0}).reverse(),o=new Set;for(const e of n)if("insert"==e.type&&"$text"!=e.name){const n=e.position.nodeAfter,r="$graveyard"==e.position.root.rootName;for(const e of Nx(t,n)){const t=e.getAttribute("uploadId");if(!t)continue;const n=i.loaders.get(t);n&&(r?o.has(t)||n.abort():(o.add(t),this._uploadImageElements.set(t,e),"idle"==n.status&&this._readAndUpload(n)))}}})),this.on("uploadComplete",((t,{imageElement:e,data:n})=>{const i=n.urls?n.urls:n;this.editor.model.change((t=>{t.setAttribute("src",i.default,e),this._parseAndSetSrcsetAttributeOnImage(i,e,t),o.setImageNaturalSizeAttributes(e)}))}),{priority:"low"})}afterInit(){const t=this.editor.model.schema;this.editor.plugins.has("ImageBlockEditing")&&t.extend("imageBlock",{allowAttributes:["uploadId","uploadStatus"]}),this.editor.plugins.has("ImageInlineEditing")&&t.extend("imageInline",{allowAttributes:["uploadId","uploadStatus"]})}_readAndUpload(t){const e=this.editor,n=e.model,i=e.locale.t,o=e.plugins.get(o_),r=e.plugins.get(sk),a=e.plugins.get("ImageUtils"),c=this._uploadImageElements;return n.enqueueChange({isUndoable:!1},(e=>{e.setAttribute("uploadStatus","reading",c.get(t.id))})),t.read().then((()=>{const o=t.upload(),r=c.get(t.id);if(s.isSafari){const t=e.editing.mapper.toViewElement(r),n=a.findViewImgElement(t);e.editing.view.once("render",(()=>{if(!n.parent)return;const t=e.editing.view.domConverter.mapViewToDom(n.parent);if(!t)return;const i=t.style.display;t.style.display="none",t._ckHack=t.offsetHeight,t.style.display=i}))}return e.ui&&e.ui.ariaLiveAnnouncer.announce(i("Uploading image")),n.enqueueChange({isUndoable:!1},(t=>{t.setAttribute("uploadStatus","uploading",r)})),o})).then((o=>{n.enqueueChange({isUndoable:!1},(n=>{const r=c.get(t.id);n.setAttribute("uploadStatus","complete",r),e.ui&&e.ui.ariaLiveAnnouncer.announce(i("Image upload complete")),this.fire("uploadComplete",{data:o,imageElement:r})})),l()})).catch((o=>{if(e.ui&&e.ui.ariaLiveAnnouncer.announce(i("Error during image upload")),"error"!==t.status&&"aborted"!==t.status)throw o;"error"==t.status&&o&&r.showWarning(o,{title:i("Upload failed"),namespace:"upload"}),n.enqueueChange({isUndoable:!1},(e=>{e.remove(c.get(t.id))})),l()}));function l(){n.enqueueChange({isUndoable:!1},(e=>{const n=c.get(t.id);e.removeAttribute("uploadId",n),e.removeAttribute("uploadStatus",n),c.delete(t.id)})),o.destroyLoader(t)}}_parseAndSetSrcsetAttributeOnImage(t,e,n){let i=0;const o=Object.keys(t).filter((t=>{const e=parseInt(t,10);if(!isNaN(e))return i=Math.max(i,e),!0})).map((e=>`${t[e]} ${e}w`)).join(", ");if(""!=o){const t={srcset:o};e.hasAttribute("width")||e.hasAttribute("height")||(t.width=i),n.setAttributes(t,e)}}}function Nx(t,e){const n=t.plugins.get("ImageUtils");return Array.from(t.model.createRangeOn(e)).filter((t=>n.isImage(t.item))).map((t=>t.item))}const Hx=function(t,e){return function(n,i){if(null==n)return n;if(!sn(n))return t(n,i);for(var o=n.length,r=e?o:-1,s=Object(n);(e?r--:++r{e.setAttribute("resizedWidth",t.width,o),e.removeAttribute("resizedHeight",o),i.setImageNaturalSizeAttributes(o)}))}}class Ux extends er{static get requires(){return[xy]}static get pluginName(){return"ImageResizeEditing"}constructor(t){super(t),t.config.define("image",{resizeUnit:"%",resizeOptions:[{name:"resizeImage:original",value:null,icon:"original"},{name:"resizeImage:custom",value:"custom",icon:"custom"},{name:"resizeImage:25",value:"25",icon:"small"},{name:"resizeImage:50",value:"50",icon:"medium"},{name:"resizeImage:75",value:"75",icon:"large"}]})}init(){const t=this.editor,e=new Wx(t);this._registerConverters("imageBlock"),this._registerConverters("imageInline"),t.commands.add("resizeImage",e),t.commands.add("imageResize",e)}afterInit(){this._registerSchema()}_registerSchema(){this.editor.plugins.has("ImageBlockEditing")&&this.editor.model.schema.extend("imageBlock",{allowAttributes:["resizedWidth","resizedHeight"]}),this.editor.plugins.has("ImageInlineEditing")&&this.editor.model.schema.extend("imageInline",{allowAttributes:["resizedWidth","resizedHeight"]})}_registerConverters(t){const e=this.editor,n=e.plugins.get("ImageUtils");e.conversion.for("downcast").add((e=>e.on(`attribute:resizedWidth:${t}`,((t,e,n)=>{if(!n.consumable.consume(e.item,t.name))return;const i=n.writer,o=n.mapper.toViewElement(e.item);null!==e.attributeNewValue?(i.setStyle("width",e.attributeNewValue,o),i.addClass("image_resized",o)):(i.removeStyle("width",o),i.removeClass("image_resized",o))})))),e.conversion.for("dataDowncast").attributeToAttribute({model:{name:t,key:"resizedHeight"},view:t=>({key:"style",value:{height:t}})}),e.conversion.for("editingDowncast").add((e=>e.on(`attribute:resizedHeight:${t}`,((e,i,o)=>{if(!o.consumable.consume(i.item,e.name))return;const r=o.writer,s=o.mapper.toViewElement(i.item),a="imageInline"===t?n.findViewImgElement(s):s;null!==i.attributeNewValue?r.setStyle("height",i.attributeNewValue,a):r.removeStyle("height",a)})))),e.conversion.for("upcast").attributeToAttribute({view:{name:"imageBlock"===t?"figure":"img",styles:{width:/.+/}},model:{key:"resizedWidth",value:t=>by(t)?null:t.getStyle("width")}}),e.conversion.for("upcast").attributeToAttribute({view:{name:"imageBlock"===t?"figure":"img",styles:{height:/.+/}},model:{key:"resizedHeight",value:t=>by(t)?null:t.getStyle("height")}})}}var $x=Object.defineProperty,Gx=Object.defineProperties,Kx=Object.getOwnPropertyDescriptors,Jx=Object.getOwnPropertySymbols,Zx=Object.prototype.hasOwnProperty,Yx=Object.prototype.propertyIsEnumerable,Qx=(t,e,n)=>e in t?$x(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Xx=(t,e)=>{for(var n in e||(e={}))Zx.call(e,n)&&Qx(t,n,e[n]);if(Jx)for(var n of Jx(e))Yx.call(e,n)&&Qx(t,n,e[n]);return t},tE=(t,e)=>Gx(t,Kx(e));const eE={small:ym.objectSizeSmall,medium:ym.objectSizeMedium,large:ym.objectSizeLarge,custom:ym.objectSizeCustom,original:ym.objectSizeFull};class nE extends er{constructor(t){super(t),this._resizeUnit=t.config.get("image.resizeUnit")}static get requires(){return[Ux]}static get pluginName(){return"ImageResizeButtons"}init(){const t=this.editor,e=t.config.get("image.resizeOptions"),n=t.commands.get("resizeImage");this.bind("isEnabled").to(n);for(const t of e)this._registerImageResizeButton(t);this._registerImageResizeDropdown(e)}_registerImageResizeButton(t){const e=this.editor,{name:n,value:i,icon:o}=t;e.ui.componentFactory.add(n,(n=>{const r=new mg(n),s=e.commands.get("resizeImage"),a=this._getOptionLabelValue(t,!0);if(!eE[o])throw new w("imageresizebuttons-missing-icon",e,t);if(r.set({label:a,icon:eE[o],tooltip:a,isToggleable:!0}),r.bind("isEnabled").to(this),e.plugins.has("ImageCustomResizeUI")&&iE(t)){const t=e.plugins.get("ImageCustomResizeUI");this.listenTo(r,"execute",(()=>{t._showForm(this._resizeUnit)}))}else{const t=i?i+this._resizeUnit:null;r.bind("isOn").to(s,"value",oE(t)),this.listenTo(r,"execute",(()=>{e.execute("resizeImage",{width:t})}))}return r}))}_registerImageResizeDropdown(t){const e=this.editor,n=e.t,i=t.find((t=>!t.value)),o=o=>{const r=e.commands.get("resizeImage"),s=Ip(o,Qg),a=s.buttonView,c=n("Resize image");return a.set({tooltip:c,commandValue:i.value,icon:eE.medium,isToggleable:!0,label:this._getOptionLabelValue(i),withText:!0,class:"ck-resize-image-button",ariaLabel:c,ariaLabelledBy:void 0}),a.bind("label").to(r,"value",(t=>t&&t.width?t.width:this._getOptionLabelValue(i))),s.bind("isEnabled").to(this),Vp(s,(()=>this._getResizeDropdownListItemDefinitions(t,r)),{ariaLabel:n("Image resize list"),role:"menu"}),this.listenTo(s,"execute",(t=>{"onClick"in t.source?t.source.onClick():(e.execute(t.source.commandName,{width:t.source.commandValue}),e.editing.view.focus())})),s};e.ui.componentFactory.add("resizeImage",o),e.ui.componentFactory.add("imageResize",o)}_getOptionLabelValue(t,e=!1){const n=this.editor.t;return t.label?t.label:e?iE(t)?n("Custom image size"):t.value?n("Resize image to %0",t.value+this._resizeUnit):n("Resize image to the original size"):iE(t)?n("Custom"):t.value?t.value+this._resizeUnit:n("Original")}_getResizeDropdownListItemDefinitions(t,e){const{editor:n}=this,i=new Uo,o=t.map((t=>iE(t)?tE(Xx({},t),{valueWithUnits:"custom"}):t.value?tE(Xx({},t),{valueWithUnits:`${t.value}${this._resizeUnit}`}):tE(Xx({},t),{valueWithUnits:null})));for(const t of o){let r=null;if(n.plugins.has("ImageCustomResizeUI")&&iE(t)){const i=n.plugins.get("ImageCustomResizeUI");r={type:"button",model:new ak({label:this._getOptionLabelValue(t),role:"menuitemradio",withText:!0,icon:null,onClick:()=>{i._showForm(this._resizeUnit)}})};const s=qx(o,"valueWithUnits");r.model.bind("isOn").to(e,"value",rE(s))}else r={type:"button",model:new ak({commandName:"resizeImage",commandValue:t.valueWithUnits,label:this._getOptionLabelValue(t),role:"menuitemradio",withText:!0,icon:null})},r.model.bind("isOn").to(e,"value",oE(t.valueWithUnits));r.model.bind("isEnabled").to(e,"isEnabled"),i.add(r)}return i}}function iE(t){return"custom"===t.value}function oE(t){return e=>null===t&&e===t||null!==e&&e.width===t}function rE(t){return e=>!t.some((t=>oE(t)(e)))}const sE="image_resized";class aE extends er{static get requires(){return[Sv,xy]}static get pluginName(){return"ImageResizeHandles"}init(){const t=this.editor.commands.get("resizeImage");this.bind("isEnabled").to(t),this._setupResizerCreator()}_setupResizerCreator(){const t=this.editor,e=t.editing.view,n=t.plugins.get("ImageUtils");e.addObserver(Oy),this.listenTo(e.document,"imageLoaded",((i,o)=>{if(!o.target.matches("figure.image.ck-widget > img,figure.image.ck-widget > picture > img,figure.image.ck-widget > a > img,figure.image.ck-widget > a > picture > img,span.image-inline.ck-widget > img,span.image-inline.ck-widget > picture > img"))return;const r=t.editing.view.domConverter,s=r.domToView(o.target),a=n.getImageWidgetFromImageView(s);let c=this.editor.plugins.get(Sv).getResizerByViewElement(a);if(c)return void c.redraw();const l=t.editing.mapper,d=l.toModelElement(a);c=t.plugins.get(Sv).attachTo({unit:t.config.get("image.resizeUnit"),modelElement:d,viewElement:a,editor:t,getHandleHost:t=>t.querySelector("img"),getResizeHost:()=>r.mapViewToDom(l.toViewElement(d)),isCentered:()=>"alignCenter"==d.getAttribute("imageStyle"),onCommit(n){e.change((t=>{t.removeClass(sE,a)})),t.execute("resizeImage",{width:n})}}),c.on("updateSize",(()=>{a.hasClass(sE)||e.change((t=>{t.addClass(sE,a)}));const t="imageInline"===d.name?s:a;t.getStyle("height")&&e.change((e=>{e.removeStyle("height",t)}))})),c.bind("isEnabled").to(this)}))}}function cE(t){if(!t)return null;const[,e,n]=t.trim().match(/([.,\d]+)(%|px)$/)||[],i=Number.parseFloat(e);return Number.isNaN(i)?null:{value:i,unit:n}}function lE(t,e,n){return"px"===n?{value:e.value,unit:"px"}:{value:e.value/t*100,unit:"%"}}function dE(t){const{editing:e}=t,n=t.plugins.get("ImageUtils").getClosestSelectedImageElement(t.model.document.selection);if(!n)return null;const i=e.mapper.toViewElement(n);return{model:n,view:i,dom:e.view.domConverter.mapViewToDom(i)}}var hE=n(4642),uE={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(hE.A,uE);hE.A.locals;class mE extends Jm{constructor(t,e,n){super(t);const i=this.locale.t;this.focusTracker=new Go,this.keystrokes=new Ko,this.unit=e,this.labeledInput=this._createLabeledInputView(),this.saveButtonView=this._createButton(i("Save"),ym.check,"ck-button-save"),this.saveButtonView.type="submit",this.cancelButtonView=this._createButton(i("Cancel"),ym.cancel,"ck-button-cancel","cancel"),this._focusables=new xm,this._validators=n,this._focusCycler=new Xg({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"form",attributes:{class:["ck","ck-image-custom-resize-form","ck-responsive-form"],tabindex:"-1"},children:[this.labeledInput,this.saveButtonView,this.cancelButtonView]})}render(){super.render(),this.keystrokes.listenTo(this.element),Qm({view:this}),[this.labeledInput,this.saveButtonView,this.cancelButtonView].forEach((t=>{this._focusables.add(t),this.focusTracker.add(t.element)}))}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}_createButton(t,e,n,i){const o=new mg(this.locale);return o.set({label:t,icon:e,tooltip:!0}),o.extendTemplate({attributes:{class:n}}),i&&o.delegate("execute").to(this,i),o}_createLabeledInputView(){const t=this.locale.t,e=new zg(this.locale,Mp);return e.label=t("Resize image (in %0)",this.unit),e.fieldView.set({step:.1}),e}isValid(){this.resetFormStatus();for(const t of this._validators){const e=t(this);if(e)return this.labeledInput.errorText=e,!1}return!0}resetFormStatus(){this.labeledInput.errorText=null}get rawSize(){const{element:t}=this.labeledInput.fieldView;return t?t.value:null}get parsedSize(){const{rawSize:t}=this;if(null===t)return null;const e=Number.parseFloat(t);return Number.isNaN(e)?null:e}get sizeWithUnits(){const{parsedSize:t,unit:e}=this;return null===t?null:`${t}${e}`}}class gE extends er{static get requires(){return[mk]}static get pluginName(){return"ImageCustomResizeUI"}destroy(){super.destroy(),this._form&&this._form.destroy()}_createForm(t){const e=this.editor;this._balloon=this.editor.plugins.get("ContextualBalloon"),this._form=new(Ym(mE))(e.locale,t,function(t){const e=t.t;return[t=>""===t.rawSize.trim()?e("The value must not be empty."):null===t.parsedSize?e("The value should be a plain number."):void 0]}(e)),this._form.render(),this.listenTo(this._form,"submit",(()=>{this._form.isValid()&&(e.execute("resizeImage",{width:this._form.sizeWithUnits}),this._hideForm(!0))})),this.listenTo(this._form.labeledInput,"change:errorText",(()=>{e.ui.update()})),this.listenTo(this._form,"cancel",(()=>{this._hideForm(!0)})),this._form.keystrokes.set("Esc",((t,e)=>{this._hideForm(!0),e()})),Zm({emitter:this._form,activator:()=>this._isVisible,contextElements:()=>[this._balloon.view.element],callback:()=>this._hideForm()})}_showForm(t){if(this._isVisible)return;this._form||this._createForm(t);const e=this.editor,n=this._form.labeledInput;this._form.disableCssTransitions(),this._form.resetFormStatus(),this._isInBalloon||this._balloon.add({view:this._form,position:Py(e)});const i=function(t,e){const n=dE(t);if(!n)return null;const i=cE(n.model.getAttribute("resizedWidth")||null);return i?i.unit===e?i:lE(ZC(n.dom),{unit:"px",value:new Li(n.dom).width},e):null}(e,t),o=i?i.value.toFixed(1):"",r=function(t,e){const n=dE(t);if(!n)return null;const i=ZC(n.dom),o=cE(window.getComputedStyle(n.dom).minWidth)||{value:1,unit:"px"};return{unit:e,lower:Math.max(.1,lE(i,o,e).value),upper:"px"===e?i:100}}(e,t);n.fieldView.value=n.fieldView.element.value=o,r&&Object.assign(n.fieldView,{min:r.lower.toFixed(1),max:Math.ceil(r.upper).toFixed(1)}),this._form.labeledInput.fieldView.select(),this._form.enableCssTransitions()}_hideForm(t=!1){this._isInBalloon&&(this._form.focusTracker.isFocused&&this._form.saveButtonView.focus(),this._balloon.remove(this._form),t&&this.editor.editing.view.focus())}get _isVisible(){return!!this._balloon&&this._balloon.visibleView===this._form}get _isInBalloon(){return!!this._balloon&&this._balloon.hasView(this._form)}}var pE=n(3469),fE={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(pE.A,fE);pE.A.locals;class bE extends ir{constructor(t,e){super(t),this._defaultStyles={imageBlock:!1,imageInline:!1},this._styles=new Map(e.map((t=>{if(t.isDefault)for(const e of t.modelElements)this._defaultStyles[e]=t.name;return[t.name,t]})))}refresh(){const t=this.editor.plugins.get("ImageUtils").getClosestSelectedImageElement(this.editor.model.document.selection);this.isEnabled=!!t,this.isEnabled?t.hasAttribute("imageStyle")?this.value=t.getAttribute("imageStyle"):this.value=this._defaultStyles[t.name]:this.value=!1}execute(t={}){const e=this.editor,n=e.model,i=e.plugins.get("ImageUtils");n.change((e=>{const o=t.value,{setImageSizes:r=!0}=t;let s=i.getClosestSelectedImageElement(n.document.selection);o&&this.shouldConvertImageType(o,s)&&(this.editor.execute(i.isBlockImage(s)?"imageTypeInline":"imageTypeBlock",{setImageSizes:r}),s=i.getClosestSelectedImageElement(n.document.selection)),!o||this._styles.get(o).isDefault?e.removeAttribute("imageStyle",s):e.setAttribute("imageStyle",o,s),r&&i.setImageNaturalSizeAttributes(s)}))}shouldConvertImageType(t,e){return!this._styles.get(t).modelElements.includes(e.name)}}var kE=Object.defineProperty,wE=Object.getOwnPropertySymbols,_E=Object.prototype.hasOwnProperty,AE=Object.prototype.propertyIsEnumerable,CE=(t,e,n)=>e in t?kE(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,vE=(t,e)=>{for(var n in e||(e={}))_E.call(e,n)&&CE(t,n,e[n]);if(wE)for(var n of wE(e))AE.call(e,n)&&CE(t,n,e[n]);return t};const{objectFullWidth:yE,objectInline:xE,objectLeft:EE,objectRight:DE,objectCenter:BE,objectBlockLeft:SE,objectBlockRight:TE}=ym,IE={get inline(){return{name:"inline",title:"In line",icon:xE,modelElements:["imageInline"],isDefault:!0}},get alignLeft(){return{name:"alignLeft",title:"Left aligned image",icon:EE,modelElements:["imageBlock","imageInline"],className:"image-style-align-left"}},get alignBlockLeft(){return{name:"alignBlockLeft",title:"Left aligned image",icon:SE,modelElements:["imageBlock"],className:"image-style-block-align-left"}},get alignCenter(){return{name:"alignCenter",title:"Centered image",icon:BE,modelElements:["imageBlock"],className:"image-style-align-center"}},get alignRight(){return{name:"alignRight",title:"Right aligned image",icon:DE,modelElements:["imageBlock","imageInline"],className:"image-style-align-right"}},get alignBlockRight(){return{name:"alignBlockRight",title:"Right aligned image",icon:TE,modelElements:["imageBlock"],className:"image-style-block-align-right"}},get block(){return{name:"block",title:"Centered image",icon:BE,modelElements:["imageBlock"],isDefault:!0}},get side(){return{name:"side",title:"Side image",icon:DE,modelElements:["imageBlock"],className:"image-style-side"}}},PE={full:yE,left:SE,right:TE,center:BE,inlineLeft:EE,inlineRight:DE,inline:xE},RE=[{name:"imageStyle:wrapText",title:"Wrap text",defaultItem:"imageStyle:alignLeft",items:["imageStyle:alignLeft","imageStyle:alignRight"]},{name:"imageStyle:breakText",title:"Break text",defaultItem:"imageStyle:block",items:["imageStyle:alignBlockLeft","imageStyle:block","imageStyle:alignBlockRight"]}];function VE(t){_("image-style-configuration-definition-invalid",t)}const FE={normalizeStyles:function(t){return(t.configuredStyles.options||[]).map((t=>function(t){t="string"==typeof t?IE[t]?vE({},IE[t]):{name:t}:function(t,e){const n=vE({},e);for(const i in t)Object.prototype.hasOwnProperty.call(e,i)||(n[i]=t[i]);return n}(IE[t.name],t);"string"==typeof t.icon&&(t.icon=PE[t.icon]||t.icon);return t}(t))).filter((e=>function(t,{isBlockPluginLoaded:e,isInlinePluginLoaded:n}){const{modelElements:i,name:o}=t;if(!(i&&i.length&&o))return VE({style:t}),!1;{const o=[e?"imageBlock":null,n?"imageInline":null];if(!i.some((t=>o.includes(t))))return _("image-style-missing-dependency",{style:t,missingPlugins:i.map((t=>"imageBlock"===t?"ImageBlockEditing":"ImageInlineEditing"))}),!1}return!0}(e,t)))},getDefaultStylesConfiguration:function(t,e){return t&&e?{options:["inline","alignLeft","alignRight","alignCenter","alignBlockLeft","alignBlockRight","block","side"]}:t?{options:["block","side"]}:e?{options:["inline","alignLeft","alignRight"]}:{}},getDefaultDropdownDefinitions:function(t){return t.has("ImageBlockEditing")&&t.has("ImageInlineEditing")?[...RE]:[]},warnInvalidStyle:VE,DEFAULT_OPTIONS:IE,DEFAULT_ICONS:PE,DEFAULT_DROPDOWN_DEFINITIONS:RE};function LE(t,e){for(const n of e)if(n.name===t)return n}class OE extends er{static get pluginName(){return"ImageStyleEditing"}static get requires(){return[xy]}init(){const{normalizeStyles:t,getDefaultStylesConfiguration:e}=FE,n=this.editor,i=n.plugins.has("ImageBlockEditing"),o=n.plugins.has("ImageInlineEditing");n.config.define("image.styles",e(i,o)),this.normalizedStyles=t({configuredStyles:n.config.get("image.styles"),isBlockPluginLoaded:i,isInlinePluginLoaded:o}),this._setupConversion(i,o),this._setupPostFixer(),n.commands.add("imageStyle",new bE(n,this.normalizedStyles))}_setupConversion(t,e){const n=this.editor,i=n.model.schema,o=(r=this.normalizedStyles,(t,e,n)=>{if(!n.consumable.consume(e.item,t.name))return;const i=LE(e.attributeNewValue,r),o=LE(e.attributeOldValue,r),s=n.mapper.toViewElement(e.item),a=n.writer;o&&a.removeClass(o.className,s),i&&a.addClass(i.className,s)});var r;const s=function(t){const e={imageInline:t.filter((t=>!t.isDefault&&t.modelElements.includes("imageInline"))),imageBlock:t.filter((t=>!t.isDefault&&t.modelElements.includes("imageBlock")))};return(t,n,i)=>{if(!n.modelRange)return;const o=n.viewItem,r=$o(n.modelRange.getItems());if(r&&i.schema.checkAttribute(r,"imageStyle"))for(const t of e[r.name])i.consumable.consume(o,{classes:t.className})&&i.writer.setAttribute("imageStyle",t.name,r)}}(this.normalizedStyles);n.editing.downcastDispatcher.on("attribute:imageStyle",o),n.data.downcastDispatcher.on("attribute:imageStyle",o),t&&(i.extend("imageBlock",{allowAttributes:"imageStyle"}),n.data.upcastDispatcher.on("element:figure",s,{priority:"low"})),e&&(i.extend("imageInline",{allowAttributes:"imageStyle"}),n.data.upcastDispatcher.on("element:img",s,{priority:"low"}))}_setupPostFixer(){const t=this.editor,e=t.model.document,n=t.plugins.get(xy),i=new Map(this.normalizedStyles.map((t=>[t.name,t])));e.registerPostFixer((t=>{let o=!1;for(const r of e.differ.getChanges())if("insert"==r.type||"attribute"==r.type&&"imageStyle"==r.attributeKey){let e="insert"==r.type?r.position.nodeAfter:r.range.start.nodeAfter;if(e&&e.is("element","paragraph")&&e.childCount>0&&(e=e.getChild(0)),!n.isImage(e))continue;const s=e.getAttribute("imageStyle");if(!s)continue;const a=i.get(s);a&&a.modelElements.includes(e.name)||(t.removeAttribute("imageStyle",e),o=!0)}return o}))}}var zE=n(6386),ME={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(zE.A,ME);zE.A.locals;class NE extends er{static get requires(){return[OE]}static get pluginName(){return"ImageStyleUI"}get localizedDefaultStylesTitles(){const t=this.editor.t;return{"Wrap text":t("Wrap text"),"Break text":t("Break text"),"In line":t("In line"),"Full size image":t("Full size image"),"Side image":t("Side image"),"Left aligned image":t("Left aligned image"),"Centered image":t("Centered image"),"Right aligned image":t("Right aligned image")}}init(){const t=this.editor.plugins,e=this.editor.config.get("image.toolbar")||[],n=HE(t.get("ImageStyleEditing").normalizedStyles,this.localizedDefaultStylesTitles);for(const t of n)this._createButton(t);const i=HE([...e.filter(O),...FE.getDefaultDropdownDefinitions(t)],this.localizedDefaultStylesTitles);for(const t of i)this._createDropdown(t,n)}_createDropdown(t,e){const n=this.editor.ui.componentFactory;n.add(t.name,(i=>{let o;const{defaultItem:r,items:s,title:a}=t,c=s.filter((t=>e.find((({name:e})=>jE(e)===t)))).map((t=>{const e=n.create(t);return t===r&&(o=e),e}));s.length!==c.length&&FE.warnInvalidStyle({dropdown:t});const l=Ip(i,Ep),d=l.buttonView,h=d.arrowView;return Pp(l,c,{enableActiveItemFocusOnDropdownOpen:!0}),d.set({label:qE(a,o.label),class:null,tooltip:!0}),h.unbind("label"),h.set({label:a}),d.bind("icon").toMany(c,"isOn",((...t)=>{const e=t.findIndex(Bo);return e<0?o.icon:c[e].icon})),d.bind("label").toMany(c,"isOn",((...t)=>{const e=t.findIndex(Bo);return qE(a,e<0?o.label:c[e].label)})),d.bind("isOn").toMany(c,"isOn",((...t)=>t.some(Bo))),d.bind("class").toMany(c,"isOn",((...t)=>t.some(Bo)?"ck-splitbutton_flatten":void 0)),d.on("execute",(()=>{c.some((({isOn:t})=>t))?l.isOpen=!l.isOpen:o.fire("execute")})),l.bind("isEnabled").toMany(c,"isEnabled",((...t)=>t.some(Bo))),this.listenTo(l,"execute",(()=>{this.editor.editing.view.focus()})),l}))}_createButton(t){const e=t.name;this.editor.ui.componentFactory.add(jE(e),(n=>{const i=this.editor.commands.get("imageStyle"),o=new mg(n);return o.set({label:t.title,icon:t.icon,tooltip:!0,isToggleable:!0}),o.bind("isEnabled").to(i,"isEnabled"),o.bind("isOn").to(i,"value",(t=>t===e)),o.on("execute",this._executeCommand.bind(this,e)),o}))}_executeCommand(t){this.editor.execute("imageStyle",{value:t}),this.editor.editing.view.focus()}}function HE(t,e){for(const n of t)e[n.title]&&(n.title=e[n.title]);return t}function jE(t){return`imageStyle:${t}`}function qE(t,e){return(t?t+": ":"")+e}class WE{constructor(){this._definitions=new Set}get length(){return this._definitions.size}add(t){Array.isArray(t)?t.forEach((t=>this._definitions.add(t))):this._definitions.add(t)}getDispatcher(){return t=>{t.on("attribute:linkHref",((t,e,n)=>{if(!n.consumable.test(e.item,"attribute:linkHref"))return;if(!e.item.is("selection")&&!n.schema.isInline(e.item))return;const i=n.writer,o=i.document.selection;for(const t of this._definitions){const r=i.createAttributeElement("a",t.attributes,{priority:5});t.classes&&i.addClass(t.classes,r);for(const e in t.styles)i.setStyle(e,t.styles[e],r);i.setCustomProperty("link",!0,r),t.callback(e.attributeNewValue)?e.item.is("selection")?i.wrap(o.getFirstRange(),r):i.wrap(n.mapper.toViewRange(e.range),r):i.unwrap(n.mapper.toViewRange(e.range),r)}}),{priority:"high"})}}getDispatcherForLinkedImage(){return t=>{t.on("attribute:linkHref:imageBlock",((t,e,{writer:n,mapper:i})=>{const o=i.toViewElement(e.item),r=Array.from(o.getChildren()).find((t=>t.is("element","a")));for(const t of this._definitions){const i=Jo(t.attributes);if(t.callback(e.attributeNewValue)){for(const[t,e]of i)"class"===t?n.addClass(e,r):n.setAttribute(t,e,r);t.classes&&n.addClass(t.classes,r);for(const e in t.styles)n.setStyle(e,t.styles[e],r)}else{for(const[t,e]of i)"class"===t?n.removeClass(e,r):n.removeAttribute(t,r);t.classes&&n.removeClass(t.classes,r);for(const e in t.styles)n.removeStyle(e,r)}}}))}}}const UE=function(t,e,n){var i=t.length;return n=void 0===n?i:n,!e&&n>=i?t:ts(t,e,n)};var $E=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");const GE=function(t){return $E.test(t)};const KE=function(t){return t.split("")};var JE="\\ud800-\\udfff",ZE="["+JE+"]",YE="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",QE="\\ud83c[\\udffb-\\udfff]",XE="[^"+JE+"]",tD="(?:\\ud83c[\\udde6-\\uddff]){2}",eD="[\\ud800-\\udbff][\\udc00-\\udfff]",nD="(?:"+YE+"|"+QE+")"+"?",iD="[\\ufe0e\\ufe0f]?",oD=iD+nD+("(?:\\u200d(?:"+[XE,tD,eD].join("|")+")"+iD+nD+")*"),rD="(?:"+[XE+YE+"?",YE,tD,eD,ZE].join("|")+")",sD=RegExp(QE+"(?="+QE+")|"+rD+oD,"g");const aD=function(t){return t.match(sD)||[]};const cD=function(t){return GE(t)?aD(t):KE(t)};const lD=function(t){return function(e){e=Jr(e);var n=GE(e)?cD(e):void 0,i=n?n[0]:e.charAt(0),o=n?UE(n,1).join(""):e.slice(1);return i[t]()+o}}("toUpperCase"),dD=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205f\u3000]/g,hD=/^[\S]+@((?![-_])(?:[-\w\u00a1-\uffff]{0,63}[^-_]\.))+(?:[a-z\u00a1-\uffff]{2,})$/i,uD=/^((\w+:(\/{2,})?)|(\W))/i,mD=["https?","ftps?","mailto"],gD="Ctrl+K";function pD(t,{writer:e}){const n=e.createAttributeElement("a",{href:t},{priority:5});return e.setCustomProperty("link",!0,n),n}function fD(t,e=mD){const n=String(t),i=e.join("|");return function(t,e){const n=t.replace(dD,"");return!!n.match(e)}(n,new RegExp(`${"^(?:(?:):|[^a-z]|[a-z+.-]+(?:[^a-z+.:-]|$))".replace("",i)}`,"i"))?n:"#"}function bD(t,e){return!!t&&e.checkAttribute(t.name,"linkHref")}function kD(t,e){const n=(i=t,hD.test(i)?"mailto:":e);var i;const o=!!n&&!wD(t);return t&&o?n+t:t}function wD(t){return uD.test(t)}function _D(t){window.open(t,"_blank","noopener")}class AD extends ir{constructor(){super(...arguments),this.manualDecorators=new Uo,this.automaticDecorators=new WE}restoreManualDecoratorStates(){for(const t of this.manualDecorators)t.value=this._getDecoratorStateFromModel(t.id)}refresh(){const t=this.editor.model,e=t.document.selection,n=e.getSelectedElement()||$o(e.getSelectedBlocks());bD(n,t.schema)?(this.value=n.getAttribute("linkHref"),this.isEnabled=t.schema.checkAttribute(n,"linkHref")):(this.value=e.getAttribute("linkHref"),this.isEnabled=t.schema.checkAttributeInSelection(e,"linkHref"));for(const t of this.manualDecorators)t.value=this._getDecoratorStateFromModel(t.id)}execute(t,e={}){const n=this.editor.model,i=n.document.selection,o=[],r=[];for(const t in e)e[t]?o.push(t):r.push(t);n.change((e=>{if(i.isCollapsed){const s=i.getFirstPosition();if(i.hasAttribute("linkHref")){const a=CD(i);let c=H_(s,"linkHref",i.getAttribute("linkHref"),n);i.getAttribute("linkHref")===a&&(c=this._updateLinkContent(n,e,c,t)),e.setAttribute("linkHref",t,c),o.forEach((t=>{e.setAttribute(t,!0,c)})),r.forEach((t=>{e.removeAttribute(t,c)})),e.setSelection(e.createPositionAfter(c.end.nodeBefore))}else if(""!==t){const r=Jo(i.getAttributes());r.set("linkHref",t),o.forEach((t=>{r.set(t,!0)}));const{end:a}=n.insertContent(e.createText(t,r),s);e.setSelection(a)}["linkHref",...o,...r].forEach((t=>{e.removeSelectionAttribute(t)}))}else{const s=n.schema.getValidRanges(i.getRanges(),"linkHref"),a=[];for(const t of i.getSelectedBlocks())n.schema.checkAttribute(t,"linkHref")&&a.push(e.createRangeOn(t));const c=a.slice();for(const t of s)this._isRangeToUpdate(t,a)&&c.push(t);for(const s of c){let a=s;if(1===c.length){const o=CD(i);i.getAttribute("linkHref")===o&&(a=this._updateLinkContent(n,e,s,t),e.setSelection(e.createSelection(a)))}e.setAttribute("linkHref",t,a),o.forEach((t=>{e.setAttribute(t,!0,a)})),r.forEach((t=>{e.removeAttribute(t,a)}))}}}))}_getDecoratorStateFromModel(t){const e=this.editor.model,n=e.document.selection,i=n.getSelectedElement();return bD(i,e.schema)?i.getAttribute(t):n.getAttribute(t)}_isRangeToUpdate(t,e){for(const n of e)if(n.containsRange(t))return!1;return!0}_updateLinkContent(t,e,n,i){const o=e.createText(i,{linkHref:i});return t.insertContent(o,n)}}function CD(t){if(t.isCollapsed){const e=t.getFirstPosition();return e.textNode&&e.textNode.data}{const e=Array.from(t.getFirstRange().getItems());if(e.length>1)return null;const n=e[0];return n.is("$text")||n.is("$textProxy")?n.data:null}}class vD extends ir{refresh(){const t=this.editor.model,e=t.document.selection,n=e.getSelectedElement();bD(n,t.schema)?this.isEnabled=t.schema.checkAttribute(n,"linkHref"):this.isEnabled=t.schema.checkAttributeInSelection(e,"linkHref")}execute(){const t=this.editor,e=this.editor.model,n=e.document.selection,i=t.commands.get("link");e.change((t=>{const o=n.isCollapsed?[H_(n.getFirstPosition(),"linkHref",n.getAttribute("linkHref"),e)]:e.schema.getValidRanges(n.getRanges(),"linkHref");for(const e of o)if(t.removeAttribute("linkHref",e),i)for(const n of i.manualDecorators)t.removeAttribute(n.id,e)}))}}class yD extends(W()){constructor({id:t,label:e,attributes:n,classes:i,styles:o,defaultValue:r}){super(),this.id=t,this.set("value",void 0),this.defaultValue=r,this.label=e,this.attributes=n,this.classes=i,this.styles=o}_createPattern(){return{attributes:this.attributes,classes:this.classes,styles:this.styles}}}var xD=n(7719),ED={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(xD.A,ED);xD.A.locals;var DD=Object.defineProperty,BD=Object.getOwnPropertySymbols,SD=Object.prototype.hasOwnProperty,TD=Object.prototype.propertyIsEnumerable,ID=(t,e,n)=>e in t?DD(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,PD=(t,e)=>{for(var n in e||(e={}))SD.call(e,n)&&ID(t,n,e[n]);if(BD)for(var n of BD(e))TD.call(e,n)&&ID(t,n,e[n]);return t};const RD="automatic",VD=/^(https?:)?\/\//;class FD extends er{static get pluginName(){return"LinkEditing"}static get requires(){return[D_,g_,RC]}constructor(t){super(t),t.config.define("link",{allowCreatingEmptyLinks:!1,addTargetToExternalLinks:!1})}init(){const t=this.editor,e=this.editor.config.get("link.allowedProtocols");t.model.schema.extend("$text",{allowAttributes:"linkHref"}),t.conversion.for("dataDowncast").attributeToElement({model:"linkHref",view:pD}),t.conversion.for("editingDowncast").attributeToElement({model:"linkHref",view:(t,n)=>pD(fD(t,e),n)}),t.conversion.for("upcast").elementToAttribute({view:{name:"a",attributes:{href:!0}},model:{key:"linkHref",value:t=>t.getAttribute("href")}}),t.commands.add("link",new AD(t)),t.commands.add("unlink",new vD(t));const n=function(t,e){const n={"Open in a new tab":t("Open in a new tab"),Downloadable:t("Downloadable")};return e.forEach((t=>("label"in t&&n[t.label]&&(t.label=n[t.label]),t))),e}(t.t,function(t){const e=[];if(t)for(const[n,i]of Object.entries(t)){const t=Object.assign({},i,{id:`link${lD(n)}`});e.push(t)}return e}(t.config.get("link.decorators")));this._enableAutomaticDecorators(n.filter((t=>t.mode===RD))),this._enableManualDecorators(n.filter((t=>"manual"===t.mode)));t.plugins.get(D_).registerAttribute("linkHref"),q_(t,"linkHref","a","ck-link_selected"),this._enableSelectionAttributesFixer(),this._enableClipboardIntegration()}_enableAutomaticDecorators(t){const e=this.editor,n=e.commands.get("link").automaticDecorators;e.config.get("link.addTargetToExternalLinks")&&n.add({id:"linkIsExternal",mode:RD,callback:t=>!!t&&VD.test(t),attributes:{target:"_blank",rel:"noopener noreferrer"}}),n.add(t),n.length&&e.conversion.for("downcast").add(n.getDispatcher())}_enableManualDecorators(t){if(!t.length)return;const e=this.editor,n=e.commands.get("link").manualDecorators;t.forEach((t=>{e.model.schema.extend("$text",{allowAttributes:t.id});const i=new yD(t);n.add(i),e.conversion.for("downcast").attributeToElement({model:i.id,view:(t,{writer:e,schema:n},{item:o})=>{if((o.is("selection")||n.isInline(o))&&t){const t=e.createAttributeElement("a",i.attributes,{priority:5});i.classes&&e.addClass(i.classes,t);for(const n in i.styles)e.setStyle(n,i.styles[n],t);return e.setCustomProperty("link",!0,t),t}}}),e.conversion.for("upcast").elementToAttribute({view:PD({name:"a"},i._createPattern()),model:{key:i.id}})}))}_enableLinkOpen(){const t=this.editor,e=t.editing.view.document;this.listenTo(e,"click",((t,e)=>{if(!(s.isMac?e.domEvent.metaKey:e.domEvent.ctrlKey))return;let n=e.domTarget;if("a"!=n.tagName.toLowerCase()&&(n=n.closest("a")),!n)return;const i=n.getAttribute("href");i&&(t.stop(),e.preventDefault(),_D(i))}),{context:"$capture"}),this.listenTo(e,"keydown",((e,n)=>{const i=t.commands.get("link").value;!!i&&n.keyCode===go.enter&&n.altKey&&(e.stop(),_D(i))}))}_enableSelectionAttributesFixer(){const t=this.editor.model,e=t.document.selection;this.listenTo(e,"change:attribute",((n,{attributeKeys:i})=>{i.includes("linkHref")&&!e.hasAttribute("linkHref")&&t.change((e=>{var n;!function(t,e){t.removeSelectionAttribute("linkHref");for(const n of e)t.removeSelectionAttribute(n)}(e,(n=t.schema,n.getDefinition("$text").allowAttributes.filter((t=>t.startsWith("link")))))}))}))}_enableClipboardIntegration(){const t=this.editor,e=t.model,n=this.editor.config.get("link.defaultProtocol");n&&this.listenTo(t.plugins.get("ClipboardPipeline"),"contentInsertion",((t,i)=>{e.change((t=>{const e=t.createRangeIn(i.content);for(const i of e.getItems())if(i.hasAttribute("linkHref")){const e=kD(i.getAttribute("linkHref"),n);t.setAttribute("linkHref",e,i)}}))}))}}var LD=n(3817),OD={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(LD.A,OD);LD.A.locals;class zD extends Jm{constructor(t,e,n){super(t),this.focusTracker=new Go,this.keystrokes=new Ko,this._focusables=new xm;const i=t.t;this._validators=n,this.urlInputView=this._createUrlInput(),this.saveButtonView=this._createButton(i("Save"),ym.check,"ck-button-save"),this.saveButtonView.type="submit",this.cancelButtonView=this._createButton(i("Cancel"),ym.cancel,"ck-button-cancel","cancel"),this._manualDecoratorSwitches=this._createManualDecoratorSwitches(e),this.children=this._createFormChildren(e.manualDecorators),this._focusCycler=new Xg({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});const o=["ck","ck-link-form","ck-responsive-form"];e.manualDecorators.length&&o.push("ck-link-form_layout-vertical","ck-vertical-form"),this.setTemplate({tag:"form",attributes:{class:o,tabindex:"-1"},children:this.children})}getDecoratorSwitchesState(){return Array.from(this._manualDecoratorSwitches).reduce(((t,e)=>(t[e.name]=e.isOn,t)),{})}render(){super.render(),Qm({view:this});[this.urlInputView,...this._manualDecoratorSwitches,this.saveButtonView,this.cancelButtonView].forEach((t=>{this._focusables.add(t),this.focusTracker.add(t.element)})),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}isValid(){this.resetFormStatus();for(const t of this._validators){const e=t(this);if(e)return this.urlInputView.errorText=e,!1}return!0}resetFormStatus(){this.urlInputView.errorText=null}_createUrlInput(){const t=this.locale.t,e=new zg(this.locale,zp);return e.label=t("Link URL"),e}_createButton(t,e,n,i){const o=new mg(this.locale);return o.set({label:t,icon:e,tooltip:!0}),o.extendTemplate({attributes:{class:n}}),i&&o.delegate("execute").to(this,i),o}_createManualDecoratorSwitches(t){const e=this.createCollection();for(const n of t.manualDecorators){const i=new fg(this.locale);i.set({name:n.id,label:n.label,withText:!0}),i.bind("isOn").toMany([n,t],"value",((t,e)=>void 0===e&&void 0===t?!!n.defaultValue:!!t)),i.on("execute",(()=>{n.set("value",!i.isOn)})),e.add(i)}return e}_createFormChildren(t){const e=this.createCollection();if(e.add(this.urlInputView),t.length){const t=new Jm;t.setTemplate({tag:"ul",children:this._manualDecoratorSwitches.map((t=>({tag:"li",children:[t],attributes:{class:["ck","ck-list__item"]}}))),attributes:{class:["ck","ck-reset","ck-list"]}}),e.add(t)}return e.add(this.saveButtonView),e.add(this.cancelButtonView),e}get url(){const{element:t}=this.urlInputView.fieldView;return t?t.value.trim():null}}var MD=n(8762),ND={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(MD.A,ND);MD.A.locals;class HD extends Jm{constructor(t,e={}){super(t),this.focusTracker=new Go,this.keystrokes=new Ko,this._focusables=new xm;const n=t.t;this.previewButtonView=this._createPreviewButton(),this.unlinkButtonView=this._createButton(n("Unlink"),'',"unlink"),this.editButtonView=this._createButton(n("Edit link"),ym.pencil,"edit"),this.set("href",void 0),this._linkConfig=e,this._focusCycler=new Xg({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-link-actions","ck-responsive-form"],tabindex:"-1"},children:[this.previewButtonView,this.editButtonView,this.unlinkButtonView]})}render(){super.render();[this.previewButtonView,this.editButtonView,this.unlinkButtonView].forEach((t=>{this._focusables.add(t),this.focusTracker.add(t.element)})),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}_createButton(t,e,n){const i=new mg(this.locale);return i.set({label:t,icon:e,tooltip:!0}),i.delegate("execute").to(this,n),i}_createPreviewButton(){const t=new mg(this.locale),e=this.bindTemplate,n=this.t;return t.set({withText:!0,tooltip:n("Open link in new tab")}),t.extendTemplate({attributes:{class:["ck","ck-link-actions__preview"],href:e.to("href",(t=>t&&fD(t,this._linkConfig.allowedProtocols))),target:"_blank",rel:"noopener noreferrer"}}),t.bind("label").to(this,"href",(t=>t||n("This link has no URL"))),t.bind("isEnabled").to(this,"href",(t=>!!t)),t.template.tag="a",t.template.eventListeners={},t}}const jD="link-ui";class qD extends er{constructor(){super(...arguments),this.actionsView=null,this.formView=null}static get requires(){return[mk]}static get pluginName(){return"LinkUI"}init(){const t=this.editor,e=this.editor.t;t.editing.view.addObserver(wu),this._balloon=t.plugins.get(mk),this._createToolbarLinkButton(),this._enableBalloonActivators(),t.conversion.for("editingDowncast").markerToHighlight({model:jD,view:{classes:["ck-fake-link-selection"]}}),t.conversion.for("editingDowncast").markerToElement({model:jD,view:{name:"span",classes:["ck-fake-link-selection","ck-fake-link-selection_collapsed"]}}),t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Create link"),keystroke:gD},{label:e("Move out of a link"),keystroke:[["arrowleft","arrowleft"],["arrowright","arrowright"]]}]})}destroy(){super.destroy(),this.formView&&this.formView.destroy(),this.actionsView&&this.actionsView.destroy()}_createViews(){this.actionsView=this._createActionsView(),this.formView=this._createFormView(),this._enableUserBalloonInteractions()}_createActionsView(){const t=this.editor,e=new HD(t.locale,t.config.get("link")),n=t.commands.get("link"),i=t.commands.get("unlink");return e.bind("href").to(n,"value"),e.editButtonView.bind("isEnabled").to(n),e.unlinkButtonView.bind("isEnabled").to(i),this.listenTo(e,"edit",(()=>{this._addFormView()})),this.listenTo(e,"unlink",(()=>{t.execute("unlink"),this._hideUI()})),e.keystrokes.set("Esc",((t,e)=>{this._hideUI(),e()})),e.keystrokes.set(gD,((t,e)=>{this._addFormView(),e()})),e}_createFormView(){const t=this.editor,e=t.commands.get("link"),n=t.config.get("link.defaultProtocol"),i=new(Ym(zD))(t.locale,e,function(t){const e=t.t,n=t.config.get("link.allowCreatingEmptyLinks");return[t=>{if(!n&&!t.url.length)return e("Link URL must not be empty.")}]}(t));return i.urlInputView.fieldView.bind("value").to(e,"value"),i.urlInputView.bind("isEnabled").to(e,"isEnabled"),i.saveButtonView.bind("isEnabled").to(e,"isEnabled"),this.listenTo(i,"submit",(()=>{if(i.isValid()){const{value:e}=i.urlInputView.fieldView.element,o=kD(e,n);t.execute("link",o,i.getDecoratorSwitchesState()),this._closeFormView()}})),this.listenTo(i.urlInputView,"change:errorText",(()=>{t.ui.update()})),this.listenTo(i,"cancel",(()=>{this._closeFormView()})),i.keystrokes.set("Esc",((t,e)=>{this._closeFormView(),e()})),i}_createToolbarLinkButton(){const t=this.editor,e=t.commands.get("link");t.ui.componentFactory.add("link",(()=>{const t=this._createButton(mg);return t.set({tooltip:!0,isToggleable:!0}),t.bind("isOn").to(e,"value",(t=>!!t)),t})),t.ui.componentFactory.add("menuBar:link",(()=>this._createButton(mw)))}_createButton(t){const e=this.editor,n=e.locale,i=e.commands.get("link"),o=new t(e.locale),r=n.t;return o.set({label:r("Link"),icon:'',keystroke:gD}),o.bind("isEnabled").to(i,"isEnabled"),this.listenTo(o,"execute",(()=>this._showUI(!0))),o}_enableBalloonActivators(){const t=this.editor,e=t.editing.view.document;this.listenTo(e,"click",(()=>{this._getSelectedLinkElement()&&this._showUI()})),t.keystrokes.set(gD,((e,n)=>{n(),t.commands.get("link").isEnabled&&this._showUI(!0)}))}_enableUserBalloonInteractions(){this.editor.keystrokes.set("Tab",((t,e)=>{this._areActionsVisible&&!this.actionsView.focusTracker.isFocused&&(this.actionsView.focus(),e())}),{priority:"high"}),this.editor.keystrokes.set("Esc",((t,e)=>{this._isUIVisible&&(this._hideUI(),e())})),Zm({emitter:this.formView,activator:()=>this._isUIInPanel,contextElements:()=>[this._balloon.view.element],callback:()=>this._hideUI()})}_addActionsView(){this.actionsView||this._createViews(),this._areActionsInPanel||this._balloon.add({view:this.actionsView,position:this._getBalloonPositionData()})}_addFormView(){if(this.formView||this._createViews(),this._isFormInPanel)return;const t=this.editor.commands.get("link");this.formView.disableCssTransitions(),this.formView.resetFormStatus(),this._balloon.add({view:this.formView,position:this._getBalloonPositionData()}),this.formView.urlInputView.fieldView.value=t.value||"",this._balloon.visibleView===this.formView&&this.formView.urlInputView.fieldView.select(),this.formView.enableCssTransitions()}_closeFormView(){const t=this.editor.commands.get("link");t.restoreManualDecoratorStates(),void 0!==t.value?this._removeFormView():this._hideUI()}_removeFormView(){this._isFormInPanel&&(this.formView.saveButtonView.focus(),this.formView.urlInputView.fieldView.reset(),this._balloon.remove(this.formView),this.editor.editing.view.focus(),this._hideFakeVisualSelection())}_showUI(t=!1){this.formView||this._createViews(),this._getSelectedLinkElement()?(this._areActionsVisible?this._addFormView():this._addActionsView(),t&&this._balloon.showStack("main")):(this._showFakeVisualSelection(),this._addActionsView(),t&&this._balloon.showStack("main"),this._addFormView()),this._startUpdatingUI()}_hideUI(){if(!this._isUIInPanel)return;const t=this.editor;this.stopListening(t.ui,"update"),this.stopListening(this._balloon,"change:visibleView"),t.editing.view.focus(),this._removeFormView(),this._balloon.remove(this.actionsView),this._hideFakeVisualSelection()}_startUpdatingUI(){const t=this.editor,e=t.editing.view.document;let n=this._getSelectedLinkElement(),i=r();const o=()=>{const t=this._getSelectedLinkElement(),e=r();n&&!t||!n&&e!==i?this._hideUI():this._isUIVisible&&this._balloon.updatePosition(this._getBalloonPositionData()),n=t,i=e};function r(){return e.selection.focus.getAncestors().reverse().find((t=>t.is("element")))}this.listenTo(t.ui,"update",o),this.listenTo(this._balloon,"change:visibleView",o)}get _isFormInPanel(){return!!this.formView&&this._balloon.hasView(this.formView)}get _areActionsInPanel(){return!!this.actionsView&&this._balloon.hasView(this.actionsView)}get _areActionsVisible(){return!!this.actionsView&&this._balloon.visibleView===this.actionsView}get _isUIInPanel(){return this._isFormInPanel||this._areActionsInPanel}get _isUIVisible(){const t=this._balloon.visibleView;return!!this.formView&&t==this.formView||this._areActionsVisible}_getBalloonPositionData(){const t=this.editor.editing.view,e=this.editor.model,n=t.document;let i;if(e.markers.has(jD)){const e=Array.from(this.editor.editing.mapper.markerNameToElements(jD)),n=t.createRange(t.createPositionBefore(e[0]),t.createPositionAfter(e[e.length-1]));i=t.domConverter.viewRangeToDom(n)}else i=()=>{const e=this._getSelectedLinkElement();return e?t.domConverter.mapViewToDom(e):t.domConverter.viewRangeToDom(n.selection.getFirstRange())};return{target:i}}_getSelectedLinkElement(){const t=this.editor.editing.view,e=t.document.selection,n=e.getSelectedElement();if(e.isCollapsed||n&&HC(n))return WD(e.getFirstPosition());{const n=e.getFirstRange().getTrimmed(),i=WD(n.start),o=WD(n.end);return i&&i==o&&t.createRangeIn(i).getTrimmed().isEqual(n)?i:null}}_showFakeVisualSelection(){const t=this.editor.model;t.change((e=>{const n=t.document.selection.getFirstRange();if(t.markers.has(jD))e.updateMarker(jD,{range:n});else if(n.start.isAtEnd){const i=n.start.getLastMatchingPosition((({item:e})=>!t.schema.isContent(e)),{boundaries:n});e.addMarker(jD,{usingOperation:!1,affectsData:!1,range:e.createRange(i,n.end)})}else e.addMarker(jD,{usingOperation:!1,affectsData:!1,range:n})}))}_hideFakeVisualSelection(){const t=this.editor.model;t.markers.has(jD)&&t.change((t=>{t.removeMarker(jD)}))}}function WD(t){return t.getAncestors().find((t=>{return(e=t).is("attributeElement")&&!!e.getCustomProperty("link");var e}))||null}const UD=new RegExp("(^|\\s)(((?:(?:(?:https?|ftp):)?\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(((?!www\\.)|(www\\.))(?![-_])(?:[-_a-z0-9\\u00a1-\\uffff]{1,63}\\.)+(?:[a-z\\u00a1-\\uffff]{2,63})))(?::\\d{2,5})?(?:[/?#]\\S*)?)|((www.|(\\S+@))((?![-_])(?:[-_a-z0-9\\u00a1-\\uffff]{1,63}\\.))+(?:[a-z\\u00a1-\\uffff]{2,63})))$","i");class $D extends er{static get requires(){return[v_,FD]}static get pluginName(){return"AutoLink"}init(){const t=this.editor.model.document.selection;t.on("change:range",(()=>{this.isEnabled=!t.anchor.parent.is("element","codeBlock")})),this._enableTypingHandling()}afterInit(){this._enableEnterHandling(),this._enableShiftEnterHandling(),this._enablePasteLinking()}_expandLinkRange(t,e){return e.textNode&&e.textNode.hasAttribute("linkHref")?H_(e,"linkHref",e.textNode.getAttribute("linkHref"),t):null}_selectEntireLinks(t,e){const n=this.editor.model,i=n.document.selection,o=i.getFirstPosition(),r=i.getLastPosition();let s=e.getJoined(this._expandLinkRange(n,o)||e);s&&(s=s.getJoined(this._expandLinkRange(n,r)||e)),s&&(s.start.isBefore(o)||s.end.isAfter(r))&&t.setSelection(s)}_enablePasteLinking(){const t=this.editor,e=t.model,n=e.document.selection,i=t.plugins.get("ClipboardPipeline"),o=t.commands.get("link");i.on("inputTransformation",((t,i)=>{if(!this.isEnabled||!o.isEnabled||n.isCollapsed||"paste"!==i.method)return;if(n.rangeCount>1)return;const r=n.getFirstRange(),s=i.dataTransfer.getData("text/plain");if(!s)return;const a=s.match(UD);a&&a[2]===s&&(e.change((t=>{this._selectEntireLinks(t,r),o.execute(s)})),t.stop())}),{priority:"high"})}_enableTypingHandling(){const t=this.editor,e=new E_(t.model,(t=>{if(!function(t){return t.length>4&&" "===t[t.length-1]&&" "!==t[t.length-2]}(t))return;const e=GD(t.substr(0,t.length-1));return e?{url:e}:void 0}));e.on("matched:data",((e,n)=>{const{batch:i,range:o,url:r}=n;if(!i.isTyping)return;const s=o.end.getShiftedBy(-1),a=s.getShiftedBy(-r.length),c=t.model.createRange(a,s);this._applyAutoLink(r,c)})),e.bind("isEnabled").to(this)}_enableEnterHandling(){const t=this.editor,e=t.model,n=t.commands.get("enter");n&&n.on("execute",(()=>{const t=e.document.selection.getFirstPosition();if(!t.parent.previousSibling)return;const n=e.createRangeIn(t.parent.previousSibling);this._checkAndApplyAutoLinkOnRange(n)}))}_enableShiftEnterHandling(){const t=this.editor,e=t.model,n=t.commands.get("shiftEnter");n&&n.on("execute",(()=>{const t=e.document.selection.getFirstPosition(),n=e.createRange(e.createPositionAt(t.parent,0),t.getShiftedBy(-1));this._checkAndApplyAutoLinkOnRange(n)}))}_checkAndApplyAutoLinkOnRange(t){const e=this.editor.model,{text:n,range:i}=x_(t,e),o=GD(n);if(o){const t=e.createRange(i.end.getShiftedBy(-o.length),i.end);this._applyAutoLink(o,t)}}_applyAutoLink(t,e){const n=this.editor.model,i=kD(t,this.editor.config.get("link.defaultProtocol"));this.isEnabled&&function(t,e){return e.schema.checkAttributeInSelection(e.createSelection(t),"linkHref")}(e,n)&&wD(i)&&!function(t){const e=t.start.nodeAfter;return!!e&&e.hasAttribute("linkHref")}(e)&&this._persistAutoLink(i,e)}_persistAutoLink(t,e){const n=this.editor.model,i=this.editor.plugins.get("Delete");n.enqueueChange((o=>{o.setAttribute("linkHref",t,e),n.enqueueChange((()=>{i.requestUndoOnBackspace()}))}))}}function GD(t){const e=UD.exec(t);return e?e[2]:null}var KD=n(4808),JD={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(KD.A,JD);KD.A.locals;class ZD{constructor(t,e){this._startElement=t,this._referenceIndent=t.getAttribute("listIndent"),this._isForward="forward"==e.direction,this._includeSelf=!!e.includeSelf,this._sameAttributes=_o(e.sameAttributes||[]),this._sameIndent=!!e.sameIndent,this._lowerIndent=!!e.lowerIndent,this._higherIndent=!!e.higherIndent}static first(t,e){return $o(new this(t,e)[Symbol.iterator]())}*[Symbol.iterator](){const t=[];for(const{node:e}of YD(this._getStartNode(),this._isForward?"forward":"backward")){const n=e.getAttribute("listIndent");if(nthis._referenceIndent){if(!this._higherIndent)continue;if(!this._isForward){t.push(e);continue}}else{if(!this._sameIndent){if(this._higherIndent){t.length&&(yield*t,t.length=0);break}continue}if(this._sameAttributes.some((t=>e.getAttribute(t)!==this._startElement.getAttribute(t))))break}t.length&&(yield*t,t.length=0),yield e}}_getStartNode(){return this._includeSelf?this._startElement:this._isForward?this._startElement.nextSibling:this._startElement.previousSibling}}function*YD(t,e="forward"){const n="forward"==e,i=[];let o=null;for(;lB(t);){let e=null;if(o){const n=t.getAttribute("listIndent"),r=o.getAttribute("listIndent");n>r?i[r]=o:ne in t?XD(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,sB=(t,e)=>{for(var n in e||(e={}))iB.call(e,n)&&rB(t,n,e[n]);if(nB)for(var n of nB(e))oB.call(e,n)&&rB(t,n,e[n]);return t},aB=(t,e)=>tB(t,eB(e));class cB{static next(){return p()}}function lB(t){return!!t&&t.is("element")&&t.hasAttribute("listItemId")}function dB(t,e={}){return[...hB(t,aB(sB({},e),{direction:"backward"})),...hB(t,aB(sB({},e),{direction:"forward"}))]}function hB(t,e={}){const n="forward"==e.direction,i=Array.from(new ZD(t,aB(sB({},e),{includeSelf:n,sameIndent:!0,sameAttributes:"listItemId"})));return n?i:i.reverse()}function uB(t,e){const n=new ZD(t,sB({sameIndent:!0,sameAttributes:"listType"},e)),i=new ZD(t,sB({sameIndent:!0,sameAttributes:"listType",includeSelf:!0,direction:"forward"},e));return[...Array.from(n).reverse(),...i]}function mB(t){return!ZD.first(t,{sameIndent:!0,sameAttributes:"listItemId"})}function gB(t){return!ZD.first(t,{direction:"forward",sameIndent:!0,sameAttributes:"listItemId"})}function pB(t,e={}){t=_o(t);const n=!1!==e.withNested,i=new Set;for(const e of t)for(const t of dB(e,{higherIndent:n}))i.add(t);return CB(i)}function fB(t){t=_o(t);const e=new Set;for(const n of t)for(const t of uB(n))e.add(t);return CB(e)}function bB(t,e){const n=hB(t,{direction:"forward"}),i=cB.next();for(const t of n)e.setAttribute("listItemId",i,t);return n}function kB(t,e,n){const i={};for(const[t,n]of e.getAttributes())t.startsWith("list")&&(i[t]=n);const o=hB(t,{direction:"forward"});for(const t of o)n.setAttributes(i,t);return o}function wB(t,e,{expand:n,indentBy:i=1}={}){t=_o(t);const o=n?pB(t):t;for(const t of o){const n=t.getAttribute("listIndent")+i;n<0?_B(t,e):e.setAttribute("listIndent",n,t)}return o}function _B(t,e){t=_o(t);for(const n of t)n.is("element","listItem")&&e.rename(n,"paragraph");for(const n of t)for(const t of n.getAttributeKeys())t.startsWith("list")&&e.removeAttribute(t,n);return t}function AB(t){if(!t.length)return!1;const e=t[0].getAttribute("listItemId");return!!e&&!t.some((t=>t.getAttribute("listItemId")!=e))}function CB(t){return Array.from(t).filter((t=>"$graveyard"!==t.root.rootName)).sort(((t,e)=>t.index-e.index))}function vB(t){const e=t.document.selection.getSelectedElement();return e&&t.schema.isObject(e)&&t.schema.isBlock(e)?e:null}function yB(t,e){return e.checkChild(t.parent,"listItem")&&e.checkChild(t,"$text")&&!e.isObject(t)}function xB(t){return"numbered"==t||"customNumbered"==t}function EB(t,e,n){return hB(e,{direction:"forward"}).pop().index>t.index?kB(t,e,n):[]}class DB extends ir{constructor(t,e){super(t),this._direction=e}refresh(){this.isEnabled=this._checkEnabled()}execute(){const t=this.editor.model,e=BB(t.document.selection);t.change((t=>{const n=[];AB(e)&&!mB(e[0])?("forward"==this._direction&&n.push(...wB(e,t)),n.push(...bB(e[0],t))):"forward"==this._direction?n.push(...wB(e,t,{expand:!0})):n.push(...function(t,e){const n=pB(t=_o(t)),i=new Set,o=Math.min(...n.map((t=>t.getAttribute("listIndent")))),r=new Map;for(const t of n)r.set(t,ZD.first(t,{lowerIndent:!0}));for(const t of n){if(i.has(t))continue;i.add(t);const n=t.getAttribute("listIndent")-1;if(n<0)_B(t,e);else{if(t.getAttribute("listIndent")==o){const n=EB(t,r.get(t),e);for(const t of n)i.add(t);if(n.length)continue}e.setAttribute("listIndent",n,t)}}return CB(i)}(e,t));for(const e of n){if(!e.hasAttribute("listType"))continue;const n=ZD.first(e,{sameIndent:!0});n&&t.setAttribute("listType",n.getAttribute("listType"),e)}this._fireAfterExecute(n)}))}_fireAfterExecute(t){this.fire("afterExecute",CB(new Set(t)))}_checkEnabled(){let t=BB(this.editor.model.document.selection),e=t[0];if(!e)return!1;if("backward"==this._direction)return!0;if(AB(t)&&!mB(t[0]))return!0;t=pB(t),e=t[0];const n=ZD.first(e,{sameIndent:!0});return!!n&&n.getAttribute("listType")==e.getAttribute("listType")}}function BB(t){const e=Array.from(t.getSelectedBlocks()),n=e.findIndex((t=>!lB(t)));return-1!=n&&(e.length=n),e}var SB=Object.defineProperty,TB=Object.defineProperties,IB=Object.getOwnPropertyDescriptors,PB=Object.getOwnPropertySymbols,RB=Object.prototype.hasOwnProperty,VB=Object.prototype.propertyIsEnumerable,FB=(t,e,n)=>e in t?SB(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,LB=(t,e)=>{for(var n in e||(e={}))RB.call(e,n)&&FB(t,n,e[n]);if(PB)for(var n of PB(e))VB.call(e,n)&&FB(t,n,e[n]);return t},OB=(t,e)=>TB(t,IB(e));class zB extends ir{constructor(t,e,n={}){super(t),this.type=e,this._listWalkerOptions=n.multiLevel?{higherIndent:!0,lowerIndent:!0,sameAttributes:[]}:void 0}refresh(){this.value=this._getValue(),this.isEnabled=this._checkEnabled()}execute(t={}){const e=this.editor.model,n=e.document,i=vB(e),o=Array.from(n.selection.getSelectedBlocks()).filter((t=>e.schema.checkAttribute(t,"listType")||yB(t,e.schema))),r=void 0!==t.forceValue?!t.forceValue:this.value;e.change((s=>{if(r){const t=o[o.length-1],e=hB(t,{direction:"forward"}),n=[];e.length>1&&n.push(...bB(e[1],s)),n.push(..._B(o,s)),n.push(...function(t,e){const n=[];let i=Number.POSITIVE_INFINITY;for(const{node:o}of YD(t.nextSibling,"forward")){const t=o.getAttribute("listIndent");if(0==t)break;t{const{firstElement:r,lastElement:s}=this._getMergeSubjectElements(n,t),a=r.getAttribute("listIndent")||0,c=s.getAttribute("listIndent"),l=s.getAttribute("listItemId");if(a!=c){const t=(d=s,Array.from(new ZD(d,{direction:"forward",higherIndent:!0})));i.push(...wB([s,...t],o,{indentBy:a-c,expand:a{const e=bB(this._getStartBlock(),t);this._fireAfterExecute(e)}))}_fireAfterExecute(t){this.fire("afterExecute",CB(new Set(t)))}_checkEnabled(){const t=this.editor.model.document.selection,e=this._getStartBlock();return t.isCollapsed&&lB(e)&&!mB(e)}_getStartBlock(){const t=this.editor.model.document.selection.getFirstPosition().parent;return"before"==this._direction?t:t.nextSibling}}class HB extends er{static get pluginName(){return"ListUtils"}expandListBlocksToCompleteList(t){return fB(t)}isFirstBlockOfListItem(t){return mB(t)}isListItemBlock(t){return lB(t)}expandListBlocksToCompleteItems(t,e={}){return pB(t,e)}isNumberedListType(t){return xB(t)}}function jB(t){return t.is("element","ol")||t.is("element","ul")}function qB(t){return t.is("element","li")}function WB(t,e,n,i=GB(n,e)){return t.createAttributeElement($B(n),null,{priority:2*e/100-100,id:i})}function UB(t,e,n){return t.createAttributeElement("li",null,{priority:(2*e+1)/100-100,id:n})}function $B(t){return"numbered"==t||"customNumbered"==t?"ol":"ul"}function GB(t,e){return`list-${t}-${e}`}function KB(t,e){const n=t.nodeBefore;if(lB(n)){let t=n;for(const{node:n}of YD(t,"backward"))if(t=n,e.has(t))return;e.set(n,t)}else{const n=t.nodeAfter;lB(n)&&e.set(n,n)}}function JB(){return(t,e,n)=>{const{writer:i,schema:o}=n;if(!e.modelRange)return;const r=Array.from(e.modelRange.getItems({shallow:!0})).filter((t=>o.checkAttribute(t,"listItemId")));if(!r.length)return;const s=cB.next(),a=function(t){let e=0,n=t.parent;for(;n;){if(qB(n))e++;else{const t=n.previousSibling;t&&qB(t)&&e++}n=n.parent}return e}(e.viewItem);let c=e.viewItem.parent&&e.viewItem.parent.is("element","ol")?"numbered":"bulleted";const l=r[0].getAttribute("listType");l&&(c=l);const d={listItemId:s,listIndent:a,listType:c};for(const t of r)t.hasAttribute("listItemId")||i.setAttributes(d,t);r.length>1&&r[1].getAttribute("listItemId")!=d.listItemId&&n.keepEmptyElement(r[0])}}function ZB(){return(t,e,n)=>{if(!n.consumable.test(e.viewItem,{name:!0}))return;const i=new Au(e.viewItem.document);for(const t of Array.from(e.viewItem.getChildren()))qB(t)||jB(t)||i.remove(t)}}function YB(t,e,n,{dataPipeline:i}={}){const o=function(t){return(e,n)=>{const i=[];for(const n of t)e.hasAttribute(n)&&i.push(`attribute:${n}`);return!!i.every((t=>!1!==n.test(e,t)))&&(i.forEach((t=>n.consume(e,t))),!0)}}(t);return(r,s,a)=>{const{writer:c,mapper:l,consumable:d}=a,h=s.item;if(!t.includes(s.attributeKey))return;if(!o(h,d))return;const u=function(t,e,n){const i=n.createRangeOn(t),o=e.toViewRange(i).getTrimmed();return o.end.nodeBefore}(h,l,n);XB(u,c,l),function(t,e){let n=t.parent;for(;n.is("attributeElement")&&["ul","ol","li"].includes(n.name);){const i=n.parent;e.unwrap(e.createRangeOn(t),n),n=i}}(u,c);const m=function(t,e,n,i,{dataPipeline:o}){let r=i.createRangeOn(e);if(!mB(t))return r;for(const s of n){if("itemMarker"!=s.scope)continue;const n=s.createElement(i,t,{dataPipeline:o});if(!n)continue;if(i.setCustomProperty("listItemMarker",!0,n),s.canInjectMarkerIntoElement&&s.canInjectMarkerIntoElement(t)?i.insert(i.createPositionAt(e,0),n):(i.insert(r.start,n),r=i.createRange(i.createPositionBefore(n),i.createPositionAfter(e))),!s.createWrapperElement||!s.canWrapElement)continue;const a=s.createWrapperElement(i,t,{dataPipeline:o});i.setCustomProperty("listItemWrapper",!0,a),s.canWrapElement(t)?r=i.wrap(r,a):(r=i.wrap(i.createRangeOn(n),a),r=i.createRange(r.start,i.createPositionAfter(e)))}return r}(h,u,e,c,{dataPipeline:i});!function(t,e,n,i){if(!t.hasAttribute("listIndent"))return;const o=t.getAttribute("listIndent");let r=t;for(let t=o;t>=0;t--){const o=UB(i,t,r.getAttribute("listItemId")),s=WB(i,t,r.getAttribute("listType"));for(const t of n)"list"!=t.scope&&"item"!=t.scope||!r.hasAttribute(t.attributeName)||t.setAttributeOnDowncast(i,r.getAttribute(t.attributeName),"list"==t.scope?s:o);if(e=i.wrap(e,o),e=i.wrap(e,s),0==t)break;if(r=ZD.first(r,{lowerIndent:!0}),!r)break}}(h,m,e,c)}}function QB(t,{dataPipeline:e}={}){return(n,{writer:i})=>{if(!tS(n,t))return null;if(!e)return i.createContainerElement("span",{class:"ck-list-bogus-paragraph"});const o=i.createContainerElement("p");return i.setCustomProperty("dataPipeline:transparentRendering",!0,o),o}}function XB(t,e,n){for(;t.parent.is("attributeElement")&&t.parent.getCustomProperty("listItemWrapper");)e.unwrap(e.createRangeOn(t),t.parent);const i=[];o(e.createPositionBefore(t).getWalker({direction:"backward"})),o(e.createRangeIn(t).getWalker());for(const t of i)e.remove(t);function o(t){for(const{item:e}of t){if(e.is("element")&&n.toModelElement(e))break;e.is("element")&&e.getCustomProperty("listItemMarker")&&i.push(e)}}}function tS(t,e,n=dB(t)){if(!lB(t))return!1;for(const n of t.getAttributeKeys())if(!n.startsWith("selection:")&&!e.includes(n))return!1;return n.length<2}var eS=n(1232),nS={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(eS.A,nS);eS.A.locals;var iS=n(6903),oS={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(iS.A,oS);iS.A.locals;const rS=["listType","listIndent","listItemId"];class sS extends er{constructor(t){super(t),this._downcastStrategies=[],t.config.define("list.multiBlock",!0)}static get pluginName(){return"ListEditing"}static get requires(){return[IA,v_,HB,RC]}init(){const t=this.editor,e=t.model,n=t.config.get("list.multiBlock");if(t.plugins.has("LegacyListEditing"))throw new w("list-feature-conflict",this,{conflictPlugin:"LegacyListEditing"});e.schema.register("$listItem",{allowAttributes:rS}),n?(e.schema.extend("$container",{allowAttributesOf:"$listItem"}),e.schema.extend("$block",{allowAttributesOf:"$listItem"}),e.schema.extend("$blockObject",{allowAttributesOf:"$listItem"})):e.schema.register("listItem",{inheritAllFrom:"$block",allowAttributesOf:"$listItem"});for(const t of rS)e.schema.setAttributeProperties(t,{copyOnReplace:!0});t.commands.add("numberedList",new zB(t,"numbered")),t.commands.add("bulletedList",new zB(t,"bulleted")),t.commands.add("customNumberedList",new zB(t,"customNumbered",{multiLevel:!0})),t.commands.add("customBulletedList",new zB(t,"customBulleted",{multiLevel:!0})),t.commands.add("indentList",new DB(t,"forward")),t.commands.add("outdentList",new DB(t,"backward")),t.commands.add("splitListItemBefore",new NB(t,"before")),t.commands.add("splitListItemAfter",new NB(t,"after")),n&&(t.commands.add("mergeListItemBackward",new MB(t,"backward")),t.commands.add("mergeListItemForward",new MB(t,"forward"))),this._setupDeleteIntegration(),this._setupEnterIntegration(),this._setupTabIntegration(),this._setupClipboardIntegration(),this._setupAccessibilityIntegration()}afterInit(){const t=this.editor.commands,e=t.get("indent"),n=t.get("outdent");e&&e.registerChildCommand(t.get("indentList"),{priority:"high"}),n&&n.registerChildCommand(t.get("outdentList"),{priority:"lowest"}),this._setupModelPostFixing(),this._setupConversion()}registerDowncastStrategy(t){this._downcastStrategies.push(t)}getListAttributeNames(){return[...rS,...this._downcastStrategies.map((t=>t.attributeName))]}_setupDeleteIntegration(){const t=this.editor,e=t.commands.get("mergeListItemBackward"),n=t.commands.get("mergeListItemForward");this.listenTo(t.editing.view.document,"delete",((i,o)=>{const r=t.model.document.selection;vB(t.model)||t.model.change((()=>{const s=r.getFirstPosition();if(r.isCollapsed&&"backward"==o.direction){if(!s.isAtStart)return;const n=s.parent;if(!lB(n))return;if(ZD.first(n,{sameAttributes:"listType",sameIndent:!0})||0!==n.getAttribute("listIndent")){if(!e||!e.isEnabled)return;e.execute({shouldMergeOnBlocksContentLevel:aS(t.model,"backward")})}else gB(n)||t.execute("splitListItemAfter"),t.execute("outdentList");o.preventDefault(),i.stop()}else{if(r.isCollapsed&&!r.getLastPosition().isAtEnd)return;if(!n||!n.isEnabled)return;n.execute({shouldMergeOnBlocksContentLevel:aS(t.model,"forward")}),o.preventDefault(),i.stop()}}))}),{context:"li"})}_setupEnterIntegration(){const t=this.editor,e=t.model,n=t.commands,i=n.get("enter");this.listenTo(t.editing.view.document,"enter",((n,i)=>{const o=e.document,r=o.selection.getFirstPosition().parent;if(o.selection.isCollapsed&&lB(r)&&r.isEmpty&&!i.isSoft){const e=mB(r),o=gB(r);e&&o?(t.execute("outdentList"),i.preventDefault(),n.stop()):e&&!o?(t.execute("splitListItemAfter"),i.preventDefault(),n.stop()):o&&(t.execute("splitListItemBefore"),i.preventDefault(),n.stop())}}),{context:"li"}),this.listenTo(i,"afterExecute",(()=>{const e=n.get("splitListItemBefore");if(e.refresh(),!e.isEnabled)return;2===dB(t.model.document.selection.getLastPosition().parent).length&&e.execute()}))}_setupTabIntegration(){const t=this.editor;this.listenTo(t.editing.view.document,"tab",((e,n)=>{const i=n.shiftKey?"outdentList":"indentList";this.editor.commands.get(i).isEnabled&&(t.execute(i),n.stopPropagation(),n.preventDefault(),e.stop())}),{context:"li"})}_setupConversion(){const t=this.editor,e=t.model,n=this.getListAttributeNames(),i=t.config.get("list.multiBlock"),o=i?"paragraph":"listItem";t.conversion.for("upcast").elementToElement({view:"li",model:(t,{writer:e})=>e.createElement(o,{listType:""})}).elementToElement({view:"p",model:(t,{writer:e})=>t.parent&&t.parent.is("element","li")?e.createElement(o,{listType:""}):null,converterPriority:"high"}).add((t=>{t.on("element:li",JB()),t.on("element:ul",ZB(),{priority:"high"}),t.on("element:ol",ZB(),{priority:"high"})})),i||t.conversion.for("downcast").elementToElement({model:"listItem",view:"p"}),t.conversion.for("editingDowncast").elementToElement({model:o,view:QB(n),converterPriority:"high"}).add((t=>{var i;t.on("attribute",YB(n,this._downcastStrategies,e)),t.on("remove",(i=e.schema,(t,e,n)=>{const{writer:o,mapper:r}=n,s=t.name.split(":")[1];if(!i.checkAttribute(s,"listItemId"))return;const a=r.toViewPosition(e.position),c=e.position.getShiftedBy(e.length),l=r.toViewPosition(c,{isPhantom:!0}),d=o.createRange(a,l).getTrimmed().end.nodeBefore;d&&XB(d,o,r)}))})),t.conversion.for("dataDowncast").elementToElement({model:o,view:QB(n,{dataPipeline:!0}),converterPriority:"high"}).add((t=>{t.on("attribute",YB(n,this._downcastStrategies,e,{dataPipeline:!0}))}));const r=(s=this._downcastStrategies,a=t.editing.view,(t,e)=>{if(e.modelPosition.offset>0)return;const n=e.modelPosition.parent;if(!lB(n))return;if(!s.some((t=>"itemMarker"==t.scope&&t.canInjectMarkerIntoElement&&t.canInjectMarkerIntoElement(n))))return;const i=e.mapper.toViewElement(n),o=a.createRangeIn(i),r=o.getWalker();let c=o.start;for(const{item:t}of r){if(t.is("element")&&e.mapper.toModelElement(t)||t.is("$textProxy"))break;t.is("element")&&t.getCustomProperty("listItemMarker")&&(c=a.createPositionAfter(t),r.skip((({previousPosition:t})=>!t.isEqual(c))))}e.viewPosition=c});var s,a;t.editing.mapper.on("modelToViewPosition",r),t.data.mapper.on("modelToViewPosition",r),this.listenTo(e.document,"change:data",function(t,e,n,i){return()=>{const i=t.document.differ.getChanges(),s=[],a=new Map,c=new Set;for(const t of i)if("insert"==t.type&&"$text"!=t.name)KB(t.position,a),t.attributes.has("listItemId")?c.add(t.position.nodeAfter):KB(t.position.getShiftedBy(t.length),a);else if("remove"==t.type&&t.attributes.has("listItemId"))KB(t.position,a);else if("attribute"==t.type){const e=t.range.start.nodeAfter;n.includes(t.attributeKey)?(KB(t.range.start,a),null===t.attributeNewValue?(KB(t.range.start.getShiftedBy(1),a),r(e)&&s.push(e)):c.add(e)):lB(e)&&r(e)&&s.push(e)}for(const t of a.values())s.push(...o(t,c));for(const t of new Set(s))e.reconvertItem(t)};function o(t,e){const i=[],o=new Set,a=[];for(const{node:c,previous:l}of YD(t,"forward")){if(o.has(c))continue;const t=c.getAttribute("listIndent");l&&tn.includes(t))));const d=hB(c,{direction:"forward"});for(const t of d)o.add(t),(r(t,d)||s(t,a,e))&&i.push(t)}return i}function r(t,o){const r=e.mapper.toViewElement(t);if(!r)return!1;if(i.fire("checkElement",{modelElement:t,viewElement:r}))return!0;if(!t.is("element","paragraph")&&!t.is("element","listItem"))return!1;const s=tS(t,n,o);return!(!s||!r.is("element","p"))||!(s||!r.is("element","span"))}function s(t,n,o){if(o.has(t))return!1;const r=e.mapper.toViewElement(t);let s=n.length-1;for(let t=r.parent;!t.is("editableElement");t=t.parent){const e=qB(t),o=jB(t);if(!o&&!e)continue;const r="checkAttributes:"+(e?"item":"list");if(i.fire(r,{viewElement:t,modelAttributes:n[s]}))break;if(o&&(s--,s<0))return!1}return!0}}(e,t.editing,n,this),{priority:"high"}),this.on("checkAttributes:item",((t,{viewElement:e,modelAttributes:n})=>{e.id!=n.listItemId&&(t.return=!0,t.stop())})),this.on("checkAttributes:list",((t,{viewElement:e,modelAttributes:n})=>{e.name==$B(n.listType)&&e.id==GB(n.listType,n.listIndent)||(t.return=!0,t.stop())}))}_setupModelPostFixing(){const t=this.editor.model,e=this.getListAttributeNames();t.document.registerPostFixer((n=>function(t,e,n,i){const o=t.document.differ.getChanges(),r=new Map,s=i.editor.config.get("list.multiBlock");let a=!1;for(const i of o){if("insert"==i.type&&"$text"!=i.name){const o=i.position.nodeAfter;if(!t.schema.checkAttribute(o,"listItemId"))for(const t of Array.from(o.getAttributeKeys()))n.includes(t)&&(e.removeAttribute(t,o),a=!0);KB(i.position,r),i.attributes.has("listItemId")||KB(i.position.getShiftedBy(i.length),r);for(const{item:e,previousPosition:n}of t.createRangeIn(o))lB(e)&&KB(n,r)}else"remove"==i.type?KB(i.position,r):"attribute"==i.type&&n.includes(i.attributeKey)&&(KB(i.range.start,r),null===i.attributeNewValue&&KB(i.range.start.getShiftedBy(1),r));if(!s&&"attribute"==i.type&&rS.includes(i.attributeKey)){const t=i.range.start.nodeAfter;null===i.attributeNewValue&&t&&t.is("element","listItem")?(e.rename(t,"paragraph"),a=!0):null===i.attributeOldValue&&t&&t.is("element")&&"listItem"!=t.name&&(e.rename(t,"listItem"),a=!0)}}const c=new Set;for(const t of r.values())a=i.fire("postFixer",{listNodes:new QD(t),listHead:t,writer:e,seenIds:c})||a;return a}(t,n,e,this))),this.on("postFixer",((t,{listNodes:e,writer:n})=>{t.return=function(t,e){let n=0,i=-1,o=null,r=!1;for(const{node:s}of t){const t=s.getAttribute("listIndent");if(t>n){let a;null===o?(o=t-n,a=n):(o>t&&(o=t),a=t-o),a>i+1&&(a=i+1),e.setAttribute("listIndent",a,s),r=!0,i=a}else o=null,n=t+1,i=t}return r}(e,n)||t.return}),{priority:"high"}),this.on("postFixer",((t,{listNodes:e,writer:n,seenIds:i})=>{t.return=function(t,e,n){const i=new Set;let o=!1;for(const{node:r}of t){if(i.has(r))continue;let t=r.getAttribute("listType"),s=r.getAttribute("listItemId");if(e.has(s)&&(s=cB.next()),e.add(s),r.is("element","listItem"))r.getAttribute("listItemId")!=s&&(n.setAttribute("listItemId",s,r),o=!0);else for(const e of hB(r,{direction:"forward"}))i.add(e),e.getAttribute("listType")!=t&&(s=cB.next(),t=e.getAttribute("listType")),e.getAttribute("listItemId")!=s&&(n.setAttribute("listItemId",s,e),o=!0)}return o}(e,i,n)||t.return}),{priority:"high"})}_setupClipboardIntegration(){const t=this.editor.model,e=this.editor.plugins.get("ClipboardPipeline");this.listenTo(t,"insertContent",function(t){return(e,[n,i])=>{const o=n.is("documentFragment")?Array.from(n.getChildren()):[n];if(!o.length)return;const r=(i?t.createSelection(i):t.document.selection).getFirstPosition();let s;if(lB(r.parent))s=r.parent;else{if(!lB(r.nodeBefore))return;s=r.nodeBefore}t.change((t=>{const e=s.getAttribute("listType"),n=s.getAttribute("listIndent"),i=o[0].getAttribute("listIndent")||0,r=Math.max(n-i,0);for(const n of o){const i=lB(n);s.is("element","listItem")&&n.is("element","paragraph")&&t.rename(n,"listItem"),t.setAttributes({listIndent:(i?n.getAttribute("listIndent"):0)+r,listItemId:i?n.getAttribute("listItemId"):cB.next(),listType:e},n)}}))}}(t),{priority:"high"}),this.listenTo(e,"outputTransformation",((e,n)=>{t.change((t=>{const e=Array.from(n.content.getChildren()),i=e[e.length-1];if(e.length>1&&i.is("element")&&i.isEmpty){e.slice(0,-1).every(lB)&&t.remove(i)}if("copy"==n.method||"cut"==n.method){const e=Array.from(n.content.getChildren());AB(e)&&_B(e,t)}}))}))}_setupAccessibilityIntegration(){const t=this.editor,e=t.t;t.accessibility.addKeystrokeInfoGroup({id:"list",label:e("Keystrokes that can be used in a list"),keystrokes:[{label:e("Increase list item indent"),keystroke:"Tab"},{label:e("Decrease list item indent"),keystroke:"Shift+Tab"}]})}}function aS(t,e){const n=t.document.selection;if(!n.isCollapsed)return!vB(t);if("forward"===e)return!0;const i=n.getFirstPosition().parent,o=i.previousSibling;return!t.schema.isObject(o)&&(!!o.isEmpty||AB([i,o]))}function cS(t,e,n,i){t.ui.componentFactory.add(e,(()=>{const o=lS(mg,t,e,n,i);return o.set({tooltip:!0,isToggleable:!0}),o})),t.ui.componentFactory.add(`menuBar:${e}`,(()=>lS(mw,t,e,n,i)))}function lS(t,e,n,i,o){const r=e.commands.get(n),s=new t(e.locale);return s.set({label:i,icon:o}),s.bind("isOn","isEnabled").to(r,"value","isEnabled"),s.on("execute",(()=>{e.execute(n),e.editing.view.focus()})),s}class dS extends er{static get pluginName(){return"ListUI"}init(){const t=this.editor.t;this.editor.ui.componentFactory.has("numberedList")||cS(this.editor,"numberedList",t("Numbered List"),ym.numberedList),this.editor.ui.componentFactory.has("bulletedList")||cS(this.editor,"bulletedList",t("Bulleted List"),ym.bulletedList)}}class hS extends er{static get requires(){return[sS,dS]}static get pluginName(){return"List"}}const uS={},mS={},gS={},pS=[{listStyle:"disc",typeAttribute:"disc",listType:"bulleted"},{listStyle:"circle",typeAttribute:"circle",listType:"bulleted"},{listStyle:"square",typeAttribute:"square",listType:"bulleted"},{listStyle:"decimal",typeAttribute:"1",listType:"numbered"},{listStyle:"decimal-leading-zero",typeAttribute:null,listType:"numbered"},{listStyle:"lower-roman",typeAttribute:"i",listType:"numbered"},{listStyle:"upper-roman",typeAttribute:"I",listType:"numbered"},{listStyle:"lower-alpha",typeAttribute:"a",listType:"numbered"},{listStyle:"upper-alpha",typeAttribute:"A",listType:"numbered"},{listStyle:"lower-latin",typeAttribute:"a",listType:"numbered"},{listStyle:"upper-latin",typeAttribute:"A",listType:"numbered"}];for(const{listStyle:t,typeAttribute:e,listType:n}of pS)uS[t]=n,mS[t]=e,e&&(gS[e]=t);var fS=n(9968),bS={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(fS.A,bS);fS.A.locals;var kS=n(7141),wS={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(kS.A,wS);kS.A.locals;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;class _S extends ir{constructor(t){super(t),this.on("execute",(()=>{this.refresh()}),{priority:"highest"})}refresh(){const t=this._getSelectedItems();this.value=this._getValue(t),this.isEnabled=!!t.length}execute(t={}){this.editor.model.change((e=>{const n=this._getSelectedItems(),i=void 0===t.forceValue?!this._getValue(n):t.forceValue;for(const t of n)i?e.setAttribute("todoListChecked",!0,t):e.removeAttribute("todoListChecked",t)}))}_getValue(t){return t.every((t=>t.getAttribute("todoListChecked")))}_getSelectedItems(){const t=this.editor.model,e=t.schema,n=t.document.selection.getFirstRange(),i=n.start.parent,o=[];e.checkAttribute(i,"todoListChecked")&&o.push(...dB(i));for(const t of n.getItems({shallow:!0}))e.checkAttribute(t,"todoListChecked")&&!o.includes(t)&&o.push(...dB(t));return o}}class AS extends Ta{constructor(){super(...arguments),this.domEventType=["change"]}onDomEvent(t){if(t.target){const e=this.view.domConverter.mapDomToView(t.target);e&&e.is("element","input")&&"checkbox"==e.getAttribute("type")&&e.findAncestor({classes:"todo-list__label"})&&this.fire("todoCheckboxChange",t)}}}var CS=Object.defineProperty,vS=Object.getOwnPropertySymbols,yS=Object.prototype.hasOwnProperty,xS=Object.prototype.propertyIsEnumerable,ES=(t,e,n)=>e in t?CS(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,DS=(t,e)=>{for(var n in e||(e={}))yS.call(e,n)&&ES(t,n,e[n]);if(vS)for(var n of vS(e))xS.call(e,n)&&ES(t,n,e[n]);return t};const BS=bo("Ctrl+Enter");class SS extends er{static get pluginName(){return"TodoListEditing"}static get requires(){return[sS]}init(){const t=this.editor,e=t.model,n=t.editing,i=t.plugins.get(sS),o=t.config.get("list.multiBlock")?"paragraph":"listItem";t.commands.add("todoList",new zB(t,"todo")),t.commands.add("checkTodoList",new _S(t)),n.view.addObserver(AS),e.schema.extend("$listItem",{allowAttributes:"todoListChecked"}),e.schema.addAttributeCheck(((t,e)=>{const n=t.last;if("todoListChecked"==e)return!(!n.getAttribute("listItemId")||"todo"!=n.getAttribute("listType"))&&void 0})),t.conversion.for("upcast").add((t=>{t.on("element:input",((t,e,n)=>{const i=e.modelCursor,o=i.parent,r=e.viewItem;if(!n.consumable.test(r,{name:!0}))return;if("checkbox"!=r.getAttribute("type")||!i.isAtStart||!o.hasAttribute("listType"))return;n.consumable.consume(r,{name:!0});const s=n.writer;s.setAttribute("listType","todo",o),e.viewItem.hasAttribute("checked")&&s.setAttribute("todoListChecked",!0,o),e.modelRange=s.createRange(i)})),t.on("element:label",TS({name:"label",classes:"todo-list__label"})),t.on("element:label",TS({name:"label",classes:["todo-list__label","todo-list__label_without-description"]})),t.on("element:span",TS({name:"span",classes:"todo-list__label__description"})),t.on("element:ul",function(t){const e=new Ir(t);return(t,n,i)=>{const o=e.match(n.viewItem);if(!o)return;const r=o.match;r.name=!1,i.consumable.consume(n.viewItem,r)}}({name:"ul",classes:"todo-list"}))})),t.conversion.for("downcast").elementToElement({model:o,view:(t,{writer:e})=>{if(IS(t,i.getListAttributeNames()))return e.createContainerElement("span",{class:"todo-list__label__description"})},converterPriority:"highest"}),i.registerDowncastStrategy({scope:"list",attributeName:"listType",setAttributeOnDowncast(t,e,n){"todo"==e?t.addClass("todo-list",n):t.removeClass("todo-list",n)}}),i.registerDowncastStrategy({scope:"itemMarker",attributeName:"todoListChecked",createElement(t,e,{dataPipeline:n}){if("todo"!=e.getAttribute("listType"))return null;const i=t.createUIElement("input",DS(DS({type:"checkbox"},e.getAttribute("todoListChecked")?{checked:"checked"}:null),n?{disabled:"disabled"}:{tabindex:"-1"}));if(n)return i;const o=t.createContainerElement("span",{contenteditable:"false"},i);return o.getFillerOffset=()=>null,o},canWrapElement:t=>IS(t,i.getListAttributeNames()),createWrapperElement(t,e,{dataPipeline:n}){const o=["todo-list__label"];return IS(e,i.getListAttributeNames())||o.push("todo-list__label_without-description"),t.createAttributeElement(n?"label":"span",{class:o.join(" ")})}}),i.on("checkElement",((t,{modelElement:e,viewElement:n})=>{const o=IS(e,i.getListAttributeNames());n.hasClass("todo-list__label__description")!=o&&(t.return=!0,t.stop())})),i.on("checkElement",((e,{modelElement:n,viewElement:i})=>{const o="todo"==n.getAttribute("listType")&&mB(n);let r=!1;const s=t.editing.view.createPositionBefore(i).getWalker({direction:"backward"});for(const{item:e}of s){if(e.is("element")&&t.editing.mapper.toModelElement(e))break;e.is("element","input")&&"checkbox"==e.getAttribute("type")&&(r=!0)}r!=o&&(e.return=!0,e.stop())})),i.on("postFixer",((t,{listNodes:e,writer:n})=>{for(const{node:i,previousNodeInList:o}of e){if(!o)continue;if(o.getAttribute("listItemId")!=i.getAttribute("listItemId"))continue;const e=o.hasAttribute("todoListChecked"),r=i.hasAttribute("todoListChecked");r&&!e?(n.removeAttribute("todoListChecked",i),t.return=!0):!r&&e&&(n.setAttribute("todoListChecked",!0,i),t.return=!0)}})),e.document.registerPostFixer((t=>{const n=e.document.differ.getChanges();let i=!1;for(const e of n)if("attribute"==e.type&&"listType"==e.attributeKey){const n=e.range.start.nodeAfter;"todo"==e.attributeOldValue&&n.hasAttribute("todoListChecked")&&(t.removeAttribute("todoListChecked",n),i=!0)}else if("insert"==e.type&&"$text"!=e.name)for(const{item:n}of t.createRangeOn(e.position.nodeAfter))n.is("element")&&"todo"!=n.getAttribute("listType")&&n.hasAttribute("todoListChecked")&&(t.removeAttribute("todoListChecked",n),i=!0);return i})),this.listenTo(n.view.document,"keydown",((e,n)=>{fo(n)===BS&&(t.execute("checkTodoList"),e.stop())}),{priority:"high"}),this.listenTo(n.view.document,"todoCheckboxChange",((t,e)=>{const i=e.target;if(!i||!i.is("element","input"))return;const o=n.view.createPositionAfter(i),r=n.mapper.toModelPosition(o).parent;r&&lB(r)&&"todo"==r.getAttribute("listType")&&this._handleCheckmarkChange(r)})),this.listenTo(n.view.document,"arrowKey",function(t,e){return(n,i)=>{const o=wo(i.keyCode,e.contentLanguageDirection),r=t.schema,s=t.document.selection;if(!s.isCollapsed)return;const a=s.getFirstPosition(),c=a.parent;if("right"==o&&a.isAtEnd){const e=r.getNearestSelectionRange(t.createPositionAfter(c),"forward");if(!e)return;const o=e.start.parent;o&&lB(o)&&"todo"==o.getAttribute("listType")&&(t.change((t=>t.setSelection(e))),i.preventDefault(),i.stopPropagation(),n.stop())}else if("left"==o&&a.isAtStart&&lB(c)&&"todo"==c.getAttribute("listType")){const e=r.getNearestSelectionRange(t.createPositionBefore(c),"backward");if(!e)return;t.change((t=>t.setSelection(e))),i.preventDefault(),i.stopPropagation(),n.stop()}}}(e,t.locale),{context:"$text"}),this.listenTo(n.mapper,"viewToModelPosition",((t,n)=>{const i=n.viewPosition.parent,o=i.is("attributeElement","li")&&0==n.viewPosition.offset,r=PS(i)&&n.viewPosition.offset<=1,s=i.is("element","span")&&"false"==i.getAttribute("contenteditable")&&PS(i.parent);if(!o&&!r&&!s)return;const a=n.modelPosition.nodeAfter;a&&"todo"==a.getAttribute("listType")&&(n.modelPosition=e.createPositionAt(a,0))}),{priority:"low"}),this._initAriaAnnouncements()}_handleCheckmarkChange(t){const e=this.editor,n=e.model,i=Array.from(n.document.selection.getRanges());n.change((n=>{n.setSelection(t,"end"),e.execute("checkTodoList"),n.setSelection(i)}))}_initAriaAnnouncements(){const{model:t,ui:e,t:n}=this.editor;let i=null;e&&t.document.selection.on("change:range",(()=>{const o=t.document.selection.focus.parent,r=RS(i),s=RS(o);r&&!s?e.ariaLiveAnnouncer.announce(n("Leaving a to-do list")):!r&&s&&e.ariaLiveAnnouncer.announce(n("Entering a to-do list")),i=o}))}}function TS(t){const e=new Ir(t);return(t,n,i)=>{const o=e.match(n.viewItem);o&&i.consumable.consume(n.viewItem,o.match)&&Object.assign(n,i.convertChildren(n.viewItem,n.modelCursor))}}function IS(t,e){return(t.is("element","paragraph")||t.is("element","listItem"))&&"todo"==t.getAttribute("listType")&&mB(t)&&function(t,e){for(const n of t.getAttributeKeys())if(!n.startsWith("selection:")&&!e.includes(n))return!1;return!0}(t,e)}function PS(t){return!!t&&t.is("attributeElement")&&t.hasClass("todo-list__label")}function RS(t){return!!t&&(!(!t.is("element","paragraph")&&!t.is("element","listItem"))&&"todo"==t.getAttribute("listType"))}class VS extends er{static get pluginName(){return"TodoListUI"}init(){const t=this.editor.t;cS(this.editor,"todoList",t("To-do List"),ym.todoList)}}var FS=n(8991),LS={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(FS.A,LS);FS.A.locals;class OS extends er{static get requires(){return[SS,VS]}static get pluginName(){return"TodoList"}}bo("Ctrl+Enter");function zS(t){return void 0!==t&&t.endsWith("px")}function MS(t){return t.toFixed(2).replace(/\.?0+$/,"")+"px"}var NS=Object.defineProperty,HS=Object.defineProperties,jS=Object.getOwnPropertyDescriptors,qS=Object.getOwnPropertySymbols,WS=Object.prototype.hasOwnProperty,US=Object.prototype.propertyIsEnumerable,$S=(t,e,n)=>e in t?NS(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,GS=(t,e)=>{for(var n in e||(e={}))WS.call(e,n)&&$S(t,n,e[n]);if(qS)for(var n of qS(e))US.call(e,n)&&$S(t,n,e[n]);return t};function KS(t,e,n){if(!t.childCount)return;const i=new Au(t.document),o=function(t,e){const n=e.createRangeIn(t),i=[],o=new Set;for(const t of n.getItems()){if(!t.is("element")||!t.name.match(/^(p|h\d+|li|div)$/))continue;let e=nT(t);if(void 0===e||0!=parseFloat(e)||Array.from(t.getClassNames()).find((t=>t.startsWith("MsoList")))||(e=void 0),t.hasStyle("mso-list")||void 0!==e&&o.has(e)){const n=tT(t);i.push({element:t,id:n.id,order:n.order,indent:n.indent,marginLeft:e}),void 0!==e&&o.add(e)}else o.clear()}return i}(t,i);if(!o.length)return;const r={},s=[];for(const t of o)if(void 0!==t.indent){JS(t)||(s.length=0);const o=`${t.id}:${t.indent}`,c=Math.min(t.indent-1,s.length);if(cs.length-1||s[c].listElement.name!=l.type){0==c&&"ol"==l.type&&void 0!==t.id&&r[o]&&(l.startIndex=r[o]);const e=XS(l,i,n);if(zS(t.marginLeft)&&(0==c||zS(s[c-1].marginLeft))){let n=t.marginLeft;c>0&&(n=MS(parseFloat(n)-parseFloat(s[c-1].marginLeft))),i.setStyle("padding-left",n,e)}if(0==s.length){const n=t.element.parent,o=n.getChildIndex(t.element)+1;i.insertChild(o,e,n)}else{const t=s[c-1].listItemElements;i.appendChild(e,t[t.length-1])}s[c]=(a=GS({},t),HS(a,jS({listElement:e,listItemElements:[]}))),0==c&&void 0!==t.id&&(r[o]=l.startIndex||1)}}const l="li"==t.element.name?t.element:i.createElement("li");i.appendChild(l,s[c].listElement),s[c].listItemElements.push(l),0==c&&void 0!==t.id&&r[o]++,t.element!=l&&i.appendChild(t.element,l),eT(t.element,i),i.removeStyle("text-indent",t.element),i.removeStyle("margin-left",t.element)}else{const e=s.find((e=>e.marginLeft==t.marginLeft));if(e){const n=e.listItemElements;i.appendChild(t.element,n[n.length-1]),i.removeStyle("margin-left",t.element)}else s.length=0}var a}function JS(t){const e=t.element.previousSibling;return ZS(e||t.element.parent)}function ZS(t){return t.is("element","ol")||t.is("element","ul")}function YS(t,e){const n=new RegExp(`@list l${t.id}:level${t.indent}\\s*({[^}]*)`,"gi"),i=/mso-level-number-format:([^;]{0,100});/gi,o=/mso-level-start-at:\s{0,100}([0-9]{0,10})\s{0,100};/gi,r=new RegExp(`@list\\s+l${t.id}:level\\d\\s*{[^{]*mso-level-text:"%\\d\\\\.`,"gi"),s=new RegExp(`@list l${t.id}:level\\d\\s*{[^{]*mso-level-number-format:`,"gi"),a=r.exec(e),c=s.exec(e),l=a&&!c,d=n.exec(e);let h="decimal",u="ol",m=null;if(d&&d[1]){const e=i.exec(d[1]);if(e&&e[1]&&(h=e[1].trim(),u="bullet"!==h&&"image"!==h?"ol":"ul"),"bullet"===h){const e=function(t){if("li"==t.name&&"ul"==t.parent.name&&t.parent.hasAttribute("type"))return t.parent.getAttribute("type");const e=function(t){if(t.getChild(0).is("$text"))return null;for(const e of t.getChildren()){if(!e.is("element","span"))continue;const t=e.getChild(0);if(t)return t.is("$text")?t:t.getChild(0)}return null}(t);if(!e)return null;const n=e._data;if("o"===n)return"circle";if("·"===n)return"disc";if("§"===n)return"square";return null}(t.element);e&&(h=e)}else{const t=o.exec(d[1]);t&&t[1]&&(m=parseInt(t[1]))}l&&(u="ol")}return{type:u,startIndex:m,style:QS(h),isLegalStyleList:l}}function QS(t){if(t.startsWith("arabic-leading-zero"))return"decimal-leading-zero";switch(t){case"alpha-upper":return"upper-alpha";case"alpha-lower":return"lower-alpha";case"roman-upper":return"upper-roman";case"roman-lower":return"lower-roman";case"circle":case"disc":case"square":return t;default:return null}}function XS(t,e,n){const i=e.createElement(t.type);return t.style&&e.setStyle("list-style-type",t.style,i),t.startIndex&&t.startIndex>1&&e.setAttribute("start",t.startIndex,i),t.isLegalStyleList&&n&&e.addClass("legal-list",i),i}function tT(t){const e=t.getStyle("mso-list");if(void 0===e)return{};const n=e.match(/(^|\s{1,100})l(\d+)/i),i=e.match(/\s{0,100}lfo(\d+)/i),o=e.match(/\s{0,100}level(\d+)/i);return n&&i&&o?{id:n[2],order:i[1],indent:parseInt(o[1])}:{indent:1}}function eT(t,e){const n=new Ir({name:"span",styles:{"mso-list":"Ignore"}}),i=e.createRangeIn(t);for(const t of i)"elementStart"===t.type&&n.match(t.item)&&e.remove(t.item)}function nT(t){const e=t.getStyle("margin-left");return void 0===e||e.endsWith("px")?e:function(t){const e=parseFloat(t);return t.endsWith("pt")?MS(96*e/72):t.endsWith("pc")?MS(12*e*96/72):t.endsWith("in")?MS(96*e):t.endsWith("cm")?MS(96*e/2.54):t.endsWith("mm")?MS(e/10*96/2.54):t}(e)}function iT(t,e){if(!t.childCount)return;const n=new Au(t.document),i=function(t,e){const n=e.createRangeIn(t),i=new Ir({name:/v:(.+)/}),o=[];for(const t of n){if("elementStart"!=t.type)continue;const e=t.item,n=e.previousSibling,r=n&&n.is("element")?n.name:null,s=["Chart"],a=i.match(e),c=e.getAttribute("o:gfxdata"),l="v:shapetype"===r,d=c&&s.some((t=>e.getAttribute("id").includes(t)));a&&c&&!l&&!d&&o.push(t.item.getAttribute("id"))}return o}(t,n);!function(t,e,n){const i=n.createRangeIn(e),o=new Ir({name:"img"}),r=[];for(const e of i)if(e.item.is("element")&&o.match(e.item)){const n=e.item,i=n.getAttribute("v:shapes")?n.getAttribute("v:shapes").split(" "):[];i.length&&i.every((e=>t.indexOf(e)>-1))?r.push(n):n.getAttribute("src")||r.push(n)}for(const t of r)n.remove(t)}(i,t,n),function(t,e,n){const i=n.createRangeIn(e),o=[];for(const e of i)if("elementStart"==e.type&&e.item.is("element","v:shape")){const n=e.item.getAttribute("id");if(t.includes(n))continue;r(e.item.parent.getChildren(),n)||o.push(e.item)}for(const t of o){const e={src:s(t)};t.hasAttribute("alt")&&(e.alt=t.getAttribute("alt"));const i=n.createElement("img",e);n.insertChild(t.index+1,i,t.parent)}function r(t,e){for(const n of t)if(n.is("element")){if("img"==n.name&&n.getAttribute("v:shapes")==e)return!0;if(r(n.getChildren(),e))return!0}return!1}function s(t){for(const e of t.getChildren())if(e.is("element")&&e.getAttribute("src"))return e.getAttribute("src")}}(i,t,n),function(t,e){const n=e.createRangeIn(t),i=new Ir({name:/v:(.+)/}),o=[];for(const t of n)"elementStart"==t.type&&i.match(t.item)&&o.push(t.item);for(const t of o)e.remove(t)}(t,n);const o=function(t,e){const n=e.createRangeIn(t),i=new Ir({name:"img"}),o=[];for(const t of n)t.item.is("element")&&i.match(t.item)&&t.item.getAttribute("src").startsWith("file://")&&o.push(t.item);return o}(t,n);o.length&&function(t,e,n){if(t.length===e.length)for(let i=0;iString.fromCharCode(parseInt(t,16)))).join(""))}const rT=//i,sT=/xmlns:o="urn:schemas-microsoft-com/i;class aT{constructor(t,e=!1){this.document=t,this.hasMultiLevelListPlugin=e}isActive(t){return rT.test(t)||sT.test(t)}execute(t){const{body:e,stylesString:n}=t._parsedData;KS(e,n,this.hasMultiLevelListPlugin),iT(e,t.dataTransfer.getData("text/rtf")),function(t){const e=[],n=new Au(t.document);for(const{item:i}of n.createRangeIn(t))if(i.is("element")){for(const t of i.getClassNames())/\bmso/gi.exec(t)&&n.removeClass(t,i);for(const t of i.getStyleNames())/\bmso/gi.exec(t)&&n.removeStyle(t,i);(i.is("element","w:sdt")||i.is("element","w:sdtpr")&&i.isEmpty||i.is("element","o:p")&&i.isEmpty)&&e.push(i)}for(const t of e){const e=t.parent,i=e.getChildIndex(t);n.insertChild(i,t.getChildren(),e),n.remove(t)}}(e),t.content=e}}function cT(t,e,n,{blockElements:i,inlineObjectElements:o}){let r=n.createPositionAt(t,"forward"==e?"after":"before");return r=r.getLastMatchingPosition((({item:t})=>t.is("element")&&!i.includes(t.name)&&!o.includes(t.name)),{direction:e}),"forward"==e?r.nodeAfter:r.nodeBefore}function lT(t,e){return!!t&&t.is("element")&&e.includes(t.name)}const dT=/id=("|')docs-internal-guid-[-0-9a-f]+("|')/i;class hT{constructor(t){this.document=t}isActive(t){return dT.test(t)}execute(t){const e=new Au(this.document),{body:n}=t._parsedData;!function(t,e){for(const n of t.getChildren())if(n.is("element","b")&&"normal"===n.getStyle("font-weight")){const i=t.getChildIndex(n);e.remove(n),e.insertChild(i,n.getChildren(),t)}}(n,e),function(t,e){for(const n of e.createRangeIn(t)){const t=n.item;if(t.is("element","li")){const n=t.getChild(0);n&&n.is("element","p")&&e.unwrapElement(n)}}}(n,e),function(t,e){const n=new Is(e.document.stylesProcessor),i=new Ca(n,{renderingMode:"data"}),o=i.blockElements,r=i.inlineObjectElements,s=[];for(const n of e.createRangeIn(t)){const t=n.item;if(t.is("element","br")){const n=cT(t,"forward",e,{blockElements:o,inlineObjectElements:r}),i=cT(t,"backward",e,{blockElements:o,inlineObjectElements:r}),a=lT(n,o);(lT(i,o)||a)&&s.push(t)}}for(const t of s)t.hasClass("Apple-interchange-newline")?e.remove(t):e.replace(t,e.createElement("p"))}(n,e),t.content=n}}const uT=/(\s+)<\/span>/g,((t,e)=>1===e.length?" ":Array(e.length+1).join("  ").substr(0,e.length)))}function pT(t,e){const n=new DOMParser,i=function(t){return gT(gT(t)).replace(/([^\S\r\n]*?)[\r\n]+([^\S\r\n]*<\/span>)/g,"$1$2").replace(/<\/span>/g,"").replace(/()[\r\n]+(<\/span>)/g,"$1 $2").replace(/ <\//g," <\/o:p>/g," ").replace(/( |\u00A0)<\/o:p>/g,"").replace(/>([^\S\r\n]*[\r\n]\s*)<")}(function(t){const e="",n="",i=t.indexOf(e);if(i<0)return t;const o=t.indexOf(n,i+e.length);return t.substring(0,i+e.length)+(o>=0?t.substring(o):"")}(t=(t=t.replace(//g,"")}(i.getData("text/html")):i.getData("text/plain")&&(((r=(r=i.getData("text/plain")).replace(/&/g,"&").replace(//g,">").replace(/\r?\n\r?\n/g,"

    ").replace(/\r?\n/g,"
    ").replace(/\t/g,"    ").replace(/^\s/," ").replace(/\s$/," ").replace(/\s\s/g,"  ")).includes("

    ")||r.includes("
    "))&&(r=`

    ${r}

    `),t=r),o=this.editor.data.htmlProcessor.toView(t)}var r;const s=new m(this,"inputTransformation");this.fire(s,{content:o,dataTransfer:i,targetRanges:e.targetRanges,method:e.method}),s.stop.called&&t.stop(),n.scrollToTheSelection()}),{priority:"low"}),this.listenTo(this,"inputTransformation",((t,n)=>{if(n.content.isEmpty)return;const i=this.editor.data.toModel(n.content,"$clipboardHolder");0!=i.childCount&&(t.stop(),e.change((()=>{this.fire("contentInsertion",{content:i,method:n.method,dataTransfer:n.dataTransfer,targetRanges:n.targetRanges})})))}),{priority:"low"}),this.listenTo(this,"contentInsertion",((t,e)=>{e.resultRange=o._pasteFragmentWithMarkers(e.content)}),{priority:"low"})}_setupCopyCut(){const t=this.editor,e=t.model.document,n=t.editing.view.document,i=(t,n)=>{const i=n.dataTransfer;n.preventDefault(),this._fireOutputTransformationEvent(i,e.selection,t.name)};this.listenTo(n,"copy",i,{priority:"low"}),this.listenTo(n,"cut",((e,n)=>{t.model.canEditAt(t.model.document.selection)?i(e,n):n.preventDefault()}),{priority:"low"}),this.listenTo(this,"outputTransformation",((e,i)=>{const o=t.data.toView(i.content);n.fire("clipboardOutput",{dataTransfer:i.dataTransfer,content:o,method:i.method})}),{priority:"low"}),this.listenTo(n,"clipboardOutput",((n,i)=>{i.content.isEmpty||(i.dataTransfer.setData("text/html",this.editor.data.htmlProcessor.toData(i.content)),i.dataTransfer.setData("text/plain",cC(i.content))),"cut"==i.method&&t.model.deleteContent(e.selection)}),{priority:"low"})}}class VC extends(S()){constructor(){super(...arguments),this._stack=[]}add(t,e){const n=this._stack,i=n[0];this._insertDescriptor(t);const o=n[0];i===o||FC(i,o)||this.fire("change:top",{oldDescriptor:i,newDescriptor:o,writer:e})}remove(t,e){const n=this._stack,i=n[0];this._removeDescriptor(t);const o=n[0];i===o||FC(i,o)||this.fire("change:top",{oldDescriptor:i,newDescriptor:o,writer:e})}_insertDescriptor(t){const e=this._stack,n=e.findIndex((e=>e.id===t.id));if(FC(t,e[n]))return;n>-1&&e.splice(n,1);let i=0;for(;e[i]&&LC(e[i],t);)i++;e.splice(i,0,t)}_removeDescriptor(t){const e=this._stack,n=e.findIndex((e=>e.id===t));n>-1&&e.splice(n,1)}}function FC(t,e){return t&&e&&t.priority==e.priority&&OC(t.classes)==OC(e.classes)}function LC(t,e){return t.priority>e.priority||!(t.priorityOC(e.classes)}function OC(t){return Array.isArray(t)?t.sort().join(","):t}const zC='',MC="ck-widget",NC="ck-widget_selected";function HC(t){return!!t.is("element")&&!!t.getCustomProperty("widget")}function jC(t,e,n={}){if(!t.is("containerElement"))throw new w("widget-to-widget-wrong-element-type",null,{element:t});return e.setAttribute("contenteditable","false",t),e.addClass(MC,t),e.setCustomProperty("widget",!0,t),t.getFillerOffset=JC,e.setCustomProperty("widgetLabel",[],t),n.label&&function(t,e){const n=t.getCustomProperty("widgetLabel");n.push(e)}(t,n.label),n.hasSelectionHandle&&function(t,e){const n=e.createUIElement("div",{class:"ck ck-widget__selection-handle"},(function(t){const e=this.toDomElement(t),n=new lg;return n.set("content",zC),n.render(),e.appendChild(n.element),e}));e.insert(e.createPositionAt(t,0),n),e.addClass(["ck-widget_with-selection-handle"],t)}(t,e),UC(t,e),t}function qC(t,e,n){if(e.classes&&n.addClass(_o(e.classes),t),e.attributes)for(const i in e.attributes)n.setAttribute(i,e.attributes[i],t)}function WC(t,e,n){if(e.classes&&n.removeClass(_o(e.classes),t),e.attributes)for(const i in e.attributes)n.removeAttribute(i,t)}function UC(t,e,n=qC,i=WC){const o=new VC;o.on("change:top",((e,o)=>{o.oldDescriptor&&i(t,o.oldDescriptor,o.writer),o.newDescriptor&&n(t,o.newDescriptor,o.writer)}));e.setCustomProperty("addHighlight",((t,e,n)=>o.add(e,n)),t),e.setCustomProperty("removeHighlight",((t,e,n)=>o.remove(e,n)),t)}function $C(t,e,n={}){return e.addClass(["ck-editor__editable","ck-editor__nested-editable"],t),e.setAttribute("role","textbox",t),e.setAttribute("tabindex","-1",t),n.label&&e.setAttribute("aria-label",n.label,t),e.setAttribute("contenteditable",t.isReadOnly?"false":"true",t),t.on("change:isReadOnly",((n,i,o)=>{e.setAttribute("contenteditable",o?"false":"true",t)})),t.on("change:isFocused",((n,i,o)=>{o?e.addClass("ck-editor__nested-editable_focused",t):e.removeClass("ck-editor__nested-editable_focused",t)})),UC(t,e),t}function GC(t,e){const n=t.getSelectedElement();if(n){const i=XC(t);if(i)return e.createRange(e.createPositionAt(n,i))}return e.schema.findOptimalInsertionRange(t)}function KC(t,e){return(n,i)=>{const{mapper:o,viewPosition:r}=i,s=o.findMappedViewAncestor(r);if(!e(s))return;const a=o.toModelElement(s);i.modelPosition=t.createPositionAt(a,r.isAtStart?"before":"after")}}function JC(){return null}function ZC(t){const e=t=>{const{width:e,paddingLeft:n,paddingRight:i}=t.ownerDocument.defaultView.getComputedStyle(t);return parseFloat(e)-(parseFloat(n)||0)-(parseFloat(i)||0)},n=t.parentElement;if(!n)return 0;let i=e(n);let o=0,r=n;for(;isNaN(i);){if(r=r.parentElement,++o>5)return 0;i=e(r)}return i}const YC="widget-type-around";function QC(t,e,n){return!!t&&HC(t)&&!n.isInline(e)}function XC(t){return t.getAttribute(YC)}var tv=n(8508),ev={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(tv.A,ev);tv.A.locals;const nv=["before","after"],iv=(new DOMParser).parseFromString('',"image/svg+xml").firstChild,ov="ck-widget__type-around_disabled";class rv extends er{constructor(){super(...arguments),this._currentFakeCaretModelElement=null}static get pluginName(){return"WidgetTypeAround"}static get requires(){return[IA,v_]}init(){const t=this.editor,e=t.editing.view;this.on("change:isEnabled",((n,i,o)=>{e.change((t=>{for(const n of e.document.roots)o?t.removeClass(ov,n):t.addClass(ov,n)})),o||t.model.change((t=>{t.removeSelectionAttribute(YC)}))})),this._enableTypeAroundUIInjection(),this._enableInsertingParagraphsOnButtonClick(),this._enableInsertingParagraphsOnEnterKeypress(),this._enableInsertingParagraphsOnTypingKeystroke(),this._enableTypeAroundFakeCaretActivationUsingKeyboardArrows(),this._enableDeleteIntegration(),this._enableInsertContentIntegration(),this._enableInsertObjectIntegration(),this._enableDeleteContentIntegration()}destroy(){super.destroy(),this._currentFakeCaretModelElement=null}_insertParagraph(t,e){const n=this.editor,i=n.editing.view,o=n.model.schema.getAttributesWithProperty(t,"copyOnReplace",!0);n.execute("insertParagraph",{position:n.model.createPositionAt(t,e),attributes:o}),i.focus(),i.scrollToTheSelection()}_listenToIfEnabled(t,e,n,i){this.listenTo(t,e,((...t)=>{this.isEnabled&&n(...t)}),i)}_insertParagraphAccordingToFakeCaretPosition(){const t=this.editor.model.document.selection,e=XC(t);if(!e)return!1;const n=t.getSelectedElement();return this._insertParagraph(n,e),!0}_enableTypeAroundUIInjection(){const t=this.editor,e=t.model.schema,n=t.locale.t,i={before:n("Insert paragraph before block"),after:n("Insert paragraph after block")};t.editing.downcastDispatcher.on("insert",((t,o,r)=>{const s=r.mapper.toViewElement(o.item);if(s&&QC(s,o.item,e)){!function(t,e,n){const i=t.createUIElement("div",{class:"ck ck-reset_all ck-widget__type-around"},(function(t){const n=this.toDomElement(t);return function(t,e){for(const n of nv){const i=new Em({tag:"div",attributes:{class:["ck","ck-widget__type-around__button",`ck-widget__type-around__button_${n}`],title:e[n],"aria-hidden":"true"},children:[t.ownerDocument.importNode(iv,!0)]});t.appendChild(i.render())}}(n,e),function(t){const e=new Em({tag:"div",attributes:{class:["ck","ck-widget__type-around__fake-caret"]}});t.appendChild(e.render())}(n),n}));t.insert(t.createPositionAt(n,"end"),i)}(r.writer,i,s);s.getCustomProperty("widgetLabel").push((()=>this.isEnabled?n("Press Enter to type after or press Shift + Enter to type before the widget"):""))}}),{priority:"low"})}_enableTypeAroundFakeCaretActivationUsingKeyboardArrows(){const t=this.editor,e=t.model,n=e.document.selection,i=e.schema,o=t.editing.view;function r(t){return`ck-widget_type-around_show-fake-caret_${t}`}this._listenToIfEnabled(o.document,"arrowKey",((t,e)=>{this._handleArrowKeyPress(t,e)}),{context:[HC,"$text"],priority:"high"}),this._listenToIfEnabled(n,"change:range",((e,n)=>{n.directChange&&t.model.change((t=>{t.removeSelectionAttribute(YC)}))})),this._listenToIfEnabled(e.document,"change:data",(()=>{const e=n.getSelectedElement();if(e){if(QC(t.editing.mapper.toViewElement(e),e,i))return}t.model.change((t=>{t.removeSelectionAttribute(YC)}))})),this._listenToIfEnabled(t.editing.downcastDispatcher,"selection",((t,e,n)=>{const o=n.writer;if(this._currentFakeCaretModelElement){const t=n.mapper.toViewElement(this._currentFakeCaretModelElement);t&&(o.removeClass(nv.map(r),t),this._currentFakeCaretModelElement=null)}const s=e.selection.getSelectedElement();if(!s)return;const a=n.mapper.toViewElement(s);if(!QC(a,s,i))return;const c=XC(e.selection);c&&(o.addClass(r(c),a),this._currentFakeCaretModelElement=s)})),this._listenToIfEnabled(t.ui.focusTracker,"change:isFocused",((e,n,i)=>{i||t.model.change((t=>{t.removeSelectionAttribute(YC)}))}))}_handleArrowKeyPress(t,e){const n=this.editor,i=n.model,o=i.document.selection,r=i.schema,s=n.editing.view,a=function(t,e){const n=wo(t,e);return"down"===n||"right"===n}(e.keyCode,n.locale.contentLanguageDirection),c=s.document.selection.getSelectedElement();let l;QC(c,n.editing.mapper.toModelElement(c),r)?l=this._handleArrowKeyPressOnSelectedWidget(a):o.isCollapsed?l=this._handleArrowKeyPressWhenSelectionNextToAWidget(a):e.shiftKey||(l=this._handleArrowKeyPressWhenNonCollapsedSelection(a)),l&&(e.preventDefault(),t.stop())}_handleArrowKeyPressOnSelectedWidget(t){const e=this.editor.model,n=XC(e.document.selection);return e.change((e=>{if(!n)return e.setSelectionAttribute(YC,t?"after":"before"),!0;if(!(n===(t?"after":"before")))return e.removeSelectionAttribute(YC),!0;return!1}))}_handleArrowKeyPressWhenSelectionNextToAWidget(t){const e=this.editor,n=e.model,i=n.schema,o=e.plugins.get("Widget"),r=o._getObjectElementNextToSelection(t);return!!QC(e.editing.mapper.toViewElement(r),r,i)&&(n.change((e=>{o._setSelectionOverElement(r),e.setSelectionAttribute(YC,t?"before":"after")})),!0)}_handleArrowKeyPressWhenNonCollapsedSelection(t){const e=this.editor,n=e.model,i=n.schema,o=e.editing.mapper,r=n.document.selection,s=t?r.getLastPosition().nodeBefore:r.getFirstPosition().nodeAfter;return!!QC(o.toViewElement(s),s,i)&&(n.change((e=>{e.setSelection(s,"on"),e.setSelectionAttribute(YC,t?"after":"before")})),!0)}_enableInsertingParagraphsOnButtonClick(){const t=this.editor,e=t.editing.view;this._listenToIfEnabled(e.document,"mousedown",((n,i)=>{const o=i.domTarget.closest(".ck-widget__type-around__button");if(!o)return;const r=function(t){return t.classList.contains("ck-widget__type-around__button_before")?"before":"after"}(o),s=function(t,e){const n=t.closest(".ck-widget");return e.mapDomToView(n)}(o,e.domConverter),a=t.editing.mapper.toModelElement(s);this._insertParagraph(a,r),i.preventDefault(),n.stop()}))}_enableInsertingParagraphsOnEnterKeypress(){const t=this.editor,e=t.model.document.selection,n=t.editing.view;this._listenToIfEnabled(n.document,"enter",((n,i)=>{if("atTarget"!=n.eventPhase)return;const o=e.getSelectedElement(),r=t.editing.mapper.toViewElement(o),s=t.model.schema;let a;this._insertParagraphAccordingToFakeCaretPosition()?a=!0:QC(r,o,s)&&(this._insertParagraph(o,i.isSoft?"before":"after"),a=!0),a&&(i.preventDefault(),n.stop())}),{context:HC})}_enableInsertingParagraphsOnTypingKeystroke(){const t=this.editor.editing.view.document;this._listenToIfEnabled(t,"insertText",((e,n)=>{this._insertParagraphAccordingToFakeCaretPosition()&&(n.selection=t.selection)}),{priority:"high"}),s.isAndroid?this._listenToIfEnabled(t,"keydown",((t,e)=>{229==e.keyCode&&this._insertParagraphAccordingToFakeCaretPosition()})):this._listenToIfEnabled(t,"compositionstart",(()=>{this._insertParagraphAccordingToFakeCaretPosition()}),{priority:"high"})}_enableDeleteIntegration(){const t=this.editor,e=t.editing.view,n=t.model,i=n.schema;this._listenToIfEnabled(e.document,"delete",((e,o)=>{if("atTarget"!=e.eventPhase)return;const r=XC(n.document.selection);if(!r)return;const s=o.direction,a=n.document.selection.getSelectedElement(),c="forward"==s;if("before"===r===c)t.execute("delete",{selection:n.createSelection(a,"on")});else{const e=i.getNearestSelectionRange(n.createPositionAt(a,r),s);if(e)if(e.isCollapsed){const o=n.createSelection(e.start);if(n.modifySelection(o,{direction:s}),o.focus.isEqual(e.start)){const t=function(t,e){let n=e;for(const i of e.getAncestors({parentFirst:!0})){if(i.childCount>1||t.isLimit(i))break;n=i}return n}(i,e.start.parent);n.deleteContent(n.createSelection(t,"on"),{doNotAutoparagraph:!0})}else n.change((n=>{n.setSelection(e),t.execute(c?"deleteForward":"delete")}))}else n.change((n=>{n.setSelection(e),t.execute(c?"deleteForward":"delete")}))}o.preventDefault(),e.stop()}),{context:HC})}_enableInsertContentIntegration(){const t=this.editor,e=this.editor.model,n=e.document.selection;this._listenToIfEnabled(t.model,"insertContent",((t,[i,o])=>{if(o&&!o.is("documentSelection"))return;const r=XC(n);return r?(t.stop(),e.change((t=>{const o=n.getSelectedElement(),s=e.createPositionAt(o,r),a=t.createSelection(s),c=e.insertContent(i,a);return t.setSelection(a),c}))):void 0}),{priority:"high"})}_enableInsertObjectIntegration(){const t=this.editor,e=this.editor.model.document.selection;this._listenToIfEnabled(t.model,"insertObject",((t,n)=>{const[,i,o={}]=n;if(i&&!i.is("documentSelection"))return;const r=XC(e);r&&(o.findOptimalPosition=r,n[3]=o)}),{priority:"high"})}_enableDeleteContentIntegration(){const t=this.editor,e=this.editor.model.document.selection;this._listenToIfEnabled(t.model,"deleteContent",((t,[n])=>{if(n&&!n.is("documentSelection"))return;XC(e)&&t.stop()}),{priority:"high"})}}function sv(t){const e=t.model;return(n,i)=>{const o=i.keyCode==go.arrowup,r=i.keyCode==go.arrowdown,s=i.shiftKey,a=e.document.selection;if(!o&&!r)return;const c=r;if(s&&function(t,e){return!t.isCollapsed&&t.isBackward==e}(a,c))return;const l=function(t,e,n){const i=t.model;if(n){const t=e.isCollapsed?e.focus:e.getLastPosition(),n=av(i,t,"forward");if(!n)return null;const o=i.createRange(t,n),r=cv(i.schema,o,"backward");return r?i.createRange(t,r):null}{const t=e.isCollapsed?e.focus:e.getFirstPosition(),n=av(i,t,"backward");if(!n)return null;const o=i.createRange(n,t),r=cv(i.schema,o,"forward");return r?i.createRange(r,t):null}}(t,a,c);if(l){if(l.isCollapsed){if(a.isCollapsed)return;if(s)return}(l.isCollapsed||function(t,e,n){const i=t.model,o=t.view.domConverter;if(n){const t=i.createSelection(e.start);i.modifySelection(t),t.focus.isAtEnd||e.start.isEqual(t.focus)||(e=i.createRange(t.focus,e.end))}const r=t.mapper.toViewRange(e),s=o.viewRangeToDom(r),a=Li.getDomRangeRects(s);let c;for(const t of a)if(void 0!==c){if(Math.round(t.top)>=c)return!1;c=Math.max(c,Math.round(t.bottom))}else c=Math.round(t.bottom);return!0}(t,l,c))&&(e.change((t=>{const n=c?l.end:l.start;if(s){const i=e.createSelection(a.anchor);i.setFocus(n),t.setSelection(i)}else t.setSelection(n)})),n.stop(),i.preventDefault(),i.stopPropagation())}}}function av(t,e,n){const i=t.schema,o=t.createRangeIn(e.root),r="forward"==n?"elementStart":"elementEnd";for(const{previousPosition:t,item:s,type:a}of o.getWalker({startPosition:e,direction:n})){if(i.isLimit(s)&&!i.isInline(s))return t;if(a==r&&i.isBlock(s))return null}return null}function cv(t,e,n){const i="backward"==n?e.end:e.start;if(t.checkChild(i,"$text"))return i;for(const{nextPosition:i}of e.getWalker({direction:n}))if(t.checkChild(i,"$text"))return i;return null}var lv=n(695),dv={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(lv.A,dv);lv.A.locals;class hv extends er{constructor(){super(...arguments),this._previouslySelected=new Set}static get pluginName(){return"Widget"}static get requires(){return[rv,v_]}init(){const t=this.editor,e=t.editing.view,n=e.document,i=t.t;this.editor.editing.downcastDispatcher.on("selection",((e,n,i)=>{const o=i.writer,r=n.selection;if(r.isCollapsed)return;const s=r.getSelectedElement();if(!s)return;const a=t.editing.mapper.toViewElement(s);var c;HC(a)&&(i.consumable.consume(r,"selection")&&o.setSelection(o.createRangeOn(a),{fake:!0,label:(c=a,c.getCustomProperty("widgetLabel").reduce(((t,e)=>"function"==typeof e?t?t+". "+e():e():t?t+". "+e:e),""))}))})),this.editor.editing.downcastDispatcher.on("selection",((t,e,n)=>{this._clearPreviouslySelectedWidgets(n.writer);const i=n.writer,o=i.document.selection;let r=null;for(const t of o.getRanges())for(const e of t){const t=e.item;HC(t)&&!uv(t,r)&&(i.addClass(NC,t),this._previouslySelected.add(t),r=t)}}),{priority:"low"}),e.addObserver(_u),this.listenTo(n,"mousedown",((...t)=>this._onMousedown(...t))),this.listenTo(n,"arrowKey",((...t)=>{this._handleSelectionChangeOnArrowKeyPress(...t)}),{context:[HC,"$text"]}),this.listenTo(n,"arrowKey",((...t)=>{this._preventDefaultOnArrowKeyPress(...t)}),{context:"$root"}),this.listenTo(n,"arrowKey",sv(this.editor.editing),{context:"$text"}),this.listenTo(n,"delete",((t,e)=>{this._handleDelete("forward"==e.direction)&&(e.preventDefault(),t.stop())}),{context:"$root"}),this.listenTo(n,"tab",((t,e)=>{"atTarget"==t.eventPhase&&(e.shiftKey||this._selectFirstNestedEditable()&&(e.preventDefault(),t.stop()))}),{context:HC,priority:"low"}),this.listenTo(n,"tab",((t,e)=>{e.shiftKey&&this._selectAncestorWidget()&&(e.preventDefault(),t.stop())}),{priority:"low"}),this.listenTo(n,"keydown",((t,e)=>{e.keystroke==go.esc&&this._selectAncestorWidget()&&(e.preventDefault(),t.stop())}),{priority:"low"}),t.accessibility.addKeystrokeInfoGroup({id:"widget",label:i("Keystrokes that can be used when a widget is selected (for example: image, table, etc.)"),keystrokes:[{label:i("Insert a new paragraph directly after a widget"),keystroke:"Enter"},{label:i("Insert a new paragraph directly before a widget"),keystroke:"Shift+Enter"},{label:i("Move the caret to allow typing directly before a widget"),keystroke:[["arrowup"],["arrowleft"]]},{label:i("Move the caret to allow typing directly after a widget"),keystroke:[["arrowdown"],["arrowright"]]}]})}_onMousedown(t,e){const n=this.editor,i=n.editing.view,o=i.document;let r=e.target;if(e.domEvent.detail>=3)return void(this._selectBlockContent(r)&&e.preventDefault());if(function(t){let e=t;for(;e;){if(e.is("editableElement")&&!e.is("rootElement"))return!0;if(HC(e))return!1;e=e.parent}return!1}(r))return;if(!HC(r)&&(r=r.findAncestor(HC),!r))return;s.isAndroid&&e.preventDefault(),o.isFocused||i.focus();const a=n.editing.mapper.toModelElement(r);this._setSelectionOverElement(a)}_selectBlockContent(t){const e=this.editor,n=e.model,i=e.editing.mapper,o=n.schema,r=i.findMappedViewAncestor(this.editor.editing.view.createPositionAt(t,0)),s=function(t,e){for(const n of t.getAncestors({includeSelf:!0,parentFirst:!0})){if(e.checkChild(n,"$text"))return n;if(e.isLimit(n)&&!e.isObject(n))break}return null}(i.toModelElement(r),n.schema);return!!s&&(n.change((t=>{const e=o.isLimit(s)?null:function(t,e){const n=new Ic({startPosition:t});for(const{item:t}of n){if(e.isLimit(t)||!t.is("element"))return null;if(e.checkChild(t,"$text"))return t}return null}(t.createPositionAfter(s),o),n=t.createPositionAt(s,0),i=e?t.createPositionAt(e,0):t.createPositionAt(s,"end");t.setSelection(t.createRange(n,i))})),!0)}_handleSelectionChangeOnArrowKeyPress(t,e){const n=e.keyCode,i=this.editor.model,o=i.schema,r=i.document.selection,s=r.getSelectedElement(),a=wo(n,this.editor.locale.contentLanguageDirection),c="down"==a||"right"==a,l="up"==a||"down"==a;if(s&&o.isObject(s)){const n=c?r.getLastPosition():r.getFirstPosition(),s=o.getNearestSelectionRange(n,c?"forward":"backward");return void(s&&(i.change((t=>{t.setSelection(s)})),e.preventDefault(),t.stop()))}if(!r.isCollapsed&&!e.shiftKey){const n=r.getFirstPosition(),s=r.getLastPosition(),a=n.nodeAfter,l=s.nodeBefore;return void((a&&o.isObject(a)||l&&o.isObject(l))&&(i.change((t=>{t.setSelection(c?s:n)})),e.preventDefault(),t.stop()))}if(!r.isCollapsed)return;const d=this._getObjectElementNextToSelection(c);if(d&&o.isObject(d)){if(o.isInline(d)&&l)return;this._setSelectionOverElement(d),e.preventDefault(),t.stop()}}_preventDefaultOnArrowKeyPress(t,e){const n=this.editor.model,i=n.schema,o=n.document.selection.getSelectedElement();o&&i.isObject(o)&&(e.preventDefault(),t.stop())}_handleDelete(t){const e=this.editor.model.document.selection;if(!this.editor.model.canEditAt(e))return;if(!e.isCollapsed)return;const n=this._getObjectElementNextToSelection(t);return n?(this.editor.model.change((t=>{let i=e.anchor.parent;for(;i.isEmpty;){const e=i;i=e.parent,t.remove(e)}this._setSelectionOverElement(n)})),!0):void 0}_setSelectionOverElement(t){this.editor.model.change((e=>{e.setSelection(e.createRangeOn(t))}))}_getObjectElementNextToSelection(t){const e=this.editor.model,n=e.schema,i=e.document.selection,o=e.createSelection(i);if(e.modifySelection(o,{direction:t?"forward":"backward"}),o.isEqual(i))return null;const r=t?o.focus.nodeBefore:o.focus.nodeAfter;return r&&n.isObject(r)?r:null}_clearPreviouslySelectedWidgets(t){for(const e of this._previouslySelected)t.removeClass(NC,e);this._previouslySelected.clear()}_selectFirstNestedEditable(){const t=this.editor,e=this.editor.editing.view.document;for(const n of e.selection.getFirstRange().getItems())if(n.is("editableElement")){const e=t.editing.mapper.toModelElement(n);if(!e)continue;const i=t.model.createPositionAt(e,0),o=t.model.schema.getNearestSelectionRange(i,"forward");return t.model.change((t=>{t.setSelection(o)})),!0}return!1}_selectAncestorWidget(){const t=this.editor,e=t.editing.mapper,n=t.editing.view.document.selection.getFirstPosition().parent,i=(n.is("$text")?n.parent:n).findAncestor(HC);if(!i)return!1;const o=e.toModelElement(i);return!!o&&(t.model.change((t=>{t.setSelection(o,"on")})),!0)}}function uv(t,e){return!!e&&Array.from(t.getAncestors()).includes(e)}class mv extends er{constructor(){super(...arguments),this._toolbarDefinitions=new Map}static get requires(){return[mk]}static get pluginName(){return"WidgetToolbarRepository"}init(){const t=this.editor;if(t.plugins.has("BalloonToolbar")){const e=t.plugins.get("BalloonToolbar");this.listenTo(e,"show",(e=>{(function(t){const e=t.getSelectedElement();return!(!e||!HC(e))})(t.editing.view.document.selection)&&e.stop()}),{priority:"high"})}this._balloon=this.editor.plugins.get("ContextualBalloon"),this.on("change:isEnabled",(()=>{this._updateToolbarsVisibility()})),this.listenTo(t.ui,"update",(()=>{this._updateToolbarsVisibility()})),this.listenTo(t.ui.focusTracker,"change:isFocused",(()=>{this._updateToolbarsVisibility()}),{priority:"low"})}destroy(){super.destroy();for(const t of this._toolbarDefinitions.values())t.view.destroy()}register(t,{ariaLabel:e,items:n,getRelatedElement:i,balloonClassName:o="ck-toolbar-container"}){if(!n.length)return void _("widget-toolbar-no-items",{toolbarId:t});const r=this.editor,s=r.t,a=new gp(r.locale);if(a.ariaLabel=e||s("Widget toolbar"),this._toolbarDefinitions.has(t))throw new w("widget-toolbar-duplicated",this,{toolbarId:t});const c={view:a,getRelatedElement:i,balloonClassName:o,itemsConfig:n,initialized:!1};r.ui.addToolbar(a,{isContextual:!0,beforeFocus:()=>{const t=i(r.editing.view.document.selection);t&&this._showToolbar(c,t)},afterBlur:()=>{this._hideToolbar(c)}}),this._toolbarDefinitions.set(t,c)}_updateToolbarsVisibility(){let t=0,e=null,n=null;for(const i of this._toolbarDefinitions.values()){const o=i.getRelatedElement(this.editor.editing.view.document.selection);if(this.isEnabled&&o)if(this.editor.ui.focusTracker.isFocused){const r=o.getAncestors().length;r>t&&(t=r,e=o,n=i)}else this._isToolbarVisible(i)&&this._hideToolbar(i);else this._isToolbarInBalloon(i)&&this._hideToolbar(i)}n&&this._showToolbar(n,e)}_hideToolbar(t){this._balloon.remove(t.view),this.stopListening(this._balloon,"change:visibleView")}_showToolbar(t,e){this._isToolbarVisible(t)?gv(this.editor,e):this._isToolbarInBalloon(t)||(t.initialized||(t.initialized=!0,t.view.fillFromConfig(t.itemsConfig,this.editor.ui.componentFactory)),this._balloon.add({view:t.view,position:pv(this.editor,e),balloonClassName:t.balloonClassName}),this.listenTo(this._balloon,"change:visibleView",(()=>{for(const t of this._toolbarDefinitions.values())if(this._isToolbarVisible(t)){const e=t.getRelatedElement(this.editor.editing.view.document.selection);gv(this.editor,e)}})))}_isToolbarVisible(t){return this._balloon.visibleView===t.view}_isToolbarInBalloon(t){return this._balloon.hasView(t.view)}}function gv(t,e){const n=t.plugins.get("ContextualBalloon"),i=pv(t,e);n.updatePosition(i)}function pv(t,e){const n=t.editing.view,i=kb.defaultPositions;return{target:n.domConverter.mapViewToDom(e),positions:[i.northArrowSouth,i.northArrowSouthWest,i.northArrowSouthEast,i.southArrowNorth,i.southArrowNorthWest,i.southArrowNorthEast,i.viewportStickyNorth]}}class fv extends(W()){constructor(t){super(),this.set("activeHandlePosition",null),this.set("proposedWidthPercents",null),this.set("proposedWidth",null),this.set("proposedHeight",null),this.set("proposedHandleHostWidth",null),this.set("proposedHandleHostHeight",null),this._options=t,this._referenceCoordinates=null}get originalWidth(){return this._originalWidth}get originalHeight(){return this._originalHeight}get originalWidthPercents(){return this._originalWidthPercents}get aspectRatio(){return this._aspectRatio}begin(t,e,n){const i=new Li(e);this.activeHandlePosition=function(t){const e=["top-left","top-right","bottom-right","bottom-left"];for(const n of e)if(t.classList.contains(bv(n)))return n}(t),this._referenceCoordinates=function(t,e){const n=new Li(t),i=e.split("-"),o={x:"right"==i[1]?n.right:n.left,y:"bottom"==i[0]?n.bottom:n.top};return o.x+=t.ownerDocument.defaultView.scrollX,o.y+=t.ownerDocument.defaultView.scrollY,o}(e,function(t){const e=t.split("-"),n={top:"bottom",bottom:"top",left:"right",right:"left"};return`${n[e[0]]}-${n[e[1]]}`}(this.activeHandlePosition)),this._originalWidth=i.width,this._originalHeight=i.height,this._aspectRatio=i.width/i.height;const o=n.style.width;o&&o.match(/^\d+(\.\d*)?%$/)?this._originalWidthPercents=parseFloat(o):this._originalWidthPercents=function(t,e=new Li(t)){const n=ZC(t);return n?e.width/n*100:0}(n,i)}update(t){this.proposedWidth=t.width,this.proposedHeight=t.height,this.proposedWidthPercents=t.widthPercents,this.proposedHandleHostWidth=t.handleHostWidth,this.proposedHandleHostHeight=t.handleHostHeight}}function bv(t){return`ck-widget__resizer__handle-${t}`}class kv extends Jm{constructor(){super();const t=this.bindTemplate;this.setTemplate({tag:"div",attributes:{class:["ck","ck-size-view",t.to("_viewPosition",(t=>t?`ck-orientation-${t}`:""))],style:{display:t.if("_isVisible","none",(t=>!t))}},children:[{text:t.to("_label")}]})}_bindToState(t,e){this.bind("_isVisible").to(e,"proposedWidth",e,"proposedHeight",((t,e)=>null!==t&&null!==e)),this.bind("_label").to(e,"proposedHandleHostWidth",e,"proposedHandleHostHeight",e,"proposedWidthPercents",((e,n,i)=>"px"===t.unit?`${e}×${n}`:`${i}%`)),this.bind("_viewPosition").to(e,"activeHandlePosition",e,"proposedHandleHostWidth",e,"proposedHandleHostHeight",((t,e,n)=>e<50||n<50?"above-center":t))}_dismiss(){this.unbind(),this._isVisible=!1}}var wv=Object.defineProperty,_v=Object.defineProperties,Av=Object.getOwnPropertyDescriptors,Cv=Object.getOwnPropertySymbols,vv=Object.prototype.hasOwnProperty,yv=Object.prototype.propertyIsEnumerable,xv=(t,e,n)=>e in t?wv(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class Ev extends(W()){constructor(t){super(),this._viewResizerWrapper=null,this._options=t,this.set("isEnabled",!0),this.set("isSelected",!1),this.bind("isVisible").to(this,"isEnabled",this,"isSelected",((t,e)=>t&&e)),this.decorate("begin"),this.decorate("cancel"),this.decorate("commit"),this.decorate("updateSize"),this.on("commit",(t=>{this.state.proposedWidth||this.state.proposedWidthPercents||(this._cleanup(),t.stop())}),{priority:"high"})}get state(){return this._state}show(){this._options.editor.editing.view.change((t=>{t.removeClass("ck-hidden",this._viewResizerWrapper)}))}hide(){this._options.editor.editing.view.change((t=>{t.addClass("ck-hidden",this._viewResizerWrapper)}))}attach(){const t=this,e=this._options.viewElement;this._options.editor.editing.view.change((n=>{const i=n.createUIElement("div",{class:"ck ck-reset_all ck-widget__resizer"},(function(e){const n=this.toDomElement(e);return t._appendHandles(n),t._appendSizeUI(n),n}));n.insert(n.createPositionAt(e,"end"),i),n.addClass("ck-widget_with-resizer",e),this._viewResizerWrapper=i,this.isVisible||this.hide()})),this.on("change:isVisible",(()=>{this.isVisible?(this.show(),this.redraw()):this.hide()}))}begin(t){this._state=new fv(this._options),this._sizeView._bindToState(this._options,this.state),this._initialViewWidth=this._options.viewElement.getStyle("width"),this.state.begin(t,this._getHandleHost(),this._getResizeHost())}updateSize(t){const e=this._proposeNewSize(t);this._options.editor.editing.view.change((t=>{const n=this._options.unit||"%",i=("%"===n?e.widthPercents:e.width)+n;t.setStyle("width",i,this._options.viewElement)}));const n=this._getHandleHost(),i=new Li(n),o=Math.round(i.width),r=Math.round(i.height),s=new Li(n);var a;e.width=Math.round(s.width),e.height=Math.round(s.height),this.redraw(i),this.state.update((a=((t,e)=>{for(var n in e||(e={}))vv.call(e,n)&&xv(t,n,e[n]);if(Cv)for(var n of Cv(e))yv.call(e,n)&&xv(t,n,e[n]);return t})({},e),_v(a,Av({handleHostWidth:o,handleHostHeight:r}))))}commit(){const t=this._options.unit||"%",e=("%"===t?this.state.proposedWidthPercents:this.state.proposedWidth)+t;this._options.editor.editing.view.change((()=>{this._cleanup(),this._options.onCommit(e)}))}cancel(){this._cleanup()}destroy(){this.cancel()}redraw(t){const e=this._domResizerWrapper;if(!((n=e)&&n.ownerDocument&&n.ownerDocument.contains(n)))return;var n;const i=e.parentElement,o=this._getHandleHost(),r=this._viewResizerWrapper,s=[r.getStyle("width"),r.getStyle("height"),r.getStyle("left"),r.getStyle("top")];let a;if(i.isSameNode(o)){const e=t||new Li(o);a=[e.width+"px",e.height+"px",void 0,void 0]}else a=[o.offsetWidth+"px",o.offsetHeight+"px",o.offsetLeft+"px",o.offsetTop+"px"];"same"!==Q(s,a)&&this._options.editor.editing.view.change((t=>{t.setStyle({width:a[0],height:a[1],left:a[2],top:a[3]},r)}))}containsHandle(t){return this._domResizerWrapper.contains(t)}static isResizeHandle(t){return t.classList.contains("ck-widget__resizer__handle")}_cleanup(){this._sizeView._dismiss();this._options.editor.editing.view.change((t=>{t.setStyle("width",this._initialViewWidth,this._options.viewElement)}))}_proposeNewSize(t){const e=this.state,n={x:(i=t).pageX,y:i.pageY};var i;const o=!this._options.isCentered||this._options.isCentered(this),r={x:e._referenceCoordinates.x-(n.x+e.originalWidth),y:n.y-e.originalHeight-e._referenceCoordinates.y};o&&e.activeHandlePosition.endsWith("-right")&&(r.x=n.x-(e._referenceCoordinates.x+e.originalWidth)),o&&(r.x*=2);let s=Math.abs(e.originalWidth+r.x),a=Math.abs(e.originalHeight+r.y);return"width"==(s/e.aspectRatio>a?"width":"height")?a=s/e.aspectRatio:s=a*e.aspectRatio,{width:Math.round(s),height:Math.round(a),widthPercents:Math.min(Math.round(e.originalWidthPercents/e.originalWidth*s*100)/100,100)}}_getResizeHost(){const t=this._domResizerWrapper.parentElement;return this._options.getResizeHost(t)}_getHandleHost(){const t=this._domResizerWrapper.parentElement;return this._options.getHandleHost(t)}get _domResizerWrapper(){return this._options.editor.editing.view.domConverter.mapViewToDom(this._viewResizerWrapper)}_appendHandles(t){const e=["top-left","top-right","bottom-right","bottom-left"];for(const i of e)t.appendChild(new Em({tag:"div",attributes:{class:"ck-widget__resizer__handle "+(n=i,`ck-widget__resizer__handle-${n}`)}}).render());var n}_appendSizeUI(t){this._sizeView=new kv,this._sizeView.render(),t.appendChild(this._sizeView.element)}}var Dv=n(4095),Bv={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Dv.A,Bv);Dv.A.locals;class Sv extends er{constructor(){super(...arguments),this._resizers=new Map}static get pluginName(){return"WidgetResize"}init(){const t=this.editor.editing,n=e.window.document;this.set("selectedResizer",null),this.set("_activeResizer",null),t.view.addObserver(_u),this._observer=new(Bi()),this.listenTo(t.view.document,"mousedown",this._mouseDownListener.bind(this),{priority:"high"}),this._observer.listenTo(n,"mousemove",this._mouseMoveListener.bind(this)),this._observer.listenTo(n,"mouseup",this._mouseUpListener.bind(this)),this._redrawSelectedResizerThrottled=Bb((()=>this.redrawSelectedResizer()),200),this.editor.ui.on("update",this._redrawSelectedResizerThrottled),this.editor.model.document.on("change",(()=>{for(const[t,e]of this._resizers)t.isAttached()||(this._resizers.delete(t),e.destroy())}),{priority:"lowest"}),this._observer.listenTo(e.window,"resize",this._redrawSelectedResizerThrottled);const i=this.editor.editing.view.document.selection;i.on("change",(()=>{const t=i.getSelectedElement(),e=this.getResizerByViewElement(t)||null;e?this.select(e):this.deselect()}))}redrawSelectedResizer(){this.selectedResizer&&this.selectedResizer.isVisible&&this.selectedResizer.redraw()}destroy(){super.destroy(),this._observer.stopListening();for(const t of this._resizers.values())t.destroy();this._redrawSelectedResizerThrottled.cancel()}select(t){this.deselect(),this.selectedResizer=t,this.selectedResizer.isSelected=!0}deselect(){this.selectedResizer&&(this.selectedResizer.isSelected=!1),this.selectedResizer=null}attachTo(t){const e=new Ev(t),n=this.editor.plugins;if(e.attach(),n.has("WidgetToolbarRepository")){const t=n.get("WidgetToolbarRepository");e.on("begin",(()=>{t.forceDisabled("resize")}),{priority:"lowest"}),e.on("cancel",(()=>{t.clearForceDisabled("resize")}),{priority:"highest"}),e.on("commit",(()=>{t.clearForceDisabled("resize")}),{priority:"highest"})}this._resizers.set(t.viewElement,e);const i=this.editor.editing.view.document.selection.getSelectedElement();return this.getResizerByViewElement(i)==e&&this.select(e),e}getResizerByViewElement(t){return this._resizers.get(t)}_getResizerByHandle(t){for(const e of this._resizers.values())if(e.containsHandle(t))return e}_mouseDownListener(t,e){const n=e.domTarget;Ev.isResizeHandle(n)&&(this._activeResizer=this._getResizerByHandle(n)||null,this._activeResizer&&(this._activeResizer.begin(n),t.stop(),e.preventDefault()))}_mouseMoveListener(t,e){this._activeResizer&&this._activeResizer.updateSize(e)}_mouseUpListener(){this._activeResizer&&(this._activeResizer.commit(),this._activeResizer=null)}}const Tv=Wi("px");class Iv extends Jm{constructor(){super();const t=this.bindTemplate;this.set({isVisible:!1,left:null,top:null,width:null}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-clipboard-drop-target-line",t.if("isVisible","ck-hidden",(t=>!t))],style:{left:t.to("left",(t=>Tv(t))),top:t.to("top",(t=>Tv(t))),width:t.to("width",(t=>Tv(t)))}}})}}class Pv extends er{constructor(){super(...arguments),this.removeDropMarkerDelayed=Zo((()=>this.removeDropMarker()),40),this._updateDropMarkerThrottled=Bb((t=>this._updateDropMarker(t)),40),this._reconvertMarkerThrottled=Bb((()=>{this.editor.model.markers.has("drop-target")&&this.editor.editing.reconvertMarker("drop-target")}),0),this._dropTargetLineView=new Iv,this._domEmitter=new(Bi()),this._scrollables=new Map}static get pluginName(){return"DragDropTarget"}init(){this._setupDropMarker()}destroy(){this._domEmitter.stopListening();for(const{resizeObserver:t}of this._scrollables.values())t.destroy();return this._updateDropMarkerThrottled.cancel(),this.removeDropMarkerDelayed.cancel(),this._reconvertMarkerThrottled.cancel(),super.destroy()}updateDropMarker(t,e,n,i,o,r){this.removeDropMarkerDelayed.cancel();const s=Rv(this.editor,t,e,n,i,o,r);if(s)return r&&r.containsRange(s)?this.removeDropMarker():void this._updateDropMarkerThrottled(s)}getFinalDropRange(t,e,n,i,o,r){const s=Rv(this.editor,t,e,n,i,o,r);return this.removeDropMarker(),s}removeDropMarker(){const t=this.editor.model;this.removeDropMarkerDelayed.cancel(),this._updateDropMarkerThrottled.cancel(),this._dropTargetLineView.isVisible=!1,t.markers.has("drop-target")&&t.change((t=>{t.removeMarker("drop-target")}))}_setupDropMarker(){const t=this.editor;t.ui.view.body.add(this._dropTargetLineView),t.conversion.for("editingDowncast").markerToHighlight({model:"drop-target",view:{classes:["ck-clipboard-drop-target-range"]}}),t.conversion.for("editingDowncast").markerToElement({model:"drop-target",view:(e,{writer:n})=>{if(t.model.schema.checkChild(e.markerRange.start,"$text"))return this._dropTargetLineView.isVisible=!1,this._createDropTargetPosition(n);e.markerRange.isCollapsed?this._updateDropTargetLine(e.markerRange):this._dropTargetLineView.isVisible=!1}})}_updateDropMarker(t){const e=this.editor,n=e.model.markers;e.model.change((e=>{n.has("drop-target")?n.get("drop-target").getRange().isEqual(t)||e.updateMarker("drop-target",{range:t}):e.addMarker("drop-target",{range:t,usingOperation:!1,affectsData:!1})}))}_createDropTargetPosition(t){return t.createUIElement("span",{class:"ck ck-clipboard-drop-target-position"},(function(t){const e=this.toDomElement(t);return e.append("⁠",t.createElement("span"),"⁠"),e}))}_updateDropTargetLine(t){const n=this.editor.editing,i=t.start.nodeBefore,o=t.start.nodeAfter,r=t.start.parent,s=i?n.mapper.toViewElement(i):null,a=s?n.view.domConverter.mapViewToDom(s):null,c=o?n.mapper.toViewElement(o):null,l=c?n.view.domConverter.mapViewToDom(c):null,d=n.mapper.toViewElement(r);if(!d)return;const h=n.view.domConverter.mapViewToDom(d),u=this._getScrollableRect(d),{scrollX:m,scrollY:g}=e.window,p=a?new Li(a):null,f=l?new Li(l):null,b=new Li(h).excludeScrollbarsAndBorders(),k=p?p.bottom:b.top,w=f?f.top:b.bottom,_=e.window.getComputedStyle(h),A=k<=w?(k+w)/2:w;if(u.topa.schema.checkChild(r,t)))){if(a.schema.checkChild(r,"$text"))return a.createRange(r);if(e)return Fv(t,Ov(t,e.parent),i,o)}}}else if(a.schema.isInline(l))return Fv(t,l,i,o);if(a.schema.isBlock(l))return Fv(t,l,i,o);if(a.schema.checkChild(l,"$block")){const e=Array.from(l.getChildren()).filter((e=>e.is("element")&&!Vv(t,e)));let n=0,r=e.length;if(0==r)return a.createRange(a.createPositionAt(l,"end"));for(;ne in t?zv(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class Uv extends er{constructor(){super(...arguments),this._isBlockDragging=!1,this._domEmitter=new(Bi())}static get pluginName(){return"DragDropBlockToolbar"}init(){const t=this.editor;if(this.listenTo(t,"change:isReadOnly",((t,e,n)=>{n?(this.forceDisabled("readOnlyMode"),this._isBlockDragging=!1):this.clearForceDisabled("readOnlyMode")})),s.isAndroid&&this.forceDisabled("noAndroidSupport"),t.plugins.has("BlockToolbar")){const n=t.plugins.get("BlockToolbar").buttonView.element;this._domEmitter.listenTo(n,"dragstart",((t,e)=>this._handleBlockDragStart(e))),this._domEmitter.listenTo(e.document,"dragover",((t,e)=>this._handleBlockDragging(e))),this._domEmitter.listenTo(e.document,"drop",((t,e)=>this._handleBlockDragging(e))),this._domEmitter.listenTo(e.document,"dragend",(()=>this._handleBlockDragEnd()),{useCapture:!0}),this.isEnabled&&n.setAttribute("draggable","true"),this.on("change:isEnabled",((t,e,i)=>{n.setAttribute("draggable",i?"true":"false")}))}}destroy(){return this._domEmitter.stopListening(),super.destroy()}_handleBlockDragStart(t){if(!this.isEnabled)return;const e=this.editor.model,n=e.document.selection,i=this.editor.editing.view,o=Array.from(n.getSelectedBlocks()),r=e.createRange(e.createPositionBefore(o[0]),e.createPositionAfter(o[o.length-1]));e.change((t=>t.setSelection(r))),this._isBlockDragging=!0,i.focus(),i.getObserver(rC).onDomEvent(t)}_handleBlockDragging(t){if(!this.isEnabled||!this._isBlockDragging)return;const e=t.clientX+("ltr"==this.editor.locale.contentLanguageDirection?100:-100),n=t.clientY,i=document.elementFromPoint(e,n),o=this.editor.editing.view;var r,s;i&&i.closest(".ck-editor__editable")&&o.getObserver(rC).onDomEvent((r=((t,e)=>{for(var n in e||(e={}))jv.call(e,n)&&Wv(t,n,e[n]);if(Hv)for(var n of Hv(e))qv.call(e,n)&&Wv(t,n,e[n]);return t})({},t),s={type:t.type,dataTransfer:t.dataTransfer,target:i,clientX:e,clientY:n,preventDefault:()=>t.preventDefault(),stopPropagation:()=>t.stopPropagation()},Mv(r,Nv(s))))}_handleBlockDragEnd(){this._isBlockDragging=!1}}var $v=n(7793),Gv={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()($v.A,Gv);$v.A.locals;class Kv extends er{constructor(){super(...arguments),this._clearDraggableAttributesDelayed=Zo((()=>this._clearDraggableAttributes()),40),this._blockMode=!1,this._domEmitter=new(Bi())}static get pluginName(){return"DragDrop"}static get requires(){return[RC,hv,Pv,Uv]}init(){const t=this.editor,e=t.editing.view;this._draggedRange=null,this._draggingUid="",this._draggableElement=null,e.addObserver(rC),e.addObserver(_u),this._setupDragging(),this._setupContentInsertionIntegration(),this._setupClipboardInputIntegration(),this._setupDraggableAttributeHandling(),this.listenTo(t,"change:isReadOnly",((t,e,n)=>{n?this.forceDisabled("readOnlyMode"):this.clearForceDisabled("readOnlyMode")})),this.on("change:isEnabled",((t,e,n)=>{n||this._finalizeDragging(!1)})),s.isAndroid&&this.forceDisabled("noAndroidSupport")}destroy(){return this._draggedRange&&(this._draggedRange.detach(),this._draggedRange=null),this._previewContainer&&this._previewContainer.remove(),this._domEmitter.stopListening(),this._clearDraggableAttributesDelayed.cancel(),super.destroy()}_setupDragging(){const t=this.editor,n=t.model,i=t.editing.view,o=i.document,r=t.plugins.get(Pv);this.listenTo(o,"dragstart",((t,e)=>{if(e.target&&e.target.is("editableElement"))return void e.preventDefault();if(this._prepareDraggedRange(e.target),!this._draggedRange)return void e.preventDefault();this._draggingUid=p(),e.dataTransfer.effectAllowed=this.isEnabled?"copyMove":"copy",e.dataTransfer.setData("application/ckeditor5-dragging-uid",this._draggingUid);const i=n.createSelection(this._draggedRange.toRange());this.editor.plugins.get("ClipboardPipeline")._fireOutputTransformationEvent(e.dataTransfer,i,"dragstart");const{dataTransfer:o,domTarget:r,domEvent:s}=e,{clientX:a}=s;this._updatePreview({dataTransfer:o,domTarget:r,clientX:a}),e.stopPropagation(),this.isEnabled||(this._draggedRange.detach(),this._draggedRange=null,this._draggingUid="")}),{priority:"low"}),this.listenTo(o,"dragend",((t,e)=>{this._finalizeDragging(!e.dataTransfer.isCanceled&&"move"==e.dataTransfer.dropEffect)}),{priority:"low"}),this._domEmitter.listenTo(e.document,"dragend",(()=>{this._blockMode=!1}),{useCapture:!0}),this.listenTo(o,"dragenter",(()=>{this.isEnabled&&i.focus()})),this.listenTo(o,"dragleave",(()=>{r.removeDropMarkerDelayed()})),this.listenTo(o,"dragging",((t,e)=>{if(!this.isEnabled)return void(e.dataTransfer.dropEffect="none");const{clientX:n,clientY:i}=e.domEvent;r.updateDropMarker(e.target,e.targetRanges,n,i,this._blockMode,this._draggedRange),this._draggedRange||(e.dataTransfer.dropEffect="copy"),s.isGecko||("copy"==e.dataTransfer.effectAllowed?e.dataTransfer.dropEffect="copy":["all","copyMove"].includes(e.dataTransfer.effectAllowed)&&(e.dataTransfer.dropEffect="move")),t.stop()}),{priority:"low"})}_setupClipboardInputIntegration(){const t=this.editor,e=t.editing.view.document,n=t.plugins.get(Pv);this.listenTo(e,"clipboardInput",((e,i)=>{if("drop"!=i.method)return;const{clientX:o,clientY:r}=i.domEvent,s=n.getFinalDropRange(i.target,i.targetRanges,o,r,this._blockMode,this._draggedRange);if(!s)return this._finalizeDragging(!1),void e.stop();this._draggedRange&&this._draggingUid!=i.dataTransfer.getData("application/ckeditor5-dragging-uid")&&(this._draggedRange.detach(),this._draggedRange=null,this._draggingUid="");if("move"==Jv(i.dataTransfer)&&this._draggedRange&&this._draggedRange.containsRange(s,!0))return this._finalizeDragging(!1),void e.stop();i.targetRanges=[t.editing.mapper.toViewRange(s)]}),{priority:"high"})}_setupContentInsertionIntegration(){const t=this.editor.plugins.get(RC);t.on("contentInsertion",((t,e)=>{if(!this.isEnabled||"drop"!==e.method)return;const n=e.targetRanges.map((t=>this.editor.editing.mapper.toModelRange(t)));this.editor.model.change((t=>t.setSelection(n)))}),{priority:"high"}),t.on("contentInsertion",((t,e)=>{if(!this.isEnabled||"drop"!==e.method)return;const n="move"==Jv(e.dataTransfer),i=!e.resultRange||!e.resultRange.isCollapsed;this._finalizeDragging(i&&n)}),{priority:"lowest"})}_setupDraggableAttributeHandling(){const t=this.editor,e=t.editing.view,n=e.document;this.listenTo(n,"mousedown",((i,o)=>{if(s.isAndroid||!o)return;this._clearDraggableAttributesDelayed.cancel();let r=Zv(o.target);if(s.isBlink&&!t.isReadOnly&&!r&&!n.selection.isCollapsed){const t=n.selection.getSelectedElement();t&&HC(t)||(r=n.selection.editableElement)}r&&(e.change((t=>{t.setAttribute("draggable","true",r)})),this._draggableElement=t.editing.mapper.toModelElement(r))})),this.listenTo(n,"mouseup",(()=>{s.isAndroid||this._clearDraggableAttributesDelayed()}))}_clearDraggableAttributes(){const t=this.editor.editing;t.view.change((e=>{this._draggableElement&&"$graveyard"!=this._draggableElement.root.rootName&&e.removeAttribute("draggable",t.mapper.toViewElement(this._draggableElement)),this._draggableElement=null}))}_finalizeDragging(t){const e=this.editor,n=e.model;if(e.plugins.get(Pv).removeDropMarker(),this._clearDraggableAttributes(),e.plugins.has("WidgetToolbarRepository")){e.plugins.get("WidgetToolbarRepository").clearForceDisabled("dragDrop")}this._draggingUid="",this._previewContainer&&(this._previewContainer.remove(),this._previewContainer=void 0),this._draggedRange&&(t&&this.isEnabled&&n.change((t=>{const e=n.createSelection(this._draggedRange);n.deleteContent(e,{doNotAutoparagraph:!0});const i=e.getFirstPosition().parent;i.isEmpty&&!n.schema.checkChild(i,"$text")&&n.schema.checkChild(i,"paragraph")&&t.insertElement("paragraph",i,0)})),this._draggedRange.detach(),this._draggedRange=null)}_prepareDraggedRange(t){const e=this.editor,n=e.model,i=n.document.selection,o=t?Zv(t):null;if(o){const t=e.editing.mapper.toModelElement(o);if(this._draggedRange=cl.fromRange(n.createRangeOn(t)),this._blockMode=n.schema.isBlock(t),e.plugins.has("WidgetToolbarRepository")){e.plugins.get("WidgetToolbarRepository").forceDisabled("dragDrop")}return}if(i.isCollapsed&&!i.getFirstPosition().parent.isEmpty)return;const r=Array.from(i.getSelectedBlocks()),s=i.getFirstRange();if(0==r.length)return void(this._draggedRange=cl.fromRange(s));const a=Yv(n,r);if(r.length>1)this._draggedRange=cl.fromRange(a),this._blockMode=!0;else if(1==r.length){const t=s.start.isTouching(a.start)&&s.end.isTouching(a.end);this._draggedRange=cl.fromRange(t?a:s),this._blockMode=t}n.change((t=>t.setSelection(this._draggedRange.toRange())))}_updatePreview({dataTransfer:t,domTarget:n,clientX:i}){const o=this.editor.editing.view,r=o.document.selection.editableElement,a=o.domConverter.mapViewToDom(r),c=e.window.getComputedStyle(a);this._previewContainer?this._previewContainer.firstElementChild&&this._previewContainer.removeChild(this._previewContainer.firstElementChild):(this._previewContainer=ft(e.document,"div",{style:"position: fixed; left: -999999px;"}),e.document.body.appendChild(this._previewContainer));const l=new Li(a);if(a.contains(n))return;const d=parseFloat(c.paddingLeft),h=ft(e.document,"div");h.className="ck ck-content",h.style.width=c.width,h.style.paddingLeft=`${l.left-i+d}px`,s.isiOS&&(h.style.backgroundColor="white"),h.innerHTML=t.getData("text/html"),t.setDragImage(h,0,0),this._previewContainer.appendChild(h)}}function Jv(t){return s.isGecko?t.dropEffect:["all","copyMove"].includes(t.effectAllowed)?"move":"copy"}function Zv(t){if(t.is("editableElement"))return null;if(t.hasClass("ck-widget__selection-handle"))return t.findAncestor(HC);if(HC(t))return t;const e=t.findAncestor((t=>HC(t)||t.is("editableElement")));return HC(e)?e:null}function Yv(t,e){const n=e[0],i=e[e.length-1],o=n.getCommonAncestor(i),r=t.createPositionBefore(n),s=t.createPositionAfter(i);if(o&&o.is("element")&&!t.schema.isLimit(o)){const e=t.createRangeOn(o),n=r.isTouching(e.start),i=s.isTouching(e.end);if(n&&i)return Yv(t,[o])}return t.createRange(r,s)}class Qv extends er{static get pluginName(){return"PastePlainText"}static get requires(){return[RC]}init(){const t=this.editor,e=t.model,n=t.editing.view,i=n.document,o=e.document.selection;let r=!1;n.addObserver(rC),this.listenTo(i,"keydown",((t,e)=>{r=e.shiftKey})),t.plugins.get(RC).on("contentInsertion",((t,n)=>{(r||function(t,e){if(t.childCount>1)return!1;const n=t.getChild(0);if(e.isObject(n))return!1;return 0==Array.from(n.getAttributeKeys()).length}(n.content,e.schema))&&e.change((t=>{const i=Array.from(o.getAttributes()).filter((([t])=>e.schema.getAttributeProperties(t).isFormatting));o.isCollapsed||e.deleteContent(o,{doNotAutoparagraph:!0}),i.push(...o.getAttributes());const r=t.createRangeIn(n.content);for(const e of r.getItems())e.is("$textProxy")&&t.setAttributes(i,e)}))}))}}class Xv extends er{static get pluginName(){return"Clipboard"}static get requires(){return[PC,RC,Kv,Qv]}init(){const t=this.editor,e=this.editor.t;t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Copy selected content"),keystroke:"CTRL+C"},{label:e("Paste content"),keystroke:"CTRL+V"},{label:e("Paste content as plain text"),keystroke:"CTRL+SHIFT+V"}]})}}var ty=Object.defineProperty,ey=Object.getOwnPropertySymbols,ny=Object.prototype.hasOwnProperty,iy=Object.prototype.propertyIsEnumerable,oy=(t,e,n)=>e in t?ty(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class ry extends ir{constructor(t){super(t),this._stack=[],this._createdBatches=new WeakSet,this.refresh(),this._isEnabledBasedOnSelection=!1,this.listenTo(t.data,"set",((t,e)=>{e[1]=((t,e)=>{for(var n in e||(e={}))ny.call(e,n)&&oy(t,n,e[n]);if(ey)for(var n of ey(e))iy.call(e,n)&&oy(t,n,e[n]);return t})({},e[1]);const n=e[1];n.batchType||(n.batchType={isUndoable:!1})}),{priority:"high"}),this.listenTo(t.data,"set",((t,e)=>{e[1].batchType.isUndoable||this.clearStack()}))}refresh(){this.isEnabled=this._stack.length>0}get createdBatches(){return this._createdBatches}addBatch(t){const e=this.editor.model.document.selection,n={ranges:e.hasOwnRange?Array.from(e.getRanges()):[],isBackward:e.isBackward};this._stack.push({batch:t,selection:n}),this.refresh()}clearStack(){this._stack=[],this.refresh()}_restoreSelection(t,e,n){const i=this.editor.model,o=i.document,r=[],s=t.map((t=>t.getTransformedByOperations(n))),a=s.flat();for(const t of s){const e=t.filter((t=>t.root!=o.graveyard)).filter((t=>!ay(t,a)));e.length&&(sy(e),r.push(e[0]))}r.length&&i.change((t=>{t.setSelection(r,{backward:e})}))}_undo(t,e){const n=this.editor.model,i=n.document;this._createdBatches.add(e);const o=t.operations.slice().filter((t=>t.isDocumentOperation));o.reverse();for(const t of o){const o=t.baseVersion+1,r=Array.from(i.history.getOperations(o)),s=ih([t.getReversed()],r,{useRelations:!0,document:this.editor.model.document,padWithNoOps:!1,forceWeakRemove:!0}).operationsA;for(let o of s){const r=o.affectedSelectable;r&&!n.canEditAt(r)&&(o=new Gd(o.baseVersion)),e.addOperation(o),n.applyOperation(o),i.history.setOperationAsUndone(t,o)}}}}function sy(t){t.sort(((t,e)=>t.start.isBefore(e.start)?-1:1));for(let e=1;ee!==t&&e.containsRange(t,!0)))}class cy extends ry{execute(t=null){const e=t?this._stack.findIndex((e=>e.batch==t)):this._stack.length-1,n=this._stack.splice(e,1)[0],i=this.editor.model.createBatch({isUndo:!0});this.editor.model.enqueueChange(i,(()=>{this._undo(n.batch,i);const t=this.editor.model.document.history.getOperations(n.batch.baseVersion);this._restoreSelection(n.selection.ranges,n.selection.isBackward,t)})),this.fire("revert",n.batch,i),this.refresh()}}class ly extends ry{execute(){const t=this._stack.pop(),e=this.editor.model.createBatch({isUndo:!0});this.editor.model.enqueueChange(e,(()=>{const n=t.batch.operations[t.batch.operations.length-1].baseVersion+1,i=this.editor.model.document.history.getOperations(n);this._restoreSelection(t.selection.ranges,t.selection.isBackward,i),this._undo(t.batch,e)})),this.refresh()}}class dy extends er{constructor(){super(...arguments),this._batchRegistry=new WeakSet}static get pluginName(){return"UndoEditing"}init(){const t=this.editor,e=t.t;this._undoCommand=new cy(t),this._redoCommand=new ly(t),t.commands.add("undo",this._undoCommand),t.commands.add("redo",this._redoCommand),this.listenTo(t.model,"applyOperation",((t,e)=>{const n=e[0];if(!n.isDocumentOperation)return;const i=n.batch,o=this._redoCommand.createdBatches.has(i),r=this._undoCommand.createdBatches.has(i);this._batchRegistry.has(i)||(this._batchRegistry.add(i),i.isUndoable&&(o?this._undoCommand.addBatch(i):r||(this._undoCommand.addBatch(i),this._redoCommand.clearStack())))}),{priority:"highest"}),this.listenTo(this._undoCommand,"revert",((t,e,n)=>{this._redoCommand.addBatch(n)})),t.keystrokes.set("CTRL+Z","undo"),t.keystrokes.set("CTRL+Y","redo"),t.keystrokes.set("CTRL+SHIFT+Z","redo"),t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Undo"),keystroke:"CTRL+Z"},{label:e("Redo"),keystroke:[["CTRL+Y"],["CTRL+SHIFT+Z"]]}]})}}class hy extends er{static get pluginName(){return"UndoUI"}init(){const t=this.editor,e=t.locale,n=t.t,i="ltr"==e.uiLanguageDirection?ym.undo:ym.redo,o="ltr"==e.uiLanguageDirection?ym.redo:ym.undo;this._addButtonsToFactory("undo",n("Undo"),"CTRL+Z",i),this._addButtonsToFactory("redo",n("Redo"),"CTRL+Y",o)}_addButtonsToFactory(t,e,n,i){const o=this.editor;o.ui.componentFactory.add(t,(()=>{const o=this._createButton(mg,t,e,n,i);return o.set({tooltip:!0}),o})),o.ui.componentFactory.add("menuBar:"+t,(()=>this._createButton(mw,t,e,n,i)))}_createButton(t,e,n,i,o){const r=this.editor,s=r.locale,a=r.commands.get(e),c=new t(s);return c.set({label:n,icon:o,keystroke:i}),c.bind("isEnabled").to(a,"isEnabled"),this.listenTo(c,"execute",(()=>{r.execute(e),r.editing.view.focus()})),c}}class uy extends er{static get requires(){return[dy,hy]}static get pluginName(){return"Undo"}}function my(t){return t.createContainerElement("figure",{class:"image"},[t.createEmptyElement("img"),t.createSlot("children")])}function gy(t,e){const n=t.plugins.get("ImageUtils"),i=t.plugins.has("ImageInlineEditing")&&t.plugins.has("ImageBlockEditing");return t=>{if(!n.isInlineImageView(t))return null;if(!i)return o(t);return("block"==t.getStyle("display")||t.findAncestor(n.isBlockImageView)?"imageBlock":"imageInline")!==e?null:o(t)};function o(t){const e={name:!0};return t.hasAttribute("src")&&(e.attributes=["src"]),e}}function py(t,e){const n=$o(e.getSelectedBlocks());return!n||t.isObject(n)||n.isEmpty&&"listItem"!=n.name?"imageBlock":"imageInline"}function fy(t){return t&&t.endsWith("px")?parseInt(t):null}function by(t){const e=fy(t.getStyle("width")),n=fy(t.getStyle("height"));return!(!e||!n)}var ky=Object.defineProperty,wy=Object.getOwnPropertySymbols,_y=Object.prototype.hasOwnProperty,Ay=Object.prototype.propertyIsEnumerable,Cy=(t,e,n)=>e in t?ky(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,vy=(t,e)=>{for(var n in e||(e={}))_y.call(e,n)&&Cy(t,n,e[n]);if(wy)for(var n of wy(e))Ay.call(e,n)&&Cy(t,n,e[n]);return t};const yy=/^(image|image-inline)$/;class xy extends er{constructor(){super(...arguments),this._domEmitter=new(Bi())}static get pluginName(){return"ImageUtils"}isImage(t){return this.isInlineImage(t)||this.isBlockImage(t)}isInlineImageView(t){return!!t&&t.is("element","img")}isBlockImageView(t){return!!t&&t.is("element","figure")&&t.hasClass("image")}insertImage(t={},e=null,n=null,i={}){const o=this.editor,r=o.model,s=r.document.selection,a=Ey(o,e||s,n);t=vy(vy({},Object.fromEntries(s.getAttributes())),t);for(const e in t)r.schema.checkAttribute(a,e)||delete t[e];return r.change((n=>{const{setImageSizes:o=!0}=i,s=n.createElement(a,t);return r.insertObject(s,e,null,{setSelection:"on",findOptimalPosition:e||"imageInline"==a?void 0:"auto"}),s.parent?(o&&this.setImageNaturalSizeAttributes(s),s):null}))}setImageNaturalSizeAttributes(t){const n=t.getAttribute("src");n&&(t.getAttribute("width")||t.getAttribute("height")||this.editor.model.change((i=>{const o=new e.window.Image;this._domEmitter.listenTo(o,"load",(()=>{t.getAttribute("width")||t.getAttribute("height")||this.editor.model.enqueueChange(i.batch,(e=>{e.setAttribute("width",o.naturalWidth,t),e.setAttribute("height",o.naturalHeight,t)})),this._domEmitter.stopListening(o,"load")})),o.src=n})))}getClosestSelectedImageWidget(t){const e=t.getFirstPosition();if(!e)return null;const n=t.getSelectedElement();if(n&&this.isImageWidget(n))return n;let i=e.parent;for(;i;){if(i.is("element")&&this.isImageWidget(i))return i;i=i.parent}return null}getClosestSelectedImageElement(t){const e=t.getSelectedElement();return this.isImage(e)?e:t.getFirstPosition().findAncestor("imageBlock")}getImageWidgetFromImageView(t){return t.findAncestor({classes:yy})}isImageAllowed(){const t=this.editor.model.document.selection;return function(t,e){const n=Ey(t,e,null);if("imageBlock"==n){const n=function(t,e){const n=GC(t,e),i=n.start.parent;if(i.isEmpty&&!i.is("element","$root"))return i.parent;return i}(e,t.model);if(t.model.schema.checkChild(n,"imageBlock"))return!0}else if(t.model.schema.checkChild(e.focus,"imageInline"))return!0;return!1}(this.editor,t)&&function(t){return[...t.focus.getAncestors()].every((t=>!t.is("element","imageBlock")))}(t)}toImageWidget(t,e,n){e.setCustomProperty("image",!0,t);return jC(t,e,{label:()=>{const e=this.findViewImgElement(t).getAttribute("alt");return e?`${e} ${n}`:n}})}isImageWidget(t){return!!t.getCustomProperty("image")&&HC(t)}isBlockImage(t){return!!t&&t.is("element","imageBlock")}isInlineImage(t){return!!t&&t.is("element","imageInline")}findViewImgElement(t){if(this.isInlineImageView(t))return t;const e=this.editor.editing.view;for(const{item:n}of e.createRangeIn(t))if(this.isInlineImageView(n))return n}destroy(){return this._domEmitter.stopListening(),super.destroy()}}function Ey(t,e,n){const i=t.model.schema,o=t.config.get("image.insert.type");return t.plugins.has("ImageBlockEditing")?t.plugins.has("ImageInlineEditing")?n||("inline"===o?"imageInline":"auto"!==o?"imageBlock":e.is("selection")?py(i,e):i.checkChild(e,"imageInline")?"imageInline":"imageBlock"):"imageBlock":"imageInline"}Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;new RegExp(String(/^(http(s)?:\/\/)?[\w-]+\.[\w.~:/[\]@!$&'()*+,;=%-]+/.source+/\.(jpg|jpeg|png|gif|ico|webp|JPG|JPEG|PNG|GIF|ICO|WEBP)/.source+/(\?[\w.~:/[\]@!$&'()*+,;=%-]*)?/.source+/(#[\w.~:/[\]@!$&'()*+,;=%-]*)?$/.source));class Dy extends ir{refresh(){const t=this.editor.plugins.get("ImageUtils").getClosestSelectedImageElement(this.editor.model.document.selection);this.isEnabled=!!t,this.isEnabled&&t.hasAttribute("alt")?this.value=t.getAttribute("alt"):this.value=!1}execute(t){const e=this.editor,n=e.plugins.get("ImageUtils"),i=e.model,o=n.getClosestSelectedImageElement(i.document.selection);i.change((e=>{e.setAttribute("alt",t.newValue,o)}))}}class By extends er{static get requires(){return[xy]}static get pluginName(){return"ImageTextAlternativeEditing"}init(){this.editor.commands.add("imageTextAlternative",new Dy(this.editor))}}var Sy=n(4062),Ty={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Sy.A,Ty);Sy.A.locals;class Iy extends Jm{constructor(t){super(t);const e=this.locale.t;this.focusTracker=new Go,this.keystrokes=new Ko,this.labeledInput=this._createLabeledInputView(),this.saveButtonView=this._createButton(e("Save"),ym.check,"ck-button-save"),this.saveButtonView.type="submit",this.cancelButtonView=this._createButton(e("Cancel"),ym.cancel,"ck-button-cancel","cancel"),this._focusables=new xm,this._focusCycler=new Xg({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"form",attributes:{class:["ck","ck-text-alternative-form","ck-responsive-form"],tabindex:"-1"},children:[this.labeledInput,this.saveButtonView,this.cancelButtonView]})}render(){super.render(),this.keystrokes.listenTo(this.element),Qm({view:this}),[this.labeledInput,this.saveButtonView,this.cancelButtonView].forEach((t=>{this._focusables.add(t),this.focusTracker.add(t.element)}))}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}_createButton(t,e,n,i){const o=new mg(this.locale);return o.set({label:t,icon:e,tooltip:!0}),o.extendTemplate({attributes:{class:n}}),i&&o.delegate("execute").to(this,i),o}_createLabeledInputView(){const t=this.locale.t,e=new zg(this.locale,zp);return e.label=t("Text alternative"),e}}function Py(t){const e=t.editing.view,n=kb.defaultPositions,i=t.plugins.get("ImageUtils");return{target:e.domConverter.mapViewToDom(i.getClosestSelectedImageWidget(e.document.selection)),positions:[n.northArrowSouth,n.northArrowSouthWest,n.northArrowSouthEast,n.southArrowNorth,n.southArrowNorthWest,n.southArrowNorthEast,n.viewportStickyNorth]}}class Ry extends er{static get requires(){return[mk]}static get pluginName(){return"ImageTextAlternativeUI"}init(){this._createButton()}destroy(){super.destroy(),this._form&&this._form.destroy()}_createButton(){const t=this.editor,e=t.t;t.ui.componentFactory.add("imageTextAlternative",(n=>{const i=t.commands.get("imageTextAlternative"),o=new mg(n);return o.set({label:e("Change image text alternative"),icon:ym.textAlternative,tooltip:!0}),o.bind("isEnabled").to(i,"isEnabled"),o.bind("isOn").to(i,"value",(t=>!!t)),this.listenTo(o,"execute",(()=>{this._showForm()})),o}))}_createForm(){const t=this.editor,e=t.editing.view.document,n=t.plugins.get("ImageUtils");this._balloon=this.editor.plugins.get("ContextualBalloon"),this._form=new(Ym(Iy))(t.locale),this._form.render(),this.listenTo(this._form,"submit",(()=>{t.execute("imageTextAlternative",{newValue:this._form.labeledInput.fieldView.element.value}),this._hideForm(!0)})),this.listenTo(this._form,"cancel",(()=>{this._hideForm(!0)})),this._form.keystrokes.set("Esc",((t,e)=>{this._hideForm(!0),e()})),this.listenTo(t.ui,"update",(()=>{n.getClosestSelectedImageWidget(e.selection)?this._isVisible&&function(t){const e=t.plugins.get("ContextualBalloon");if(t.plugins.get("ImageUtils").getClosestSelectedImageWidget(t.editing.view.document.selection)){const n=Py(t);e.updatePosition(n)}}(t):this._hideForm(!0)})),Zm({emitter:this._form,activator:()=>this._isVisible,contextElements:()=>[this._balloon.view.element],callback:()=>this._hideForm()})}_showForm(){if(this._isVisible)return;this._form||this._createForm();const t=this.editor,e=t.commands.get("imageTextAlternative"),n=this._form.labeledInput;this._form.disableCssTransitions(),this._isInBalloon||this._balloon.add({view:this._form,position:Py(t)}),n.fieldView.value=n.fieldView.element.value=e.value||"",this._form.labeledInput.fieldView.select(),this._form.enableCssTransitions()}_hideForm(t=!1){this._isInBalloon&&(this._form.focusTracker.isFocused&&this._form.saveButtonView.focus(),this._balloon.remove(this._form),t&&this.editor.editing.view.focus())}get _isVisible(){return!!this._balloon&&this._balloon.visibleView===this._form}get _isInBalloon(){return!!this._balloon&&this._balloon.hasView(this._form)}}class Vy extends er{static get requires(){return[By,Ry]}static get pluginName(){return"ImageTextAlternative"}}function Fy(t,e){const n=(e,n,i)=>{if(!i.consumable.consume(n.item,e.name))return;const o=i.writer,r=i.mapper.toViewElement(n.item),s=t.findViewImgElement(r);null===n.attributeNewValue?(o.removeAttribute("srcset",s),o.removeAttribute("sizes",s)):n.attributeNewValue&&(o.setAttribute("srcset",n.attributeNewValue,s),o.setAttribute("sizes","100vw",s))};return t=>{t.on(`attribute:srcset:${e}`,n)}}function Ly(t,e,n){const i=(e,n,i)=>{if(!i.consumable.consume(n.item,e.name))return;const o=i.writer,r=i.mapper.toViewElement(n.item),s=t.findViewImgElement(r);o.setAttribute(n.attributeKey,n.attributeNewValue||"",s)};return t=>{t.on(`attribute:${n}:${e}`,i)}}class Oy extends Da{observe(t){this.listenTo(t,"load",((t,e)=>{const n=e.target;this.checkShouldIgnoreEventFromTarget(n)||"IMG"==n.tagName&&this._fireEvents(e)}),{useCapture:!0})}stopObserving(t){this.stopListening(t)}_fireEvents(t){this.isEnabled&&(this.document.fire("layoutChanged"),this.document.fire("imageLoaded",t))}}var zy=Object.defineProperty,My=Object.getOwnPropertySymbols,Ny=Object.prototype.hasOwnProperty,Hy=Object.prototype.propertyIsEnumerable,jy=(t,e,n)=>e in t?zy(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,qy=(t,e)=>{for(var n in e||(e={}))Ny.call(e,n)&&jy(t,n,e[n]);if(My)for(var n of My(e))Hy.call(e,n)&&jy(t,n,e[n]);return t};class Wy extends ir{constructor(t){super(t);const e=t.config.get("image.insert.type");t.plugins.has("ImageBlockEditing")||"block"===e&&_("image-block-plugin-required"),t.plugins.has("ImageInlineEditing")||"inline"===e&&_("image-inline-plugin-required")}refresh(){const t=this.editor.plugins.get("ImageUtils");this.isEnabled=t.isImageAllowed()}execute(t){const e=_o(t.source),n=this.editor.model.document.selection,i=this.editor.plugins.get("ImageUtils"),o=Object.fromEntries(n.getAttributes());e.forEach(((t,e)=>{const r=n.getSelectedElement();if("string"==typeof t&&(t={src:t}),e&&r&&i.isImage(r)){const e=this.editor.model.createPositionAfter(r);i.insertImage(qy(qy({},t),o),e)}else i.insertImage(qy(qy({},t),o))}))}}class Uy extends ir{constructor(t){super(t),this.decorate("cleanupImage")}refresh(){const t=this.editor.plugins.get("ImageUtils"),e=this.editor.model.document.selection.getSelectedElement();this.isEnabled=t.isImage(e),this.value=this.isEnabled?e.getAttribute("src"):null}execute(t){const e=this.editor.model.document.selection.getSelectedElement(),n=this.editor.plugins.get("ImageUtils");this.editor.model.change((i=>{i.setAttribute("src",t.source,e),this.cleanupImage(i,e),n.setImageNaturalSizeAttributes(e)}))}cleanupImage(t,e){t.removeAttribute("srcset",e),t.removeAttribute("sizes",e),t.removeAttribute("sources",e),t.removeAttribute("width",e),t.removeAttribute("height",e),t.removeAttribute("alt",e)}}class $y extends er{static get requires(){return[xy]}static get pluginName(){return"ImageEditing"}init(){const t=this.editor,e=t.conversion;t.editing.view.addObserver(Oy),e.for("upcast").attributeToAttribute({view:{name:"img",key:"alt"},model:"alt"}).attributeToAttribute({view:{name:"img",key:"srcset"},model:"srcset"});const n=new Wy(t),i=new Uy(t);t.commands.add("insertImage",n),t.commands.add("replaceImageSource",i),t.commands.add("imageInsert",n)}}class Gy extends er{static get requires(){return[xy]}static get pluginName(){return"ImageSizeAttributes"}afterInit(){this._registerSchema(),this._registerConverters("imageBlock"),this._registerConverters("imageInline")}_registerSchema(){this.editor.plugins.has("ImageBlockEditing")&&this.editor.model.schema.extend("imageBlock",{allowAttributes:["width","height"]}),this.editor.plugins.has("ImageInlineEditing")&&this.editor.model.schema.extend("imageInline",{allowAttributes:["width","height"]})}_registerConverters(t){const e=this.editor,n=e.plugins.get("ImageUtils"),i="imageBlock"===t?"figure":"img";function o(e,i,o,r){e.on(`attribute:${i}:${t}`,((e,i,s)=>{if(!s.consumable.consume(i.item,e.name))return;const a=s.writer,c=s.mapper.toViewElement(i.item),l=n.findViewImgElement(c);if(null!==i.attributeNewValue?a.setAttribute(o,i.attributeNewValue,l):a.removeAttribute(o,l),i.item.hasAttribute("sources"))return;const d=i.item.hasAttribute("resizedWidth");if("imageInline"===t&&!d&&!r)return;const h=i.item.getAttribute("width"),u=i.item.getAttribute("height");h&&u&&a.setStyle("aspect-ratio",`${h}/${u}`,l)}))}e.conversion.for("upcast").attributeToAttribute({view:{name:i,styles:{width:/.+/}},model:{key:"width",value:t=>by(t)?fy(t.getStyle("width")):null}}).attributeToAttribute({view:{name:i,key:"width"},model:"width"}).attributeToAttribute({view:{name:i,styles:{height:/.+/}},model:{key:"height",value:t=>by(t)?fy(t.getStyle("height")):null}}).attributeToAttribute({view:{name:i,key:"height"},model:"height"}),e.conversion.for("editingDowncast").add((t=>{o(t,"width","width",!0),o(t,"height","height",!0)})),e.conversion.for("dataDowncast").add((t=>{o(t,"width","width",!1),o(t,"height","height",!1)}))}}class Ky extends ir{constructor(t,e){super(t),this._modelElementName=e}refresh(){const t=this.editor.plugins.get("ImageUtils"),e=t.getClosestSelectedImageElement(this.editor.model.document.selection);"imageBlock"===this._modelElementName?this.isEnabled=t.isInlineImage(e):this.isEnabled=t.isBlockImage(e)}execute(t={}){const e=this.editor,n=this.editor.model,i=e.plugins.get("ImageUtils"),o=i.getClosestSelectedImageElement(n.document.selection),r=Object.fromEntries(o.getAttributes());return r.src||r.uploadId?n.change((e=>{const{setImageSizes:s=!0}=t,a=Array.from(n.markers).filter((t=>t.getRange().containsItem(o))),c=i.insertImage(r,n.createSelection(o,"on"),this._modelElementName,{setImageSizes:s});if(!c)return null;const l=e.createRangeOn(c);for(const t of a){const n=t.getRange(),i="$graveyard"!=n.root.rootName?n.getJoined(l,!0):l;e.updateMarker(t,{range:i})}return{oldElement:o,newElement:c}})):null}}var Jy=n(7378),Zy={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Jy.A,Zy);Jy.A.locals;class Yy extends er{static get requires(){return[xy]}static get pluginName(){return"ImagePlaceholder"}afterInit(){this._setupSchema(),this._setupConversion(),this._setupLoadListener()}_setupSchema(){const t=this.editor.model.schema;t.isRegistered("imageBlock")&&t.extend("imageBlock",{allowAttributes:["placeholder"]}),t.isRegistered("imageInline")&&t.extend("imageInline",{allowAttributes:["placeholder"]})}_setupConversion(){const t=this.editor,e=t.conversion,n=t.plugins.get("ImageUtils");e.for("editingDowncast").add((t=>{t.on("attribute:placeholder",((t,e,i)=>{if(!i.consumable.test(e.item,t.name))return;if(!e.item.is("element","imageBlock")&&!e.item.is("element","imageInline"))return;i.consumable.consume(e.item,t.name);const o=i.writer,r=i.mapper.toViewElement(e.item),s=n.findViewImgElement(r);e.attributeNewValue?(o.addClass("image_placeholder",s),o.setStyle("background-image",`url(${e.attributeNewValue})`,s),o.setCustomProperty("editingPipeline:doNotReuseOnce",!0,s)):(o.removeClass("image_placeholder",s),o.removeStyle("background-image",s))}))}))}_setupLoadListener(){const t=this.editor,e=t.model,n=t.editing,i=n.view,o=t.plugins.get("ImageUtils");i.addObserver(Oy),this.listenTo(i.document,"imageLoaded",((t,r)=>{const s=i.domConverter.mapDomToView(r.target);if(!s)return;const a=o.getImageWidgetFromImageView(s);if(!a)return;const c=n.mapper.toModelElement(a);c&&c.hasAttribute("placeholder")&&e.enqueueChange({isUndoable:!1},(t=>{t.removeAttribute("placeholder",c)}))}))}}class Qy extends er{static get requires(){return[$y,Gy,xy,Yy,RC]}static get pluginName(){return"ImageBlockEditing"}init(){const t=this.editor;t.model.schema.register("imageBlock",{inheritAllFrom:"$blockObject",allowAttributes:["alt","src","srcset"]}),this._setupConversion(),t.plugins.has("ImageInlineEditing")&&(t.commands.add("imageTypeBlock",new Ky(this.editor,"imageBlock")),this._setupClipboardIntegration())}_setupConversion(){const t=this.editor,e=t.t,n=t.conversion,i=t.plugins.get("ImageUtils");n.for("dataDowncast").elementToStructure({model:"imageBlock",view:(t,{writer:e})=>my(e)}),n.for("editingDowncast").elementToStructure({model:"imageBlock",view:(t,{writer:n})=>i.toImageWidget(my(n),n,e("image widget"))}),n.for("downcast").add(Ly(i,"imageBlock","src")).add(Ly(i,"imageBlock","alt")).add(Fy(i,"imageBlock")),n.for("upcast").elementToElement({view:gy(t,"imageBlock"),model:(t,{writer:e})=>e.createElement("imageBlock",t.hasAttribute("src")?{src:t.getAttribute("src")}:void 0)}).add(function(t){const e=(e,n,i)=>{if(!i.consumable.test(n.viewItem,{name:!0,classes:"image"}))return;const o=t.findViewImgElement(n.viewItem);if(!o||!i.consumable.test(o,{name:!0}))return;i.consumable.consume(n.viewItem,{name:!0,classes:"image"});const r=$o(i.convertItem(o,n.modelCursor).modelRange.getItems());r?(i.convertChildren(n.viewItem,r),i.updateConversionResult(r,n)):i.consumable.revert(n.viewItem,{name:!0,classes:"image"})};return t=>{t.on("element:figure",e)}}(i))}_setupClipboardIntegration(){const t=this.editor,e=t.model,n=t.editing.view,i=t.plugins.get("ImageUtils"),o=t.plugins.get("ClipboardPipeline");this.listenTo(o,"inputTransformation",((o,r)=>{const s=Array.from(r.content.getChildren());let a;if(!s.every(i.isInlineImageView))return;a=r.targetRanges?t.editing.mapper.toModelRange(r.targetRanges[0]):e.document.selection.getFirstRange();const c=e.createSelection(a);if("imageBlock"===py(e.schema,c)){const t=new Au(n.document),e=s.map((e=>t.createElement("figure",{class:"image"},e)));r.content=t.createDocumentFragment(e)}})),this.listenTo(o,"contentInsertion",((t,n)=>{"paste"===n.method&&e.change((t=>{const e=t.createRangeIn(n.content);for(const t of e.getItems())t.is("element","imageBlock")&&i.setImageNaturalSizeAttributes(t)}))}))}}var Xy=n(3350),tx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Xy.A,tx);Xy.A.locals;class ex extends Jm{constructor(t,e=[]){super(t),this.focusTracker=new Go,this.keystrokes=new Ko,this._focusables=new xm,this.children=this.createCollection(),this._focusCycler=new Xg({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});for(const t of e)this.children.add(t),this._focusables.add(t),t instanceof Cg&&this._focusables.addMany(t.children);if(this._focusables.length>1)for(const t of this._focusables)nx(t)&&(t.focusCycler.on("forwardCycle",(t=>{this._focusCycler.focusNext(),t.stop()})),t.focusCycler.on("backwardCycle",(t=>{this._focusCycler.focusPrevious(),t.stop()})));this.setTemplate({tag:"form",attributes:{class:["ck","ck-image-insert-form"],tabindex:-1},children:this.children})}render(){super.render(),Qm({view:this});for(const t of this._focusables)this.focusTracker.add(t.element);this.keystrokes.listenTo(this.element);const t=t=>t.stopPropagation();this.keystrokes.set("arrowright",t),this.keystrokes.set("arrowleft",t),this.keystrokes.set("arrowup",t),this.keystrokes.set("arrowdown",t)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}}function nx(t){return"focusCycler"in t}class ix extends er{constructor(t){super(t),this._integrations=new Map,t.config.define("image.insert.integrations",["upload","assetManager","url"])}static get pluginName(){return"ImageInsertUI"}static get requires(){return[xy]}init(){const t=this.editor,e=t.model.document.selection,n=t.plugins.get("ImageUtils");this.set("isImageSelected",!1),this.listenTo(t.model.document,"change",(()=>{this.isImageSelected=n.isImage(e.getSelectedElement())}));const i=t=>this._createToolbarComponent(t);t.ui.componentFactory.add("insertImage",i),t.ui.componentFactory.add("imageInsert",i)}registerIntegration({name:t,observable:e,buttonViewCreator:n,formViewCreator:i,requiresForm:o}){this._integrations.has(t)&&_("image-insert-integration-exists",{name:t}),this._integrations.set(t,{observable:e,buttonViewCreator:n,formViewCreator:i,requiresForm:!!o})}_createToolbarComponent(t){const e=this.editor,n=t.t,i=this._prepareIntegrations();if(!i.length)return null;let o;const r=i[0];if(1==i.length){if(!r.requiresForm)return r.buttonViewCreator(!0);o=r.buttonViewCreator(!0)}else{const e=r.buttonViewCreator(!1);o=new Ep(t,e),o.tooltip=!0,o.bind("label").to(this,"isImageSelected",(t=>n(t?"Replace image":"Insert image")))}const s=this.dropdownView=Ip(t,o),a=i.map((({observable:t})=>"function"==typeof t?t():t));return s.bind("isEnabled").toMany(a,"isEnabled",((...t)=>t.some((t=>t)))),s.once("change:isOpen",(()=>{const t=i.map((({formViewCreator:t})=>t(1==i.length))),n=new ex(e.locale,t);s.panelView.children.add(n)})),s}_prepareIntegrations(){const t=this.editor.config.get("image.insert.integrations"),e=[];if(!t.length)return _("image-insert-integrations-not-specified"),e;for(const n of t)this._integrations.has(n)?e.push(this._integrations.get(n)):["upload","assetManager","url"].includes(n)||_("image-insert-unknown-integration",{item:n});return e.length||_("image-insert-integrations-not-registered"),e}}var ox=n(265),rx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(ox.A,rx);ox.A.locals;class sx extends er{static get requires(){return[Qy,hv,Vy,ix]}static get pluginName(){return"ImageBlock"}}class ax extends er{static get requires(){return[$y,Gy,xy,Yy,RC]}static get pluginName(){return"ImageInlineEditing"}init(){const t=this.editor,e=t.model.schema;e.register("imageInline",{inheritAllFrom:"$inlineObject",allowAttributes:["alt","src","srcset"]}),e.addChildCheck(((t,e)=>{if(t.endsWith("caption")&&"imageInline"===e.name)return!1})),this._setupConversion(),t.plugins.has("ImageBlockEditing")&&(t.commands.add("imageTypeInline",new Ky(this.editor,"imageInline")),this._setupClipboardIntegration())}_setupConversion(){const t=this.editor,e=t.t,n=t.conversion,i=t.plugins.get("ImageUtils");n.for("dataDowncast").elementToElement({model:"imageInline",view:(t,{writer:e})=>e.createEmptyElement("img")}),n.for("editingDowncast").elementToStructure({model:"imageInline",view:(t,{writer:n})=>i.toImageWidget(function(t){return t.createContainerElement("span",{class:"image-inline"},t.createEmptyElement("img"))}(n),n,e("image widget"))}),n.for("downcast").add(Ly(i,"imageInline","src")).add(Ly(i,"imageInline","alt")).add(Fy(i,"imageInline")),n.for("upcast").elementToElement({view:gy(t,"imageInline"),model:(t,{writer:e})=>e.createElement("imageInline",t.hasAttribute("src")?{src:t.getAttribute("src")}:void 0)})}_setupClipboardIntegration(){const t=this.editor,e=t.model,n=t.editing.view,i=t.plugins.get("ImageUtils"),o=t.plugins.get("ClipboardPipeline");this.listenTo(o,"inputTransformation",((o,r)=>{const s=Array.from(r.content.getChildren());let a;if(!s.every(i.isBlockImageView))return;a=r.targetRanges?t.editing.mapper.toModelRange(r.targetRanges[0]):e.document.selection.getFirstRange();const c=e.createSelection(a);if("imageInline"===py(e.schema,c)){const t=new Au(n.document),e=s.map((e=>1===e.childCount?(Array.from(e.getAttributes()).forEach((n=>t.setAttribute(...n,i.findViewImgElement(e)))),e.getChild(0)):e));r.content=t.createDocumentFragment(e)}})),this.listenTo(o,"contentInsertion",((t,n)=>{"paste"===n.method&&e.change((t=>{const e=t.createRangeIn(n.content);for(const t of e.getItems())t.is("element","imageInline")&&i.setImageNaturalSizeAttributes(t)}))}))}}class cx extends er{static get requires(){return[ax,hv,Vy,ix]}static get pluginName(){return"ImageInline"}}class lx extends er{static get pluginName(){return"ImageCaptionUtils"}static get requires(){return[xy]}getCaptionFromImageModelElement(t){for(const e of t.getChildren())if(e&&e.is("element","caption"))return e;return null}getCaptionFromModelSelection(t){const e=this.editor.plugins.get("ImageUtils"),n=t.getFirstPosition().findAncestor("caption");return n&&e.isBlockImage(n.parent)?n:null}matchImageCaptionViewElement(t){const e=this.editor.plugins.get("ImageUtils");return"figcaption"==t.name&&e.isBlockImageView(t.parent)?{name:!0}:null}}class dx extends ir{refresh(){const t=this.editor,e=t.plugins.get("ImageCaptionUtils"),n=t.plugins.get("ImageUtils");if(!t.plugins.has(Qy))return this.isEnabled=!1,void(this.value=!1);const i=t.model.document.selection,o=i.getSelectedElement();if(!o){const t=e.getCaptionFromModelSelection(i);return this.isEnabled=!!t,void(this.value=!!t)}this.isEnabled=n.isImage(o),this.isEnabled?this.value=!!e.getCaptionFromImageModelElement(o):this.value=!1}execute(t={}){const{focusCaptionOnShow:e}=t;this.editor.model.change((t=>{this.value?this._hideImageCaption(t):this._showImageCaption(t,e)}))}_showImageCaption(t,e){const n=this.editor.model.document.selection,i=this.editor.plugins.get("ImageCaptionEditing"),o=this.editor.plugins.get("ImageUtils");let r=n.getSelectedElement();const s=i._getSavedCaption(r);o.isInlineImage(r)&&(this.editor.execute("imageTypeBlock"),r=n.getSelectedElement());const a=s||t.createElement("caption");t.append(a,r),e&&t.setSelection(a,"in")}_hideImageCaption(t){const e=this.editor,n=e.model.document.selection,i=e.plugins.get("ImageCaptionEditing"),o=e.plugins.get("ImageCaptionUtils");let r,s=n.getSelectedElement();s?r=o.getCaptionFromImageModelElement(s):(r=o.getCaptionFromModelSelection(n),s=r.parent),i._saveCaption(s,r),t.setSelection(s,"on"),t.remove(r)}}class hx extends er{constructor(t){super(t),this._savedCaptionsMap=new WeakMap}static get requires(){return[xy,lx]}static get pluginName(){return"ImageCaptionEditing"}init(){const t=this.editor,e=t.model.schema;e.isRegistered("caption")?e.extend("caption",{allowIn:"imageBlock"}):e.register("caption",{allowIn:"imageBlock",allowContentOf:"$block",isLimit:!0}),t.commands.add("toggleImageCaption",new dx(this.editor)),this._setupConversion(),this._setupImageTypeCommandsIntegration(),this._registerCaptionReconversion()}_setupConversion(){const t=this.editor,e=t.editing.view,n=t.plugins.get("ImageUtils"),i=t.plugins.get("ImageCaptionUtils"),o=t.t;t.conversion.for("upcast").elementToElement({view:t=>i.matchImageCaptionViewElement(t),model:"caption"}),t.conversion.for("dataDowncast").elementToElement({model:"caption",view:(t,{writer:e})=>n.isBlockImage(t.parent)?e.createContainerElement("figcaption"):null}),t.conversion.for("editingDowncast").elementToElement({model:"caption",view:(t,{writer:i})=>{if(!n.isBlockImage(t.parent))return null;const r=i.createEditableElement("figcaption");i.setCustomProperty("imageCaption",!0,r),r.placeholder=o("Enter image caption"),wr({view:e,element:r,keepOnFocus:!0});const s=t.parent.getAttribute("alt");return $C(r,i,{label:s?o("Caption for image: %0",[s]):o("Caption for the image")})}})}_setupImageTypeCommandsIntegration(){const t=this.editor,e=t.plugins.get("ImageUtils"),n=t.plugins.get("ImageCaptionUtils"),i=t.commands.get("imageTypeInline"),o=t.commands.get("imageTypeBlock"),r=t=>{if(!t.return)return;const{oldElement:i,newElement:o}=t.return;if(!i)return;if(e.isBlockImage(i)){const t=n.getCaptionFromImageModelElement(i);if(t)return void this._saveCaption(o,t)}const r=this._getSavedCaption(i);r&&this._saveCaption(o,r)};i&&this.listenTo(i,"execute",r,{priority:"low"}),o&&this.listenTo(o,"execute",r,{priority:"low"})}_getSavedCaption(t){const e=this._savedCaptionsMap.get(t);return e?Tc.fromJSON(e):null}_saveCaption(t,e){this._savedCaptionsMap.set(t,e.toJSON())}_registerCaptionReconversion(){const t=this.editor,e=t.model,n=t.plugins.get("ImageUtils"),i=t.plugins.get("ImageCaptionUtils");e.document.on("change:data",(()=>{const o=e.document.differ.getChanges();for(const e of o){if("alt"!==e.attributeKey)continue;const o=e.range.start.nodeAfter;if(n.isBlockImage(o)){const e=i.getCaptionFromImageModelElement(o);if(!e)return;t.editing.reconvertItem(e)}}}))}}class ux extends er{static get requires(){return[lx]}static get pluginName(){return"ImageCaptionUI"}init(){const t=this.editor,e=t.editing.view,n=t.plugins.get("ImageCaptionUtils"),i=t.t;t.ui.componentFactory.add("toggleImageCaption",(o=>{const r=t.commands.get("toggleImageCaption"),s=new mg(o);return s.set({icon:ym.caption,tooltip:!0,isToggleable:!0}),s.bind("isOn","isEnabled").to(r,"value","isEnabled"),s.bind("label").to(r,"value",(t=>i(t?"Toggle caption off":"Toggle caption on"))),this.listenTo(s,"execute",(()=>{t.execute("toggleImageCaption",{focusCaptionOnShow:!0});const i=n.getCaptionFromModelSelection(t.model.document.selection);if(i){const n=t.editing.mapper.toViewElement(i);e.scrollToTheSelection(),e.change((t=>{t.addClass("image__caption_highlighted",n)}))}t.editing.view.focus()})),s}))}}var mx=n(5247),gx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(mx.A,gx);mx.A.locals;function px(t){const e=t.map((t=>t.replace("+","\\+")));return new RegExp(`^image\\/(${e.join("|")})$`)}function fx(t){return new Promise(((n,i)=>{const o=t.getAttribute("src");fetch(o).then((t=>t.blob())).then((t=>{const e=bx(t,o),i=e.replace("image/",""),r=new File([t],`image.${i}`,{type:e});n(r)})).catch((t=>t&&"TypeError"===t.name?function(t){return function(t){return new Promise(((n,i)=>{const o=e.document.createElement("img");o.addEventListener("load",(()=>{const t=e.document.createElement("canvas");t.width=o.width,t.height=o.height;t.getContext("2d").drawImage(o,0,0),t.toBlob((t=>t?n(t):i()))})),o.addEventListener("error",(()=>i())),o.src=t}))}(t).then((e=>{const n=bx(e,t),i=n.replace("image/","");return new File([e],`image.${i}`,{type:n})}))}(o).then(n).catch(i):i(t)))}))}function bx(t,e){return t.type?t.type:e.match(/data:(image\/\w+);base64/)?e.match(/data:(image\/\w+);base64/)[1].toLowerCase():"image/jpeg"}class kx extends er{static get pluginName(){return"ImageUploadUI"}init(){const t=this.editor,e=t.t,n=()=>{const t=this._createButton(bg);return t.set({label:e("Upload image from computer"),tooltip:!0}),t};if(t.ui.componentFactory.add("uploadImage",n),t.ui.componentFactory.add("imageUpload",n),t.ui.componentFactory.add("menuBar:uploadImage",(()=>{const t=this._createButton(gw);return t.label=e("Image from computer"),t})),t.plugins.has("ImageInsertUI")){const n=t.plugins.get("ImageInsertUI");n.registerIntegration({name:"upload",observable:()=>t.commands.get("uploadImage"),buttonViewCreator:()=>{const i=t.ui.componentFactory.create("uploadImage");return i.bind("label").to(n,"isImageSelected",(t=>e(t?"Replace image from computer":"Upload image from computer"))),i},formViewCreator:()=>{const i=t.ui.componentFactory.create("uploadImage");return i.withText=!0,i.bind("label").to(n,"isImageSelected",(t=>e(t?"Replace from computer":"Upload from computer"))),i.on("execute",(()=>{n.dropdownView.isOpen=!1})),i}})}}_createButton(t){const e=this.editor,n=e.locale,i=e.commands.get("uploadImage"),o=e.config.get("image.upload.types"),r=px(o),s=new t(e.locale),a=n.t;return s.set({acceptedType:o.map((t=>`image/${t}`)).join(","),allowMultipleFiles:!0,label:a("Upload image from computer"),icon:ym.imageUpload}),s.bind("isEnabled").to(i),s.on("done",((t,n)=>{const i=Array.from(n).filter((t=>r.test(t.type)));i.length&&(e.execute("uploadImage",{file:i}),e.editing.view.focus())})),s}}var wx=n(2267),_x={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(wx.A,_x);wx.A.locals;var Ax=n(7693),Cx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Ax.A,Cx);Ax.A.locals;var vx=n(1559),yx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(vx.A,yx);vx.A.locals;class xx extends er{constructor(t){super(t),this.uploadStatusChange=(t,e,n)=>{const i=this.editor,o=e.item,r=o.getAttribute("uploadId");if(!n.consumable.consume(e.item,t.name))return;const s=i.plugins.get("ImageUtils"),a=i.plugins.get(o_),c=r?e.attributeNewValue:null,l=this.placeholder,d=i.editing.mapper.toViewElement(o),h=n.writer;if("reading"==c)return Ex(d,h),void Dx(s,l,d,h);if("uploading"==c){const t=a.loaders.get(r);return Ex(d,h),void(t?(Bx(d,h),function(t,e,n,i){const o=function(t){const e=t.createUIElement("div",{class:"ck-progress-bar"});return t.setCustomProperty("progressBar",!0,e),e}(e);e.insert(e.createPositionAt(t,"end"),o),n.on("change:uploadedPercent",((t,e,n)=>{i.change((t=>{t.setStyle("width",n+"%",o)}))}))}(d,h,t,i.editing.view),function(t,e,n,i){if(i.data){const o=t.findViewImgElement(e);n.setAttribute("src",i.data,o)}}(s,d,h,t)):Dx(s,l,d,h))}"complete"==c&&a.loaders.get(r)&&function(t,e,n){const i=e.createUIElement("div",{class:"ck-image-upload-complete-icon"});e.insert(e.createPositionAt(t,"end"),i),setTimeout((()=>{n.change((t=>t.remove(t.createRangeOn(i))))}),3e3)}(d,h,i.editing.view),function(t,e){Tx(t,e,"progressBar")}(d,h),Bx(d,h),function(t,e){e.removeClass("ck-appear",t)}(d,h)},this.placeholder="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="}static get pluginName(){return"ImageUploadProgress"}init(){const t=this.editor;t.plugins.has("ImageBlockEditing")&&t.editing.downcastDispatcher.on("attribute:uploadStatus:imageBlock",this.uploadStatusChange),t.plugins.has("ImageInlineEditing")&&t.editing.downcastDispatcher.on("attribute:uploadStatus:imageInline",this.uploadStatusChange)}}function Ex(t,e){t.hasClass("ck-appear")||e.addClass("ck-appear",t)}function Dx(t,e,n,i){n.hasClass("ck-image-upload-placeholder")||i.addClass("ck-image-upload-placeholder",n);const o=t.findViewImgElement(n);o.getAttribute("src")!==e&&i.setAttribute("src",e,o),Sx(n,"placeholder")||i.insert(i.createPositionAfter(o),function(t){const e=t.createUIElement("div",{class:"ck-upload-placeholder-loader"});return t.setCustomProperty("placeholder",!0,e),e}(i))}function Bx(t,e){t.hasClass("ck-image-upload-placeholder")&&e.removeClass("ck-image-upload-placeholder",t),Tx(t,e,"placeholder")}function Sx(t,e){for(const n of t.getChildren())if(n.getCustomProperty(e))return n}function Tx(t,e,n){const i=Sx(t,n);i&&e.remove(e.createRangeOn(i))}var Ix=Object.defineProperty,Px=Object.defineProperties,Rx=Object.getOwnPropertyDescriptors,Vx=Object.getOwnPropertySymbols,Fx=Object.prototype.hasOwnProperty,Lx=Object.prototype.propertyIsEnumerable,Ox=(t,e,n)=>e in t?Ix(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class zx extends ir{refresh(){const t=this.editor,e=t.plugins.get("ImageUtils"),n=t.model.document.selection.getSelectedElement();this.isEnabled=e.isImageAllowed()||e.isImage(n)}execute(t){const e=_o(t.file),n=this.editor.model.document.selection,i=this.editor.plugins.get("ImageUtils"),o=Object.fromEntries(n.getAttributes());e.forEach(((t,e)=>{const r=n.getSelectedElement();if(e&&r&&i.isImage(r)){const e=this.editor.model.createPositionAfter(r);this._uploadImage(t,o,e)}else this._uploadImage(t,o)}))}_uploadImage(t,e,n){const i=this.editor,o=i.plugins.get(o_).createLoader(t),r=i.plugins.get("ImageUtils");var s,a;o&&r.insertImage((s=((t,e)=>{for(var n in e||(e={}))Fx.call(e,n)&&Ox(t,n,e[n]);if(Vx)for(var n of Vx(e))Lx.call(e,n)&&Ox(t,n,e[n]);return t})({},e),a={uploadId:o.id},Px(s,Rx(a))),n)}}class Mx extends er{constructor(t){super(t),t.config.define("image",{upload:{types:["jpeg","png","gif","bmp","webp","tiff"]}}),this._uploadImageElements=new Map}static get requires(){return[o_,sk,RC,xy]}static get pluginName(){return"ImageUploadEditing"}init(){const t=this.editor,e=t.model.document,n=t.conversion,i=t.plugins.get(o_),o=t.plugins.get("ImageUtils"),r=t.plugins.get("ClipboardPipeline"),s=px(t.config.get("image.upload.types")),a=new zx(t);t.commands.add("uploadImage",a),t.commands.add("imageUpload",a),n.for("upcast").attributeToAttribute({view:{name:"img",key:"uploadId"},model:"uploadId"}),this.listenTo(t.editing.view.document,"clipboardInput",((e,n)=>{if(i=n.dataTransfer,Array.from(i.types).includes("text/html")&&""!==i.getData("text/html"))return;var i;const o=Array.from(n.dataTransfer.files).filter((t=>!!t&&s.test(t.type)));o.length&&(e.stop(),t.model.change((e=>{n.targetRanges&&e.setSelection(n.targetRanges.map((e=>t.editing.mapper.toModelRange(e)))),t.execute("uploadImage",{file:o})})))})),this.listenTo(r,"inputTransformation",((e,n)=>{const r=Array.from(t.editing.view.createRangeIn(n.content)).map((t=>t.item)).filter((t=>function(t,e){return!(!t.isInlineImageView(e)||!e.getAttribute("src")||!e.getAttribute("src").match(/^data:image\/\w+;base64,/g)&&!e.getAttribute("src").match(/^blob:/g))}(o,t)&&!t.getAttribute("uploadProcessed"))).map((t=>({promise:fx(t),imageElement:t})));if(!r.length)return;const s=new Au(t.editing.view.document);for(const t of r){s.setAttribute("uploadProcessed",!0,t.imageElement);const e=i.createLoader(t.promise);e&&(s.setAttribute("src","",t.imageElement),s.setAttribute("uploadId",e.id,t.imageElement))}})),t.editing.view.document.on("dragover",((t,e)=>{e.preventDefault()})),e.on("change",(()=>{const n=e.differ.getChanges({includeChangesInGraveyard:!0}).reverse(),o=new Set;for(const e of n)if("insert"==e.type&&"$text"!=e.name){const n=e.position.nodeAfter,r="$graveyard"==e.position.root.rootName;for(const e of Nx(t,n)){const t=e.getAttribute("uploadId");if(!t)continue;const n=i.loaders.get(t);n&&(r?o.has(t)||n.abort():(o.add(t),this._uploadImageElements.set(t,e),"idle"==n.status&&this._readAndUpload(n)))}}})),this.on("uploadComplete",((t,{imageElement:e,data:n})=>{const i=n.urls?n.urls:n;this.editor.model.change((t=>{t.setAttribute("src",i.default,e),this._parseAndSetSrcsetAttributeOnImage(i,e,t),o.setImageNaturalSizeAttributes(e)}))}),{priority:"low"})}afterInit(){const t=this.editor.model.schema;this.editor.plugins.has("ImageBlockEditing")&&t.extend("imageBlock",{allowAttributes:["uploadId","uploadStatus"]}),this.editor.plugins.has("ImageInlineEditing")&&t.extend("imageInline",{allowAttributes:["uploadId","uploadStatus"]})}_readAndUpload(t){const e=this.editor,n=e.model,i=e.locale.t,o=e.plugins.get(o_),r=e.plugins.get(sk),a=e.plugins.get("ImageUtils"),c=this._uploadImageElements;return n.enqueueChange({isUndoable:!1},(e=>{e.setAttribute("uploadStatus","reading",c.get(t.id))})),t.read().then((()=>{const o=t.upload(),r=c.get(t.id);if(s.isSafari){const t=e.editing.mapper.toViewElement(r),n=a.findViewImgElement(t);e.editing.view.once("render",(()=>{if(!n.parent)return;const t=e.editing.view.domConverter.mapViewToDom(n.parent);if(!t)return;const i=t.style.display;t.style.display="none",t._ckHack=t.offsetHeight,t.style.display=i}))}return e.ui&&e.ui.ariaLiveAnnouncer.announce(i("Uploading image")),n.enqueueChange({isUndoable:!1},(t=>{t.setAttribute("uploadStatus","uploading",r)})),o})).then((o=>{n.enqueueChange({isUndoable:!1},(n=>{const r=c.get(t.id);n.setAttribute("uploadStatus","complete",r),e.ui&&e.ui.ariaLiveAnnouncer.announce(i("Image upload complete")),this.fire("uploadComplete",{data:o,imageElement:r})})),l()})).catch((o=>{if(e.ui&&e.ui.ariaLiveAnnouncer.announce(i("Error during image upload")),"error"!==t.status&&"aborted"!==t.status)throw o;"error"==t.status&&o&&r.showWarning(o,{title:i("Upload failed"),namespace:"upload"}),n.enqueueChange({isUndoable:!1},(e=>{e.remove(c.get(t.id))})),l()}));function l(){n.enqueueChange({isUndoable:!1},(e=>{const n=c.get(t.id);e.removeAttribute("uploadId",n),e.removeAttribute("uploadStatus",n),c.delete(t.id)})),o.destroyLoader(t)}}_parseAndSetSrcsetAttributeOnImage(t,e,n){let i=0;const o=Object.keys(t).filter((t=>{const e=parseInt(t,10);if(!isNaN(e))return i=Math.max(i,e),!0})).map((e=>`${t[e]} ${e}w`)).join(", ");if(""!=o){const t={srcset:o};e.hasAttribute("width")||e.hasAttribute("height")||(t.width=i),n.setAttributes(t,e)}}}function Nx(t,e){const n=t.plugins.get("ImageUtils");return Array.from(t.model.createRangeOn(e)).filter((t=>n.isImage(t.item))).map((t=>t.item))}const Hx=function(t,e){return function(n,i){if(null==n)return n;if(!sn(n))return t(n,i);for(var o=n.length,r=e?o:-1,s=Object(n);(e?r--:++r{e.setAttribute("resizedWidth",t.width,o),e.removeAttribute("resizedHeight",o),i.setImageNaturalSizeAttributes(o)}))}}class Ux extends er{static get requires(){return[xy]}static get pluginName(){return"ImageResizeEditing"}constructor(t){super(t),t.config.define("image",{resizeUnit:"%",resizeOptions:[{name:"resizeImage:original",value:null,icon:"original"},{name:"resizeImage:custom",value:"custom",icon:"custom"},{name:"resizeImage:25",value:"25",icon:"small"},{name:"resizeImage:50",value:"50",icon:"medium"},{name:"resizeImage:75",value:"75",icon:"large"}]})}init(){const t=this.editor,e=new Wx(t);this._registerConverters("imageBlock"),this._registerConverters("imageInline"),t.commands.add("resizeImage",e),t.commands.add("imageResize",e)}afterInit(){this._registerSchema()}_registerSchema(){this.editor.plugins.has("ImageBlockEditing")&&this.editor.model.schema.extend("imageBlock",{allowAttributes:["resizedWidth","resizedHeight"]}),this.editor.plugins.has("ImageInlineEditing")&&this.editor.model.schema.extend("imageInline",{allowAttributes:["resizedWidth","resizedHeight"]})}_registerConverters(t){const e=this.editor,n=e.plugins.get("ImageUtils");e.conversion.for("downcast").add((e=>e.on(`attribute:resizedWidth:${t}`,((t,e,n)=>{if(!n.consumable.consume(e.item,t.name))return;const i=n.writer,o=n.mapper.toViewElement(e.item);null!==e.attributeNewValue?(i.setStyle("width",e.attributeNewValue,o),i.addClass("image_resized",o)):(i.removeStyle("width",o),i.removeClass("image_resized",o))})))),e.conversion.for("dataDowncast").attributeToAttribute({model:{name:t,key:"resizedHeight"},view:t=>({key:"style",value:{height:t}})}),e.conversion.for("editingDowncast").add((e=>e.on(`attribute:resizedHeight:${t}`,((e,i,o)=>{if(!o.consumable.consume(i.item,e.name))return;const r=o.writer,s=o.mapper.toViewElement(i.item),a="imageInline"===t?n.findViewImgElement(s):s;null!==i.attributeNewValue?r.setStyle("height",i.attributeNewValue,a):r.removeStyle("height",a)})))),e.conversion.for("upcast").attributeToAttribute({view:{name:"imageBlock"===t?"figure":"img",styles:{width:/.+/}},model:{key:"resizedWidth",value:t=>by(t)?null:t.getStyle("width")}}),e.conversion.for("upcast").attributeToAttribute({view:{name:"imageBlock"===t?"figure":"img",styles:{height:/.+/}},model:{key:"resizedHeight",value:t=>by(t)?null:t.getStyle("height")}})}}var $x=Object.defineProperty,Gx=Object.defineProperties,Kx=Object.getOwnPropertyDescriptors,Jx=Object.getOwnPropertySymbols,Zx=Object.prototype.hasOwnProperty,Yx=Object.prototype.propertyIsEnumerable,Qx=(t,e,n)=>e in t?$x(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Xx=(t,e)=>{for(var n in e||(e={}))Zx.call(e,n)&&Qx(t,n,e[n]);if(Jx)for(var n of Jx(e))Yx.call(e,n)&&Qx(t,n,e[n]);return t},tE=(t,e)=>Gx(t,Kx(e));const eE={small:ym.objectSizeSmall,medium:ym.objectSizeMedium,large:ym.objectSizeLarge,custom:ym.objectSizeCustom,original:ym.objectSizeFull};class nE extends er{constructor(t){super(t),this._resizeUnit=t.config.get("image.resizeUnit")}static get requires(){return[Ux]}static get pluginName(){return"ImageResizeButtons"}init(){const t=this.editor,e=t.config.get("image.resizeOptions"),n=t.commands.get("resizeImage");this.bind("isEnabled").to(n);for(const t of e)this._registerImageResizeButton(t);this._registerImageResizeDropdown(e)}_registerImageResizeButton(t){const e=this.editor,{name:n,value:i,icon:o}=t;e.ui.componentFactory.add(n,(n=>{const r=new mg(n),s=e.commands.get("resizeImage"),a=this._getOptionLabelValue(t,!0);if(!eE[o])throw new w("imageresizebuttons-missing-icon",e,t);if(r.set({label:a,icon:eE[o],tooltip:a,isToggleable:!0}),r.bind("isEnabled").to(this),e.plugins.has("ImageCustomResizeUI")&&iE(t)){const t=e.plugins.get("ImageCustomResizeUI");this.listenTo(r,"execute",(()=>{t._showForm(this._resizeUnit)}))}else{const t=i?i+this._resizeUnit:null;r.bind("isOn").to(s,"value",oE(t)),this.listenTo(r,"execute",(()=>{e.execute("resizeImage",{width:t})}))}return r}))}_registerImageResizeDropdown(t){const e=this.editor,n=e.t,i=t.find((t=>!t.value)),o=o=>{const r=e.commands.get("resizeImage"),s=Ip(o,Qg),a=s.buttonView,c=n("Resize image");return a.set({tooltip:c,commandValue:i.value,icon:eE.medium,isToggleable:!0,label:this._getOptionLabelValue(i),withText:!0,class:"ck-resize-image-button",ariaLabel:c,ariaLabelledBy:void 0}),a.bind("label").to(r,"value",(t=>t&&t.width?t.width:this._getOptionLabelValue(i))),s.bind("isEnabled").to(this),Vp(s,(()=>this._getResizeDropdownListItemDefinitions(t,r)),{ariaLabel:n("Image resize list"),role:"menu"}),this.listenTo(s,"execute",(t=>{"onClick"in t.source?t.source.onClick():(e.execute(t.source.commandName,{width:t.source.commandValue}),e.editing.view.focus())})),s};e.ui.componentFactory.add("resizeImage",o),e.ui.componentFactory.add("imageResize",o)}_getOptionLabelValue(t,e=!1){const n=this.editor.t;return t.label?t.label:e?iE(t)?n("Custom image size"):t.value?n("Resize image to %0",t.value+this._resizeUnit):n("Resize image to the original size"):iE(t)?n("Custom"):t.value?t.value+this._resizeUnit:n("Original")}_getResizeDropdownListItemDefinitions(t,e){const{editor:n}=this,i=new Uo,o=t.map((t=>iE(t)?tE(Xx({},t),{valueWithUnits:"custom"}):t.value?tE(Xx({},t),{valueWithUnits:`${t.value}${this._resizeUnit}`}):tE(Xx({},t),{valueWithUnits:null})));for(const t of o){let r=null;if(n.plugins.has("ImageCustomResizeUI")&&iE(t)){const i=n.plugins.get("ImageCustomResizeUI");r={type:"button",model:new ak({label:this._getOptionLabelValue(t),role:"menuitemradio",withText:!0,icon:null,onClick:()=>{i._showForm(this._resizeUnit)}})};const s=qx(o,"valueWithUnits");r.model.bind("isOn").to(e,"value",rE(s))}else r={type:"button",model:new ak({commandName:"resizeImage",commandValue:t.valueWithUnits,label:this._getOptionLabelValue(t),role:"menuitemradio",withText:!0,icon:null})},r.model.bind("isOn").to(e,"value",oE(t.valueWithUnits));r.model.bind("isEnabled").to(e,"isEnabled"),i.add(r)}return i}}function iE(t){return"custom"===t.value}function oE(t){return e=>null===t&&e===t||null!==e&&e.width===t}function rE(t){return e=>!t.some((t=>oE(t)(e)))}const sE="image_resized";class aE extends er{static get requires(){return[Sv,xy]}static get pluginName(){return"ImageResizeHandles"}init(){const t=this.editor.commands.get("resizeImage");this.bind("isEnabled").to(t),this._setupResizerCreator()}_setupResizerCreator(){const t=this.editor,e=t.editing.view,n=t.plugins.get("ImageUtils");e.addObserver(Oy),this.listenTo(e.document,"imageLoaded",((i,o)=>{if(!o.target.matches("figure.image.ck-widget > img,figure.image.ck-widget > picture > img,figure.image.ck-widget > a > img,figure.image.ck-widget > a > picture > img,span.image-inline.ck-widget > img,span.image-inline.ck-widget > picture > img"))return;const r=t.editing.view.domConverter,s=r.domToView(o.target),a=n.getImageWidgetFromImageView(s);let c=this.editor.plugins.get(Sv).getResizerByViewElement(a);if(c)return void c.redraw();const l=t.editing.mapper,d=l.toModelElement(a);c=t.plugins.get(Sv).attachTo({unit:t.config.get("image.resizeUnit"),modelElement:d,viewElement:a,editor:t,getHandleHost:t=>t.querySelector("img"),getResizeHost:()=>r.mapViewToDom(l.toViewElement(d)),isCentered:()=>"alignCenter"==d.getAttribute("imageStyle"),onCommit(n){e.change((t=>{t.removeClass(sE,a)})),t.execute("resizeImage",{width:n})}}),c.on("updateSize",(()=>{a.hasClass(sE)||e.change((t=>{t.addClass(sE,a)}));const t="imageInline"===d.name?s:a;t.getStyle("height")&&e.change((e=>{e.removeStyle("height",t)}))})),c.bind("isEnabled").to(this)}))}}function cE(t){if(!t)return null;const[,e,n]=t.trim().match(/([.,\d]+)(%|px)$/)||[],i=Number.parseFloat(e);return Number.isNaN(i)?null:{value:i,unit:n}}function lE(t,e,n){return"px"===n?{value:e.value,unit:"px"}:{value:e.value/t*100,unit:"%"}}function dE(t){const{editing:e}=t,n=t.plugins.get("ImageUtils").getClosestSelectedImageElement(t.model.document.selection);if(!n)return null;const i=e.mapper.toViewElement(n);return{model:n,view:i,dom:e.view.domConverter.mapViewToDom(i)}}var hE=n(4642),uE={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(hE.A,uE);hE.A.locals;class mE extends Jm{constructor(t,e,n){super(t);const i=this.locale.t;this.focusTracker=new Go,this.keystrokes=new Ko,this.unit=e,this.labeledInput=this._createLabeledInputView(),this.saveButtonView=this._createButton(i("Save"),ym.check,"ck-button-save"),this.saveButtonView.type="submit",this.cancelButtonView=this._createButton(i("Cancel"),ym.cancel,"ck-button-cancel","cancel"),this._focusables=new xm,this._validators=n,this._focusCycler=new Xg({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"form",attributes:{class:["ck","ck-image-custom-resize-form","ck-responsive-form"],tabindex:"-1"},children:[this.labeledInput,this.saveButtonView,this.cancelButtonView]})}render(){super.render(),this.keystrokes.listenTo(this.element),Qm({view:this}),[this.labeledInput,this.saveButtonView,this.cancelButtonView].forEach((t=>{this._focusables.add(t),this.focusTracker.add(t.element)}))}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}_createButton(t,e,n,i){const o=new mg(this.locale);return o.set({label:t,icon:e,tooltip:!0}),o.extendTemplate({attributes:{class:n}}),i&&o.delegate("execute").to(this,i),o}_createLabeledInputView(){const t=this.locale.t,e=new zg(this.locale,Mp);return e.label=t("Resize image (in %0)",this.unit),e.fieldView.set({step:.1}),e}isValid(){this.resetFormStatus();for(const t of this._validators){const e=t(this);if(e)return this.labeledInput.errorText=e,!1}return!0}resetFormStatus(){this.labeledInput.errorText=null}get rawSize(){const{element:t}=this.labeledInput.fieldView;return t?t.value:null}get parsedSize(){const{rawSize:t}=this;if(null===t)return null;const e=Number.parseFloat(t);return Number.isNaN(e)?null:e}get sizeWithUnits(){const{parsedSize:t,unit:e}=this;return null===t?null:`${t}${e}`}}class gE extends er{static get requires(){return[mk]}static get pluginName(){return"ImageCustomResizeUI"}destroy(){super.destroy(),this._form&&this._form.destroy()}_createForm(t){const e=this.editor;this._balloon=this.editor.plugins.get("ContextualBalloon"),this._form=new(Ym(mE))(e.locale,t,function(t){const e=t.t;return[t=>""===t.rawSize.trim()?e("The value must not be empty."):null===t.parsedSize?e("The value should be a plain number."):void 0]}(e)),this._form.render(),this.listenTo(this._form,"submit",(()=>{this._form.isValid()&&(e.execute("resizeImage",{width:this._form.sizeWithUnits}),this._hideForm(!0))})),this.listenTo(this._form.labeledInput,"change:errorText",(()=>{e.ui.update()})),this.listenTo(this._form,"cancel",(()=>{this._hideForm(!0)})),this._form.keystrokes.set("Esc",((t,e)=>{this._hideForm(!0),e()})),Zm({emitter:this._form,activator:()=>this._isVisible,contextElements:()=>[this._balloon.view.element],callback:()=>this._hideForm()})}_showForm(t){if(this._isVisible)return;this._form||this._createForm(t);const e=this.editor,n=this._form.labeledInput;this._form.disableCssTransitions(),this._form.resetFormStatus(),this._isInBalloon||this._balloon.add({view:this._form,position:Py(e)});const i=function(t,e){const n=dE(t);if(!n)return null;const i=cE(n.model.getAttribute("resizedWidth")||null);return i?i.unit===e?i:lE(ZC(n.dom),{unit:"px",value:new Li(n.dom).width},e):null}(e,t),o=i?i.value.toFixed(1):"",r=function(t,e){const n=dE(t);if(!n)return null;const i=ZC(n.dom),o=cE(window.getComputedStyle(n.dom).minWidth)||{value:1,unit:"px"};return{unit:e,lower:Math.max(.1,lE(i,o,e).value),upper:"px"===e?i:100}}(e,t);n.fieldView.value=n.fieldView.element.value=o,r&&Object.assign(n.fieldView,{min:r.lower.toFixed(1),max:Math.ceil(r.upper).toFixed(1)}),this._form.labeledInput.fieldView.select(),this._form.enableCssTransitions()}_hideForm(t=!1){this._isInBalloon&&(this._form.focusTracker.isFocused&&this._form.saveButtonView.focus(),this._balloon.remove(this._form),t&&this.editor.editing.view.focus())}get _isVisible(){return!!this._balloon&&this._balloon.visibleView===this._form}get _isInBalloon(){return!!this._balloon&&this._balloon.hasView(this._form)}}var pE=n(3469),fE={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(pE.A,fE);pE.A.locals;class bE extends ir{constructor(t,e){super(t),this._defaultStyles={imageBlock:!1,imageInline:!1},this._styles=new Map(e.map((t=>{if(t.isDefault)for(const e of t.modelElements)this._defaultStyles[e]=t.name;return[t.name,t]})))}refresh(){const t=this.editor.plugins.get("ImageUtils").getClosestSelectedImageElement(this.editor.model.document.selection);this.isEnabled=!!t,this.isEnabled?t.hasAttribute("imageStyle")?this.value=t.getAttribute("imageStyle"):this.value=this._defaultStyles[t.name]:this.value=!1}execute(t={}){const e=this.editor,n=e.model,i=e.plugins.get("ImageUtils");n.change((e=>{const o=t.value,{setImageSizes:r=!0}=t;let s=i.getClosestSelectedImageElement(n.document.selection);o&&this.shouldConvertImageType(o,s)&&(this.editor.execute(i.isBlockImage(s)?"imageTypeInline":"imageTypeBlock",{setImageSizes:r}),s=i.getClosestSelectedImageElement(n.document.selection)),!o||this._styles.get(o).isDefault?e.removeAttribute("imageStyle",s):e.setAttribute("imageStyle",o,s),r&&i.setImageNaturalSizeAttributes(s)}))}shouldConvertImageType(t,e){return!this._styles.get(t).modelElements.includes(e.name)}}var kE=Object.defineProperty,wE=Object.getOwnPropertySymbols,_E=Object.prototype.hasOwnProperty,AE=Object.prototype.propertyIsEnumerable,CE=(t,e,n)=>e in t?kE(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,vE=(t,e)=>{for(var n in e||(e={}))_E.call(e,n)&&CE(t,n,e[n]);if(wE)for(var n of wE(e))AE.call(e,n)&&CE(t,n,e[n]);return t};const{objectFullWidth:yE,objectInline:xE,objectLeft:EE,objectRight:DE,objectCenter:BE,objectBlockLeft:SE,objectBlockRight:TE}=ym,IE={get inline(){return{name:"inline",title:"In line",icon:xE,modelElements:["imageInline"],isDefault:!0}},get alignLeft(){return{name:"alignLeft",title:"Left aligned image",icon:EE,modelElements:["imageBlock","imageInline"],className:"image-style-align-left"}},get alignBlockLeft(){return{name:"alignBlockLeft",title:"Left aligned image",icon:SE,modelElements:["imageBlock"],className:"image-style-block-align-left"}},get alignCenter(){return{name:"alignCenter",title:"Centered image",icon:BE,modelElements:["imageBlock"],className:"image-style-align-center"}},get alignRight(){return{name:"alignRight",title:"Right aligned image",icon:DE,modelElements:["imageBlock","imageInline"],className:"image-style-align-right"}},get alignBlockRight(){return{name:"alignBlockRight",title:"Right aligned image",icon:TE,modelElements:["imageBlock"],className:"image-style-block-align-right"}},get block(){return{name:"block",title:"Centered image",icon:BE,modelElements:["imageBlock"],isDefault:!0}},get side(){return{name:"side",title:"Side image",icon:DE,modelElements:["imageBlock"],className:"image-style-side"}}},PE={full:yE,left:SE,right:TE,center:BE,inlineLeft:EE,inlineRight:DE,inline:xE},RE=[{name:"imageStyle:wrapText",title:"Wrap text",defaultItem:"imageStyle:alignLeft",items:["imageStyle:alignLeft","imageStyle:alignRight"]},{name:"imageStyle:breakText",title:"Break text",defaultItem:"imageStyle:block",items:["imageStyle:alignBlockLeft","imageStyle:block","imageStyle:alignBlockRight"]}];function VE(t){_("image-style-configuration-definition-invalid",t)}const FE={normalizeStyles:function(t){return(t.configuredStyles.options||[]).map((t=>function(t){t="string"==typeof t?IE[t]?vE({},IE[t]):{name:t}:function(t,e){const n=vE({},e);for(const i in t)Object.prototype.hasOwnProperty.call(e,i)||(n[i]=t[i]);return n}(IE[t.name],t);"string"==typeof t.icon&&(t.icon=PE[t.icon]||t.icon);return t}(t))).filter((e=>function(t,{isBlockPluginLoaded:e,isInlinePluginLoaded:n}){const{modelElements:i,name:o}=t;if(!(i&&i.length&&o))return VE({style:t}),!1;{const o=[e?"imageBlock":null,n?"imageInline":null];if(!i.some((t=>o.includes(t))))return _("image-style-missing-dependency",{style:t,missingPlugins:i.map((t=>"imageBlock"===t?"ImageBlockEditing":"ImageInlineEditing"))}),!1}return!0}(e,t)))},getDefaultStylesConfiguration:function(t,e){return t&&e?{options:["inline","alignLeft","alignRight","alignCenter","alignBlockLeft","alignBlockRight","block","side"]}:t?{options:["block","side"]}:e?{options:["inline","alignLeft","alignRight"]}:{}},getDefaultDropdownDefinitions:function(t){return t.has("ImageBlockEditing")&&t.has("ImageInlineEditing")?[...RE]:[]},warnInvalidStyle:VE,DEFAULT_OPTIONS:IE,DEFAULT_ICONS:PE,DEFAULT_DROPDOWN_DEFINITIONS:RE};function LE(t,e){for(const n of e)if(n.name===t)return n}class OE extends er{static get pluginName(){return"ImageStyleEditing"}static get requires(){return[xy]}init(){const{normalizeStyles:t,getDefaultStylesConfiguration:e}=FE,n=this.editor,i=n.plugins.has("ImageBlockEditing"),o=n.plugins.has("ImageInlineEditing");n.config.define("image.styles",e(i,o)),this.normalizedStyles=t({configuredStyles:n.config.get("image.styles"),isBlockPluginLoaded:i,isInlinePluginLoaded:o}),this._setupConversion(i,o),this._setupPostFixer(),n.commands.add("imageStyle",new bE(n,this.normalizedStyles))}_setupConversion(t,e){const n=this.editor,i=n.model.schema,o=(r=this.normalizedStyles,(t,e,n)=>{if(!n.consumable.consume(e.item,t.name))return;const i=LE(e.attributeNewValue,r),o=LE(e.attributeOldValue,r),s=n.mapper.toViewElement(e.item),a=n.writer;o&&a.removeClass(o.className,s),i&&a.addClass(i.className,s)});var r;const s=function(t){const e={imageInline:t.filter((t=>!t.isDefault&&t.modelElements.includes("imageInline"))),imageBlock:t.filter((t=>!t.isDefault&&t.modelElements.includes("imageBlock")))};return(t,n,i)=>{if(!n.modelRange)return;const o=n.viewItem,r=$o(n.modelRange.getItems());if(r&&i.schema.checkAttribute(r,"imageStyle"))for(const t of e[r.name])i.consumable.consume(o,{classes:t.className})&&i.writer.setAttribute("imageStyle",t.name,r)}}(this.normalizedStyles);n.editing.downcastDispatcher.on("attribute:imageStyle",o),n.data.downcastDispatcher.on("attribute:imageStyle",o),t&&(i.extend("imageBlock",{allowAttributes:"imageStyle"}),n.data.upcastDispatcher.on("element:figure",s,{priority:"low"})),e&&(i.extend("imageInline",{allowAttributes:"imageStyle"}),n.data.upcastDispatcher.on("element:img",s,{priority:"low"}))}_setupPostFixer(){const t=this.editor,e=t.model.document,n=t.plugins.get(xy),i=new Map(this.normalizedStyles.map((t=>[t.name,t])));e.registerPostFixer((t=>{let o=!1;for(const r of e.differ.getChanges())if("insert"==r.type||"attribute"==r.type&&"imageStyle"==r.attributeKey){let e="insert"==r.type?r.position.nodeAfter:r.range.start.nodeAfter;if(e&&e.is("element","paragraph")&&e.childCount>0&&(e=e.getChild(0)),!n.isImage(e))continue;const s=e.getAttribute("imageStyle");if(!s)continue;const a=i.get(s);a&&a.modelElements.includes(e.name)||(t.removeAttribute("imageStyle",e),o=!0)}return o}))}}var zE=n(6386),ME={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(zE.A,ME);zE.A.locals;class NE extends er{static get requires(){return[OE]}static get pluginName(){return"ImageStyleUI"}get localizedDefaultStylesTitles(){const t=this.editor.t;return{"Wrap text":t("Wrap text"),"Break text":t("Break text"),"In line":t("In line"),"Full size image":t("Full size image"),"Side image":t("Side image"),"Left aligned image":t("Left aligned image"),"Centered image":t("Centered image"),"Right aligned image":t("Right aligned image")}}init(){const t=this.editor.plugins,e=this.editor.config.get("image.toolbar")||[],n=HE(t.get("ImageStyleEditing").normalizedStyles,this.localizedDefaultStylesTitles);for(const t of n)this._createButton(t);const i=HE([...e.filter(O),...FE.getDefaultDropdownDefinitions(t)],this.localizedDefaultStylesTitles);for(const t of i)this._createDropdown(t,n)}_createDropdown(t,e){const n=this.editor.ui.componentFactory;n.add(t.name,(i=>{let o;const{defaultItem:r,items:s,title:a}=t,c=s.filter((t=>e.find((({name:e})=>jE(e)===t)))).map((t=>{const e=n.create(t);return t===r&&(o=e),e}));s.length!==c.length&&FE.warnInvalidStyle({dropdown:t});const l=Ip(i,Ep),d=l.buttonView,h=d.arrowView;return Pp(l,c,{enableActiveItemFocusOnDropdownOpen:!0}),d.set({label:qE(a,o.label),class:null,tooltip:!0}),h.unbind("label"),h.set({label:a}),d.bind("icon").toMany(c,"isOn",((...t)=>{const e=t.findIndex(Bo);return e<0?o.icon:c[e].icon})),d.bind("label").toMany(c,"isOn",((...t)=>{const e=t.findIndex(Bo);return qE(a,e<0?o.label:c[e].label)})),d.bind("isOn").toMany(c,"isOn",((...t)=>t.some(Bo))),d.bind("class").toMany(c,"isOn",((...t)=>t.some(Bo)?"ck-splitbutton_flatten":void 0)),d.on("execute",(()=>{c.some((({isOn:t})=>t))?l.isOpen=!l.isOpen:o.fire("execute")})),l.bind("isEnabled").toMany(c,"isEnabled",((...t)=>t.some(Bo))),this.listenTo(l,"execute",(()=>{this.editor.editing.view.focus()})),l}))}_createButton(t){const e=t.name;this.editor.ui.componentFactory.add(jE(e),(n=>{const i=this.editor.commands.get("imageStyle"),o=new mg(n);return o.set({label:t.title,icon:t.icon,tooltip:!0,isToggleable:!0}),o.bind("isEnabled").to(i,"isEnabled"),o.bind("isOn").to(i,"value",(t=>t===e)),o.on("execute",this._executeCommand.bind(this,e)),o}))}_executeCommand(t){this.editor.execute("imageStyle",{value:t}),this.editor.editing.view.focus()}}function HE(t,e){for(const n of t)e[n.title]&&(n.title=e[n.title]);return t}function jE(t){return`imageStyle:${t}`}function qE(t,e){return(t?t+": ":"")+e}class WE{constructor(){this._definitions=new Set}get length(){return this._definitions.size}add(t){Array.isArray(t)?t.forEach((t=>this._definitions.add(t))):this._definitions.add(t)}getDispatcher(){return t=>{t.on("attribute:linkHref",((t,e,n)=>{if(!n.consumable.test(e.item,"attribute:linkHref"))return;if(!e.item.is("selection")&&!n.schema.isInline(e.item))return;const i=n.writer,o=i.document.selection;for(const t of this._definitions){const r=i.createAttributeElement("a",t.attributes,{priority:5});t.classes&&i.addClass(t.classes,r);for(const e in t.styles)i.setStyle(e,t.styles[e],r);i.setCustomProperty("link",!0,r),t.callback(e.attributeNewValue)?e.item.is("selection")?i.wrap(o.getFirstRange(),r):i.wrap(n.mapper.toViewRange(e.range),r):i.unwrap(n.mapper.toViewRange(e.range),r)}}),{priority:"high"})}}getDispatcherForLinkedImage(){return t=>{t.on("attribute:linkHref:imageBlock",((t,e,{writer:n,mapper:i})=>{const o=i.toViewElement(e.item),r=Array.from(o.getChildren()).find((t=>t.is("element","a")));for(const t of this._definitions){const i=Jo(t.attributes);if(t.callback(e.attributeNewValue)){for(const[t,e]of i)"class"===t?n.addClass(e,r):n.setAttribute(t,e,r);t.classes&&n.addClass(t.classes,r);for(const e in t.styles)n.setStyle(e,t.styles[e],r)}else{for(const[t,e]of i)"class"===t?n.removeClass(e,r):n.removeAttribute(t,r);t.classes&&n.removeClass(t.classes,r);for(const e in t.styles)n.removeStyle(e,r)}}}))}}}const UE=function(t,e,n){var i=t.length;return n=void 0===n?i:n,!e&&n>=i?t:ts(t,e,n)};var $E=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");const GE=function(t){return $E.test(t)};const KE=function(t){return t.split("")};var JE="\\ud800-\\udfff",ZE="["+JE+"]",YE="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",QE="\\ud83c[\\udffb-\\udfff]",XE="[^"+JE+"]",tD="(?:\\ud83c[\\udde6-\\uddff]){2}",eD="[\\ud800-\\udbff][\\udc00-\\udfff]",nD="(?:"+YE+"|"+QE+")"+"?",iD="[\\ufe0e\\ufe0f]?",oD=iD+nD+("(?:\\u200d(?:"+[XE,tD,eD].join("|")+")"+iD+nD+")*"),rD="(?:"+[XE+YE+"?",YE,tD,eD,ZE].join("|")+")",sD=RegExp(QE+"(?="+QE+")|"+rD+oD,"g");const aD=function(t){return t.match(sD)||[]};const cD=function(t){return GE(t)?aD(t):KE(t)};const lD=function(t){return function(e){e=Jr(e);var n=GE(e)?cD(e):void 0,i=n?n[0]:e.charAt(0),o=n?UE(n,1).join(""):e.slice(1);return i[t]()+o}}("toUpperCase"),dD=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205f\u3000]/g,hD=/^[\S]+@((?![-_])(?:[-\w\u00a1-\uffff]{0,63}[^-_]\.))+(?:[a-z\u00a1-\uffff]{2,})$/i,uD=/^((\w+:(\/{2,})?)|(\W))/i,mD=["https?","ftps?","mailto"],gD="Ctrl+K";function pD(t,{writer:e}){const n=e.createAttributeElement("a",{href:t},{priority:5});return e.setCustomProperty("link",!0,n),n}function fD(t,e=mD){const n=String(t),i=e.join("|");return function(t,e){const n=t.replace(dD,"");return!!n.match(e)}(n,new RegExp(`${"^(?:(?:):|[^a-z]|[a-z+.-]+(?:[^a-z+.:-]|$))".replace("",i)}`,"i"))?n:"#"}function bD(t,e){return!!t&&e.checkAttribute(t.name,"linkHref")}function kD(t,e){const n=(i=t,hD.test(i)?"mailto:":e);var i;const o=!!n&&!wD(t);return t&&o?n+t:t}function wD(t){return uD.test(t)}function _D(t){window.open(t,"_blank","noopener")}class AD extends ir{constructor(){super(...arguments),this.manualDecorators=new Uo,this.automaticDecorators=new WE}restoreManualDecoratorStates(){for(const t of this.manualDecorators)t.value=this._getDecoratorStateFromModel(t.id)}refresh(){const t=this.editor.model,e=t.document.selection,n=e.getSelectedElement()||$o(e.getSelectedBlocks());bD(n,t.schema)?(this.value=n.getAttribute("linkHref"),this.isEnabled=t.schema.checkAttribute(n,"linkHref")):(this.value=e.getAttribute("linkHref"),this.isEnabled=t.schema.checkAttributeInSelection(e,"linkHref"));for(const t of this.manualDecorators)t.value=this._getDecoratorStateFromModel(t.id)}execute(t,e={}){const n=this.editor.model,i=n.document.selection,o=[],r=[];for(const t in e)e[t]?o.push(t):r.push(t);n.change((e=>{if(i.isCollapsed){const s=i.getFirstPosition();if(i.hasAttribute("linkHref")){const a=CD(i);let c=H_(s,"linkHref",i.getAttribute("linkHref"),n);i.getAttribute("linkHref")===a&&(c=this._updateLinkContent(n,e,c,t)),e.setAttribute("linkHref",t,c),o.forEach((t=>{e.setAttribute(t,!0,c)})),r.forEach((t=>{e.removeAttribute(t,c)})),e.setSelection(e.createPositionAfter(c.end.nodeBefore))}else if(""!==t){const r=Jo(i.getAttributes());r.set("linkHref",t),o.forEach((t=>{r.set(t,!0)}));const{end:a}=n.insertContent(e.createText(t,r),s);e.setSelection(a)}["linkHref",...o,...r].forEach((t=>{e.removeSelectionAttribute(t)}))}else{const s=n.schema.getValidRanges(i.getRanges(),"linkHref"),a=[];for(const t of i.getSelectedBlocks())n.schema.checkAttribute(t,"linkHref")&&a.push(e.createRangeOn(t));const c=a.slice();for(const t of s)this._isRangeToUpdate(t,a)&&c.push(t);for(const s of c){let a=s;if(1===c.length){const o=CD(i);i.getAttribute("linkHref")===o&&(a=this._updateLinkContent(n,e,s,t),e.setSelection(e.createSelection(a)))}e.setAttribute("linkHref",t,a),o.forEach((t=>{e.setAttribute(t,!0,a)})),r.forEach((t=>{e.removeAttribute(t,a)}))}}}))}_getDecoratorStateFromModel(t){const e=this.editor.model,n=e.document.selection,i=n.getSelectedElement();return bD(i,e.schema)?i.getAttribute(t):n.getAttribute(t)}_isRangeToUpdate(t,e){for(const n of e)if(n.containsRange(t))return!1;return!0}_updateLinkContent(t,e,n,i){const o=e.createText(i,{linkHref:i});return t.insertContent(o,n)}}function CD(t){if(t.isCollapsed){const e=t.getFirstPosition();return e.textNode&&e.textNode.data}{const e=Array.from(t.getFirstRange().getItems());if(e.length>1)return null;const n=e[0];return n.is("$text")||n.is("$textProxy")?n.data:null}}class vD extends ir{refresh(){const t=this.editor.model,e=t.document.selection,n=e.getSelectedElement();bD(n,t.schema)?this.isEnabled=t.schema.checkAttribute(n,"linkHref"):this.isEnabled=t.schema.checkAttributeInSelection(e,"linkHref")}execute(){const t=this.editor,e=this.editor.model,n=e.document.selection,i=t.commands.get("link");e.change((t=>{const o=n.isCollapsed?[H_(n.getFirstPosition(),"linkHref",n.getAttribute("linkHref"),e)]:e.schema.getValidRanges(n.getRanges(),"linkHref");for(const e of o)if(t.removeAttribute("linkHref",e),i)for(const n of i.manualDecorators)t.removeAttribute(n.id,e)}))}}class yD extends(W()){constructor({id:t,label:e,attributes:n,classes:i,styles:o,defaultValue:r}){super(),this.id=t,this.set("value",void 0),this.defaultValue=r,this.label=e,this.attributes=n,this.classes=i,this.styles=o}_createPattern(){return{attributes:this.attributes,classes:this.classes,styles:this.styles}}}var xD=n(7719),ED={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(xD.A,ED);xD.A.locals;var DD=Object.defineProperty,BD=Object.getOwnPropertySymbols,SD=Object.prototype.hasOwnProperty,TD=Object.prototype.propertyIsEnumerable,ID=(t,e,n)=>e in t?DD(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,PD=(t,e)=>{for(var n in e||(e={}))SD.call(e,n)&&ID(t,n,e[n]);if(BD)for(var n of BD(e))TD.call(e,n)&&ID(t,n,e[n]);return t};const RD="automatic",VD=/^(https?:)?\/\//;class FD extends er{static get pluginName(){return"LinkEditing"}static get requires(){return[D_,g_,RC]}constructor(t){super(t),t.config.define("link",{allowCreatingEmptyLinks:!1,addTargetToExternalLinks:!1})}init(){const t=this.editor,e=this.editor.config.get("link.allowedProtocols");t.model.schema.extend("$text",{allowAttributes:"linkHref"}),t.conversion.for("dataDowncast").attributeToElement({model:"linkHref",view:pD}),t.conversion.for("editingDowncast").attributeToElement({model:"linkHref",view:(t,n)=>pD(fD(t,e),n)}),t.conversion.for("upcast").elementToAttribute({view:{name:"a",attributes:{href:!0}},model:{key:"linkHref",value:t=>t.getAttribute("href")}}),t.commands.add("link",new AD(t)),t.commands.add("unlink",new vD(t));const n=function(t,e){const n={"Open in a new tab":t("Open in a new tab"),Downloadable:t("Downloadable")};return e.forEach((t=>("label"in t&&n[t.label]&&(t.label=n[t.label]),t))),e}(t.t,function(t){const e=[];if(t)for(const[n,i]of Object.entries(t)){const t=Object.assign({},i,{id:`link${lD(n)}`});e.push(t)}return e}(t.config.get("link.decorators")));this._enableAutomaticDecorators(n.filter((t=>t.mode===RD))),this._enableManualDecorators(n.filter((t=>"manual"===t.mode)));t.plugins.get(D_).registerAttribute("linkHref"),q_(t,"linkHref","a","ck-link_selected"),this._enableSelectionAttributesFixer(),this._enableClipboardIntegration()}_enableAutomaticDecorators(t){const e=this.editor,n=e.commands.get("link").automaticDecorators;e.config.get("link.addTargetToExternalLinks")&&n.add({id:"linkIsExternal",mode:RD,callback:t=>!!t&&VD.test(t),attributes:{target:"_blank",rel:"noopener noreferrer"}}),n.add(t),n.length&&e.conversion.for("downcast").add(n.getDispatcher())}_enableManualDecorators(t){if(!t.length)return;const e=this.editor,n=e.commands.get("link").manualDecorators;t.forEach((t=>{e.model.schema.extend("$text",{allowAttributes:t.id});const i=new yD(t);n.add(i),e.conversion.for("downcast").attributeToElement({model:i.id,view:(t,{writer:e,schema:n},{item:o})=>{if((o.is("selection")||n.isInline(o))&&t){const t=e.createAttributeElement("a",i.attributes,{priority:5});i.classes&&e.addClass(i.classes,t);for(const n in i.styles)e.setStyle(n,i.styles[n],t);return e.setCustomProperty("link",!0,t),t}}}),e.conversion.for("upcast").elementToAttribute({view:PD({name:"a"},i._createPattern()),model:{key:i.id}})}))}_enableLinkOpen(){const t=this.editor,e=t.editing.view.document;this.listenTo(e,"click",((t,e)=>{if(!(s.isMac?e.domEvent.metaKey:e.domEvent.ctrlKey))return;let n=e.domTarget;if("a"!=n.tagName.toLowerCase()&&(n=n.closest("a")),!n)return;const i=n.getAttribute("href");i&&(t.stop(),e.preventDefault(),_D(i))}),{context:"$capture"}),this.listenTo(e,"keydown",((e,n)=>{const i=t.commands.get("link").value;!!i&&n.keyCode===go.enter&&n.altKey&&(e.stop(),_D(i))}))}_enableSelectionAttributesFixer(){const t=this.editor.model,e=t.document.selection;this.listenTo(e,"change:attribute",((n,{attributeKeys:i})=>{i.includes("linkHref")&&!e.hasAttribute("linkHref")&&t.change((e=>{var n;!function(t,e){t.removeSelectionAttribute("linkHref");for(const n of e)t.removeSelectionAttribute(n)}(e,(n=t.schema,n.getDefinition("$text").allowAttributes.filter((t=>t.startsWith("link")))))}))}))}_enableClipboardIntegration(){const t=this.editor,e=t.model,n=this.editor.config.get("link.defaultProtocol");n&&this.listenTo(t.plugins.get("ClipboardPipeline"),"contentInsertion",((t,i)=>{e.change((t=>{const e=t.createRangeIn(i.content);for(const i of e.getItems())if(i.hasAttribute("linkHref")){const e=kD(i.getAttribute("linkHref"),n);t.setAttribute("linkHref",e,i)}}))}))}}var LD=n(3817),OD={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(LD.A,OD);LD.A.locals;class zD extends Jm{constructor(t,e,n){super(t),this.focusTracker=new Go,this.keystrokes=new Ko,this._focusables=new xm;const i=t.t;this._validators=n,this.urlInputView=this._createUrlInput(),this.saveButtonView=this._createButton(i("Save"),ym.check,"ck-button-save"),this.saveButtonView.type="submit",this.cancelButtonView=this._createButton(i("Cancel"),ym.cancel,"ck-button-cancel","cancel"),this._manualDecoratorSwitches=this._createManualDecoratorSwitches(e),this.children=this._createFormChildren(e.manualDecorators),this._focusCycler=new Xg({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});const o=["ck","ck-link-form","ck-responsive-form"];e.manualDecorators.length&&o.push("ck-link-form_layout-vertical","ck-vertical-form"),this.setTemplate({tag:"form",attributes:{class:o,tabindex:"-1"},children:this.children})}getDecoratorSwitchesState(){return Array.from(this._manualDecoratorSwitches).reduce(((t,e)=>(t[e.name]=e.isOn,t)),{})}render(){super.render(),Qm({view:this});[this.urlInputView,...this._manualDecoratorSwitches,this.saveButtonView,this.cancelButtonView].forEach((t=>{this._focusables.add(t),this.focusTracker.add(t.element)})),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}isValid(){this.resetFormStatus();for(const t of this._validators){const e=t(this);if(e)return this.urlInputView.errorText=e,!1}return!0}resetFormStatus(){this.urlInputView.errorText=null}_createUrlInput(){const t=this.locale.t,e=new zg(this.locale,zp);return e.label=t("Link URL"),e}_createButton(t,e,n,i){const o=new mg(this.locale);return o.set({label:t,icon:e,tooltip:!0}),o.extendTemplate({attributes:{class:n}}),i&&o.delegate("execute").to(this,i),o}_createManualDecoratorSwitches(t){const e=this.createCollection();for(const n of t.manualDecorators){const i=new fg(this.locale);i.set({name:n.id,label:n.label,withText:!0}),i.bind("isOn").toMany([n,t],"value",((t,e)=>void 0===e&&void 0===t?!!n.defaultValue:!!t)),i.on("execute",(()=>{n.set("value",!i.isOn)})),e.add(i)}return e}_createFormChildren(t){const e=this.createCollection();if(e.add(this.urlInputView),t.length){const t=new Jm;t.setTemplate({tag:"ul",children:this._manualDecoratorSwitches.map((t=>({tag:"li",children:[t],attributes:{class:["ck","ck-list__item"]}}))),attributes:{class:["ck","ck-reset","ck-list"]}}),e.add(t)}return e.add(this.saveButtonView),e.add(this.cancelButtonView),e}get url(){const{element:t}=this.urlInputView.fieldView;return t?t.value.trim():null}}var MD=n(8762),ND={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(MD.A,ND);MD.A.locals;class HD extends Jm{constructor(t,e={}){super(t),this.focusTracker=new Go,this.keystrokes=new Ko,this._focusables=new xm;const n=t.t;this.previewButtonView=this._createPreviewButton(),this.unlinkButtonView=this._createButton(n("Unlink"),'',"unlink"),this.editButtonView=this._createButton(n("Edit link"),ym.pencil,"edit"),this.set("href",void 0),this._linkConfig=e,this._focusCycler=new Xg({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-link-actions","ck-responsive-form"],tabindex:"-1"},children:[this.previewButtonView,this.editButtonView,this.unlinkButtonView]})}render(){super.render();[this.previewButtonView,this.editButtonView,this.unlinkButtonView].forEach((t=>{this._focusables.add(t),this.focusTracker.add(t.element)})),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}_createButton(t,e,n){const i=new mg(this.locale);return i.set({label:t,icon:e,tooltip:!0}),i.delegate("execute").to(this,n),i}_createPreviewButton(){const t=new mg(this.locale),e=this.bindTemplate,n=this.t;return t.set({withText:!0,tooltip:n("Open link in new tab")}),t.extendTemplate({attributes:{class:["ck","ck-link-actions__preview"],href:e.to("href",(t=>t&&fD(t,this._linkConfig.allowedProtocols))),target:"_blank",rel:"noopener noreferrer"}}),t.bind("label").to(this,"href",(t=>t||n("This link has no URL"))),t.bind("isEnabled").to(this,"href",(t=>!!t)),t.template.tag="a",t.template.eventListeners={},t}}const jD="link-ui";class qD extends er{constructor(){super(...arguments),this.actionsView=null,this.formView=null}static get requires(){return[mk]}static get pluginName(){return"LinkUI"}init(){const t=this.editor,e=this.editor.t;t.editing.view.addObserver(wu),this._balloon=t.plugins.get(mk),this._createToolbarLinkButton(),this._enableBalloonActivators(),t.conversion.for("editingDowncast").markerToHighlight({model:jD,view:{classes:["ck-fake-link-selection"]}}),t.conversion.for("editingDowncast").markerToElement({model:jD,view:{name:"span",classes:["ck-fake-link-selection","ck-fake-link-selection_collapsed"]}}),t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Create link"),keystroke:gD},{label:e("Move out of a link"),keystroke:[["arrowleft","arrowleft"],["arrowright","arrowright"]]}]})}destroy(){super.destroy(),this.formView&&this.formView.destroy(),this.actionsView&&this.actionsView.destroy()}_createViews(){this.actionsView=this._createActionsView(),this.formView=this._createFormView(),this._enableUserBalloonInteractions()}_createActionsView(){const t=this.editor,e=new HD(t.locale,t.config.get("link")),n=t.commands.get("link"),i=t.commands.get("unlink");return e.bind("href").to(n,"value"),e.editButtonView.bind("isEnabled").to(n),e.unlinkButtonView.bind("isEnabled").to(i),this.listenTo(e,"edit",(()=>{this._addFormView()})),this.listenTo(e,"unlink",(()=>{t.execute("unlink"),this._hideUI()})),e.keystrokes.set("Esc",((t,e)=>{this._hideUI(),e()})),e.keystrokes.set(gD,((t,e)=>{this._addFormView(),e()})),e}_createFormView(){const t=this.editor,e=t.commands.get("link"),n=t.config.get("link.defaultProtocol"),i=new(Ym(zD))(t.locale,e,function(t){const e=t.t,n=t.config.get("link.allowCreatingEmptyLinks");return[t=>{if(!n&&!t.url.length)return e("Link URL must not be empty.")}]}(t));return i.urlInputView.fieldView.bind("value").to(e,"value"),i.urlInputView.bind("isEnabled").to(e,"isEnabled"),i.saveButtonView.bind("isEnabled").to(e,"isEnabled"),this.listenTo(i,"submit",(()=>{if(i.isValid()){const{value:e}=i.urlInputView.fieldView.element,o=kD(e,n);t.execute("link",o,i.getDecoratorSwitchesState()),this._closeFormView()}})),this.listenTo(i.urlInputView,"change:errorText",(()=>{t.ui.update()})),this.listenTo(i,"cancel",(()=>{this._closeFormView()})),i.keystrokes.set("Esc",((t,e)=>{this._closeFormView(),e()})),i}_createToolbarLinkButton(){const t=this.editor,e=t.commands.get("link");t.ui.componentFactory.add("link",(()=>{const t=this._createButton(mg);return t.set({tooltip:!0,isToggleable:!0}),t.bind("isOn").to(e,"value",(t=>!!t)),t})),t.ui.componentFactory.add("menuBar:link",(()=>this._createButton(mw)))}_createButton(t){const e=this.editor,n=e.locale,i=e.commands.get("link"),o=new t(e.locale),r=n.t;return o.set({label:r("Link"),icon:'',keystroke:gD}),o.bind("isEnabled").to(i,"isEnabled"),this.listenTo(o,"execute",(()=>this._showUI(!0))),o}_enableBalloonActivators(){const t=this.editor,e=t.editing.view.document;this.listenTo(e,"click",(()=>{this._getSelectedLinkElement()&&this._showUI()})),t.keystrokes.set(gD,((e,n)=>{n(),t.commands.get("link").isEnabled&&this._showUI(!0)}))}_enableUserBalloonInteractions(){this.editor.keystrokes.set("Tab",((t,e)=>{this._areActionsVisible&&!this.actionsView.focusTracker.isFocused&&(this.actionsView.focus(),e())}),{priority:"high"}),this.editor.keystrokes.set("Esc",((t,e)=>{this._isUIVisible&&(this._hideUI(),e())})),Zm({emitter:this.formView,activator:()=>this._isUIInPanel,contextElements:()=>[this._balloon.view.element],callback:()=>this._hideUI()})}_addActionsView(){this.actionsView||this._createViews(),this._areActionsInPanel||this._balloon.add({view:this.actionsView,position:this._getBalloonPositionData()})}_addFormView(){if(this.formView||this._createViews(),this._isFormInPanel)return;const t=this.editor.commands.get("link");this.formView.disableCssTransitions(),this.formView.resetFormStatus(),this._balloon.add({view:this.formView,position:this._getBalloonPositionData()}),this.formView.urlInputView.fieldView.value=t.value||"",this._balloon.visibleView===this.formView&&this.formView.urlInputView.fieldView.select(),this.formView.enableCssTransitions()}_closeFormView(){const t=this.editor.commands.get("link");t.restoreManualDecoratorStates(),void 0!==t.value?this._removeFormView():this._hideUI()}_removeFormView(){this._isFormInPanel&&(this.formView.saveButtonView.focus(),this.formView.urlInputView.fieldView.reset(),this._balloon.remove(this.formView),this.editor.editing.view.focus(),this._hideFakeVisualSelection())}_showUI(t=!1){this.formView||this._createViews(),this._getSelectedLinkElement()?(this._areActionsVisible?this._addFormView():this._addActionsView(),t&&this._balloon.showStack("main")):(this._showFakeVisualSelection(),this._addActionsView(),t&&this._balloon.showStack("main"),this._addFormView()),this._startUpdatingUI()}_hideUI(){if(!this._isUIInPanel)return;const t=this.editor;this.stopListening(t.ui,"update"),this.stopListening(this._balloon,"change:visibleView"),t.editing.view.focus(),this._removeFormView(),this._balloon.remove(this.actionsView),this._hideFakeVisualSelection()}_startUpdatingUI(){const t=this.editor,e=t.editing.view.document;let n=this._getSelectedLinkElement(),i=r();const o=()=>{const t=this._getSelectedLinkElement(),e=r();n&&!t||!n&&e!==i?this._hideUI():this._isUIVisible&&this._balloon.updatePosition(this._getBalloonPositionData()),n=t,i=e};function r(){return e.selection.focus.getAncestors().reverse().find((t=>t.is("element")))}this.listenTo(t.ui,"update",o),this.listenTo(this._balloon,"change:visibleView",o)}get _isFormInPanel(){return!!this.formView&&this._balloon.hasView(this.formView)}get _areActionsInPanel(){return!!this.actionsView&&this._balloon.hasView(this.actionsView)}get _areActionsVisible(){return!!this.actionsView&&this._balloon.visibleView===this.actionsView}get _isUIInPanel(){return this._isFormInPanel||this._areActionsInPanel}get _isUIVisible(){const t=this._balloon.visibleView;return!!this.formView&&t==this.formView||this._areActionsVisible}_getBalloonPositionData(){const t=this.editor.editing.view,e=this.editor.model,n=t.document;let i;if(e.markers.has(jD)){const e=Array.from(this.editor.editing.mapper.markerNameToElements(jD)),n=t.createRange(t.createPositionBefore(e[0]),t.createPositionAfter(e[e.length-1]));i=t.domConverter.viewRangeToDom(n)}else i=()=>{const e=this._getSelectedLinkElement();return e?t.domConverter.mapViewToDom(e):t.domConverter.viewRangeToDom(n.selection.getFirstRange())};return{target:i}}_getSelectedLinkElement(){const t=this.editor.editing.view,e=t.document.selection,n=e.getSelectedElement();if(e.isCollapsed||n&&HC(n))return WD(e.getFirstPosition());{const n=e.getFirstRange().getTrimmed(),i=WD(n.start),o=WD(n.end);return i&&i==o&&t.createRangeIn(i).getTrimmed().isEqual(n)?i:null}}_showFakeVisualSelection(){const t=this.editor.model;t.change((e=>{const n=t.document.selection.getFirstRange();if(t.markers.has(jD))e.updateMarker(jD,{range:n});else if(n.start.isAtEnd){const i=n.start.getLastMatchingPosition((({item:e})=>!t.schema.isContent(e)),{boundaries:n});e.addMarker(jD,{usingOperation:!1,affectsData:!1,range:e.createRange(i,n.end)})}else e.addMarker(jD,{usingOperation:!1,affectsData:!1,range:n})}))}_hideFakeVisualSelection(){const t=this.editor.model;t.markers.has(jD)&&t.change((t=>{t.removeMarker(jD)}))}}function WD(t){return t.getAncestors().find((t=>{return(e=t).is("attributeElement")&&!!e.getCustomProperty("link");var e}))||null}const UD=new RegExp("(^|\\s)(((?:(?:(?:https?|ftp):)?\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(((?!www\\.)|(www\\.))(?![-_])(?:[-_a-z0-9\\u00a1-\\uffff]{1,63}\\.)+(?:[a-z\\u00a1-\\uffff]{2,63})))(?::\\d{2,5})?(?:[/?#]\\S*)?)|((www.|(\\S+@))((?![-_])(?:[-_a-z0-9\\u00a1-\\uffff]{1,63}\\.))+(?:[a-z\\u00a1-\\uffff]{2,63})))$","i");class $D extends er{static get requires(){return[v_,FD]}static get pluginName(){return"AutoLink"}init(){const t=this.editor.model.document.selection;t.on("change:range",(()=>{this.isEnabled=!t.anchor.parent.is("element","codeBlock")})),this._enableTypingHandling()}afterInit(){this._enableEnterHandling(),this._enableShiftEnterHandling(),this._enablePasteLinking()}_expandLinkRange(t,e){return e.textNode&&e.textNode.hasAttribute("linkHref")?H_(e,"linkHref",e.textNode.getAttribute("linkHref"),t):null}_selectEntireLinks(t,e){const n=this.editor.model,i=n.document.selection,o=i.getFirstPosition(),r=i.getLastPosition();let s=e.getJoined(this._expandLinkRange(n,o)||e);s&&(s=s.getJoined(this._expandLinkRange(n,r)||e)),s&&(s.start.isBefore(o)||s.end.isAfter(r))&&t.setSelection(s)}_enablePasteLinking(){const t=this.editor,e=t.model,n=e.document.selection,i=t.plugins.get("ClipboardPipeline"),o=t.commands.get("link");i.on("inputTransformation",((t,i)=>{if(!this.isEnabled||!o.isEnabled||n.isCollapsed||"paste"!==i.method)return;if(n.rangeCount>1)return;const r=n.getFirstRange(),s=i.dataTransfer.getData("text/plain");if(!s)return;const a=s.match(UD);a&&a[2]===s&&(e.change((t=>{this._selectEntireLinks(t,r),o.execute(s)})),t.stop())}),{priority:"high"})}_enableTypingHandling(){const t=this.editor,e=new E_(t.model,(t=>{if(!function(t){return t.length>4&&" "===t[t.length-1]&&" "!==t[t.length-2]}(t))return;const e=GD(t.substr(0,t.length-1));return e?{url:e}:void 0}));e.on("matched:data",((e,n)=>{const{batch:i,range:o,url:r}=n;if(!i.isTyping)return;const s=o.end.getShiftedBy(-1),a=s.getShiftedBy(-r.length),c=t.model.createRange(a,s);this._applyAutoLink(r,c)})),e.bind("isEnabled").to(this)}_enableEnterHandling(){const t=this.editor,e=t.model,n=t.commands.get("enter");n&&n.on("execute",(()=>{const t=e.document.selection.getFirstPosition();if(!t.parent.previousSibling)return;const n=e.createRangeIn(t.parent.previousSibling);this._checkAndApplyAutoLinkOnRange(n)}))}_enableShiftEnterHandling(){const t=this.editor,e=t.model,n=t.commands.get("shiftEnter");n&&n.on("execute",(()=>{const t=e.document.selection.getFirstPosition(),n=e.createRange(e.createPositionAt(t.parent,0),t.getShiftedBy(-1));this._checkAndApplyAutoLinkOnRange(n)}))}_checkAndApplyAutoLinkOnRange(t){const e=this.editor.model,{text:n,range:i}=x_(t,e),o=GD(n);if(o){const t=e.createRange(i.end.getShiftedBy(-o.length),i.end);this._applyAutoLink(o,t)}}_applyAutoLink(t,e){const n=this.editor.model,i=kD(t,this.editor.config.get("link.defaultProtocol"));this.isEnabled&&function(t,e){return e.schema.checkAttributeInSelection(e.createSelection(t),"linkHref")}(e,n)&&wD(i)&&!function(t){const e=t.start.nodeAfter;return!!e&&e.hasAttribute("linkHref")}(e)&&this._persistAutoLink(i,e)}_persistAutoLink(t,e){const n=this.editor.model,i=this.editor.plugins.get("Delete");n.enqueueChange((o=>{o.setAttribute("linkHref",t,e),n.enqueueChange((()=>{i.requestUndoOnBackspace()}))}))}}function GD(t){const e=UD.exec(t);return e?e[2]:null}var KD=n(4808),JD={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(KD.A,JD);KD.A.locals;class ZD{constructor(t,e){this._startElement=t,this._referenceIndent=t.getAttribute("listIndent"),this._isForward="forward"==e.direction,this._includeSelf=!!e.includeSelf,this._sameAttributes=_o(e.sameAttributes||[]),this._sameIndent=!!e.sameIndent,this._lowerIndent=!!e.lowerIndent,this._higherIndent=!!e.higherIndent}static first(t,e){return $o(new this(t,e)[Symbol.iterator]())}*[Symbol.iterator](){const t=[];for(const{node:e}of YD(this._getStartNode(),this._isForward?"forward":"backward")){const n=e.getAttribute("listIndent");if(nthis._referenceIndent){if(!this._higherIndent)continue;if(!this._isForward){t.push(e);continue}}else{if(!this._sameIndent){if(this._higherIndent){t.length&&(yield*t,t.length=0);break}continue}if(this._sameAttributes.some((t=>e.getAttribute(t)!==this._startElement.getAttribute(t))))break}t.length&&(yield*t,t.length=0),yield e}}_getStartNode(){return this._includeSelf?this._startElement:this._isForward?this._startElement.nextSibling:this._startElement.previousSibling}}function*YD(t,e="forward"){const n="forward"==e,i=[];let o=null;for(;lB(t);){let e=null;if(o){const n=t.getAttribute("listIndent"),r=o.getAttribute("listIndent");n>r?i[r]=o:ne in t?XD(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,sB=(t,e)=>{for(var n in e||(e={}))iB.call(e,n)&&rB(t,n,e[n]);if(nB)for(var n of nB(e))oB.call(e,n)&&rB(t,n,e[n]);return t},aB=(t,e)=>tB(t,eB(e));class cB{static next(){return p()}}function lB(t){return!!t&&t.is("element")&&t.hasAttribute("listItemId")}function dB(t,e={}){return[...hB(t,aB(sB({},e),{direction:"backward"})),...hB(t,aB(sB({},e),{direction:"forward"}))]}function hB(t,e={}){const n="forward"==e.direction,i=Array.from(new ZD(t,aB(sB({},e),{includeSelf:n,sameIndent:!0,sameAttributes:"listItemId"})));return n?i:i.reverse()}function uB(t,e){const n=new ZD(t,sB({sameIndent:!0,sameAttributes:"listType"},e)),i=new ZD(t,sB({sameIndent:!0,sameAttributes:"listType",includeSelf:!0,direction:"forward"},e));return[...Array.from(n).reverse(),...i]}function mB(t){return!ZD.first(t,{sameIndent:!0,sameAttributes:"listItemId"})}function gB(t){return!ZD.first(t,{direction:"forward",sameIndent:!0,sameAttributes:"listItemId"})}function pB(t,e={}){t=_o(t);const n=!1!==e.withNested,i=new Set;for(const e of t)for(const t of dB(e,{higherIndent:n}))i.add(t);return CB(i)}function fB(t){t=_o(t);const e=new Set;for(const n of t)for(const t of uB(n))e.add(t);return CB(e)}function bB(t,e){const n=hB(t,{direction:"forward"}),i=cB.next();for(const t of n)e.setAttribute("listItemId",i,t);return n}function kB(t,e,n){const i={};for(const[t,n]of e.getAttributes())t.startsWith("list")&&(i[t]=n);const o=hB(t,{direction:"forward"});for(const t of o)n.setAttributes(i,t);return o}function wB(t,e,{expand:n,indentBy:i=1}={}){t=_o(t);const o=n?pB(t):t;for(const t of o){const n=t.getAttribute("listIndent")+i;n<0?_B(t,e):e.setAttribute("listIndent",n,t)}return o}function _B(t,e){t=_o(t);for(const n of t)n.is("element","listItem")&&e.rename(n,"paragraph");for(const n of t)for(const t of n.getAttributeKeys())t.startsWith("list")&&e.removeAttribute(t,n);return t}function AB(t){if(!t.length)return!1;const e=t[0].getAttribute("listItemId");return!!e&&!t.some((t=>t.getAttribute("listItemId")!=e))}function CB(t){return Array.from(t).filter((t=>"$graveyard"!==t.root.rootName)).sort(((t,e)=>t.index-e.index))}function vB(t){const e=t.document.selection.getSelectedElement();return e&&t.schema.isObject(e)&&t.schema.isBlock(e)?e:null}function yB(t,e){return e.checkChild(t.parent,"listItem")&&e.checkChild(t,"$text")&&!e.isObject(t)}function xB(t){return"numbered"==t||"customNumbered"==t}function EB(t,e,n){return hB(e,{direction:"forward"}).pop().index>t.index?kB(t,e,n):[]}class DB extends ir{constructor(t,e){super(t),this._direction=e}refresh(){this.isEnabled=this._checkEnabled()}execute(){const t=this.editor.model,e=BB(t.document.selection);t.change((t=>{const n=[];AB(e)&&!mB(e[0])?("forward"==this._direction&&n.push(...wB(e,t)),n.push(...bB(e[0],t))):"forward"==this._direction?n.push(...wB(e,t,{expand:!0})):n.push(...function(t,e){const n=pB(t=_o(t)),i=new Set,o=Math.min(...n.map((t=>t.getAttribute("listIndent")))),r=new Map;for(const t of n)r.set(t,ZD.first(t,{lowerIndent:!0}));for(const t of n){if(i.has(t))continue;i.add(t);const n=t.getAttribute("listIndent")-1;if(n<0)_B(t,e);else{if(t.getAttribute("listIndent")==o){const n=EB(t,r.get(t),e);for(const t of n)i.add(t);if(n.length)continue}e.setAttribute("listIndent",n,t)}}return CB(i)}(e,t));for(const e of n){if(!e.hasAttribute("listType"))continue;const n=ZD.first(e,{sameIndent:!0});n&&t.setAttribute("listType",n.getAttribute("listType"),e)}this._fireAfterExecute(n)}))}_fireAfterExecute(t){this.fire("afterExecute",CB(new Set(t)))}_checkEnabled(){let t=BB(this.editor.model.document.selection),e=t[0];if(!e)return!1;if("backward"==this._direction)return!0;if(AB(t)&&!mB(t[0]))return!0;t=pB(t),e=t[0];const n=ZD.first(e,{sameIndent:!0});return!!n&&n.getAttribute("listType")==e.getAttribute("listType")}}function BB(t){const e=Array.from(t.getSelectedBlocks()),n=e.findIndex((t=>!lB(t)));return-1!=n&&(e.length=n),e}var SB=Object.defineProperty,TB=Object.defineProperties,IB=Object.getOwnPropertyDescriptors,PB=Object.getOwnPropertySymbols,RB=Object.prototype.hasOwnProperty,VB=Object.prototype.propertyIsEnumerable,FB=(t,e,n)=>e in t?SB(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,LB=(t,e)=>{for(var n in e||(e={}))RB.call(e,n)&&FB(t,n,e[n]);if(PB)for(var n of PB(e))VB.call(e,n)&&FB(t,n,e[n]);return t},OB=(t,e)=>TB(t,IB(e));class zB extends ir{constructor(t,e,n={}){super(t),this.type=e,this._listWalkerOptions=n.multiLevel?{higherIndent:!0,lowerIndent:!0,sameAttributes:[]}:void 0}refresh(){this.value=this._getValue(),this.isEnabled=this._checkEnabled()}execute(t={}){const e=this.editor.model,n=e.document,i=vB(e),o=Array.from(n.selection.getSelectedBlocks()).filter((t=>e.schema.checkAttribute(t,"listType")||yB(t,e.schema))),r=void 0!==t.forceValue?!t.forceValue:this.value;e.change((s=>{if(r){const t=o[o.length-1],e=hB(t,{direction:"forward"}),n=[];e.length>1&&n.push(...bB(e[1],s)),n.push(..._B(o,s)),n.push(...function(t,e){const n=[];let i=Number.POSITIVE_INFINITY;for(const{node:o}of YD(t.nextSibling,"forward")){const t=o.getAttribute("listIndent");if(0==t)break;t{const{firstElement:r,lastElement:s}=this._getMergeSubjectElements(n,t),a=r.getAttribute("listIndent")||0,c=s.getAttribute("listIndent"),l=s.getAttribute("listItemId");if(a!=c){const t=(d=s,Array.from(new ZD(d,{direction:"forward",higherIndent:!0})));i.push(...wB([s,...t],o,{indentBy:a-c,expand:a{const e=bB(this._getStartBlock(),t);this._fireAfterExecute(e)}))}_fireAfterExecute(t){this.fire("afterExecute",CB(new Set(t)))}_checkEnabled(){const t=this.editor.model.document.selection,e=this._getStartBlock();return t.isCollapsed&&lB(e)&&!mB(e)}_getStartBlock(){const t=this.editor.model.document.selection.getFirstPosition().parent;return"before"==this._direction?t:t.nextSibling}}class HB extends er{static get pluginName(){return"ListUtils"}expandListBlocksToCompleteList(t){return fB(t)}isFirstBlockOfListItem(t){return mB(t)}isListItemBlock(t){return lB(t)}expandListBlocksToCompleteItems(t,e={}){return pB(t,e)}isNumberedListType(t){return xB(t)}}function jB(t){return t.is("element","ol")||t.is("element","ul")}function qB(t){return t.is("element","li")}function WB(t,e,n,i=GB(n,e)){return t.createAttributeElement($B(n),null,{priority:2*e/100-100,id:i})}function UB(t,e,n){return t.createAttributeElement("li",null,{priority:(2*e+1)/100-100,id:n})}function $B(t){return"numbered"==t||"customNumbered"==t?"ol":"ul"}function GB(t,e){return`list-${t}-${e}`}function KB(t,e){const n=t.nodeBefore;if(lB(n)){let t=n;for(const{node:n}of YD(t,"backward"))if(t=n,e.has(t))return;e.set(n,t)}else{const n=t.nodeAfter;lB(n)&&e.set(n,n)}}function JB(){return(t,e,n)=>{const{writer:i,schema:o}=n;if(!e.modelRange)return;const r=Array.from(e.modelRange.getItems({shallow:!0})).filter((t=>o.checkAttribute(t,"listItemId")));if(!r.length)return;const s=cB.next(),a=function(t){let e=0,n=t.parent;for(;n;){if(qB(n))e++;else{const t=n.previousSibling;t&&qB(t)&&e++}n=n.parent}return e}(e.viewItem);let c=e.viewItem.parent&&e.viewItem.parent.is("element","ol")?"numbered":"bulleted";const l=r[0].getAttribute("listType");l&&(c=l);const d={listItemId:s,listIndent:a,listType:c};for(const t of r)t.hasAttribute("listItemId")||i.setAttributes(d,t);r.length>1&&r[1].getAttribute("listItemId")!=d.listItemId&&n.keepEmptyElement(r[0])}}function ZB(){return(t,e,n)=>{if(!n.consumable.test(e.viewItem,{name:!0}))return;const i=new Au(e.viewItem.document);for(const t of Array.from(e.viewItem.getChildren()))qB(t)||jB(t)||i.remove(t)}}function YB(t,e,n,{dataPipeline:i}={}){const o=function(t){return(e,n)=>{const i=[];for(const n of t)e.hasAttribute(n)&&i.push(`attribute:${n}`);return!!i.every((t=>!1!==n.test(e,t)))&&(i.forEach((t=>n.consume(e,t))),!0)}}(t);return(r,s,a)=>{const{writer:c,mapper:l,consumable:d}=a,h=s.item;if(!t.includes(s.attributeKey))return;if(!o(h,d))return;const u=function(t,e,n){const i=n.createRangeOn(t),o=e.toViewRange(i).getTrimmed();return o.end.nodeBefore}(h,l,n);XB(u,c,l),function(t,e){let n=t.parent;for(;n.is("attributeElement")&&["ul","ol","li"].includes(n.name);){const i=n.parent;e.unwrap(e.createRangeOn(t),n),n=i}}(u,c);const m=function(t,e,n,i,{dataPipeline:o}){let r=i.createRangeOn(e);if(!mB(t))return r;for(const s of n){if("itemMarker"!=s.scope)continue;const n=s.createElement(i,t,{dataPipeline:o});if(!n)continue;if(i.setCustomProperty("listItemMarker",!0,n),s.canInjectMarkerIntoElement&&s.canInjectMarkerIntoElement(t)?i.insert(i.createPositionAt(e,0),n):(i.insert(r.start,n),r=i.createRange(i.createPositionBefore(n),i.createPositionAfter(e))),!s.createWrapperElement||!s.canWrapElement)continue;const a=s.createWrapperElement(i,t,{dataPipeline:o});i.setCustomProperty("listItemWrapper",!0,a),s.canWrapElement(t)?r=i.wrap(r,a):(r=i.wrap(i.createRangeOn(n),a),r=i.createRange(r.start,i.createPositionAfter(e)))}return r}(h,u,e,c,{dataPipeline:i});!function(t,e,n,i){if(!t.hasAttribute("listIndent"))return;const o=t.getAttribute("listIndent");let r=t;for(let t=o;t>=0;t--){const o=UB(i,t,r.getAttribute("listItemId")),s=WB(i,t,r.getAttribute("listType"));for(const t of n)"list"!=t.scope&&"item"!=t.scope||!r.hasAttribute(t.attributeName)||t.setAttributeOnDowncast(i,r.getAttribute(t.attributeName),"list"==t.scope?s:o);if(e=i.wrap(e,o),e=i.wrap(e,s),0==t)break;if(r=ZD.first(r,{lowerIndent:!0}),!r)break}}(h,m,e,c)}}function QB(t,{dataPipeline:e}={}){return(n,{writer:i})=>{if(!tS(n,t))return null;if(!e)return i.createContainerElement("span",{class:"ck-list-bogus-paragraph"});const o=i.createContainerElement("p");return i.setCustomProperty("dataPipeline:transparentRendering",!0,o),o}}function XB(t,e,n){for(;t.parent.is("attributeElement")&&t.parent.getCustomProperty("listItemWrapper");)e.unwrap(e.createRangeOn(t),t.parent);const i=[];o(e.createPositionBefore(t).getWalker({direction:"backward"})),o(e.createRangeIn(t).getWalker());for(const t of i)e.remove(t);function o(t){for(const{item:e}of t){if(e.is("element")&&n.toModelElement(e))break;e.is("element")&&e.getCustomProperty("listItemMarker")&&i.push(e)}}}function tS(t,e,n=dB(t)){if(!lB(t))return!1;for(const n of t.getAttributeKeys())if(!n.startsWith("selection:")&&!e.includes(n))return!1;return n.length<2}var eS=n(1232),nS={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(eS.A,nS);eS.A.locals;var iS=n(6903),oS={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(iS.A,oS);iS.A.locals;const rS=["listType","listIndent","listItemId"];class sS extends er{constructor(t){super(t),this._downcastStrategies=[],t.config.define("list.multiBlock",!0)}static get pluginName(){return"ListEditing"}static get requires(){return[IA,v_,HB,RC]}init(){const t=this.editor,e=t.model,n=t.config.get("list.multiBlock");if(t.plugins.has("LegacyListEditing"))throw new w("list-feature-conflict",this,{conflictPlugin:"LegacyListEditing"});e.schema.register("$listItem",{allowAttributes:rS}),n?(e.schema.extend("$container",{allowAttributesOf:"$listItem"}),e.schema.extend("$block",{allowAttributesOf:"$listItem"}),e.schema.extend("$blockObject",{allowAttributesOf:"$listItem"})):e.schema.register("listItem",{inheritAllFrom:"$block",allowAttributesOf:"$listItem"});for(const t of rS)e.schema.setAttributeProperties(t,{copyOnReplace:!0});t.commands.add("numberedList",new zB(t,"numbered")),t.commands.add("bulletedList",new zB(t,"bulleted")),t.commands.add("customNumberedList",new zB(t,"customNumbered",{multiLevel:!0})),t.commands.add("customBulletedList",new zB(t,"customBulleted",{multiLevel:!0})),t.commands.add("indentList",new DB(t,"forward")),t.commands.add("outdentList",new DB(t,"backward")),t.commands.add("splitListItemBefore",new NB(t,"before")),t.commands.add("splitListItemAfter",new NB(t,"after")),n&&(t.commands.add("mergeListItemBackward",new MB(t,"backward")),t.commands.add("mergeListItemForward",new MB(t,"forward"))),this._setupDeleteIntegration(),this._setupEnterIntegration(),this._setupTabIntegration(),this._setupClipboardIntegration(),this._setupAccessibilityIntegration()}afterInit(){const t=this.editor.commands,e=t.get("indent"),n=t.get("outdent");e&&e.registerChildCommand(t.get("indentList"),{priority:"high"}),n&&n.registerChildCommand(t.get("outdentList"),{priority:"lowest"}),this._setupModelPostFixing(),this._setupConversion()}registerDowncastStrategy(t){this._downcastStrategies.push(t)}getListAttributeNames(){return[...rS,...this._downcastStrategies.map((t=>t.attributeName))]}_setupDeleteIntegration(){const t=this.editor,e=t.commands.get("mergeListItemBackward"),n=t.commands.get("mergeListItemForward");this.listenTo(t.editing.view.document,"delete",((i,o)=>{const r=t.model.document.selection;vB(t.model)||t.model.change((()=>{const s=r.getFirstPosition();if(r.isCollapsed&&"backward"==o.direction){if(!s.isAtStart)return;const n=s.parent;if(!lB(n))return;if(ZD.first(n,{sameAttributes:"listType",sameIndent:!0})||0!==n.getAttribute("listIndent")){if(!e||!e.isEnabled)return;e.execute({shouldMergeOnBlocksContentLevel:aS(t.model,"backward")})}else gB(n)||t.execute("splitListItemAfter"),t.execute("outdentList");o.preventDefault(),i.stop()}else{if(r.isCollapsed&&!r.getLastPosition().isAtEnd)return;if(!n||!n.isEnabled)return;n.execute({shouldMergeOnBlocksContentLevel:aS(t.model,"forward")}),o.preventDefault(),i.stop()}}))}),{context:"li"})}_setupEnterIntegration(){const t=this.editor,e=t.model,n=t.commands,i=n.get("enter");this.listenTo(t.editing.view.document,"enter",((n,i)=>{const o=e.document,r=o.selection.getFirstPosition().parent;if(o.selection.isCollapsed&&lB(r)&&r.isEmpty&&!i.isSoft){const e=mB(r),o=gB(r);e&&o?(t.execute("outdentList"),i.preventDefault(),n.stop()):e&&!o?(t.execute("splitListItemAfter"),i.preventDefault(),n.stop()):o&&(t.execute("splitListItemBefore"),i.preventDefault(),n.stop())}}),{context:"li"}),this.listenTo(i,"afterExecute",(()=>{const e=n.get("splitListItemBefore");if(e.refresh(),!e.isEnabled)return;2===dB(t.model.document.selection.getLastPosition().parent).length&&e.execute()}))}_setupTabIntegration(){const t=this.editor;this.listenTo(t.editing.view.document,"tab",((e,n)=>{const i=n.shiftKey?"outdentList":"indentList";this.editor.commands.get(i).isEnabled&&(t.execute(i),n.stopPropagation(),n.preventDefault(),e.stop())}),{context:"li"})}_setupConversion(){const t=this.editor,e=t.model,n=this.getListAttributeNames(),i=t.config.get("list.multiBlock"),o=i?"paragraph":"listItem";t.conversion.for("upcast").elementToElement({view:"li",model:(t,{writer:e})=>e.createElement(o,{listType:""})}).elementToElement({view:"p",model:(t,{writer:e})=>t.parent&&t.parent.is("element","li")?e.createElement(o,{listType:""}):null,converterPriority:"high"}).add((t=>{t.on("element:li",JB()),t.on("element:ul",ZB(),{priority:"high"}),t.on("element:ol",ZB(),{priority:"high"})})),i||t.conversion.for("downcast").elementToElement({model:"listItem",view:"p"}),t.conversion.for("editingDowncast").elementToElement({model:o,view:QB(n),converterPriority:"high"}).add((t=>{var i;t.on("attribute",YB(n,this._downcastStrategies,e)),t.on("remove",(i=e.schema,(t,e,n)=>{const{writer:o,mapper:r}=n,s=t.name.split(":")[1];if(!i.checkAttribute(s,"listItemId"))return;const a=r.toViewPosition(e.position),c=e.position.getShiftedBy(e.length),l=r.toViewPosition(c,{isPhantom:!0}),d=o.createRange(a,l).getTrimmed().end.nodeBefore;d&&XB(d,o,r)}))})),t.conversion.for("dataDowncast").elementToElement({model:o,view:QB(n,{dataPipeline:!0}),converterPriority:"high"}).add((t=>{t.on("attribute",YB(n,this._downcastStrategies,e,{dataPipeline:!0}))}));const r=(s=this._downcastStrategies,a=t.editing.view,(t,e)=>{if(e.modelPosition.offset>0)return;const n=e.modelPosition.parent;if(!lB(n))return;if(!s.some((t=>"itemMarker"==t.scope&&t.canInjectMarkerIntoElement&&t.canInjectMarkerIntoElement(n))))return;const i=e.mapper.toViewElement(n),o=a.createRangeIn(i),r=o.getWalker();let c=o.start;for(const{item:t}of r){if(t.is("element")&&e.mapper.toModelElement(t)||t.is("$textProxy"))break;t.is("element")&&t.getCustomProperty("listItemMarker")&&(c=a.createPositionAfter(t),r.skip((({previousPosition:t})=>!t.isEqual(c))))}e.viewPosition=c});var s,a;t.editing.mapper.on("modelToViewPosition",r),t.data.mapper.on("modelToViewPosition",r),this.listenTo(e.document,"change:data",function(t,e,n,i){return()=>{const i=t.document.differ.getChanges(),s=[],a=new Map,c=new Set;for(const t of i)if("insert"==t.type&&"$text"!=t.name)KB(t.position,a),t.attributes.has("listItemId")?c.add(t.position.nodeAfter):KB(t.position.getShiftedBy(t.length),a);else if("remove"==t.type&&t.attributes.has("listItemId"))KB(t.position,a);else if("attribute"==t.type){const e=t.range.start.nodeAfter;n.includes(t.attributeKey)?(KB(t.range.start,a),null===t.attributeNewValue?(KB(t.range.start.getShiftedBy(1),a),r(e)&&s.push(e)):c.add(e)):lB(e)&&r(e)&&s.push(e)}for(const t of a.values())s.push(...o(t,c));for(const t of new Set(s))e.reconvertItem(t)};function o(t,e){const i=[],o=new Set,a=[];for(const{node:c,previous:l}of YD(t,"forward")){if(o.has(c))continue;const t=c.getAttribute("listIndent");l&&tn.includes(t))));const d=hB(c,{direction:"forward"});for(const t of d)o.add(t),(r(t,d)||s(t,a,e))&&i.push(t)}return i}function r(t,o){const r=e.mapper.toViewElement(t);if(!r)return!1;if(i.fire("checkElement",{modelElement:t,viewElement:r}))return!0;if(!t.is("element","paragraph")&&!t.is("element","listItem"))return!1;const s=tS(t,n,o);return!(!s||!r.is("element","p"))||!(s||!r.is("element","span"))}function s(t,n,o){if(o.has(t))return!1;const r=e.mapper.toViewElement(t);let s=n.length-1;for(let t=r.parent;!t.is("editableElement");t=t.parent){const e=qB(t),o=jB(t);if(!o&&!e)continue;const r="checkAttributes:"+(e?"item":"list");if(i.fire(r,{viewElement:t,modelAttributes:n[s]}))break;if(o&&(s--,s<0))return!1}return!0}}(e,t.editing,n,this),{priority:"high"}),this.on("checkAttributes:item",((t,{viewElement:e,modelAttributes:n})=>{e.id!=n.listItemId&&(t.return=!0,t.stop())})),this.on("checkAttributes:list",((t,{viewElement:e,modelAttributes:n})=>{e.name==$B(n.listType)&&e.id==GB(n.listType,n.listIndent)||(t.return=!0,t.stop())}))}_setupModelPostFixing(){const t=this.editor.model,e=this.getListAttributeNames();t.document.registerPostFixer((n=>function(t,e,n,i){const o=t.document.differ.getChanges(),r=new Map,s=i.editor.config.get("list.multiBlock");let a=!1;for(const i of o){if("insert"==i.type&&"$text"!=i.name){const o=i.position.nodeAfter;if(!t.schema.checkAttribute(o,"listItemId"))for(const t of Array.from(o.getAttributeKeys()))n.includes(t)&&(e.removeAttribute(t,o),a=!0);KB(i.position,r),i.attributes.has("listItemId")||KB(i.position.getShiftedBy(i.length),r);for(const{item:e,previousPosition:n}of t.createRangeIn(o))lB(e)&&KB(n,r)}else"remove"==i.type?KB(i.position,r):"attribute"==i.type&&n.includes(i.attributeKey)&&(KB(i.range.start,r),null===i.attributeNewValue&&KB(i.range.start.getShiftedBy(1),r));if(!s&&"attribute"==i.type&&rS.includes(i.attributeKey)){const t=i.range.start.nodeAfter;null===i.attributeNewValue&&t&&t.is("element","listItem")?(e.rename(t,"paragraph"),a=!0):null===i.attributeOldValue&&t&&t.is("element")&&"listItem"!=t.name&&(e.rename(t,"listItem"),a=!0)}}const c=new Set;for(const t of r.values())a=i.fire("postFixer",{listNodes:new QD(t),listHead:t,writer:e,seenIds:c})||a;return a}(t,n,e,this))),this.on("postFixer",((t,{listNodes:e,writer:n})=>{t.return=function(t,e){let n=0,i=-1,o=null,r=!1;for(const{node:s}of t){const t=s.getAttribute("listIndent");if(t>n){let a;null===o?(o=t-n,a=n):(o>t&&(o=t),a=t-o),a>i+1&&(a=i+1),e.setAttribute("listIndent",a,s),r=!0,i=a}else o=null,n=t+1,i=t}return r}(e,n)||t.return}),{priority:"high"}),this.on("postFixer",((t,{listNodes:e,writer:n,seenIds:i})=>{t.return=function(t,e,n){const i=new Set;let o=!1;for(const{node:r}of t){if(i.has(r))continue;let t=r.getAttribute("listType"),s=r.getAttribute("listItemId");if(e.has(s)&&(s=cB.next()),e.add(s),r.is("element","listItem"))r.getAttribute("listItemId")!=s&&(n.setAttribute("listItemId",s,r),o=!0);else for(const e of hB(r,{direction:"forward"}))i.add(e),e.getAttribute("listType")!=t&&(s=cB.next(),t=e.getAttribute("listType")),e.getAttribute("listItemId")!=s&&(n.setAttribute("listItemId",s,e),o=!0)}return o}(e,i,n)||t.return}),{priority:"high"})}_setupClipboardIntegration(){const t=this.editor.model,e=this.editor.plugins.get("ClipboardPipeline");this.listenTo(t,"insertContent",function(t){return(e,[n,i])=>{const o=n.is("documentFragment")?Array.from(n.getChildren()):[n];if(!o.length)return;const r=(i?t.createSelection(i):t.document.selection).getFirstPosition();let s;if(lB(r.parent))s=r.parent;else{if(!lB(r.nodeBefore))return;s=r.nodeBefore}t.change((t=>{const e=s.getAttribute("listType"),n=s.getAttribute("listIndent"),i=o[0].getAttribute("listIndent")||0,r=Math.max(n-i,0);for(const n of o){const i=lB(n);s.is("element","listItem")&&n.is("element","paragraph")&&t.rename(n,"listItem"),t.setAttributes({listIndent:(i?n.getAttribute("listIndent"):0)+r,listItemId:i?n.getAttribute("listItemId"):cB.next(),listType:e},n)}}))}}(t),{priority:"high"}),this.listenTo(e,"outputTransformation",((e,n)=>{t.change((t=>{const e=Array.from(n.content.getChildren()),i=e[e.length-1];if(e.length>1&&i.is("element")&&i.isEmpty){e.slice(0,-1).every(lB)&&t.remove(i)}if("copy"==n.method||"cut"==n.method){const e=Array.from(n.content.getChildren());AB(e)&&_B(e,t)}}))}))}_setupAccessibilityIntegration(){const t=this.editor,e=t.t;t.accessibility.addKeystrokeInfoGroup({id:"list",label:e("Keystrokes that can be used in a list"),keystrokes:[{label:e("Increase list item indent"),keystroke:"Tab"},{label:e("Decrease list item indent"),keystroke:"Shift+Tab"}]})}}function aS(t,e){const n=t.document.selection;if(!n.isCollapsed)return!vB(t);if("forward"===e)return!0;const i=n.getFirstPosition().parent,o=i.previousSibling;return!t.schema.isObject(o)&&(!!o.isEmpty||AB([i,o]))}function cS(t,e,n,i){t.ui.componentFactory.add(e,(()=>{const o=lS(mg,t,e,n,i);return o.set({tooltip:!0,isToggleable:!0}),o})),t.ui.componentFactory.add(`menuBar:${e}`,(()=>lS(mw,t,e,n,i)))}function lS(t,e,n,i,o){const r=e.commands.get(n),s=new t(e.locale);return s.set({label:i,icon:o}),s.bind("isOn","isEnabled").to(r,"value","isEnabled"),s.on("execute",(()=>{e.execute(n),e.editing.view.focus()})),s}class dS extends er{static get pluginName(){return"ListUI"}init(){const t=this.editor.t;this.editor.ui.componentFactory.has("numberedList")||cS(this.editor,"numberedList",t("Numbered List"),ym.numberedList),this.editor.ui.componentFactory.has("bulletedList")||cS(this.editor,"bulletedList",t("Bulleted List"),ym.bulletedList)}}class hS extends er{static get requires(){return[sS,dS]}static get pluginName(){return"List"}}const uS={},mS={},gS={},pS=[{listStyle:"disc",typeAttribute:"disc",listType:"bulleted"},{listStyle:"circle",typeAttribute:"circle",listType:"bulleted"},{listStyle:"square",typeAttribute:"square",listType:"bulleted"},{listStyle:"decimal",typeAttribute:"1",listType:"numbered"},{listStyle:"decimal-leading-zero",typeAttribute:null,listType:"numbered"},{listStyle:"lower-roman",typeAttribute:"i",listType:"numbered"},{listStyle:"upper-roman",typeAttribute:"I",listType:"numbered"},{listStyle:"lower-alpha",typeAttribute:"a",listType:"numbered"},{listStyle:"upper-alpha",typeAttribute:"A",listType:"numbered"},{listStyle:"lower-latin",typeAttribute:"a",listType:"numbered"},{listStyle:"upper-latin",typeAttribute:"A",listType:"numbered"}];for(const{listStyle:t,typeAttribute:e,listType:n}of pS)uS[t]=n,mS[t]=e,e&&(gS[e]=t);var fS=n(9968),bS={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(fS.A,bS);fS.A.locals;var kS=n(7141),wS={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(kS.A,wS);kS.A.locals;Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;class _S extends ir{constructor(t){super(t),this.on("execute",(()=>{this.refresh()}),{priority:"highest"})}refresh(){const t=this._getSelectedItems();this.value=this._getValue(t),this.isEnabled=!!t.length}execute(t={}){this.editor.model.change((e=>{const n=this._getSelectedItems(),i=void 0===t.forceValue?!this._getValue(n):t.forceValue;for(const t of n)i?e.setAttribute("todoListChecked",!0,t):e.removeAttribute("todoListChecked",t)}))}_getValue(t){return t.every((t=>t.getAttribute("todoListChecked")))}_getSelectedItems(){const t=this.editor.model,e=t.schema,n=t.document.selection.getFirstRange(),i=n.start.parent,o=[];e.checkAttribute(i,"todoListChecked")&&o.push(...dB(i));for(const t of n.getItems({shallow:!0}))e.checkAttribute(t,"todoListChecked")&&!o.includes(t)&&o.push(...dB(t));return o}}class AS extends Ta{constructor(){super(...arguments),this.domEventType=["change"]}onDomEvent(t){if(t.target){const e=this.view.domConverter.mapDomToView(t.target);e&&e.is("element","input")&&"checkbox"==e.getAttribute("type")&&e.findAncestor({classes:"todo-list__label"})&&this.fire("todoCheckboxChange",t)}}}var CS=Object.defineProperty,vS=Object.getOwnPropertySymbols,yS=Object.prototype.hasOwnProperty,xS=Object.prototype.propertyIsEnumerable,ES=(t,e,n)=>e in t?CS(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,DS=(t,e)=>{for(var n in e||(e={}))yS.call(e,n)&&ES(t,n,e[n]);if(vS)for(var n of vS(e))xS.call(e,n)&&ES(t,n,e[n]);return t};const BS=bo("Ctrl+Enter");class SS extends er{static get pluginName(){return"TodoListEditing"}static get requires(){return[sS]}init(){const t=this.editor,e=t.model,n=t.editing,i=t.plugins.get(sS),o=t.config.get("list.multiBlock")?"paragraph":"listItem";t.commands.add("todoList",new zB(t,"todo")),t.commands.add("checkTodoList",new _S(t)),n.view.addObserver(AS),e.schema.extend("$listItem",{allowAttributes:"todoListChecked"}),e.schema.addAttributeCheck(((t,e)=>{const n=t.last;if("todoListChecked"==e)return!(!n.getAttribute("listItemId")||"todo"!=n.getAttribute("listType"))&&void 0})),t.conversion.for("upcast").add((t=>{t.on("element:input",((t,e,n)=>{const i=e.modelCursor,o=i.parent,r=e.viewItem;if(!n.consumable.test(r,{name:!0}))return;if("checkbox"!=r.getAttribute("type")||!i.isAtStart||!o.hasAttribute("listType"))return;n.consumable.consume(r,{name:!0});const s=n.writer;s.setAttribute("listType","todo",o),e.viewItem.hasAttribute("checked")&&s.setAttribute("todoListChecked",!0,o),e.modelRange=s.createRange(i)})),t.on("element:label",TS({name:"label",classes:"todo-list__label"})),t.on("element:label",TS({name:"label",classes:["todo-list__label","todo-list__label_without-description"]})),t.on("element:span",TS({name:"span",classes:"todo-list__label__description"})),t.on("element:ul",function(t){const e=new Ir(t);return(t,n,i)=>{const o=e.match(n.viewItem);if(!o)return;const r=o.match;r.name=!1,i.consumable.consume(n.viewItem,r)}}({name:"ul",classes:"todo-list"}))})),t.conversion.for("downcast").elementToElement({model:o,view:(t,{writer:e})=>{if(IS(t,i.getListAttributeNames()))return e.createContainerElement("span",{class:"todo-list__label__description"})},converterPriority:"highest"}),i.registerDowncastStrategy({scope:"list",attributeName:"listType",setAttributeOnDowncast(t,e,n){"todo"==e?t.addClass("todo-list",n):t.removeClass("todo-list",n)}}),i.registerDowncastStrategy({scope:"itemMarker",attributeName:"todoListChecked",createElement(t,e,{dataPipeline:n}){if("todo"!=e.getAttribute("listType"))return null;const i=t.createUIElement("input",DS(DS({type:"checkbox"},e.getAttribute("todoListChecked")?{checked:"checked"}:null),n?{disabled:"disabled"}:{tabindex:"-1"}));if(n)return i;const o=t.createContainerElement("span",{contenteditable:"false"},i);return o.getFillerOffset=()=>null,o},canWrapElement:t=>IS(t,i.getListAttributeNames()),createWrapperElement(t,e,{dataPipeline:n}){const o=["todo-list__label"];return IS(e,i.getListAttributeNames())||o.push("todo-list__label_without-description"),t.createAttributeElement(n?"label":"span",{class:o.join(" ")})}}),i.on("checkElement",((t,{modelElement:e,viewElement:n})=>{const o=IS(e,i.getListAttributeNames());n.hasClass("todo-list__label__description")!=o&&(t.return=!0,t.stop())})),i.on("checkElement",((e,{modelElement:n,viewElement:i})=>{const o="todo"==n.getAttribute("listType")&&mB(n);let r=!1;const s=t.editing.view.createPositionBefore(i).getWalker({direction:"backward"});for(const{item:e}of s){if(e.is("element")&&t.editing.mapper.toModelElement(e))break;e.is("element","input")&&"checkbox"==e.getAttribute("type")&&(r=!0)}r!=o&&(e.return=!0,e.stop())})),i.on("postFixer",((t,{listNodes:e,writer:n})=>{for(const{node:i,previousNodeInList:o}of e){if(!o)continue;if(o.getAttribute("listItemId")!=i.getAttribute("listItemId"))continue;const e=o.hasAttribute("todoListChecked"),r=i.hasAttribute("todoListChecked");r&&!e?(n.removeAttribute("todoListChecked",i),t.return=!0):!r&&e&&(n.setAttribute("todoListChecked",!0,i),t.return=!0)}})),e.document.registerPostFixer((t=>{const n=e.document.differ.getChanges();let i=!1;for(const e of n)if("attribute"==e.type&&"listType"==e.attributeKey){const n=e.range.start.nodeAfter;"todo"==e.attributeOldValue&&n.hasAttribute("todoListChecked")&&(t.removeAttribute("todoListChecked",n),i=!0)}else if("insert"==e.type&&"$text"!=e.name)for(const{item:n}of t.createRangeOn(e.position.nodeAfter))n.is("element")&&"todo"!=n.getAttribute("listType")&&n.hasAttribute("todoListChecked")&&(t.removeAttribute("todoListChecked",n),i=!0);return i})),this.listenTo(n.view.document,"keydown",((e,n)=>{fo(n)===BS&&(t.execute("checkTodoList"),e.stop())}),{priority:"high"}),this.listenTo(n.view.document,"todoCheckboxChange",((t,e)=>{const i=e.target;if(!i||!i.is("element","input"))return;const o=n.view.createPositionAfter(i),r=n.mapper.toModelPosition(o).parent;r&&lB(r)&&"todo"==r.getAttribute("listType")&&this._handleCheckmarkChange(r)})),this.listenTo(n.view.document,"arrowKey",function(t,e){return(n,i)=>{const o=wo(i.keyCode,e.contentLanguageDirection),r=t.schema,s=t.document.selection;if(!s.isCollapsed)return;const a=s.getFirstPosition(),c=a.parent;if("right"==o&&a.isAtEnd){const e=r.getNearestSelectionRange(t.createPositionAfter(c),"forward");if(!e)return;const o=e.start.parent;o&&lB(o)&&"todo"==o.getAttribute("listType")&&(t.change((t=>t.setSelection(e))),i.preventDefault(),i.stopPropagation(),n.stop())}else if("left"==o&&a.isAtStart&&lB(c)&&"todo"==c.getAttribute("listType")){const e=r.getNearestSelectionRange(t.createPositionBefore(c),"backward");if(!e)return;t.change((t=>t.setSelection(e))),i.preventDefault(),i.stopPropagation(),n.stop()}}}(e,t.locale),{context:"$text"}),this.listenTo(n.mapper,"viewToModelPosition",((t,n)=>{const i=n.viewPosition.parent,o=i.is("attributeElement","li")&&0==n.viewPosition.offset,r=PS(i)&&n.viewPosition.offset<=1,s=i.is("element","span")&&"false"==i.getAttribute("contenteditable")&&PS(i.parent);if(!o&&!r&&!s)return;const a=n.modelPosition.nodeAfter;a&&"todo"==a.getAttribute("listType")&&(n.modelPosition=e.createPositionAt(a,0))}),{priority:"low"}),this._initAriaAnnouncements()}_handleCheckmarkChange(t){const e=this.editor,n=e.model,i=Array.from(n.document.selection.getRanges());n.change((n=>{n.setSelection(t,"end"),e.execute("checkTodoList"),n.setSelection(i)}))}_initAriaAnnouncements(){const{model:t,ui:e,t:n}=this.editor;let i=null;e&&t.document.selection.on("change:range",(()=>{const o=t.document.selection.focus.parent,r=RS(i),s=RS(o);r&&!s?e.ariaLiveAnnouncer.announce(n("Leaving a to-do list")):!r&&s&&e.ariaLiveAnnouncer.announce(n("Entering a to-do list")),i=o}))}}function TS(t){const e=new Ir(t);return(t,n,i)=>{const o=e.match(n.viewItem);o&&i.consumable.consume(n.viewItem,o.match)&&Object.assign(n,i.convertChildren(n.viewItem,n.modelCursor))}}function IS(t,e){return(t.is("element","paragraph")||t.is("element","listItem"))&&"todo"==t.getAttribute("listType")&&mB(t)&&function(t,e){for(const n of t.getAttributeKeys())if(!n.startsWith("selection:")&&!e.includes(n))return!1;return!0}(t,e)}function PS(t){return!!t&&t.is("attributeElement")&&t.hasClass("todo-list__label")}function RS(t){return!!t&&(!(!t.is("element","paragraph")&&!t.is("element","listItem"))&&"todo"==t.getAttribute("listType"))}class VS extends er{static get pluginName(){return"TodoListUI"}init(){const t=this.editor.t;cS(this.editor,"todoList",t("To-do List"),ym.todoList)}}var FS=n(8991),LS={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(FS.A,LS);FS.A.locals;class OS extends er{static get requires(){return[SS,VS]}static get pluginName(){return"TodoList"}}bo("Ctrl+Enter");function zS(t){return void 0!==t&&t.endsWith("px")}function MS(t){return t.toFixed(2).replace(/\.?0+$/,"")+"px"}var NS=Object.defineProperty,HS=Object.defineProperties,jS=Object.getOwnPropertyDescriptors,qS=Object.getOwnPropertySymbols,WS=Object.prototype.hasOwnProperty,US=Object.prototype.propertyIsEnumerable,$S=(t,e,n)=>e in t?NS(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,GS=(t,e)=>{for(var n in e||(e={}))WS.call(e,n)&&$S(t,n,e[n]);if(qS)for(var n of qS(e))US.call(e,n)&&$S(t,n,e[n]);return t};function KS(t,e,n){if(!t.childCount)return;const i=new Au(t.document),o=function(t,e){const n=e.createRangeIn(t),i=[],o=new Set;for(const t of n.getItems()){if(!t.is("element")||!t.name.match(/^(p|h\d+|li|div)$/))continue;let e=nT(t);if(void 0===e||0!=parseFloat(e)||Array.from(t.getClassNames()).find((t=>t.startsWith("MsoList")))||(e=void 0),t.hasStyle("mso-list")||void 0!==e&&o.has(e)){const n=tT(t);i.push({element:t,id:n.id,order:n.order,indent:n.indent,marginLeft:e}),void 0!==e&&o.add(e)}else o.clear()}return i}(t,i);if(!o.length)return;const r={},s=[];for(const t of o)if(void 0!==t.indent){JS(t)||(s.length=0);const o=`${t.id}:${t.indent}`,c=Math.min(t.indent-1,s.length);if(cs.length-1||s[c].listElement.name!=l.type){0==c&&"ol"==l.type&&void 0!==t.id&&r[o]&&(l.startIndex=r[o]);const e=XS(l,i,n);if(zS(t.marginLeft)&&(0==c||zS(s[c-1].marginLeft))){let n=t.marginLeft;c>0&&(n=MS(parseFloat(n)-parseFloat(s[c-1].marginLeft))),i.setStyle("padding-left",n,e)}if(0==s.length){const n=t.element.parent,o=n.getChildIndex(t.element)+1;i.insertChild(o,e,n)}else{const t=s[c-1].listItemElements;i.appendChild(e,t[t.length-1])}s[c]=(a=GS({},t),HS(a,jS({listElement:e,listItemElements:[]}))),0==c&&void 0!==t.id&&(r[o]=l.startIndex||1)}}const l="li"==t.element.name?t.element:i.createElement("li");i.appendChild(l,s[c].listElement),s[c].listItemElements.push(l),0==c&&void 0!==t.id&&r[o]++,t.element!=l&&i.appendChild(t.element,l),eT(t.element,i),i.removeStyle("text-indent",t.element),i.removeStyle("margin-left",t.element)}else{const e=s.find((e=>e.marginLeft==t.marginLeft));if(e){const n=e.listItemElements;i.appendChild(t.element,n[n.length-1]),i.removeStyle("margin-left",t.element)}else s.length=0}var a}function JS(t){const e=t.element.previousSibling;return ZS(e||t.element.parent)}function ZS(t){return t.is("element","ol")||t.is("element","ul")}function YS(t,e){const n=new RegExp(`@list l${t.id}:level${t.indent}\\s*({[^}]*)`,"gi"),i=/mso-level-number-format:([^;]{0,100});/gi,o=/mso-level-start-at:\s{0,100}([0-9]{0,10})\s{0,100};/gi,r=new RegExp(`@list\\s+l${t.id}:level\\d\\s*{[^{]*mso-level-text:"%\\d\\\\.`,"gi"),s=new RegExp(`@list l${t.id}:level\\d\\s*{[^{]*mso-level-number-format:`,"gi"),a=r.exec(e),c=s.exec(e),l=a&&!c,d=n.exec(e);let h="decimal",u="ol",m=null;if(d&&d[1]){const e=i.exec(d[1]);if(e&&e[1]&&(h=e[1].trim(),u="bullet"!==h&&"image"!==h?"ol":"ul"),"bullet"===h){const e=function(t){if("li"==t.name&&"ul"==t.parent.name&&t.parent.hasAttribute("type"))return t.parent.getAttribute("type");const e=function(t){if(t.getChild(0).is("$text"))return null;for(const e of t.getChildren()){if(!e.is("element","span"))continue;const t=e.getChild(0);if(t)return t.is("$text")?t:t.getChild(0)}return null}(t);if(!e)return null;const n=e._data;if("o"===n)return"circle";if("·"===n)return"disc";if("§"===n)return"square";return null}(t.element);e&&(h=e)}else{const t=o.exec(d[1]);t&&t[1]&&(m=parseInt(t[1]))}l&&(u="ol")}return{type:u,startIndex:m,style:QS(h),isLegalStyleList:l}}function QS(t){if(t.startsWith("arabic-leading-zero"))return"decimal-leading-zero";switch(t){case"alpha-upper":return"upper-alpha";case"alpha-lower":return"lower-alpha";case"roman-upper":return"upper-roman";case"roman-lower":return"lower-roman";case"circle":case"disc":case"square":return t;default:return null}}function XS(t,e,n){const i=e.createElement(t.type);return t.style&&e.setStyle("list-style-type",t.style,i),t.startIndex&&t.startIndex>1&&e.setAttribute("start",t.startIndex,i),t.isLegalStyleList&&n&&e.addClass("legal-list",i),i}function tT(t){const e=t.getStyle("mso-list");if(void 0===e)return{};const n=e.match(/(^|\s{1,100})l(\d+)/i),i=e.match(/\s{0,100}lfo(\d+)/i),o=e.match(/\s{0,100}level(\d+)/i);return n&&i&&o?{id:n[2],order:i[1],indent:parseInt(o[1])}:{indent:1}}function eT(t,e){const n=new Ir({name:"span",styles:{"mso-list":"Ignore"}}),i=e.createRangeIn(t);for(const t of i)"elementStart"===t.type&&n.match(t.item)&&e.remove(t.item)}function nT(t){const e=t.getStyle("margin-left");return void 0===e||e.endsWith("px")?e:function(t){const e=parseFloat(t);return t.endsWith("pt")?MS(96*e/72):t.endsWith("pc")?MS(12*e*96/72):t.endsWith("in")?MS(96*e):t.endsWith("cm")?MS(96*e/2.54):t.endsWith("mm")?MS(e/10*96/2.54):t}(e)}function iT(t,e){if(!t.childCount)return;const n=new Au(t.document),i=function(t,e){const n=e.createRangeIn(t),i=new Ir({name:/v:(.+)/}),o=[];for(const t of n){if("elementStart"!=t.type)continue;const e=t.item,n=e.previousSibling,r=n&&n.is("element")?n.name:null,s=["Chart"],a=i.match(e),c=e.getAttribute("o:gfxdata"),l="v:shapetype"===r,d=c&&s.some((t=>e.getAttribute("id").includes(t)));a&&c&&!l&&!d&&o.push(t.item.getAttribute("id"))}return o}(t,n);!function(t,e,n){const i=n.createRangeIn(e),o=new Ir({name:"img"}),r=[];for(const e of i)if(e.item.is("element")&&o.match(e.item)){const n=e.item,i=n.getAttribute("v:shapes")?n.getAttribute("v:shapes").split(" "):[];i.length&&i.every((e=>t.indexOf(e)>-1))?r.push(n):n.getAttribute("src")||r.push(n)}for(const t of r)n.remove(t)}(i,t,n),function(t,e,n){const i=n.createRangeIn(e),o=[];for(const e of i)if("elementStart"==e.type&&e.item.is("element","v:shape")){const n=e.item.getAttribute("id");if(t.includes(n))continue;r(e.item.parent.getChildren(),n)||o.push(e.item)}for(const t of o){const e={src:s(t)};t.hasAttribute("alt")&&(e.alt=t.getAttribute("alt"));const i=n.createElement("img",e);n.insertChild(t.index+1,i,t.parent)}function r(t,e){for(const n of t)if(n.is("element")){if("img"==n.name&&n.getAttribute("v:shapes")==e)return!0;if(r(n.getChildren(),e))return!0}return!1}function s(t){for(const e of t.getChildren())if(e.is("element")&&e.getAttribute("src"))return e.getAttribute("src")}}(i,t,n),function(t,e){const n=e.createRangeIn(t),i=new Ir({name:/v:(.+)/}),o=[];for(const t of n)"elementStart"==t.type&&i.match(t.item)&&o.push(t.item);for(const t of o)e.remove(t)}(t,n);const o=function(t,e){const n=e.createRangeIn(t),i=new Ir({name:"img"}),o=[];for(const t of n)t.item.is("element")&&i.match(t.item)&&t.item.getAttribute("src").startsWith("file://")&&o.push(t.item);return o}(t,n);o.length&&function(t,e,n){if(t.length===e.length)for(let i=0;iString.fromCharCode(parseInt(t,16)))).join(""))}const rT=//i,sT=/xmlns:o="urn:schemas-microsoft-com/i;class aT{constructor(t,e=!1){this.document=t,this.hasMultiLevelListPlugin=e}isActive(t){return rT.test(t)||sT.test(t)}execute(t){const{body:e,stylesString:n}=t._parsedData;KS(e,n,this.hasMultiLevelListPlugin),iT(e,t.dataTransfer.getData("text/rtf")),function(t){const e=[],n=new Au(t.document);for(const{item:i}of n.createRangeIn(t))if(i.is("element")){for(const t of i.getClassNames())/\bmso/gi.exec(t)&&n.removeClass(t,i);for(const t of i.getStyleNames())/\bmso/gi.exec(t)&&n.removeStyle(t,i);(i.is("element","w:sdt")||i.is("element","w:sdtpr")&&i.isEmpty||i.is("element","o:p")&&i.isEmpty)&&e.push(i)}for(const t of e){const e=t.parent,i=e.getChildIndex(t);n.insertChild(i,t.getChildren(),e),n.remove(t)}}(e),t.content=e}}function cT(t,e,n,{blockElements:i,inlineObjectElements:o}){let r=n.createPositionAt(t,"forward"==e?"after":"before");return r=r.getLastMatchingPosition((({item:t})=>t.is("element")&&!i.includes(t.name)&&!o.includes(t.name)),{direction:e}),"forward"==e?r.nodeAfter:r.nodeBefore}function lT(t,e){return!!t&&t.is("element")&&e.includes(t.name)}const dT=/id=("|')docs-internal-guid-[-0-9a-f]+("|')/i;class hT{constructor(t){this.document=t}isActive(t){return dT.test(t)}execute(t){const e=new Au(this.document),{body:n}=t._parsedData;!function(t,e){for(const n of t.getChildren())if(n.is("element","b")&&"normal"===n.getStyle("font-weight")){const i=t.getChildIndex(n);e.remove(n),e.insertChild(i,n.getChildren(),t)}}(n,e),function(t,e){for(const n of e.createRangeIn(t)){const t=n.item;if(t.is("element","li")){const n=t.getChild(0);n&&n.is("element","p")&&e.unwrapElement(n)}}}(n,e),function(t,e){const n=new Is(e.document.stylesProcessor),i=new Ca(n,{renderingMode:"data"}),o=i.blockElements,r=i.inlineObjectElements,s=[];for(const n of e.createRangeIn(t)){const t=n.item;if(t.is("element","br")){const n=cT(t,"forward",e,{blockElements:o,inlineObjectElements:r}),i=cT(t,"backward",e,{blockElements:o,inlineObjectElements:r}),a=lT(n,o);(lT(i,o)||a)&&s.push(t)}}for(const t of s)t.hasClass("Apple-interchange-newline")?e.remove(t):e.replace(t,e.createElement("p"))}(n,e),t.content=n}}const uT=/(\s+)<\/span>/g,((t,e)=>1===e.length?" ":Array(e.length+1).join("  ").substr(0,e.length)))}function pT(t,e){const n=new DOMParser,i=function(t){return gT(gT(t)).replace(/([^\S\r\n]*?)[\r\n]+([^\S\r\n]*<\/span>)/g,"$1$2").replace(/<\/span>/g,"").replace(/()[\r\n]+(<\/span>)/g,"$1 $2").replace(/ <\//g," <\/o:p>/g," ").replace(/( |\u00A0)<\/o:p>/g,"").replace(/>([^\S\r\n]*[\r\n]\s*)<")}(function(t){const e="",n="",i=t.indexOf(e);if(i<0)return t;const o=t.indexOf(n,i+e.length);return t.substring(0,i+e.length)+(o>=0?t.substring(o):"")}(t=(t=t.replace(/

    abc

    \n\t\t\t//\n\t\t\tif ( isAttribute && this._wrapAttributeElement( wrapElement, child ) ) {\n\t\t\t\twrapPositions.push( new Position( parent, i ) );\n\t\t\t}\n\t\t\t//\n\t\t\t// Wrap the child if it is not an attribute element or if it is an attribute element that should be inside\n\t\t\t// `wrapElement` (due to priority).\n\t\t\t//\n\t\t\t//

    abc

    -->

    abc

    \n\t\t\t//

    abc

    -->

    abc

    \n\t\t\telse if ( isText || !isAttribute || shouldABeOutsideB( wrapElement, child ) ) {\n\t\t\t\t// Clone attribute.\n\t\t\t\tconst newAttribute = wrapElement._clone();\n\n\t\t\t\t// Wrap current node with new attribute.\n\t\t\t\tchild._remove();\n\t\t\t\tnewAttribute._appendChild( child );\n\n\t\t\t\tparent._insertChild( i, newAttribute );\n\t\t\t\tthis._addToClonedElementsGroup( newAttribute );\n\n\t\t\t\twrapPositions.push( new Position( parent, i ) );\n\t\t\t}\n\t\t\t//\n\t\t\t// If other nested attribute is found and it wasn't wrapped (see above), continue wrapping inside it.\n\t\t\t//\n\t\t\t//

    abc

    -->

    abc

    \n\t\t\t//\n\t\t\telse /* if ( isAttribute ) */ {\n\t\t\t\tthis._wrapChildren( child, 0, child.childCount, wrapElement );\n\t\t\t}\n\n\t\t\ti++;\n\t\t}\n\n\t\t// Merge at each wrap.\n\t\tlet offsetChange = 0;\n\n\t\tfor ( const position of wrapPositions ) {\n\t\t\tposition.offset -= offsetChange;\n\n\t\t\t// Do not merge with elements outside selected children.\n\t\t\tif ( position.offset == startOffset ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tconst newPosition = this.mergeAttributes( position );\n\n\t\t\t// If nodes were merged - other merge offsets will change.\n\t\t\tif ( !newPosition.isEqual( position ) ) {\n\t\t\t\toffsetChange++;\n\t\t\t\tendOffset--;\n\t\t\t}\n\t\t}\n\n\t\treturn Range._createFromParentsAndOffsets( parent, startOffset, parent, endOffset );\n\t}\n\n\t/**\n\t * Unwraps children from provided `unwrapElement`. Only children contained in `parent` element between\n\t * `startOffset` and `endOffset` will be unwrapped.\n\t */\n\tprivate _unwrapChildren( parent: Element, startOffset: number, endOffset: number, unwrapElement: AttributeElement ) {\n\t\tlet i = startOffset;\n\t\tconst unwrapPositions: Array = [];\n\n\t\t// Iterate over each element between provided offsets inside parent.\n\t\t// We don't use tree walker or range iterator because we will be removing and merging potentially multiple nodes,\n\t\t// so it could get messy. It is safer to it manually in this case.\n\t\twhile ( i < endOffset ) {\n\t\t\tconst child = parent.getChild( i )!;\n\n\t\t\t// Skip all text nodes. There should be no container element's here either.\n\t\t\tif ( !child.is( 'attributeElement' ) ) {\n\t\t\t\ti++;\n\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t//\n\t\t\t// (In all examples, assume that `unwrapElement` is `` element.)\n\t\t\t//\n\t\t\t// If the child is similar to the given attribute element, unwrap it - it will be completely removed.\n\t\t\t//\n\t\t\t//

    abcxyz

    -->

    abcxyz

    \n\t\t\t//\n\t\t\tif ( child.isSimilar( unwrapElement ) ) {\n\t\t\t\tconst unwrapped = child.getChildren();\n\t\t\t\tconst count = child.childCount;\n\n\t\t\t\t// Replace wrapper element with its children\n\t\t\t\tchild._remove();\n\t\t\t\tparent._insertChild( i, unwrapped );\n\n\t\t\t\tthis._removeFromClonedElementsGroup( child );\n\n\t\t\t\t// Save start and end position of moved items.\n\t\t\t\tunwrapPositions.push(\n\t\t\t\t\tnew Position( parent, i ),\n\t\t\t\t\tnew Position( parent, i + count )\n\t\t\t\t);\n\n\t\t\t\t// Skip elements that were unwrapped. Assuming there won't be another element to unwrap in child elements.\n\t\t\t\ti += count;\n\t\t\t\tendOffset += count - 1;\n\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t//\n\t\t\t// If the child is not similar but is an attribute element, try partial unwrapping - remove the same attributes/styles/classes.\n\t\t\t// Partial unwrapping will happen only if the elements have the same name.\n\t\t\t//\n\t\t\t//

    abcxyz

    -->

    abcxyz

    \n\t\t\t//

    abcxyz

    -->

    abcxyz

    \n\t\t\t//\n\t\t\tif ( this._unwrapAttributeElement( unwrapElement, child ) ) {\n\t\t\t\tunwrapPositions.push(\n\t\t\t\t\tnew Position( parent, i ),\n\t\t\t\t\tnew Position( parent, i + 1 )\n\t\t\t\t);\n\n\t\t\t\ti++;\n\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t//\n\t\t\t// If other nested attribute is found, look through it's children for elements to unwrap.\n\t\t\t//\n\t\t\t//

    abc

    -->

    abc

    \n\t\t\t//\n\t\t\tthis._unwrapChildren( child, 0, child.childCount, unwrapElement );\n\n\t\t\ti++;\n\t\t}\n\n\t\t// Merge at each unwrap.\n\t\tlet offsetChange = 0;\n\n\t\tfor ( const position of unwrapPositions ) {\n\t\t\tposition.offset -= offsetChange;\n\n\t\t\t// Do not merge with elements outside selected children.\n\t\t\tif ( position.offset == startOffset || position.offset == endOffset ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tconst newPosition = this.mergeAttributes( position );\n\n\t\t\t// If nodes were merged - other merge offsets will change.\n\t\t\tif ( !newPosition.isEqual( position ) ) {\n\t\t\t\toffsetChange++;\n\t\t\t\tendOffset--;\n\t\t\t}\n\t\t}\n\n\t\treturn Range._createFromParentsAndOffsets( parent, startOffset, parent, endOffset );\n\t}\n\n\t/**\n\t * Helper function for `view.writer.wrap`. Wraps range with provided attribute element.\n\t * This method will also merge newly added attribute element with its siblings whenever possible.\n\t *\n\t * Throws {@link module:utils/ckeditorerror~CKEditorError} `view-writer-wrap-invalid-attribute` when passed attribute element is not\n\t * an instance of {@link module:engine/view/attributeelement~AttributeElement AttributeElement}.\n\t *\n\t * @returns New range after wrapping, spanning over wrapping attribute element.\n\t */\n\tprivate _wrapRange( range: Range, attribute: AttributeElement ): Range {\n\t\t// Break attributes at range start and end.\n\t\tconst { start: breakStart, end: breakEnd } = this._breakAttributesRange( range, true );\n\t\tconst parentContainer = breakStart.parent as Element;\n\n\t\t// Wrap all children with attribute.\n\t\tconst newRange = this._wrapChildren( parentContainer, breakStart.offset, breakEnd.offset, attribute );\n\n\t\t// Merge attributes at the both ends and return a new range.\n\t\tconst start = this.mergeAttributes( newRange.start );\n\n\t\t// If start position was merged - move end position back.\n\t\tif ( !start.isEqual( newRange.start ) ) {\n\t\t\tnewRange.end.offset--;\n\t\t}\n\t\tconst end = this.mergeAttributes( newRange.end );\n\n\t\treturn new Range( start, end );\n\t}\n\n\t/**\n\t * Helper function for {@link #wrap}. Wraps position with provided attribute element.\n\t * This method will also merge newly added attribute element with its siblings whenever possible.\n\t *\n\t * Throws {@link module:utils/ckeditorerror~CKEditorError} `view-writer-wrap-invalid-attribute` when passed attribute element is not\n\t * an instance of {@link module:engine/view/attributeelement~AttributeElement AttributeElement}.\n\t *\n\t * @returns New position after wrapping.\n\t */\n\tprivate _wrapPosition( position: Position, attribute: AttributeElement ): Position {\n\t\t// Return same position when trying to wrap with attribute similar to position parent.\n\t\tif ( attribute.isSimilar( position.parent as any ) ) {\n\t\t\treturn movePositionToTextNode( position.clone() );\n\t\t}\n\n\t\t// When position is inside text node - break it and place new position between two text nodes.\n\t\tif ( position.parent.is( '$text' ) ) {\n\t\t\tposition = breakTextNode( position );\n\t\t}\n\n\t\t// Create fake element that will represent position, and will not be merged with other attributes.\n\t\tconst fakeElement = this.createAttributeElement( '_wrapPosition-fake-element' );\n\t\t( fakeElement as any )._priority = Number.POSITIVE_INFINITY;\n\t\tfakeElement.isSimilar = () => false;\n\n\t\t// Insert fake element in position location.\n\t\t( position.parent as Element )._insertChild( position.offset, fakeElement );\n\n\t\t// Range around inserted fake attribute element.\n\t\tconst wrapRange = new Range( position, position.getShiftedBy( 1 ) );\n\n\t\t// Wrap fake element with attribute (it will also merge if possible).\n\t\tthis.wrap( wrapRange, attribute );\n\n\t\t// Remove fake element and place new position there.\n\t\tconst newPosition = new Position( fakeElement.parent!, fakeElement.index! );\n\t\tfakeElement._remove();\n\n\t\t// If position is placed between text nodes - merge them and return position inside.\n\t\tconst nodeBefore = newPosition.nodeBefore;\n\t\tconst nodeAfter = newPosition.nodeAfter;\n\n\t\tif ( nodeBefore instanceof Text && nodeAfter instanceof Text ) {\n\t\t\treturn mergeTextNodes( nodeBefore, nodeAfter );\n\t\t}\n\n\t\t// If position is next to text node - move position inside.\n\t\treturn movePositionToTextNode( newPosition );\n\t}\n\n\t/**\n\t * Wraps one {@link module:engine/view/attributeelement~AttributeElement AttributeElement} into another by\n\t * merging them if possible. When merging is possible - all attributes, styles and classes are moved from wrapper\n\t * element to element being wrapped.\n\t *\n\t * @param wrapper Wrapper AttributeElement.\n\t * @param toWrap AttributeElement to wrap using wrapper element.\n\t * @returns Returns `true` if elements are merged.\n\t */\n\tprivate _wrapAttributeElement( wrapper: AttributeElement, toWrap: AttributeElement ): boolean {\n\t\tif ( !canBeJoined( wrapper, toWrap ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Can't merge if name or priority differs.\n\t\tif ( wrapper.name !== toWrap.name || wrapper.priority !== toWrap.priority ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Check if attributes can be merged.\n\t\tfor ( const key of wrapper.getAttributeKeys() ) {\n\t\t\t// Classes and styles should be checked separately.\n\t\t\tif ( key === 'class' || key === 'style' ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// If some attributes are different we cannot wrap.\n\t\t\tif ( toWrap.hasAttribute( key ) && toWrap.getAttribute( key ) !== wrapper.getAttribute( key ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\t// Check if styles can be merged.\n\t\tfor ( const key of wrapper.getStyleNames() ) {\n\t\t\tif ( toWrap.hasStyle( key ) && toWrap.getStyle( key ) !== wrapper.getStyle( key ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\t// Move all attributes/classes/styles from wrapper to wrapped AttributeElement.\n\t\tfor ( const key of wrapper.getAttributeKeys() ) {\n\t\t\t// Classes and styles should be checked separately.\n\t\t\tif ( key === 'class' || key === 'style' ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Move only these attributes that are not present - other are similar.\n\t\t\tif ( !toWrap.hasAttribute( key ) ) {\n\t\t\t\tthis.setAttribute( key, wrapper.getAttribute( key )!, toWrap );\n\t\t\t}\n\t\t}\n\n\t\tfor ( const key of wrapper.getStyleNames() ) {\n\t\t\tif ( !toWrap.hasStyle( key ) ) {\n\t\t\t\tthis.setStyle( key, wrapper.getStyle( key )!, toWrap );\n\t\t\t}\n\t\t}\n\n\t\tfor ( const key of wrapper.getClassNames() ) {\n\t\t\tif ( !toWrap.hasClass( key ) ) {\n\t\t\t\tthis.addClass( key, toWrap );\n\t\t\t}\n\t\t}\n\n\t\treturn true;\n\t}\n\n\t/**\n\t * Unwraps {@link module:engine/view/attributeelement~AttributeElement AttributeElement} from another by removing\n\t * corresponding attributes, classes and styles. All attributes, classes and styles from wrapper should be present\n\t * inside element being unwrapped.\n\t *\n\t * @param wrapper Wrapper AttributeElement.\n\t * @param toUnwrap AttributeElement to unwrap using wrapper element.\n\t * @returns Returns `true` if elements are unwrapped.\n\t **/\n\tprivate _unwrapAttributeElement( wrapper: AttributeElement, toUnwrap: AttributeElement ): boolean {\n\t\tif ( !canBeJoined( wrapper, toUnwrap ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Can't unwrap if name or priority differs.\n\t\tif ( wrapper.name !== toUnwrap.name || wrapper.priority !== toUnwrap.priority ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Check if AttributeElement has all wrapper attributes.\n\t\tfor ( const key of wrapper.getAttributeKeys() ) {\n\t\t\t// Classes and styles should be checked separately.\n\t\t\tif ( key === 'class' || key === 'style' ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// If some attributes are missing or different we cannot unwrap.\n\t\t\tif ( !toUnwrap.hasAttribute( key ) || toUnwrap.getAttribute( key ) !== wrapper.getAttribute( key ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\t// Check if AttributeElement has all wrapper classes.\n\t\tif ( !toUnwrap.hasClass( ...wrapper.getClassNames() ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Check if AttributeElement has all wrapper styles.\n\t\tfor ( const key of wrapper.getStyleNames() ) {\n\t\t\t// If some styles are missing or different we cannot unwrap.\n\t\t\tif ( !toUnwrap.hasStyle( key ) || toUnwrap.getStyle( key ) !== wrapper.getStyle( key ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\t// Remove all wrapper's attributes from unwrapped element.\n\t\tfor ( const key of wrapper.getAttributeKeys() ) {\n\t\t\t// Classes and styles should be checked separately.\n\t\t\tif ( key === 'class' || key === 'style' ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tthis.removeAttribute( key, toUnwrap );\n\t\t}\n\n\t\t// Remove all wrapper's classes from unwrapped element.\n\t\tthis.removeClass( Array.from( wrapper.getClassNames() ), toUnwrap );\n\n\t\t// Remove all wrapper's styles from unwrapped element.\n\t\tthis.removeStyle( Array.from( wrapper.getStyleNames() ), toUnwrap );\n\n\t\treturn true;\n\t}\n\n\t/**\n\t * Helper function used by other `DowncastWriter` methods. Breaks attribute elements at the boundaries of given range.\n\t *\n\t * @param range Range which `start` and `end` positions will be used to break attributes.\n\t * @param forceSplitText If set to `true`, will break text nodes even if they are directly in container element.\n\t * This behavior will result in incorrect view state, but is needed by other view writing methods which then fixes view state.\n\t * @returns New range with located at break positions.\n\t */\n\tprivate _breakAttributesRange( range: Range, forceSplitText: boolean = false ) {\n\t\tconst rangeStart = range.start;\n\t\tconst rangeEnd = range.end;\n\n\t\tvalidateRangeContainer( range, this.document );\n\n\t\t// Break at the collapsed position. Return new collapsed range.\n\t\tif ( range.isCollapsed ) {\n\t\t\tconst position = this._breakAttributes( range.start, forceSplitText );\n\n\t\t\treturn new Range( position, position );\n\t\t}\n\n\t\tconst breakEnd = this._breakAttributes( rangeEnd, forceSplitText );\n\t\tconst count = ( breakEnd.parent as Element ).childCount;\n\t\tconst breakStart = this._breakAttributes( rangeStart, forceSplitText );\n\n\t\t// Calculate new break end offset.\n\t\tbreakEnd.offset += ( breakEnd.parent as Element ).childCount - count;\n\n\t\treturn new Range( breakStart, breakEnd );\n\t}\n\n\t/**\n\t * Helper function used by other `DowncastWriter` methods. Breaks attribute elements at given position.\n\t *\n\t * Throws {@link module:utils/ckeditorerror~CKEditorError CKEditorError} `view-writer-cannot-break-empty-element` when break position\n\t * is placed inside {@link module:engine/view/emptyelement~EmptyElement EmptyElement}.\n\t *\n\t * Throws {@link module:utils/ckeditorerror~CKEditorError CKEditorError} `view-writer-cannot-break-ui-element` when break position\n\t * is placed inside {@link module:engine/view/uielement~UIElement UIElement}.\n\t *\n\t * @param position Position where to break attributes.\n\t * @param forceSplitText If set to `true`, will break text nodes even if they are directly in container element.\n\t * This behavior will result in incorrect view state, but is needed by other view writing methods which then fixes view state.\n\t * @returns New position after breaking the attributes.\n\t */\n\tprivate _breakAttributes( position: Position, forceSplitText: boolean = false ): Position {\n\t\tconst positionOffset = position.offset;\n\t\tconst positionParent = position.parent;\n\n\t\t// If position is placed inside EmptyElement - throw an exception as we cannot break inside.\n\t\tif ( position.parent.is( 'emptyElement' ) ) {\n\t\t\t/**\n\t\t\t * Cannot break an `EmptyElement` instance.\n\t\t\t *\n\t\t\t * This error is thrown if\n\t\t\t * {@link module:engine/view/downcastwriter~DowncastWriter#breakAttributes `DowncastWriter#breakAttributes()`}\n\t\t\t * was executed in an incorrect position.\n\t\t\t *\n\t\t\t * @error view-writer-cannot-break-empty-element\n\t\t\t */\n\t\t\tthrow new CKEditorError( 'view-writer-cannot-break-empty-element', this.document );\n\t\t}\n\n\t\t// If position is placed inside UIElement - throw an exception as we cannot break inside.\n\t\tif ( position.parent.is( 'uiElement' ) ) {\n\t\t\t/**\n\t\t\t * Cannot break a `UIElement` instance.\n\t\t\t *\n\t\t\t * This error is thrown if\n\t\t\t * {@link module:engine/view/downcastwriter~DowncastWriter#breakAttributes `DowncastWriter#breakAttributes()`}\n\t\t\t * was executed in an incorrect position.\n\t\t\t *\n\t\t\t * @error view-writer-cannot-break-ui-element\n\t\t\t */\n\t\t\tthrow new CKEditorError( 'view-writer-cannot-break-ui-element', this.document );\n\t\t}\n\n\t\t// If position is placed inside RawElement - throw an exception as we cannot break inside.\n\t\tif ( position.parent.is( 'rawElement' ) ) {\n\t\t\t/**\n\t\t\t * Cannot break a `RawElement` instance.\n\t\t\t *\n\t\t\t * This error is thrown if\n\t\t\t * {@link module:engine/view/downcastwriter~DowncastWriter#breakAttributes `DowncastWriter#breakAttributes()`}\n\t\t\t * was executed in an incorrect position.\n\t\t\t *\n\t\t\t * @error view-writer-cannot-break-raw-element\n\t\t\t */\n\t\t\tthrow new CKEditorError( 'view-writer-cannot-break-raw-element', this.document );\n\t\t}\n\n\t\t// There are no attributes to break and text nodes breaking is not forced.\n\t\tif ( !forceSplitText && positionParent.is( '$text' ) && isContainerOrFragment( positionParent.parent! ) ) {\n\t\t\treturn position.clone();\n\t\t}\n\n\t\t// Position's parent is container, so no attributes to break.\n\t\tif ( isContainerOrFragment( positionParent ) ) {\n\t\t\treturn position.clone();\n\t\t}\n\n\t\t// Break text and start again in new position.\n\t\tif ( positionParent.is( '$text' ) ) {\n\t\t\treturn this._breakAttributes( breakTextNode( position ), forceSplitText );\n\t\t}\n\n\t\tconst length = ( positionParent as any ).childCount;\n\n\t\t//

    foobar{}

    \n\t\t//

    foobar[]

    \n\t\t//

    foobar[]

    \n\t\tif ( positionOffset == length ) {\n\t\t\tconst newPosition = new Position( positionParent.parent as any, ( positionParent as any ).index + 1 );\n\n\t\t\treturn this._breakAttributes( newPosition, forceSplitText );\n\t\t} else {\n\t\t\t//

    foo{}bar

    \n\t\t\t//

    foo[]bar

    \n\t\t\t//

    foo{}bar

    \n\t\t\tif ( positionOffset === 0 ) {\n\t\t\t\tconst newPosition = new Position( positionParent.parent as Element, ( positionParent as any ).index );\n\n\t\t\t\treturn this._breakAttributes( newPosition, forceSplitText );\n\t\t\t}\n\t\t\t//

    foob{}ar

    \n\t\t\t//

    foob[]ar

    \n\t\t\t//

    foob[]ar

    \n\t\t\t//

    foob[]ar

    \n\t\t\telse {\n\t\t\t\tconst offsetAfter = ( positionParent as any ).index + 1;\n\n\t\t\t\t// Break element.\n\t\t\t\tconst clonedNode = ( positionParent as any )._clone();\n\n\t\t\t\t// Insert cloned node to position's parent node.\n\t\t\t\t( positionParent.parent as any )._insertChild( offsetAfter, clonedNode );\n\t\t\t\tthis._addToClonedElementsGroup( clonedNode );\n\n\t\t\t\t// Get nodes to move.\n\t\t\t\tconst count = ( positionParent as any ).childCount - positionOffset;\n\t\t\t\tconst nodesToMove = ( positionParent as any )._removeChildren( positionOffset, count );\n\n\t\t\t\t// Move nodes to cloned node.\n\t\t\t\tclonedNode._appendChild( nodesToMove );\n\n\t\t\t\t// Create new position to work on.\n\t\t\t\tconst newPosition = new Position( ( positionParent as any ).parent, offsetAfter );\n\n\t\t\t\treturn this._breakAttributes( newPosition, forceSplitText );\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Stores the information that an {@link module:engine/view/attributeelement~AttributeElement attribute element} was\n\t * added to the tree. Saves the reference to the group in the given element and updates the group, so other elements\n\t * from the group now keep a reference to the given attribute element.\n\t *\n\t * The clones group can be obtained using {@link module:engine/view/attributeelement~AttributeElement#getElementsWithSameId}.\n\t *\n\t * Does nothing if added element has no {@link module:engine/view/attributeelement~AttributeElement#id id}.\n\t *\n\t * @param element Attribute element to save.\n\t */\n\tprivate _addToClonedElementsGroup( element: Node ): void {\n\t\t// Add only if the element is in document tree.\n\t\tif ( !element.root.is( 'rootElement' ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Traverse the element's children recursively to find other attribute elements that also might got inserted.\n\t\t// The loop is at the beginning so we can make fast returns later in the code.\n\t\tif ( element.is( 'element' ) ) {\n\t\t\tfor ( const child of element.getChildren() ) {\n\t\t\t\tthis._addToClonedElementsGroup( child );\n\t\t\t}\n\t\t}\n\n\t\tconst id = ( element as any ).id;\n\n\t\tif ( !id ) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet group = this._cloneGroups.get( id );\n\n\t\tif ( !group ) {\n\t\t\tgroup = new Set();\n\t\t\tthis._cloneGroups.set( id, group );\n\t\t}\n\n\t\tgroup.add( element as AttributeElement );\n\t\t( element as any )._clonesGroup = group;\n\t}\n\n\t/**\n\t * Removes all the information about the given {@link module:engine/view/attributeelement~AttributeElement attribute element}\n\t * from its clones group.\n\t *\n\t * Keep in mind, that the element will still keep a reference to the group (but the group will not keep a reference to it).\n\t * This allows to reference the whole group even if the element was already removed from the tree.\n\t *\n\t * Does nothing if the element has no {@link module:engine/view/attributeelement~AttributeElement#id id}.\n\t *\n\t * @param element Attribute element to remove.\n\t */\n\tprivate _removeFromClonedElementsGroup( element: Node ) {\n\t\t// Traverse the element's children recursively to find other attribute elements that also got removed.\n\t\t// The loop is at the beginning so we can make fast returns later in the code.\n\t\tif ( element.is( 'element' ) ) {\n\t\t\tfor ( const child of element.getChildren() ) {\n\t\t\t\tthis._removeFromClonedElementsGroup( child );\n\t\t\t}\n\t\t}\n\n\t\tconst id = ( element as any ).id;\n\n\t\tif ( !id ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst group = this._cloneGroups.get( id );\n\n\t\tif ( !group ) {\n\t\t\treturn;\n\t\t}\n\n\t\tgroup.delete( element as AttributeElement );\n\t\t// Not removing group from element on purpose!\n\t\t// If other parts of code have reference to this element, they will be able to get references to other elements from the group.\n\t}\n}\n\n// Helper function for `view.writer.wrap`. Checks if given element has any children that are not ui elements.\nfunction _hasNonUiChildren( parent: Element ): boolean {\n\treturn Array.from( parent.getChildren() ).some( child => !child.is( 'uiElement' ) );\n}\n\n/**\n * The `attribute` passed to {@link module:engine/view/downcastwriter~DowncastWriter#wrap `DowncastWriter#wrap()`}\n * must be an instance of {@link module:engine/view/attributeelement~AttributeElement `AttributeElement`}.\n *\n * @error view-writer-wrap-invalid-attribute\n */\n\n/**\n * Returns first parent container of specified {@link module:engine/view/position~Position Position}.\n * Position's parent node is checked as first, then next parents are checked.\n * Note that {@link module:engine/view/documentfragment~DocumentFragment DocumentFragment} is treated like a container.\n *\n * @param position Position used as a start point to locate parent container.\n * @returns Parent container element or `undefined` if container is not found.\n */\nfunction getParentContainer( position: Position ): ContainerElement | DocumentFragment | undefined {\n\tlet parent = position.parent;\n\n\twhile ( !isContainerOrFragment( parent ) ) {\n\t\tif ( !parent ) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\tparent = parent.parent as any;\n\t}\n\n\treturn ( parent as ContainerElement | DocumentFragment );\n}\n\n/**\n * Checks if first {@link module:engine/view/attributeelement~AttributeElement AttributeElement} provided to the function\n * can be wrapped outside second element. It is done by comparing elements'\n * {@link module:engine/view/attributeelement~AttributeElement#priority priorities}, if both have same priority\n * {@link module:engine/view/element~Element#getIdentity identities} are compared.\n */\nfunction shouldABeOutsideB( a: AttributeElement, b: AttributeElement ): boolean {\n\tif ( a.priority < b.priority ) {\n\t\treturn true;\n\t} else if ( a.priority > b.priority ) {\n\t\treturn false;\n\t}\n\n\t// When priorities are equal and names are different - use identities.\n\treturn a.getIdentity() < b.getIdentity();\n}\n\n/**\n * Returns new position that is moved to near text node. Returns same position if there is no text node before of after\n * specified position.\n *\n * ```html\n *

    foo[]

    ->

    foo{}

    \n *

    []foo

    ->

    {}foo

    \n * ```\n *\n * @returns Position located inside text node or same position if there is no text nodes\n * before or after position location.\n */\nfunction movePositionToTextNode( position: Position ): Position {\n\tconst nodeBefore = position.nodeBefore;\n\n\tif ( nodeBefore && nodeBefore.is( '$text' ) ) {\n\t\treturn new Position( nodeBefore, nodeBefore.data.length );\n\t}\n\n\tconst nodeAfter = position.nodeAfter;\n\n\tif ( nodeAfter && nodeAfter.is( '$text' ) ) {\n\t\treturn new Position( nodeAfter, 0 );\n\t}\n\n\treturn position;\n}\n\n/**\n * Breaks text node into two text nodes when possible.\n *\n * ```html\n *

    foo{}bar

    ->

    foo[]bar

    \n *

    {}foobar

    ->

    []foobar

    \n *

    foobar{}

    ->

    foobar[]

    \n * ```\n *\n * @param position Position that need to be placed inside text node.\n * @returns New position after breaking text node.\n */\nfunction breakTextNode( position: Position ): Position {\n\tif ( position.offset == ( position.parent as Text ).data.length ) {\n\t\treturn new Position( position.parent.parent as any, ( position.parent as Text ).index! + 1 );\n\t}\n\n\tif ( position.offset === 0 ) {\n\t\treturn new Position( position.parent.parent as any, ( position.parent as Text ).index! );\n\t}\n\n\t// Get part of the text that need to be moved.\n\tconst textToMove = ( position.parent as Text ).data.slice( position.offset );\n\n\t// Leave rest of the text in position's parent.\n\t( position.parent as Text )._data = ( position.parent as Text ).data.slice( 0, position.offset );\n\n\t// Insert new text node after position's parent text node.\n\t( position.parent.parent as any )._insertChild(\n\t\t( position.parent as Text ).index! + 1,\n\t\tnew Text( position.root.document, textToMove )\n\t);\n\n\t// Return new position between two newly created text nodes.\n\treturn new Position( position.parent.parent as any, ( position.parent as Text ).index! + 1 );\n}\n\n/**\n * Merges two text nodes into first node. Removes second node and returns merge position.\n *\n * @param t1 First text node to merge. Data from second text node will be moved at the end of this text node.\n * @param t2 Second text node to merge. This node will be removed after merging.\n * @returns Position after merging text nodes.\n */\nfunction mergeTextNodes( t1: Text, t2: Text ): Position {\n\t// Merge text data into first text node and remove second one.\n\tconst nodeBeforeLength = t1.data.length;\n\tt1._data += t2.data;\n\tt2._remove();\n\n\treturn new Position( t1, nodeBeforeLength );\n}\n\nconst validNodesToInsert = [ Text, AttributeElement, ContainerElement, EmptyElement, RawElement, UIElement ];\n\n/**\n * Checks if provided nodes are valid to insert.\n *\n * Throws {@link module:utils/ckeditorerror~CKEditorError CKEditorError} `view-writer-insert-invalid-node` when nodes to insert\n * contains instances that are not supported ones (see error description for valid ones.\n */\nfunction validateNodesToInsert( nodes: Iterable, errorContext: Document ): void {\n\tfor ( const node of nodes ) {\n\t\tif ( !validNodesToInsert.some( ( validNode => node instanceof validNode ) ) ) { // eslint-disable-line no-use-before-define\n\t\t\t/**\n\t\t\t * One of the nodes to be inserted is of an invalid type.\n\t\t\t *\n\t\t\t * Nodes to be inserted with {@link module:engine/view/downcastwriter~DowncastWriter#insert `DowncastWriter#insert()`} should be\n\t\t\t * of the following types:\n\t\t\t *\n\t\t\t * * {@link module:engine/view/attributeelement~AttributeElement AttributeElement},\n\t\t\t * * {@link module:engine/view/containerelement~ContainerElement ContainerElement},\n\t\t\t * * {@link module:engine/view/emptyelement~EmptyElement EmptyElement},\n\t\t\t * * {@link module:engine/view/uielement~UIElement UIElement},\n\t\t\t * * {@link module:engine/view/rawelement~RawElement RawElement},\n\t\t\t * * {@link module:engine/view/text~Text Text}.\n\t\t\t *\n\t\t\t * @error view-writer-insert-invalid-node-type\n\t\t\t */\n\t\t\tthrow new CKEditorError( 'view-writer-insert-invalid-node-type', errorContext );\n\t\t}\n\n\t\tif ( !node.is( '$text' ) ) {\n\t\t\tvalidateNodesToInsert( ( node as Element ).getChildren(), errorContext );\n\t\t}\n\t}\n}\n\n/**\n * Checks if node is ContainerElement or DocumentFragment, because in most cases they should be treated the same way.\n *\n * @returns Returns `true` if node is instance of ContainerElement or DocumentFragment.\n */\nfunction isContainerOrFragment( node: Node | DocumentFragment ): boolean {\n\treturn node && ( node.is( 'containerElement' ) || node.is( 'documentFragment' ) );\n}\n\n/**\n * Checks if {@link module:engine/view/range~Range#start range start} and {@link module:engine/view/range~Range#end range end} are placed\n * inside same {@link module:engine/view/containerelement~ContainerElement container element}.\n * Throws {@link module:utils/ckeditorerror~CKEditorError CKEditorError} `view-writer-invalid-range-container` when validation fails.\n */\nfunction validateRangeContainer( range: Range, errorContext: Document ) {\n\tconst startContainer = getParentContainer( range.start );\n\tconst endContainer = getParentContainer( range.end );\n\n\tif ( !startContainer || !endContainer || startContainer !== endContainer ) {\n\t\t/**\n\t\t * The container of the given range is invalid.\n\t\t *\n\t\t * This may happen if {@link module:engine/view/range~Range#start range start} and\n\t\t * {@link module:engine/view/range~Range#end range end} positions are not placed inside the same container element or\n\t\t * a parent container for these positions cannot be found.\n\t\t *\n\t\t * Methods like {@link module:engine/view/downcastwriter~DowncastWriter#wrap `DowncastWriter#remove()`},\n\t\t * {@link module:engine/view/downcastwriter~DowncastWriter#wrap `DowncastWriter#clean()`},\n\t\t * {@link module:engine/view/downcastwriter~DowncastWriter#wrap `DowncastWriter#wrap()`},\n\t\t * {@link module:engine/view/downcastwriter~DowncastWriter#wrap `DowncastWriter#unwrap()`} need to be called\n\t\t * on a range that has its start and end positions located in the same container element. Both positions can be\n\t\t * nested within other elements (e.g. an attribute element) but the closest container ancestor must be the same.\n\t\t *\n\t\t * @error view-writer-invalid-range-container\n\t\t */\n\t\tthrow new CKEditorError( 'view-writer-invalid-range-container', errorContext );\n\t}\n}\n\n/**\n * Checks if two attribute elements can be joined together. Elements can be joined together if, and only if\n * they do not have ids specified.\n */\nfunction canBeJoined( a: AttributeElement, b: AttributeElement ) {\n\treturn a.id === null && b.id === null;\n}\n","/**\n * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\nimport { keyCodes, isText, type KeystrokeInfo } from '@ckeditor/ckeditor5-utils';\nimport type View from './view.js';\nimport type DomEventData from './observer/domeventdata.js';\nimport type { ViewDocumentArrowKeyEvent } from './observer/arrowkeysobserver.js';\n\n/**\n * Set of utilities related to handling block and inline fillers.\n *\n * Browsers do not allow to put caret in elements which does not have height. Because of it, we need to fill all\n * empty elements which should be selectable with elements or characters called \"fillers\". Unfortunately there is no one\n * universal filler, this is why two types are uses:\n *\n * * Block filler is an element which fill block elements, like `

    `. CKEditor uses `
    ` as a block filler during the editing,\n * as browsers do natively. So instead of an empty `

    ` there will be `


    `. The advantage of block filler is that\n * it is transparent for the selection, so when the caret is before the `
    ` and user presses right arrow he will be\n * moved to the next paragraph, not after the `
    `. The disadvantage is that it breaks a block, so it can not be used\n * in the middle of a line of text. The {@link module:engine/view/filler~BR_FILLER `
    ` filler} can be replaced with any other\n * character in the data output, for instance {@link module:engine/view/filler~NBSP_FILLER non-breaking space} or\n * {@link module:engine/view/filler~MARKED_NBSP_FILLER marked non-breaking space}.\n *\n * * Inline filler is a filler which does not break a line of text, so it can be used inside the text, for instance in the empty\n * `` surrendered by text: `foobar`, if we want to put the caret there. CKEditor uses a sequence of the zero-width\n * spaces as an {@link module:engine/view/filler~INLINE_FILLER inline filler} having the predetermined\n * {@link module:engine/view/filler~INLINE_FILLER_LENGTH length}. A sequence is used, instead of a single character to\n * avoid treating random zero-width spaces as the inline filler. Disadvantage of the inline filler is that it is not\n * transparent for the selection. The arrow key moves the caret between zero-width spaces characters, so the additional\n * code is needed to handle the caret.\n *\n * Both inline and block fillers are handled by the {@link module:engine/view/renderer~Renderer renderer} and are not present in the\n * view.\n *\n * @module engine/view/filler\n */\n\n/**\n * Non-breaking space filler creator. This function creates the ` ` text node.\n * It defines how the filler is created.\n *\n * @see module:engine/view/filler~MARKED_NBSP_FILLER\n * @see module:engine/view/filler~BR_FILLER\n */\nexport const NBSP_FILLER = ( domDocument: Document ): Text => domDocument.createTextNode( '\\u00A0' );\n\n/**\n * Marked non-breaking space filler creator. This function creates the ` ` element.\n * It defines how the filler is created.\n *\n * @see module:engine/view/filler~NBSP_FILLER\n * @see module:engine/view/filler~BR_FILLER\n */\nexport const MARKED_NBSP_FILLER = ( domDocument: Document ): HTMLSpanElement => {\n\tconst span = domDocument.createElement( 'span' );\n\tspan.dataset.ckeFiller = 'true';\n\tspan.innerText = '\\u00A0';\n\n\treturn span;\n};\n\n/**\n * `
    ` filler creator. This function creates the `
    ` element.\n * It defines how the filler is created.\n *\n * @see module:engine/view/filler~NBSP_FILLER\n * @see module:engine/view/filler~MARKED_NBSP_FILLER\n */\nexport const BR_FILLER = ( domDocument: Document ): HTMLBRElement => {\n\tconst fillerBr = domDocument.createElement( 'br' );\n\tfillerBr.dataset.ckeFiller = 'true';\n\n\treturn fillerBr;\n};\n\n/**\n * Length of the {@link module:engine/view/filler~INLINE_FILLER INLINE_FILLER}.\n */\nexport const INLINE_FILLER_LENGTH = 7;\n\n/**\n * Inline filler which is a sequence of the word joiners.\n */\nexport const INLINE_FILLER = '\\u2060'.repeat( INLINE_FILLER_LENGTH );\n\n/**\n * Checks if the node is a text node which starts with the {@link module:engine/view/filler~INLINE_FILLER inline filler}.\n *\n * ```ts\n * startsWithFiller( document.createTextNode( INLINE_FILLER ) ); // true\n * startsWithFiller( document.createTextNode( INLINE_FILLER + 'foo' ) ); // true\n * startsWithFiller( document.createTextNode( 'foo' ) ); // false\n * startsWithFiller( document.createElement( 'p' ) ); // false\n * ```\n *\n * @param domNode DOM node.\n * @returns True if the text node starts with the {@link module:engine/view/filler~INLINE_FILLER inline filler}.\n */\nexport function startsWithFiller( domNode: Node | string ): boolean {\n\tif ( typeof domNode == 'string' ) {\n\t\treturn domNode.substr( 0, INLINE_FILLER_LENGTH ) === INLINE_FILLER;\n\t}\n\n\treturn isText( domNode ) && ( domNode.data.substr( 0, INLINE_FILLER_LENGTH ) === INLINE_FILLER );\n}\n\n/**\n * Checks if the text node contains only the {@link module:engine/view/filler~INLINE_FILLER inline filler}.\n *\n * ```ts\n * isInlineFiller( document.createTextNode( INLINE_FILLER ) ); // true\n * isInlineFiller( document.createTextNode( INLINE_FILLER + 'foo' ) ); // false\n * ```\n *\n * @param domText DOM text node.\n * @returns True if the text node contains only the {@link module:engine/view/filler~INLINE_FILLER inline filler}.\n */\nexport function isInlineFiller( domText: Text ): boolean {\n\treturn domText.data.length == INLINE_FILLER_LENGTH && startsWithFiller( domText );\n}\n\n/**\n * Get string data from the text node, removing an {@link module:engine/view/filler~INLINE_FILLER inline filler} from it,\n * if text node contains it.\n *\n * ```ts\n * getDataWithoutFiller( document.createTextNode( INLINE_FILLER + 'foo' ) ) == 'foo' // true\n * getDataWithoutFiller( document.createTextNode( 'foo' ) ) == 'foo' // true\n * ```\n *\n * @param domText DOM text node, possible with inline filler.\n * @returns Data without filler.\n */\nexport function getDataWithoutFiller( domText: Text | string ): string {\n\tconst data = typeof domText == 'string' ? domText : domText.data;\n\n\tif ( startsWithFiller( domText ) ) {\n\t\treturn data.slice( INLINE_FILLER_LENGTH );\n\t}\n\n\treturn data;\n}\n\n/**\n * Assign key observer which move cursor from the end of the inline filler to the beginning of it when\n * the left arrow is pressed, so the filler does not break navigation.\n *\n * @param view View controller instance we should inject quirks handling on.\n */\nexport function injectQuirksHandling( view: View ): void {\n\tview.document.on( 'arrowKey', jumpOverInlineFiller, { priority: 'low' } );\n}\n\n/**\n * Move cursor from the end of the inline filler to the beginning of it when, so the filler does not break navigation.\n */\nfunction jumpOverInlineFiller( evt: unknown, data: DomEventData & KeystrokeInfo ) {\n\tif ( data.keyCode == keyCodes.arrowleft ) {\n\t\tconst domSelection = data.domTarget.ownerDocument.defaultView!.getSelection()!;\n\n\t\tif ( domSelection.rangeCount == 1 && domSelection.getRangeAt( 0 ).collapsed ) {\n\t\t\tconst domParent = domSelection.getRangeAt( 0 ).startContainer;\n\t\t\tconst domOffset = domSelection.getRangeAt( 0 ).startOffset;\n\n\t\t\tif ( startsWithFiller( domParent ) && domOffset <= INLINE_FILLER_LENGTH ) {\n\t\t\t\tdomSelection.collapse( domParent, 0 );\n\t\t\t}\n\t\t}\n\t}\n}\n","import api from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./renderer.css\";\n\nvar options = {\"injectType\":\"singletonStyleTag\",\"attributes\":{\"data-cke\":true}};\n\noptions.insert = \"head\";\noptions.singleton = true;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","/**\n * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * @module engine/view/renderer\n */\n\nimport ViewText from './text.js';\nimport ViewPosition from './position.js';\nimport { INLINE_FILLER, INLINE_FILLER_LENGTH, startsWithFiller, isInlineFiller } from './filler.js';\n\nimport {\n\tCKEditorError,\n\tObservableMixin,\n\tdiff,\n\tenv,\n\tfastDiff,\n\tinsertAt,\n\tisComment,\n\tisNode,\n\tisText,\n\tremove,\n\tindexOf,\n\ttype DiffResult,\n\ttype ObservableChangeEvent\n} from '@ckeditor/ckeditor5-utils';\n\nimport type { ChangeType } from './document.js';\nimport type DocumentSelection from './documentselection.js';\nimport type DomConverter from './domconverter.js';\nimport type ViewElement from './element.js';\nimport type ViewNode from './node.js';\n\nimport '../../theme/renderer.css';\n\ntype DomText = globalThis.Text;\ntype DomNode = globalThis.Node;\ntype DomDocument = globalThis.Document;\ntype DomElement = globalThis.HTMLElement;\ntype DomSelection = globalThis.Selection;\n\n/**\n * Renderer is responsible for updating the DOM structure and the DOM selection based on\n * the {@link module:engine/view/renderer~Renderer#markToSync information about updated view nodes}.\n * In other words, it renders the view to the DOM.\n *\n * Its main responsibility is to make only the necessary, minimal changes to the DOM. However, unlike in many\n * virtual DOM implementations, the primary reason for doing minimal changes is not the performance but ensuring\n * that native editing features such as text composition, autocompletion, spell checking, selection's x-index are\n * affected as little as possible.\n *\n * Renderer uses {@link module:engine/view/domconverter~DomConverter} to transform view nodes and positions\n * to and from the DOM.\n */\nexport default class Renderer extends ObservableMixin() {\n\t/**\n\t * Set of DOM Documents instances.\n\t */\n\tpublic readonly domDocuments: Set = new Set();\n\n\t/**\n\t * Converter instance.\n\t */\n\tpublic readonly domConverter: DomConverter;\n\n\t/**\n\t * Set of nodes which attributes changed and may need to be rendered.\n\t */\n\tpublic readonly markedAttributes: Set = new Set();\n\n\t/**\n\t * Set of elements which child lists changed and may need to be rendered.\n\t */\n\tpublic readonly markedChildren: Set = new Set();\n\n\t/**\n\t * Set of text nodes which text data changed and may need to be rendered.\n\t */\n\tpublic readonly markedTexts: Set = new Set();\n\n\t/**\n\t * View selection. Renderer updates DOM selection based on the view selection.\n\t */\n\tpublic readonly selection: DocumentSelection;\n\n\t/**\n\t * Indicates if the view document is focused and selection can be rendered. Selection will not be rendered if\n\t * this is set to `false`.\n\t *\n\t * @observable\n\t */\n\tdeclare public readonly isFocused: boolean;\n\n\t/**\n\t * Indicates whether the user is making a selection in the document (e.g. holding the mouse button and moving the cursor).\n\t * When they stop selecting, the property goes back to `false`.\n\t *\n\t * Note: In some browsers, the renderer will stop rendering the selection and inline fillers while the user is making\n\t * a selection to avoid glitches in DOM selection\n\t * (https://github.com/ckeditor/ckeditor5/issues/10562, https://github.com/ckeditor/ckeditor5/issues/10723).\n\t *\n\t * @observable\n\t */\n\tdeclare public readonly isSelecting: boolean;\n\n\t/**\n\t * True if composition is in progress inside the document.\n\t *\n\t * This property is bound to the {@link module:engine/view/document~Document#isComposing `Document#isComposing`} property.\n\t *\n\t * @observable\n\t */\n\tdeclare public readonly isComposing: boolean;\n\n\t/**\n\t * The text node in which the inline filler was rendered.\n\t */\n\tprivate _inlineFiller: DomText | null = null;\n\n\t/**\n\t * DOM element containing fake selection.\n\t */\n\tprivate _fakeSelectionContainer: DomElement | null = null;\n\n\t/**\n\t * Creates a renderer instance.\n\t *\n\t * @param domConverter Converter instance.\n\t * @param selection View selection.\n\t */\n\tconstructor( domConverter: DomConverter, selection: DocumentSelection ) {\n\t\tsuper();\n\n\t\tthis.domConverter = domConverter;\n\t\tthis.selection = selection;\n\n\t\tthis.set( 'isFocused', false );\n\t\tthis.set( 'isSelecting', false );\n\n\t\t// Rendering the selection and inline filler manipulation should be postponed in (non-Android) Blink until the user finishes\n\t\t// creating the selection in DOM to avoid accidental selection collapsing\n\t\t// (https://github.com/ckeditor/ckeditor5/issues/10562, https://github.com/ckeditor/ckeditor5/issues/10723).\n\t\t// When the user stops selecting, all pending changes should be rendered ASAP, though.\n\t\tif ( env.isBlink && !env.isAndroid ) {\n\t\t\tthis.on( 'change:isSelecting', () => {\n\t\t\t\tif ( !this.isSelecting ) {\n\t\t\t\t\tthis.render();\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t\tthis.set( 'isComposing', false );\n\n\t\tthis.on( 'change:isComposing', () => {\n\t\t\tif ( !this.isComposing ) {\n\t\t\t\tthis.render();\n\t\t\t}\n\t\t} );\n\t}\n\n\t/**\n\t * Marks a view node to be updated in the DOM by {@link #render `render()`}.\n\t *\n\t * Note that only view nodes whose parents have corresponding DOM elements need to be marked to be synchronized.\n\t *\n\t * @see #markedAttributes\n\t * @see #markedChildren\n\t * @see #markedTexts\n\t *\n\t * @param type Type of the change.\n\t * @param node ViewNode to be marked.\n\t */\n\tpublic markToSync( type: ChangeType, node: ViewNode ): void {\n\t\tif ( type === 'text' ) {\n\t\t\tif ( this.domConverter.mapViewToDom( node.parent! ) ) {\n\t\t\t\tthis.markedTexts.add( node );\n\t\t\t}\n\t\t} else {\n\t\t\t// If the node has no DOM element it is not rendered yet,\n\t\t\t// its children/attributes do not need to be marked to be sync.\n\t\t\tif ( !this.domConverter.mapViewToDom( node as ViewElement ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( type === 'attributes' ) {\n\t\t\t\tthis.markedAttributes.add( node as ViewElement );\n\t\t\t} else if ( type === 'children' ) {\n\t\t\t\tthis.markedChildren.add( node as ViewElement );\n\t\t\t} else {\n\t\t\t\t// eslint-disable-next-line @typescript-eslint/no-unused-vars\n\t\t\t\tconst unreachable: never = type;\n\n\t\t\t\t/**\n\t\t\t\t * Unknown type passed to Renderer.markToSync.\n\t\t\t\t *\n\t\t\t\t * @error view-renderer-unknown-type\n\t\t\t\t */\n\t\t\t\tthrow new CKEditorError( 'view-renderer-unknown-type', this );\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Renders all buffered changes ({@link #markedAttributes}, {@link #markedChildren} and {@link #markedTexts}) and\n\t * the current view selection (if needed) to the DOM by applying a minimal set of changes to it.\n\t *\n\t * Renderer tries not to break the text composition (e.g. IME) and x-index of the selection,\n\t * so it does as little as it is needed to update the DOM.\n\t *\n\t * Renderer also handles {@link module:engine/view/filler fillers}. Especially, it checks if the inline filler is needed\n\t * at the selection position and adds or removes it. To prevent breaking text composition inline filler will not be\n\t * removed as long as the selection is in the text node which needed it at first.\n\t */\n\tpublic render(): void {\n\t\t// Ignore rendering while in the composition mode. Composition events are not cancellable and browser will modify the DOM tree.\n\t\t// All marked elements, attributes, etc. will wait until next render after the composition ends.\n\t\t// On Android composition events are immediately applied to the model, so we don't need to skip rendering,\n\t\t// and we should not do it because the difference between view and DOM could lead to position mapping problems.\n\t\tif ( this.isComposing && !env.isAndroid ) {\n\t\t\t// @if CK_DEBUG_TYPING // if ( ( window as any ).logCKETyping ) {\n\t\t\t// @if CK_DEBUG_TYPING // \tconsole.info( '%c[Renderer]%c Rendering aborted while isComposing',\n\t\t\t// @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', ''\n\t\t\t// @if CK_DEBUG_TYPING // \t);\n\t\t\t// @if CK_DEBUG_TYPING // }\n\n\t\t\treturn;\n\t\t}\n\n\t\t// @if CK_DEBUG_TYPING // if ( ( window as any ).logCKETyping ) {\n\t\t// @if CK_DEBUG_TYPING // \tconsole.group( '%c[Renderer]%c Rendering',\n\t\t// @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', ''\n\t\t// @if CK_DEBUG_TYPING // \t);\n\t\t// @if CK_DEBUG_TYPING // }\n\n\t\tlet inlineFillerPosition: ViewPosition | null = null;\n\t\tconst isInlineFillerRenderingPossible = env.isBlink && !env.isAndroid ? !this.isSelecting : true;\n\n\t\t// Refresh mappings.\n\t\tfor ( const element of this.markedChildren ) {\n\t\t\tthis._updateChildrenMappings( element );\n\t\t}\n\n\t\t// Don't manipulate inline fillers while the selection is being made in (non-Android) Blink to prevent accidental\n\t\t// DOM selection collapsing\n\t\t// (https://github.com/ckeditor/ckeditor5/issues/10562, https://github.com/ckeditor/ckeditor5/issues/10723).\n\t\tif ( isInlineFillerRenderingPossible ) {\n\t\t\t// There was inline filler rendered in the DOM but it's not\n\t\t\t// at the selection position any more, so we can remove it\n\t\t\t// (cause even if it's needed, it must be placed in another location).\n\t\t\tif ( this._inlineFiller && !this._isSelectionInInlineFiller() ) {\n\t\t\t\tthis._removeInlineFiller();\n\t\t\t}\n\n\t\t\t// If we've got the filler, let's try to guess its position in the view.\n\t\t\tif ( this._inlineFiller ) {\n\t\t\t\tinlineFillerPosition = this._getInlineFillerPosition();\n\t\t\t}\n\t\t\t// Otherwise, if it's needed, create it at the selection position.\n\t\t\telse if ( this._needsInlineFillerAtSelection() ) {\n\t\t\t\tinlineFillerPosition = this.selection.getFirstPosition()!;\n\n\t\t\t\t// Do not use `markToSync` so it will be added even if the parent is already added.\n\t\t\t\tthis.markedChildren.add( inlineFillerPosition.parent as ViewElement );\n\t\t\t}\n\t\t}\n\t\t// Make sure the inline filler has any parent, so it can be mapped to view position by DomConverter.\n\t\telse if ( this._inlineFiller && this._inlineFiller.parentNode ) {\n\t\t\t// While the user is making selection, preserve the inline filler at its original position.\n\t\t\tinlineFillerPosition = this.domConverter.domPositionToView( this._inlineFiller )!;\n\n\t\t\t// While down-casting the document selection attributes, all existing empty\n\t\t\t// attribute elements (for selection position) are removed from the view and DOM,\n\t\t\t// so make sure that we were able to map filler position.\n\t\t\t// https://github.com/ckeditor/ckeditor5/issues/12026\n\t\t\tif ( inlineFillerPosition && inlineFillerPosition.parent.is( '$text' ) ) {\n\t\t\t\t// The inline filler position is expected to be before the text node.\n\t\t\t\tinlineFillerPosition = ViewPosition._createBefore( inlineFillerPosition.parent );\n\t\t\t}\n\t\t}\n\n\t\tfor ( const element of this.markedAttributes ) {\n\t\t\tthis._updateAttrs( element );\n\t\t}\n\n\t\tfor ( const element of this.markedChildren ) {\n\t\t\tthis._updateChildren( element, { inlineFillerPosition } );\n\t\t}\n\n\t\tfor ( const node of this.markedTexts ) {\n\t\t\tif ( !this.markedChildren.has( node.parent as ViewElement ) && this.domConverter.mapViewToDom( node.parent as ViewElement ) ) {\n\t\t\t\tthis._updateText( node as ViewText, { inlineFillerPosition } );\n\t\t\t}\n\t\t}\n\n\t\t// * Check whether the inline filler is required and where it really is in the DOM.\n\t\t// At this point in most cases it will be in the DOM, but there are exceptions.\n\t\t// For example, if the inline filler was deep in the created DOM structure, it will not be created.\n\t\t// Similarly, if it was removed at the beginning of this function and then neither text nor children were updated,\n\t\t// it will not be present. Fix those and similar scenarios.\n\t\t// * Don't manipulate inline fillers while the selection is being made in (non-Android) Blink to prevent accidental\n\t\t// DOM selection collapsing\n\t\t// (https://github.com/ckeditor/ckeditor5/issues/10562, https://github.com/ckeditor/ckeditor5/issues/10723).\n\t\tif ( isInlineFillerRenderingPossible ) {\n\t\t\tif ( inlineFillerPosition ) {\n\t\t\t\tconst fillerDomPosition = this.domConverter.viewPositionToDom( inlineFillerPosition )!;\n\t\t\t\tconst domDocument = fillerDomPosition.parent.ownerDocument!;\n\n\t\t\t\tif ( !startsWithFiller( fillerDomPosition.parent ) ) {\n\t\t\t\t\t// Filler has not been created at filler position. Create it now.\n\t\t\t\t\tthis._inlineFiller = addInlineFiller( domDocument, fillerDomPosition.parent, fillerDomPosition.offset );\n\t\t\t\t} else {\n\t\t\t\t\t// Filler has been found, save it.\n\t\t\t\t\tthis._inlineFiller = fillerDomPosition.parent as DomText;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// There is no filler needed.\n\t\t\t\tthis._inlineFiller = null;\n\t\t\t}\n\t\t}\n\n\t\t// First focus the new editing host, then update the selection.\n\t\t// Otherwise, FF may throw an error (https://github.com/ckeditor/ckeditor5/issues/721).\n\t\tthis._updateFocus();\n\t\tthis._updateSelection();\n\n\t\tthis.domConverter._clearTemporaryCustomProperties();\n\n\t\tthis.markedTexts.clear();\n\t\tthis.markedAttributes.clear();\n\t\tthis.markedChildren.clear();\n\n\t\t// @if CK_DEBUG_TYPING // if ( ( window as any ).logCKETyping ) {\n\t\t// @if CK_DEBUG_TYPING // \tconsole.groupEnd();\n\t\t// @if CK_DEBUG_TYPING // }\n\t}\n\n\t/**\n\t * Updates mappings of view element's children.\n\t *\n\t * Children that were replaced in the view structure by similar elements (same tag name) are treated as 'replaced'.\n\t * This means that their mappings can be updated so the new view elements are mapped to the existing DOM elements.\n\t * Thanks to that these elements do not need to be re-rendered completely.\n\t *\n\t * @param viewElement The view element whose children mappings will be updated.\n\t */\n\tprivate _updateChildrenMappings( viewElement: ViewElement ): void {\n\t\tconst domElement = this.domConverter.mapViewToDom( viewElement );\n\n\t\tif ( !domElement ) {\n\t\t\t// If there is no `domElement` it means that it was already removed from DOM and there is no need to process it.\n\t\t\treturn;\n\t\t}\n\n\t\t// Removing nodes from the DOM as we iterate can cause `actualDomChildren`\n\t\t// (which is a live-updating `NodeList`) to get out of sync with the\n\t\t// indices that we compute as we iterate over `actions`.\n\t\t// This would produce incorrect element mappings.\n\t\t//\n\t\t// Converting live list to an array to make the list static.\n\t\tconst actualDomChildren = Array.from(\n\t\t\tdomElement.childNodes\n\t\t);\n\t\tconst expectedDomChildren = Array.from(\n\t\t\tthis.domConverter.viewChildrenToDom( viewElement, { withChildren: false } )\n\t\t);\n\t\tconst diff = this._diffNodeLists( actualDomChildren, expectedDomChildren );\n\t\tconst actions = this._findUpdateActions( diff, actualDomChildren, expectedDomChildren, areSimilarElements );\n\n\t\tif ( actions.indexOf( 'update' ) !== -1 ) {\n\t\t\tconst counter = { equal: 0, insert: 0, delete: 0 };\n\n\t\t\tfor ( const action of actions ) {\n\t\t\t\tif ( action === 'update' ) {\n\t\t\t\t\tconst insertIndex = counter.equal + counter.insert;\n\t\t\t\t\tconst deleteIndex = counter.equal + counter.delete;\n\t\t\t\t\tconst viewChild = viewElement.getChild( insertIndex );\n\n\t\t\t\t\t// UIElement and RawElement are special cases. Their children are not stored in a view (#799)\n\t\t\t\t\t// so we cannot use them with replacing flow (since they use view children during rendering\n\t\t\t\t\t// which will always result in rendering empty elements).\n\t\t\t\t\tif ( viewChild && !viewChild.is( 'uiElement' ) && !viewChild.is( 'rawElement' ) ) {\n\t\t\t\t\t\tthis._updateElementMappings( viewChild as ViewElement, actualDomChildren[ deleteIndex ] as DomElement );\n\t\t\t\t\t}\n\n\t\t\t\t\tremove( expectedDomChildren[ insertIndex ] );\n\t\t\t\t\tcounter.equal++;\n\t\t\t\t} else {\n\t\t\t\t\tcounter[ action ]++;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Updates mappings of a given view element.\n\t *\n\t * @param viewElement The view element whose mappings will be updated.\n\t * @param domElement The DOM element representing the given view element.\n\t */\n\tprivate _updateElementMappings( viewElement: ViewElement, domElement: DomElement ): void {\n\t\t// Remap 'DomConverter' bindings.\n\t\tthis.domConverter.unbindDomElement( domElement );\n\t\tthis.domConverter.bindElements( domElement, viewElement );\n\n\t\t// View element may have children which needs to be updated, but are not marked, mark them to update.\n\t\tthis.markedChildren.add( viewElement );\n\n\t\t// Because we replace new view element mapping with the existing one, the corresponding DOM element\n\t\t// will not be rerendered. The new view element may have different attributes than the previous one.\n\t\t// Since its corresponding DOM element will not be rerendered, new attributes will not be added\n\t\t// to the DOM, so we need to mark it here to make sure its attributes gets updated. See #1427 for more\n\t\t// detailed case study.\n\t\t// Also there are cases where replaced element is removed from the view structure and then has\n\t\t// its attributes changed or removed. In such cases the element will not be present in `markedAttributes`\n\t\t// and also may be the same (`element.isSimilar()`) as the reused element not having its attributes updated.\n\t\t// To prevent such situations we always mark reused element to have its attributes rerenderd (#1560).\n\t\tthis.markedAttributes.add( viewElement );\n\t}\n\n\t/**\n\t * Gets the position of the inline filler based on the current selection.\n\t * Here, we assume that we know that the filler is needed and\n\t * {@link #_isSelectionInInlineFiller is at the selection position}, and, since it is needed,\n\t * it is somewhere at the selection position.\n\t *\n\t * Note: The filler position cannot be restored based on the filler's DOM text node, because\n\t * when this method is called (before rendering), the bindings will often be broken. View-to-DOM\n\t * bindings are only dependable after rendering.\n\t */\n\tprivate _getInlineFillerPosition(): ViewPosition {\n\t\tconst firstPos = this.selection.getFirstPosition()!;\n\n\t\tif ( firstPos.parent.is( '$text' ) ) {\n\t\t\treturn ViewPosition._createBefore( firstPos.parent );\n\t\t} else {\n\t\t\treturn firstPos;\n\t\t}\n\t}\n\n\t/**\n\t * Returns `true` if the selection has not left the inline filler's text node.\n\t * If it is `true`, it means that the filler had been added for a reason and the selection did not\n\t * leave the filler's text node. For example, the user can be in the middle of a composition so it should not be touched.\n\t *\n\t * @returns `true` if the inline filler and selection are in the same place.\n\t */\n\tprivate _isSelectionInInlineFiller(): boolean {\n\t\tif ( this.selection.rangeCount != 1 || !this.selection.isCollapsed ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Note, we can't check if selection's position equals position of the\n\t\t// this._inlineFiller node, because of #663. We may not be able to calculate\n\t\t// the filler's position in the view at this stage.\n\t\t// Instead, we check it the other way – whether selection is anchored in\n\t\t// that text node or next to it.\n\n\t\t// Possible options are:\n\t\t// \"FILLER{}\"\n\t\t// \"FILLERadded-text{}\"\n\t\tconst selectionPosition = this.selection.getFirstPosition()!;\n\t\tconst position = this.domConverter.viewPositionToDom( selectionPosition );\n\n\t\tif ( position && isText( position.parent ) && startsWithFiller( position.parent ) ) {\n\t\t\treturn true;\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t * Removes the inline filler.\n\t */\n\tprivate _removeInlineFiller(): void {\n\t\tconst domFillerNode = this._inlineFiller!;\n\n\t\t// Something weird happened and the stored node doesn't contain the filler's text.\n\t\tif ( !startsWithFiller( domFillerNode ) ) {\n\t\t\t/**\n\t\t\t * The inline filler node was lost. Most likely, something overwrote the filler text node\n\t\t\t * in the DOM.\n\t\t\t *\n\t\t\t * @error view-renderer-filler-was-lost\n\t\t\t */\n\t\t\tthrow new CKEditorError( 'view-renderer-filler-was-lost', this );\n\t\t}\n\n\t\tif ( isInlineFiller( domFillerNode ) ) {\n\t\t\tdomFillerNode.remove();\n\t\t} else {\n\t\t\tdomFillerNode.data = domFillerNode.data.substr( INLINE_FILLER_LENGTH );\n\t\t}\n\n\t\tthis._inlineFiller = null;\n\t}\n\n\t/**\n\t * Checks if the inline {@link module:engine/view/filler filler} should be added.\n\t *\n\t * @returns `true` if the inline filler should be added.\n\t */\n\tprivate _needsInlineFillerAtSelection(): boolean {\n\t\tif ( this.selection.rangeCount != 1 || !this.selection.isCollapsed ) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst selectionPosition = this.selection.getFirstPosition()!;\n\t\tconst selectionParent = selectionPosition.parent;\n\t\tconst selectionOffset = selectionPosition.offset;\n\n\t\t// If there is no DOM root we do not care about fillers.\n\t\tif ( !this.domConverter.mapViewToDom( selectionParent.root ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif ( !( selectionParent.is( 'element' ) ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Prevent adding inline filler inside elements with contenteditable=false.\n\t\t// https://github.com/ckeditor/ckeditor5-engine/issues/1170\n\t\tif ( !isEditable( selectionParent ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\tconst nodeBefore = selectionPosition.nodeBefore;\n\t\tconst nodeAfter = selectionPosition.nodeAfter;\n\n\t\tif ( nodeBefore instanceof ViewText || nodeAfter instanceof ViewText ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// We have block filler, we do not need inline one.\n\t\tif ( selectionOffset === selectionParent.getFillerOffset!() && ( !nodeBefore || !nodeBefore.is( 'element', 'br' ) ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Do not use inline filler while typing outside inline elements on Android.\n\t\t// The deleteContentBackward would remove part of the inline filler instead of removing last letter in a link.\n\t\tif ( env.isAndroid && ( nodeBefore || nodeAfter ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t}\n\n\t/**\n\t * Checks if text needs to be updated and possibly updates it.\n\t *\n\t * @param viewText View text to update.\n\t * @param options.inlineFillerPosition The position where the inline filler should be rendered.\n\t */\n\tprivate _updateText( viewText: ViewText, options: { inlineFillerPosition?: ViewPosition | null } ) {\n\t\tconst domText = this.domConverter.findCorrespondingDomText( viewText )!;\n\t\tconst newDomText = this.domConverter.viewToDom( viewText );\n\n\t\tlet expectedText = newDomText.data;\n\t\tconst filler = options.inlineFillerPosition;\n\n\t\tif ( filler && filler.parent == viewText.parent && filler.offset == viewText.index ) {\n\t\t\texpectedText = INLINE_FILLER + expectedText;\n\t\t}\n\n\t\t// @if CK_DEBUG_TYPING // if ( ( window as any ).logCKETyping ) {\n\t\t// @if CK_DEBUG_TYPING // \tconsole.group( '%c[Renderer]%c Update text',\n\t\t// @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', ''\n\t\t// @if CK_DEBUG_TYPING // \t);\n\t\t// @if CK_DEBUG_TYPING // }\n\n\t\tupdateTextNode( domText, expectedText );\n\n\t\t// @if CK_DEBUG_TYPING // if ( ( window as any ).logCKETyping ) {\n\t\t// @if CK_DEBUG_TYPING // \tconsole.groupEnd();\n\t\t// @if CK_DEBUG_TYPING // }\n\t}\n\n\t/**\n\t * Checks if attribute list needs to be updated and possibly updates it.\n\t *\n\t * @param viewElement The view element to update.\n\t */\n\tprivate _updateAttrs( viewElement: ViewElement ): void {\n\t\tconst domElement = this.domConverter.mapViewToDom( viewElement );\n\n\t\tif ( !domElement ) {\n\t\t\t// If there is no `domElement` it means that 'viewElement' is outdated as its mapping was updated\n\t\t\t// in 'this._updateChildrenMappings()'. There is no need to process it as new view element which\n\t\t\t// replaced old 'viewElement' mapping was also added to 'this.markedAttributes'\n\t\t\t// in 'this._updateChildrenMappings()' so it will be processed separately.\n\t\t\treturn;\n\t\t}\n\n\t\tconst domAttrKeys = Array.from( ( domElement as DomElement ).attributes ).map( attr => attr.name );\n\t\tconst viewAttrKeys = viewElement.getAttributeKeys();\n\n\t\t// Add or overwrite attributes.\n\t\tfor ( const key of viewAttrKeys ) {\n\t\t\tthis.domConverter.setDomElementAttribute( domElement as DomElement, key, viewElement.getAttribute( key )!, viewElement );\n\t\t}\n\n\t\t// Remove from DOM attributes which do not exists in the view.\n\t\tfor ( const key of domAttrKeys ) {\n\t\t\t// All other attributes not present in the DOM should be removed.\n\t\t\tif ( !viewElement.hasAttribute( key ) ) {\n\t\t\t\tthis.domConverter.removeDomElementAttribute( domElement as DomElement, key );\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Checks if elements child list needs to be updated and possibly updates it.\n\t *\n\t * Note that on Android, to reduce the risk of composition breaks, it tries to update data of an existing\n\t * child text nodes instead of replacing them completely.\n\t *\n\t * @param viewElement View element to update.\n\t * @param options.inlineFillerPosition The position where the inline filler should be rendered.\n\t */\n\tprivate _updateChildren( viewElement: ViewElement, options: { inlineFillerPosition: ViewPosition | null } ) {\n\t\tconst domElement = this.domConverter.mapViewToDom( viewElement );\n\n\t\tif ( !domElement ) {\n\t\t\t// If there is no `domElement` it means that it was already removed from DOM.\n\t\t\t// There is no need to process it. It will be processed when re-inserted.\n\t\t\treturn;\n\t\t}\n\n\t\t// @if CK_DEBUG_TYPING // if ( ( window as any ).logCKETyping ) {\n\t\t// @if CK_DEBUG_TYPING // \tconsole.group( '%c[Renderer]%c Update children',\n\t\t// @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', ''\n\t\t// @if CK_DEBUG_TYPING // \t);\n\t\t// @if CK_DEBUG_TYPING // }\n\n\t\t// IME on Android inserts a new text node while typing after a link\n\t\t// instead of updating an existing text node that follows the link.\n\t\t// We must normalize those text nodes so the diff won't get confused.\n\t\t// https://github.com/ckeditor/ckeditor5/issues/12574.\n\t\tif ( env.isAndroid ) {\n\t\t\tlet previousDomNode = null;\n\n\t\t\tfor ( const domNode of Array.from( domElement.childNodes ) ) {\n\t\t\t\tif ( previousDomNode && isText( previousDomNode ) && isText( domNode ) ) {\n\t\t\t\t\tdomElement.normalize();\n\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tpreviousDomNode = domNode;\n\t\t\t}\n\t\t}\n\n\t\tconst inlineFillerPosition = options.inlineFillerPosition;\n\t\tconst actualDomChildren = domElement.childNodes;\n\t\tconst expectedDomChildren = Array.from(\n\t\t\tthis.domConverter.viewChildrenToDom( viewElement, { bind: true } )\n\t\t);\n\n\t\t// Inline filler element has to be created as it is present in the DOM, but not in the view. It is required\n\t\t// during diffing so text nodes could be compared correctly and also during rendering to maintain\n\t\t// proper order and indexes while updating the DOM.\n\t\tif ( inlineFillerPosition && inlineFillerPosition.parent === viewElement ) {\n\t\t\taddInlineFiller( ( domElement as DomElement ).ownerDocument, expectedDomChildren, inlineFillerPosition.offset );\n\t\t}\n\n\t\tconst diff = this._diffNodeLists( actualDomChildren, expectedDomChildren );\n\n\t\t// We need to make sure that we update the existing text node and not replace it with another one.\n\t\t// The composition and different \"language\" browser extensions are fragile to text node being completely replaced.\n\t\tconst actions = this._findUpdateActions( diff, actualDomChildren, expectedDomChildren, areTextNodes );\n\n\t\tlet i = 0;\n\t\tconst nodesToUnbind: Set = new Set();\n\n\t\t// Handle deletions first.\n\t\t// This is to prevent a situation where an element that already exists in `actualDomChildren` is inserted at a different\n\t\t// index in `actualDomChildren`. Since `actualDomChildren` is a `NodeList`, this works like move, not like an insert,\n\t\t// and it disrupts the whole algorithm. See https://github.com/ckeditor/ckeditor5/issues/6367.\n\t\t//\n\t\t// It doesn't matter in what order we remove or add nodes, as long as we remove and add correct nodes at correct indexes.\n\t\tfor ( const action of actions ) {\n\t\t\tif ( action === 'delete' ) {\n\t\t\t\t// @if CK_DEBUG_TYPING // if ( ( window as any ).logCKETyping ) {\n\t\t\t\t// @if CK_DEBUG_TYPING // \tconsole.info( '%c[Renderer]%c Remove node',\n\t\t\t\t// @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', '', actualDomChildren[ i ]\n\t\t\t\t// @if CK_DEBUG_TYPING // \t);\n\t\t\t\t// @if CK_DEBUG_TYPING // }\n\t\t\t\tnodesToUnbind.add( actualDomChildren[ i ] as DomElement );\n\t\t\t\tremove( actualDomChildren[ i ] );\n\t\t\t} else if ( action === 'equal' || action === 'update' ) {\n\t\t\t\ti++;\n\t\t\t}\n\t\t}\n\n\t\ti = 0;\n\n\t\tfor ( const action of actions ) {\n\t\t\tif ( action === 'insert' ) {\n\t\t\t\t// @if CK_DEBUG_TYPING // if ( ( window as any ).logCKETyping ) {\n\t\t\t\t// @if CK_DEBUG_TYPING // \tconsole.info( '%c[Renderer]%c Insert node',\n\t\t\t\t// @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', '', expectedDomChildren[ i ]\n\t\t\t\t// @if CK_DEBUG_TYPING // \t);\n\t\t\t\t// @if CK_DEBUG_TYPING // }\n\n\t\t\t\tinsertAt( domElement as DomElement, i, expectedDomChildren[ i ] );\n\t\t\t\ti++;\n\t\t\t}\n\t\t\t// Update the existing text node data. Note that replace action is generated only for Android for now.\n\t\t\telse if ( action === 'update' ) {\n\t\t\t\t// @if CK_DEBUG_TYPING // if ( ( window as any ).logCKETyping ) {\n\t\t\t\t// @if CK_DEBUG_TYPING // \tconsole.group( '%c[Renderer]%c Update text node',\n\t\t\t\t// @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', ''\n\t\t\t\t// @if CK_DEBUG_TYPING // \t);\n\t\t\t\t// @if CK_DEBUG_TYPING // }\n\n\t\t\t\tupdateTextNode( actualDomChildren[ i ] as DomText, ( expectedDomChildren[ i ] as DomText ).data );\n\t\t\t\ti++;\n\n\t\t\t\t// @if CK_DEBUG_TYPING // if ( ( window as any ).logCKETyping ) {\n\t\t\t\t// @if CK_DEBUG_TYPING // \tconsole.groupEnd();\n\t\t\t\t// @if CK_DEBUG_TYPING // }\n\t\t\t} else if ( action === 'equal' ) {\n\t\t\t\t// Force updating text nodes inside elements which did not change and do not need to be re-rendered (#1125).\n\t\t\t\t// Do it here (not in the loop above) because only after insertions the `i` index is correct.\n\t\t\t\tthis._markDescendantTextToSync( this.domConverter.domToView( expectedDomChildren[ i ] ) as any );\n\t\t\t\ti++;\n\t\t\t}\n\t\t}\n\n\t\t// Unbind removed nodes. When node does not have a parent it means that it was removed from DOM tree during\n\t\t// comparison with the expected DOM. We don't need to check child nodes, because if child node was reinserted,\n\t\t// it was moved to DOM tree out of the removed node.\n\t\tfor ( const node of nodesToUnbind ) {\n\t\t\tif ( !node.parentNode ) {\n\t\t\t\tthis.domConverter.unbindDomElement( node as DomElement );\n\t\t\t}\n\t\t}\n\n\t\t// @if CK_DEBUG_TYPING // if ( ( window as any ).logCKETyping ) {\n\t\t// @if CK_DEBUG_TYPING // \tconsole.groupEnd();\n\t\t// @if CK_DEBUG_TYPING // }\n\t}\n\n\t/**\n\t * Shorthand for diffing two arrays or node lists of DOM nodes.\n\t *\n\t * @param actualDomChildren Actual DOM children\n\t * @param expectedDomChildren Expected DOM children.\n\t * @returns The list of actions based on the {@link module:utils/diff~diff} function.\n\t */\n\tprivate _diffNodeLists( actualDomChildren: Array | NodeList, expectedDomChildren: Array | NodeList ) {\n\t\tactualDomChildren = filterOutFakeSelectionContainer( actualDomChildren, this._fakeSelectionContainer );\n\n\t\treturn diff( actualDomChildren, expectedDomChildren, sameNodes.bind( null, this.domConverter ) );\n\t}\n\n\t/**\n\t * Finds DOM nodes that were replaced with the similar nodes (same tag name) in the view. All nodes are compared\n\t * within one `insert`/`delete` action group, for example:\n\t *\n\t * ```\n\t * Actual DOM:\t\t

    FooBarBazBax

    \n\t * Expected DOM:\t

    Bar123Baz456

    \n\t * Input actions:\t[ insert, insert, delete, delete, equal, insert, delete ]\n\t * Output actions:\t[ insert, replace, delete, equal, replace ]\n\t * ```\n\t *\n\t * @param actions Actions array which is a result of the {@link module:utils/diff~diff} function.\n\t * @param actualDom Actual DOM children\n\t * @param expectedDom Expected DOM children.\n\t * @param comparator A comparator function that should return `true` if the given node should be reused\n\t * (either by the update of a text node data or an element children list for similar elements).\n\t * @returns Actions array modified with the `update` actions.\n\t */\n\tprivate _findUpdateActions(\n\t\tactions: Array,\n\t\tactualDom: Array | NodeList,\n\t\texpectedDom: Array,\n\t\tcomparator: ( a: DomNode, b: DomNode ) => boolean\n\t): Array {\n\t\t// If there is no both 'insert' and 'delete' actions, no need to check for replaced elements.\n\t\tif ( actions.indexOf( 'insert' ) === -1 || actions.indexOf( 'delete' ) === -1 ) {\n\t\t\treturn actions;\n\t\t}\n\n\t\tlet newActions: Array = [];\n\t\tlet actualSlice = [];\n\t\tlet expectedSlice = [];\n\n\t\tconst counter = { equal: 0, insert: 0, delete: 0 };\n\n\t\tfor ( const action of actions ) {\n\t\t\tif ( action === 'insert' ) {\n\t\t\t\texpectedSlice.push( expectedDom[ counter.equal + counter.insert ] );\n\t\t\t} else if ( action === 'delete' ) {\n\t\t\t\tactualSlice.push( actualDom[ counter.equal + counter.delete ] );\n\t\t\t} else { // equal\n\t\t\t\tnewActions = newActions.concat(\n\t\t\t\t\tdiff( actualSlice, expectedSlice, comparator )\n\t\t\t\t\t\t.map( action => action === 'equal' ? 'update' : action )\n\t\t\t\t);\n\n\t\t\t\tnewActions.push( 'equal' );\n\n\t\t\t\t// Reset stored elements on 'equal'.\n\t\t\t\tactualSlice = [];\n\t\t\t\texpectedSlice = [];\n\t\t\t}\n\t\t\tcounter[ action ]++;\n\t\t}\n\n\t\treturn newActions.concat(\n\t\t\tdiff( actualSlice, expectedSlice, comparator )\n\t\t\t\t.map( action => action === 'equal' ? 'update' : action )\n\t\t);\n\t}\n\n\t/**\n\t * Marks text nodes to be synchronized.\n\t *\n\t * If a text node is passed, it will be marked. If an element is passed, all descendant text nodes inside it will be marked.\n\t *\n\t * @param viewNode View node to sync.\n\t */\n\tprivate _markDescendantTextToSync( viewNode: ViewNode | undefined ): void {\n\t\tif ( !viewNode ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( viewNode.is( '$text' ) ) {\n\t\t\tthis.markedTexts.add( viewNode );\n\t\t} else if ( viewNode.is( 'element' ) ) {\n\t\t\tfor ( const child of viewNode.getChildren() ) {\n\t\t\t\tthis._markDescendantTextToSync( child );\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the selection needs to be updated and possibly updates it.\n\t */\n\tprivate _updateSelection(): void {\n\t\t// Block updating DOM selection in (non-Android) Blink while the user is selecting to prevent accidental selection collapsing.\n\t\t// Note: Structural changes in DOM must trigger selection rendering, though. Nodes the selection was anchored\n\t\t// to, may disappear in DOM which would break the selection (e.g. in real-time collaboration scenarios).\n\t\t// https://github.com/ckeditor/ckeditor5/issues/10562, https://github.com/ckeditor/ckeditor5/issues/10723\n\t\tif ( env.isBlink && !env.isAndroid && this.isSelecting && !this.markedChildren.size ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// If there is no selection - remove DOM and fake selections.\n\t\tif ( this.selection.rangeCount === 0 ) {\n\t\t\tthis._removeDomSelection();\n\t\t\tthis._removeFakeSelection();\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst domRoot = this.domConverter.mapViewToDom( this.selection.editableElement! );\n\n\t\t// Do nothing if there is no focus, or there is no DOM element corresponding to selection's editable element.\n\t\tif ( !this.isFocused || !domRoot ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Render fake selection - create the fake selection container (if needed) and move DOM selection to it.\n\t\tif ( this.selection.isFake ) {\n\t\t\tthis._updateFakeSelection( domRoot );\n\t\t}\n\t\t// There was a fake selection so remove it and update the DOM selection.\n\t\t// This is especially important on Android because otherwise IME will try to compose over the fake selection container.\n\t\telse if ( this._fakeSelectionContainer && this._fakeSelectionContainer.isConnected ) {\n\t\t\tthis._removeFakeSelection();\n\t\t\tthis._updateDomSelection( domRoot );\n\t\t}\n\t\t// Update the DOM selection in case of a plain selection change (no fake selection is involved).\n\t\t// On non-Android the whole rendering is disabled in composition mode (including DOM selection update),\n\t\t// but updating DOM selection should be also disabled on Android if in the middle of the composition\n\t\t// (to not interrupt it).\n\t\telse if ( !( this.isComposing && env.isAndroid ) ) {\n\t\t\tthis._updateDomSelection( domRoot );\n\t\t}\n\t}\n\n\t/**\n\t * Updates the fake selection.\n\t *\n\t * @param domRoot A valid DOM root where the fake selection container should be added.\n\t */\n\tprivate _updateFakeSelection( domRoot: DomElement ): void {\n\t\tconst domDocument = domRoot.ownerDocument;\n\n\t\tif ( !this._fakeSelectionContainer ) {\n\t\t\tthis._fakeSelectionContainer = createFakeSelectionContainer( domDocument );\n\t\t}\n\n\t\tconst container = this._fakeSelectionContainer;\n\n\t\t// Bind fake selection container with the current selection *position*.\n\t\tthis.domConverter.bindFakeSelection( container, this.selection );\n\n\t\tif ( !this._fakeSelectionNeedsUpdate( domRoot ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( !container.parentElement || container.parentElement != domRoot ) {\n\t\t\tdomRoot.appendChild( container );\n\t\t}\n\n\t\tcontainer.textContent = this.selection.fakeSelectionLabel || '\\u00A0';\n\n\t\tconst domSelection = domDocument.getSelection()!;\n\t\tconst domRange = domDocument.createRange();\n\n\t\tdomSelection.removeAllRanges();\n\t\tdomRange.selectNodeContents( container );\n\t\tdomSelection.addRange( domRange );\n\t}\n\n\t/**\n\t * Updates the DOM selection.\n\t *\n\t * @param domRoot A valid DOM root where the DOM selection should be rendered.\n\t */\n\tprivate _updateDomSelection( domRoot: DomElement ) {\n\t\tconst domSelection = domRoot.ownerDocument.defaultView!.getSelection()!;\n\n\t\t// Let's check whether DOM selection needs updating at all.\n\t\tif ( !this._domSelectionNeedsUpdate( domSelection ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Multi-range selection is not available in most browsers, and, at least in Chrome, trying to\n\t\t// set such selection, that is not continuous, throws an error. Because of that, we will just use anchor\n\t\t// and focus of view selection.\n\t\t// Since we are not supporting multi-range selection, we also do not need to check if proper editable is\n\t\t// selected. If there is any editable selected, it is okay (editable is taken from selection anchor).\n\t\tconst anchor = this.domConverter.viewPositionToDom( this.selection.anchor! )!;\n\t\tconst focus = this.domConverter.viewPositionToDom( this.selection.focus! )!;\n\n\t\t// @if CK_DEBUG_TYPING // if ( ( window as any ).logCKETyping ) {\n\t\t// @if CK_DEBUG_TYPING // \tconsole.info( '%c[Renderer]%c Update DOM selection:',\n\t\t// @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', '', anchor, focus\n\t\t// @if CK_DEBUG_TYPING // \t);\n\t\t// @if CK_DEBUG_TYPING // }\n\n\t\tdomSelection.setBaseAndExtent( anchor.parent, anchor.offset, focus.parent, focus.offset );\n\n\t\t// Firefox–specific hack (https://github.com/ckeditor/ckeditor5-engine/issues/1439).\n\t\tif ( env.isGecko ) {\n\t\t\tfixGeckoSelectionAfterBr( focus, domSelection );\n\t\t}\n\t}\n\n\t/**\n\t * Checks whether a given DOM selection needs to be updated.\n\t *\n\t * @param domSelection The DOM selection to check.\n\t */\n\tprivate _domSelectionNeedsUpdate( domSelection: Selection ): boolean {\n\t\tif ( !this.domConverter.isDomSelectionCorrect( domSelection ) ) {\n\t\t\t// Current DOM selection is in incorrect position. We need to update it.\n\t\t\treturn true;\n\t\t}\n\n\t\tconst oldViewSelection = domSelection && this.domConverter.domSelectionToView( domSelection );\n\n\t\tif ( oldViewSelection && this.selection.isEqual( oldViewSelection ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// If selection is not collapsed, it does not need to be updated if it is similar.\n\t\tif ( !this.selection.isCollapsed && this.selection.isSimilar( oldViewSelection ) ) {\n\t\t\t// Selection did not changed and is correct, do not update.\n\t\t\treturn false;\n\t\t}\n\n\t\t// Selections are not similar.\n\t\treturn true;\n\t}\n\n\t/**\n\t * Checks whether the fake selection needs to be updated.\n\t *\n\t * @param domRoot A valid DOM root where a new fake selection container should be added.\n\t */\n\tprivate _fakeSelectionNeedsUpdate( domRoot: DomElement ): boolean {\n\t\tconst container = this._fakeSelectionContainer;\n\t\tconst domSelection = domRoot.ownerDocument.getSelection()!;\n\n\t\t// Fake selection needs to be updated if there's no fake selection container, or the container currently sits\n\t\t// in a different root.\n\t\tif ( !container || container.parentElement !== domRoot ) {\n\t\t\treturn true;\n\t\t}\n\n\t\t// Make sure that the selection actually is within the fake selection.\n\t\tif ( domSelection.anchorNode !== container && !container.contains( domSelection.anchorNode ) ) {\n\t\t\treturn true;\n\t\t}\n\n\t\treturn container.textContent !== this.selection.fakeSelectionLabel;\n\t}\n\n\t/**\n\t * Removes the DOM selection.\n\t */\n\tprivate _removeDomSelection(): void {\n\t\tfor ( const doc of this.domDocuments ) {\n\t\t\tconst domSelection = doc.getSelection()!;\n\n\t\t\tif ( domSelection.rangeCount ) {\n\t\t\t\tconst activeDomElement = doc.activeElement!;\n\t\t\t\tconst viewElement = this.domConverter.mapDomToView( activeDomElement as DomElement );\n\n\t\t\t\tif ( activeDomElement && viewElement ) {\n\t\t\t\t\tdomSelection.removeAllRanges();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Removes the fake selection.\n\t */\n\tprivate _removeFakeSelection(): void {\n\t\tconst container = this._fakeSelectionContainer;\n\n\t\tif ( container ) {\n\t\t\tcontainer.remove();\n\t\t}\n\t}\n\n\t/**\n\t * Checks if focus needs to be updated and possibly updates it.\n\t */\n\tprivate _updateFocus(): void {\n\t\tif ( this.isFocused ) {\n\t\t\tconst editable = this.selection.editableElement;\n\n\t\t\tif ( editable ) {\n\t\t\t\tthis.domConverter.focus( editable );\n\t\t\t}\n\t\t}\n\t}\n}\n\n/**\n * Checks if provided element is editable.\n */\nfunction isEditable( element: ViewElement ): boolean {\n\tif ( element.getAttribute( 'contenteditable' ) == 'false' ) {\n\t\treturn false;\n\t}\n\n\tconst parent = element.findAncestor( element => element.hasAttribute( 'contenteditable' ) );\n\n\treturn !parent || parent.getAttribute( 'contenteditable' ) == 'true';\n}\n\n/**\n * Adds inline filler at a given position.\n *\n * The position can be given as an array of DOM nodes and an offset in that array,\n * or a DOM parent element and an offset in that element.\n *\n * @returns The DOM text node that contains an inline filler.\n */\nfunction addInlineFiller( domDocument: DomDocument, domParentOrArray: DomNode | Array, offset: number ): DomText {\n\tconst childNodes = domParentOrArray instanceof Array ? domParentOrArray : domParentOrArray.childNodes;\n\tconst nodeAfterFiller = childNodes[ offset ];\n\n\tif ( isText( nodeAfterFiller ) ) {\n\t\tnodeAfterFiller.data = INLINE_FILLER + nodeAfterFiller.data;\n\n\t\treturn nodeAfterFiller;\n\t} else {\n\t\tconst fillerNode = domDocument.createTextNode( INLINE_FILLER );\n\n\t\tif ( Array.isArray( domParentOrArray ) ) {\n\t\t\t( childNodes as Array ).splice( offset, 0, fillerNode );\n\t\t} else {\n\t\t\tinsertAt( domParentOrArray as DomElement, offset, fillerNode );\n\t\t}\n\n\t\treturn fillerNode;\n\t}\n}\n\n/**\n * Whether two DOM nodes should be considered as similar.\n * Nodes are considered similar if they have the same tag name.\n */\nfunction areSimilarElements( node1: DomNode, node2: DomNode ): boolean {\n\treturn isNode( node1 ) && isNode( node2 ) &&\n\t\t!isText( node1 ) && !isText( node2 ) &&\n\t\t!isComment( node1 ) && !isComment( node2 ) &&\n\t\t( node1 as DomElement ).tagName.toLowerCase() === ( node2 as DomElement ).tagName.toLowerCase();\n}\n\n/**\n * Whether two DOM nodes are text nodes.\n */\nfunction areTextNodes( node1: DomNode, node2: DomNode ): boolean {\n\treturn isNode( node1 ) && isNode( node2 ) &&\n\t\tisText( node1 ) && isText( node2 );\n}\n\n/**\n * Whether two dom nodes should be considered as the same.\n * Two nodes which are considered the same are:\n *\n * * Text nodes with the same text.\n * * Element nodes represented by the same object.\n * * Two block filler elements.\n *\n * @param blockFillerMode Block filler mode, see {@link module:engine/view/domconverter~DomConverter#blockFillerMode}.\n */\nfunction sameNodes( domConverter: DomConverter, actualDomChild: DomNode, expectedDomChild: DomNode ): boolean {\n\t// Elements.\n\tif ( actualDomChild === expectedDomChild ) {\n\t\treturn true;\n\t}\n\t// Texts.\n\telse if ( isText( actualDomChild ) && isText( expectedDomChild ) ) {\n\t\treturn actualDomChild.data === expectedDomChild.data;\n\t}\n\t// Block fillers.\n\telse if ( domConverter.isBlockFiller( actualDomChild ) &&\n\t\tdomConverter.isBlockFiller( expectedDomChild ) ) {\n\t\treturn true;\n\t}\n\n\t// Not matching types.\n\treturn false;\n}\n\n/**\n * The following is a Firefox–specific hack (https://github.com/ckeditor/ckeditor5-engine/issues/1439).\n * When the native DOM selection is at the end of the block and preceded by
    e.g.\n *\n * ```html\n *

    foo
    []

    \n * ```\n *\n * which happens a lot when using the soft line break, the browser fails to (visually) move the\n * caret to the new line. A quick fix is as simple as force–refreshing the selection with the same range.\n */\nfunction fixGeckoSelectionAfterBr( focus: ReturnType, domSelection: DomSelection ) {\n\tlet parent = focus!.parent;\n\tlet offset = focus!.offset;\n\n\tif ( isText( parent ) && isInlineFiller( parent ) ) {\n\t\toffset = indexOf( parent ) + 1;\n\t\tparent = parent.parentNode!;\n\t}\n\n\t// This fix works only when the focus point is at the very end of an element.\n\t// There is no point in running it in cases unrelated to the browser bug.\n\tif ( parent.nodeType != Node.ELEMENT_NODE || offset != parent.childNodes.length - 1 ) {\n\t\treturn;\n\t}\n\n\tconst childAtOffset = parent.childNodes[ offset ];\n\n\t// To stay on the safe side, the fix being as specific as possible, it targets only the\n\t// selection which is at the very end of the element and preceded by
    .\n\tif ( childAtOffset && ( childAtOffset as DomElement ).tagName == 'BR' ) {\n\t\tdomSelection.addRange( domSelection.getRangeAt( 0 ) );\n\t}\n}\n\nfunction filterOutFakeSelectionContainer( domChildList: Array | NodeList, fakeSelectionContainer: DomElement | null ) {\n\tconst childList = Array.from( domChildList );\n\n\tif ( childList.length == 0 || !fakeSelectionContainer ) {\n\t\treturn childList;\n\t}\n\n\tconst last = childList[ childList.length - 1 ];\n\n\tif ( last == fakeSelectionContainer ) {\n\t\tchildList.pop();\n\t}\n\n\treturn childList;\n}\n\n/**\n * Creates a fake selection container for a given document.\n */\nfunction createFakeSelectionContainer( domDocument: DomDocument ): DomElement {\n\tconst container = domDocument.createElement( 'div' );\n\n\tcontainer.className = 'ck-fake-selection-container';\n\n\tObject.assign( container.style, {\n\t\tposition: 'fixed',\n\t\ttop: 0,\n\t\tleft: '-9999px',\n\t\t// See https://github.com/ckeditor/ckeditor5/issues/752.\n\t\twidth: '42px'\n\t} );\n\n\t// Fill it with a text node so we can update it later.\n\tcontainer.textContent = '\\u00A0';\n\n\treturn container;\n}\n\n/**\n * Checks if text needs to be updated and possibly updates it by removing and inserting only parts\n * of the data from the existing text node to reduce impact on the IME composition.\n *\n * @param domText DOM text node to update.\n * @param expectedText The expected data of a text node.\n */\nfunction updateTextNode( domText: DomText, expectedText: string ) {\n\tconst actualText = domText.data;\n\n\tif ( actualText == expectedText ) {\n\t\t// @if CK_DEBUG_TYPING // if ( ( window as any ).logCKETyping ) {\n\t\t// @if CK_DEBUG_TYPING // \tconsole.info( '%c[Renderer]%c Text node does not need update:',\n\t\t// @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', '',\n\t\t// @if CK_DEBUG_TYPING // \t\t`\"${ domText.data }\" (${ domText.data.length })`\n\t\t// @if CK_DEBUG_TYPING // \t);\n\t\t// @if CK_DEBUG_TYPING // }\n\n\t\treturn;\n\t}\n\n\t// @if CK_DEBUG_TYPING // if ( ( window as any ).logCKETyping ) {\n\t// @if CK_DEBUG_TYPING // \tconsole.info( '%c[Renderer]%c Update text node:',\n\t// @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', '',\n\t// @if CK_DEBUG_TYPING // \t\t`\"${ domText.data }\" (${ domText.data.length }) -> \"${ expectedText }\" (${ expectedText.length })`\n\t// @if CK_DEBUG_TYPING // \t);\n\t// @if CK_DEBUG_TYPING // }\n\n\tconst actions = fastDiff( actualText, expectedText );\n\n\tfor ( const action of actions ) {\n\t\tif ( action.type === 'insert' ) {\n\t\t\tdomText.insertData( action.index, action.values.join( '' ) );\n\t\t} else { // 'delete'\n\t\t\tdomText.deleteData( action.index, action.howMany );\n\t\t}\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * @module engine/view/domconverter\n */\n\n/* globals Node, NodeFilter, DOMParser */\n\nimport ViewText from './text.js';\nimport ViewElement from './element.js';\nimport ViewUIElement from './uielement.js';\nimport ViewPosition from './position.js';\nimport ViewRange from './range.js';\nimport ViewSelection from './selection.js';\nimport ViewDocumentFragment from './documentfragment.js';\nimport ViewTreeWalker from './treewalker.js';\nimport { default as Matcher, type MatcherPattern } from './matcher.js';\nimport {\n\tBR_FILLER, INLINE_FILLER_LENGTH, NBSP_FILLER, MARKED_NBSP_FILLER,\n\tgetDataWithoutFiller, isInlineFiller, startsWithFiller\n} from './filler.js';\n\nimport {\n\tglobal,\n\tlogWarning,\n\tindexOf,\n\tgetAncestors,\n\tisText,\n\tisComment,\n\tisValidAttributeName,\n\tfirst,\n\tenv\n} from '@ckeditor/ckeditor5-utils';\n\nimport type ViewNode from './node.js';\nimport type Document from './document.js';\nimport type DocumentSelection from './documentselection.js';\nimport type EditableElement from './editableelement.js';\nimport type ViewTextProxy from './textproxy.js';\nimport type ViewRawElement from './rawelement.js';\n\ntype DomNode = globalThis.Node;\ntype DomElement = globalThis.HTMLElement;\ntype DomDocument = globalThis.Document;\ntype DomDocumentFragment = globalThis.DocumentFragment;\ntype DomComment = globalThis.Comment;\ntype DomRange = globalThis.Range;\ntype DomText = globalThis.Text;\ntype DomSelection = globalThis.Selection;\n\nconst BR_FILLER_REF = BR_FILLER( global.document ); // eslint-disable-line new-cap\nconst NBSP_FILLER_REF = NBSP_FILLER( global.document ); // eslint-disable-line new-cap\nconst MARKED_NBSP_FILLER_REF = MARKED_NBSP_FILLER( global.document ); // eslint-disable-line new-cap\nconst UNSAFE_ATTRIBUTE_NAME_PREFIX = 'data-ck-unsafe-attribute-';\nconst UNSAFE_ELEMENT_REPLACEMENT_ATTRIBUTE = 'data-ck-unsafe-element';\n\n/**\n * `DomConverter` is a set of tools to do transformations between DOM nodes and view nodes. It also handles\n * {@link module:engine/view/domconverter~DomConverter#bindElements bindings} between these nodes.\n *\n * An instance of the DOM converter is available under\n * {@link module:engine/view/view~View#domConverter `editor.editing.view.domConverter`}.\n *\n * The DOM converter does not check which nodes should be rendered (use {@link module:engine/view/renderer~Renderer}), does not keep the\n * state of a tree nor keeps the synchronization between the tree view and the DOM tree (use {@link module:engine/view/document~Document}).\n *\n * The DOM converter keeps DOM elements to view element bindings, so when the converter gets destroyed, the bindings are lost.\n * Two converters will keep separate binding maps, so one tree view can be bound with two DOM trees.\n */\nexport default class DomConverter {\n\tpublic readonly document: Document;\n\n\t/**\n\t * Whether to leave the View-to-DOM conversion result unchanged or improve editing experience by filtering out interactive data.\n\t */\n\tpublic readonly renderingMode: 'data' | 'editing';\n\n\t/**\n\t * The mode of a block filler used by the DOM converter.\n\t */\n\tpublic blockFillerMode: BlockFillerMode;\n\n\t/**\n\t * Elements which are considered pre-formatted elements.\n\t */\n\tpublic readonly preElements: Array;\n\n\t/**\n\t * Elements which are considered block elements (and hence should be filled with a\n\t * {@link #isBlockFiller block filler}).\n\t *\n\t * Whether an element is considered a block element also affects handling of trailing whitespaces.\n\t *\n\t * You can extend this array if you introduce support for block elements which are not yet recognized here.\n\t */\n\tpublic readonly blockElements: Array;\n\n\t/**\n\t * A list of elements that exist inline (in text) but their inner structure cannot be edited because\n\t * of the way they are rendered by the browser. They are mostly HTML form elements but there are other\n\t * elements such as `` or `