diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..fcdf61e --- /dev/null +++ b/.editorconfig @@ -0,0 +1,9 @@ +root = true + +[*] +charset = utf-8 +end_of_line = lf +insert_final_newline = true +indent_style = space +indent_size = 4 +trim_trailing_whitespace = true \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..cb96071 --- /dev/null +++ b/.gitignore @@ -0,0 +1,8 @@ +.idea +vendor +composer.lock +node_modules +.phpunit.result.cache +.php-cs-fixer.cache +app +reports diff --git a/.php-cs-fixer.dist.php b/.php-cs-fixer.dist.php new file mode 100644 index 0000000..ea229df --- /dev/null +++ b/.php-cs-fixer.dist.php @@ -0,0 +1,35 @@ +in([ + __DIR__ . '/src', + __DIR__ . '/tests', + ]) + ->name('*.php') + ->notName('*.blade.php') + ->ignoreDotFiles(true) + ->ignoreVCS(true); + +return (new PhpCsFixer\Config()) + ->setRules([ + '@PSR12' => true, + 'array_syntax' => ['syntax' => 'short'], + 'ordered_imports' => ['sort_algorithm' => 'alpha'], + 'no_unused_imports' => true, + 'not_operator_with_successor_space' => true, + 'trailing_comma_in_multiline' => true, + 'phpdoc_scalar' => true, + 'unary_operator_spaces' => true, + 'binary_operator_spaces' => true, + 'blank_line_before_statement' => [ + 'statements' => ['break', 'continue', 'declare', 'return', 'throw', 'try'], + ], + 'phpdoc_single_line_var_spacing' => true, + 'phpdoc_var_without_name' => true, + 'method_argument_space' => [ + 'on_multiline' => 'ensure_fully_multiline', + 'keep_multiple_spaces_after_comma' => true, + ], + 'single_trait_insert_per_statement' => true, + ]) + ->setFinder($finder); diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..8ab2763 --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Danil Shutsky + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..bf2615a --- /dev/null +++ b/README.md @@ -0,0 +1,4 @@ +# CKEditor field for [MoonShine Laravel admin panel](https://moonshine.cutcode.dev) + +## Documentation +[Read CKEditor field in Official MoonShine Documentation](https://moonshine.cutcode.dev/section/fields-wysiwyg) diff --git a/composer.json b/composer.json new file mode 100644 index 0000000..6894865 --- /dev/null +++ b/composer.json @@ -0,0 +1,56 @@ +{ + "name": "moonshine/ckeditor", + "description": "CKEditor for MoonShine", + "keywords": ["moonshine", "ckeditor"], + "type": "library", + "homepage": "https://moonshine.cutcode.dev", + "license": "MIT", + "support": { + "issues": "https://github.com/moonshine-software/ckeditor/issues", + "source": "https://github.com/moonshine-software/ckeditor" + }, + "authors": [ + { + "name": "Danil Shutsky", + "email": "info@cutcode.ru", + "homepage": "https://cutcode.dev" + } + ], + "require": { + "php": "^8.0|^8.1|^8.2", + "ext-curl": "*", + "ext-json": "*" + }, + "require-dev": { + "phpunit/phpunit": "^9.5.8", + "mockery/mockery": "^1.4.4", + "phpstan/phpstan": "^1.4.7", + "orchestra/testbench": "^4.0|^5.0|^6.0|^7.0|^8.0", + "brianium/paratest": "^6.8" + }, + "autoload": { + "psr-4": { + "MoonShine\\CKEditor\\": "src/" + } + }, + "autoload-dev": { + "psr-4": { + "MoonShine\\CKEditor\\Tests\\": "tests/", + "MoonShine\\CKEditor\\Database\\Factories\\": "database/factories/" + } + }, + "conflict": { + "moonshine/moonshine": "<1.52" + }, + "scripts": { + "test": "vendor/bin/phpunit", + "format": "vendor/bin/php-cs-fixer fix --allow-risky=yes" + }, + "extra": { + "laravel": { + "providers": [ + "CKEditorServiceProvider" + ] + } + } +} diff --git a/public/js/ckeditor.js b/public/js/ckeditor.js new file mode 100644 index 0000000..84c9610 --- /dev/null +++ b/public/js/ckeditor.js @@ -0,0 +1,9 @@ +!function(t){const e=t.en=t.en||{};e.dictionary=Object.assign(e.dictionary||{},{"*Change %0 content*":"*Change %0 content*","*Change to:* %0":"*Change to:* %0","*Check item*":"*Check item*","*Format:* %0":"*Format:* %0","*Format:* insert into %0":"*Format:* insert into %0","*Format:* remove from %0":"*Format:* remove from %0","*Indent:* %0":"*Indent:* %0","*Insert:* %0":"*Insert:* %0","*Merge cells*":"*Merge cells*","*Merge:* %0":"*Merge:* %0","*Outdent:* %0":"*Outdent:* %0","*Remove all formatting*":"*Remove all formatting*","*Remove format:* %0":"*Remove format:* %0","*Remove highlight*":"*Remove highlight*","*Remove image text alternative*":"*Remove image text alternative*","*Remove link*":"*Remove link*","*Remove:* %0":"*Remove:* %0","*Replace table cells*":"*Replace table cells*","*Reset font background color*":"*Reset font background color*","*Reset font color*":"*Reset font color*","*Reset font family*":"*Reset font family*","*Reset font size*":"*Reset font size*","*Reset image width*":"*Reset image width*","*Set font background color:* %0":"*Set font background color:* %0","*Set font color:* %0":"*Set font color:* %0","*Set font family:* %0":"*Set font family:* %0","*Set font size:* %0":"*Set font size:* %0","*Set highlight:* %0":"*Set highlight:* %0","*Set image text alternative:* %0":"*Set image text alternative:* %0","*Set image width:* %0":"*Set image width:* %0","*Set link:* %0":"*Set link:* %0","*Split cell:* horizontally":"*Split cell:* horizontally","*Split cell:* vertically":"*Split cell:* vertically","*Split:* %0":"*Split:* %0","*Uncheck item*":"*Uncheck item*","%0 of %1":"%0 of %1","Accept all selected suggestions":"Accept all selected suggestions","Accept all suggestions":"Accept all suggestions","Accept suggestion":"Accept suggestion","Added by":"Added by","Align cell text to the bottom":"Align cell text to the bottom","Align cell text to the center":"Align cell text to the center","Align cell text to the left":"Align cell text to the left","Align cell text to the middle":"Align cell text to the middle","Align cell text to the right":"Align cell text to the right","Align cell text to the top":"Align cell text to the top","Align center":"Align center","Align left":"Align left","Align right":"Align right","Align table to the left":"Align table to the left","Align table to the right":"Align table to the right",Alignment:"Alignment","Almost equal to":"Almost equal to","An error occurred while generating the PDF.":"An error occurred while generating the PDF.","An error occurred while generating the Word file.":"An error occurred while generating the Word file.",Angle:"Angle",Anonymous:"Anonymous","Approximately equal to":"Approximately equal to",Aquamarine:"Aquamarine","Are you sure?":"Are you sure?","Asterisk operator":"Asterisk operator","Austral sign":"Austral sign","Back to editing":"Back to editing","back with leftwards arrow above":"back with leftwards arrow above",Background:"Background",Big:"Big","Bitcoin sign":"Bitcoin sign",Black:"Black","Block quote":"Block quote","Block styles":"Block styles",Blue:"Blue","Blue marker":"Blue marker",Bold:"Bold",Border:"Border","Break text":"Break text","Bulleted List":"Bulleted List","Bulleted list styles toolbar":"Bulleted list styles toolbar",Cancel:"Cancel","Cannot determine a category for the uploaded file.":"Cannot determine a category for the uploaded file.","Cannot upload file:":"Cannot upload file:","Caption for image: %0":"Caption for image: %0","Caption for the image":"Caption for the image","Cedi sign":"Cedi sign","Cell properties":"Cell properties","Cent sign":"Cent sign","Center table":"Center table","Centered image":"Centered image","Change image text alternative":"Change image text alternative","Character categories":"Character categories","Characters: %0":"Characters: %0","Choose heading":"Choose heading","Choose language":"Choose language",Circle:"Circle",Code:"Code","Colon sign":"Colon sign",Color:"Color","Color picker":"Color picker",Column:"Column",Comment:"Comment","Comment editor":"Comment editor","Compare against selected":"Compare against selected",CONNECTED_USERS:["1 connected user (me)","%0 connected users"],"Contains as member":"Contains as member","Copyright sign":"Copyright sign","Could not insert image at the current position.":"Could not insert image at the current position.","Could not obtain resized image URL.":"Could not obtain resized image URL.","Cruzeiro sign":"Cruzeiro sign","Currency sign":"Currency sign",Dashed:"Dashed",Decimal:"Decimal","Decimal with leading zero":"Decimal with leading zero","Decrease indent":"Decrease indent",Default:"Default","Degree sign":"Degree sign","Delete column":"Delete column","Delete comment thread?":"Delete comment thread?","Delete comment?":"Delete comment?","Delete row":"Delete row","Dim grey":"Dim grey",Dimensions:"Dimensions","Disable editing":"Disable editing",Disc:"Disc","Discard all selected suggestions":"Discard all selected suggestions","Discard all suggestions":"Discard all suggestions","Discard suggestion":"Discard suggestion","Division sign":"Division sign","Document colors":"Document colors","Dollar sign":"Dollar sign","Dong sign":"Dong sign",Dotted:"Dotted",Double:"Double","Double dagger":"Double dagger","Double exclamation mark":"Double exclamation mark","Double low-9 quotation mark":"Double low-9 quotation mark","Double question mark":"Double question mark",Downloadable:"Downloadable","downwards arrow to bar":"downwards arrow to bar","downwards dashed arrow":"downwards dashed arrow","downwards double arrow":"downwards double arrow","downwards simple arrow":"downwards simple arrow","Drachma sign":"Drachma sign","Dropdown toolbar":"Dropdown toolbar",Edit:"Edit","Edit block":"Edit block","Edit link":"Edit link","Edit source":"Edit source",EDIT_X_OF_Y_REVISIONS:"Edit","Editor block content toolbar":"Editor block content toolbar","Editor contextual toolbar":"Editor contextual toolbar","Editor editing area: %0":"Editor editing area: %0","Editor toolbar":"Editor toolbar","Element of":"Element of",ELEMENT_BLOCK_QUOTE:"block quote",ELEMENT_BULLETED_LIST:"bulleted list",ELEMENT_CAPTION:"caption",ELEMENT_CODE_BLOCK:["code block","%0 code blocks"],ELEMENT_HEADING:["heading (level %1)","%0 headings (level %1)"],ELEMENT_HEADING_CUSTOM:["heading (%1)","%0 headings (%1)"],ELEMENT_HORIZONTAL_LINE:["horizontal line","%0 horizontal lines"],ELEMENT_HTML_EMBED:["HTML embed","%0 HTML embeds"],ELEMENT_IMAGE:["image","%0 images"],ELEMENT_INLINE_IMAGE:["image","%0 images"],ELEMENT_LINE_BREAK:["line break","%0 line breaks"],ELEMENT_LIST_ITEM:["list item","%0 list items"],ELEMENT_MEDIA:["media item","%0 media items"],ELEMENT_NUMBERED_LIST:"numbered list",ELEMENT_PAGE_BREAK:["page break","%0 page breaks"],ELEMENT_PARAGRAPH:["paragraph","%0 paragraphs"],ELEMENT_SPACE:["space","%0 spaces"],ELEMENT_TABLE:["table","%0 tables"],ELEMENT_TABLE_COLUMN:["table column","%0 table columns"],ELEMENT_TABLE_COLUMN_WITH_TEXT:["table column *with text* %1","%0 table columns *with text* %1"],ELEMENT_TABLE_ROW:["table row","%0 table rows"],ELEMENT_TABLE_ROW_WITH_TEXT:["table row *with text* %1","%0 table rows *with text* %1"],ELEMENT_TABLE_WITH_TEXT:"table *with text* %0",ELEMENT_TITLE:"title",ELEMENT_TODO_LIST:"to-do list","Em dash":"Em dash","Empty document":"Empty document","Empty set":"Empty set","Empty snippet content":"Empty snippet content","En dash":"En dash","Enable editing":"Enable editing","end with leftwards arrow above":"end with leftwards arrow above","Enter image caption":"Enter image caption","Enter table caption":"Enter table caption","Euro sign":"Euro sign","Euro-currency sign":"Euro-currency sign","Exclamation question mark":"Exclamation question mark","Export to PDF":"Export to PDF","Export to Word":"Export to Word",EXTERNAL_AVATAR:"Displayed author name comes from external source (added by %0)",EXTERNAL_COMMENT:"This comment comes from an external source.",EXTERNAL_IMPORT_WORD_AVATAR:"Displayed author name comes from a Word document imported by %0",EXTERNAL_IMPORT_WORD_COMMENT:"This comment comes from an imported Word file.",EXTERNAL_IMPORT_WORD_SUGGESTION:"This suggestion comes from an imported Word file.",EXTERNAL_SUGGESTION:"This suggestion comes from an external source.",Find:"Find","Find and replace":"Find and replace","Find in text…":"Find in text…","Font Background Color":"Font Background Color","Font Color":"Font Color","Font Family":"Font Family","Font Size":"Font Size","For all":"For all",FORMAT_ALIGN_TO_CENTER:"align to center",FORMAT_ALIGN_TO_LEFT:"align to left",FORMAT_ALIGN_TO_RIGHT:"align to right",FORMAT_BOLD:"bold",FORMAT_CODE:"code",FORMAT_HEADER_COLUMN:"header column",FORMAT_HEADER_ROW:"header row",FORMAT_HIGHLIGHT:"highlight",FORMAT_ITALIC:"italic",FORMAT_JUSTIFY_TEXT:"justify",FORMAT_REGULAR_COLUMN:"regular column",FORMAT_REGULAR_ROW:"regular row",FORMAT_RESTRICTED_DISABLED:"*Disable in restricted editing mode*",FORMAT_RESTRICTED_ENABLED:"*Enable in restricted editing mode*",FORMAT_SIDE_IMAGE:"side image",FORMAT_STRIKETHROUGH:"strikethrough",FORMAT_SUBSCRIPT:"subscript",FORMAT_SUPERSCRIPT:"superscript",FORMAT_UNDERLINE:"underline","Fraction slash":"Fraction slash","French franc sign":"French franc sign","Full size image":"Full size image","German penny sign":"German penny sign","Greater-than or equal to":"Greater-than or equal to","Greater-than sign":"Greater-than sign",Green:"Green","Green marker":"Green marker","Green pen":"Green pen",Grey:"Grey",Groove:"Groove","Guarani sign":"Guarani sign","Header column":"Header column","Header row":"Header row",Heading:"Heading","Heading 1":"Heading 1","Heading 2":"Heading 2","Heading 3":"Heading 3","Heading 4":"Heading 4","Heading 5":"Heading 5","Heading 6":"Heading 6",Height:"Height",Highlight:"Highlight","Horizontal ellipsis":"Horizontal ellipsis","Horizontal line":"Horizontal line","Horizontal text alignment toolbar":"Horizontal text alignment toolbar","Hryvnia sign":"Hryvnia sign","HTML object":"HTML object","HTML snippet":"HTML snippet",Huge:"Huge","Identical to":"Identical to","Image resize list":"Image resize list","Image toolbar":"Image toolbar","image widget":"image widget","In line":"In line","Increase indent":"Increase indent","Indian rupee sign":"Indian rupee sign",Infinity:"Infinity","Initial revision":"Initial revision",Insert:"Insert","Insert code block":"Insert code block","Insert column left":"Insert column left","Insert column right":"Insert column right","Insert HTML":"Insert HTML","Insert image":"Insert image","Insert image or file":"Insert image or file","Insert image via URL":"Insert image via URL","Insert media":"Insert media","Insert paragraph after block":"Insert paragraph after block","Insert paragraph before block":"Insert paragraph before block","Insert row above":"Insert row above","Insert row below":"Insert row below","Insert table":"Insert table","Inserting image failed":"Inserting image failed",Inset:"Inset",Integral:"Integral",Intersection:"Intersection","Inverted exclamation mark":"Inverted exclamation mark","Inverted question mark":"Inverted question mark",Italic:"Italic",Justify:"Justify","Justify cell text":"Justify cell text","Kip sign":"Kip sign",Language:"Language","Latin capital letter a with breve":"Latin capital letter a with breve","Latin capital letter a with macron":"Latin capital letter a with macron","Latin capital letter a with ogonek":"Latin capital letter a with ogonek","Latin capital letter c with acute":"Latin capital letter c with acute","Latin capital letter c with caron":"Latin capital letter c with caron","Latin capital letter c with circumflex":"Latin capital letter c with circumflex","Latin capital letter c with dot above":"Latin capital letter c with dot above","Latin capital letter d with caron":"Latin capital letter d with caron","Latin capital letter d with stroke":"Latin capital letter d with stroke","Latin capital letter e with breve":"Latin capital letter e with breve","Latin capital letter e with caron":"Latin capital letter e with caron","Latin capital letter e with dot above":"Latin capital letter e with dot above","Latin capital letter e with macron":"Latin capital letter e with macron","Latin capital letter e with ogonek":"Latin capital letter e with ogonek","Latin capital letter eng":"Latin capital letter eng","Latin capital letter g with breve":"Latin capital letter g with breve","Latin capital letter g with cedilla":"Latin capital letter g with cedilla","Latin capital letter g with circumflex":"Latin capital letter g with circumflex","Latin capital letter g with dot above":"Latin capital letter g with dot above","Latin capital letter h with circumflex":"Latin capital letter h with circumflex","Latin capital letter h with stroke":"Latin capital letter h with stroke","Latin capital letter i with breve":"Latin capital letter i with breve","Latin capital letter i with dot above":"Latin capital letter i with dot above","Latin capital letter i with macron":"Latin capital letter i with macron","Latin capital letter i with ogonek":"Latin capital letter i with ogonek","Latin capital letter i with tilde":"Latin capital letter i with tilde","Latin capital letter j with circumflex":"Latin capital letter j with circumflex","Latin capital letter k with cedilla":"Latin capital letter k with cedilla","Latin capital letter l with acute":"Latin capital letter l with acute","Latin capital letter l with caron":"Latin capital letter l with caron","Latin capital letter l with cedilla":"Latin capital letter l with cedilla","Latin capital letter l with middle dot":"Latin capital letter l with middle dot","Latin capital letter l with stroke":"Latin capital letter l with stroke","Latin capital letter n with acute":"Latin capital letter n with acute","Latin capital letter n with caron":"Latin capital letter n with caron","Latin capital letter n with cedilla":"Latin capital letter n with cedilla","Latin capital letter o with breve":"Latin capital letter o with breve","Latin capital letter o with double acute":"Latin capital letter o with double acute","Latin capital letter o with macron":"Latin capital letter o with macron","Latin capital letter r with acute":"Latin capital letter r with acute","Latin capital letter r with caron":"Latin capital letter r with caron","Latin capital letter r with cedilla":"Latin capital letter r with cedilla","Latin capital letter s with acute":"Latin capital letter s with acute","Latin capital letter s with caron":"Latin capital letter s with caron","Latin capital letter s with cedilla":"Latin capital letter s with cedilla","Latin capital letter s with circumflex":"Latin capital letter s with circumflex","Latin capital letter t with caron":"Latin capital letter t with caron","Latin capital letter t with cedilla":"Latin capital letter t with cedilla","Latin capital letter t with stroke":"Latin capital letter t with stroke","Latin capital letter u with breve":"Latin capital letter u with breve","Latin capital letter u with double acute":"Latin capital letter u with double acute","Latin capital letter u with macron":"Latin capital letter u with macron","Latin capital letter u with ogonek":"Latin capital letter u with ogonek","Latin capital letter u with ring above":"Latin capital letter u with ring above","Latin capital letter u with tilde":"Latin capital letter u with tilde","Latin capital letter w with circumflex":"Latin capital letter w with circumflex","Latin capital letter y with circumflex":"Latin capital letter y with circumflex","Latin capital letter y with diaeresis":"Latin capital letter y with diaeresis","Latin capital letter z with acute":"Latin capital letter z with acute","Latin capital letter z with caron":"Latin capital letter z with caron","Latin capital letter z with dot above":"Latin capital letter z with dot above","Latin capital ligature ij":"Latin capital ligature ij","Latin capital ligature oe":"Latin capital ligature oe","Latin small letter a with breve":"Latin small letter a with breve","Latin small letter a with macron":"Latin small letter a with macron","Latin small letter a with ogonek":"Latin small letter a with ogonek","Latin small letter c with acute":"Latin small letter c with acute","Latin small letter c with caron":"Latin small letter c with caron","Latin small letter c with circumflex":"Latin small letter c with circumflex","Latin small letter c with dot above":"Latin small letter c with dot above","Latin small letter d with caron":"Latin small letter d with caron","Latin small letter d with stroke":"Latin small letter d with stroke","Latin small letter dotless i":"Latin small letter dotless i","Latin small letter e with breve":"Latin small letter e with breve","Latin small letter e with caron":"Latin small letter e with caron","Latin small letter e with dot above":"Latin small letter e with dot above","Latin small letter e with macron":"Latin small letter e with macron","Latin small letter e with ogonek":"Latin small letter e with ogonek","Latin small letter eng":"Latin small letter eng","Latin small letter f with hook":"Latin small letter f with hook","Latin small letter g with breve":"Latin small letter g with breve","Latin small letter g with cedilla":"Latin small letter g with cedilla","Latin small letter g with circumflex":"Latin small letter g with circumflex","Latin small letter g with dot above":"Latin small letter g with dot above","Latin small letter h with circumflex":"Latin small letter h with circumflex","Latin small letter h with stroke":"Latin small letter h with stroke","Latin small letter i with breve":"Latin small letter i with breve","Latin small letter i with macron":"Latin small letter i with macron","Latin small letter i with ogonek":"Latin small letter i with ogonek","Latin small letter i with tilde":"Latin small letter i with tilde","Latin small letter j with circumflex":"Latin small letter j with circumflex","Latin small letter k with cedilla":"Latin small letter k with cedilla","Latin small letter kra":"Latin small letter kra","Latin small letter l with acute":"Latin small letter l with acute","Latin small letter l with caron":"Latin small letter l with caron","Latin small letter l with cedilla":"Latin small letter l with cedilla","Latin small letter l with middle dot":"Latin small letter l with middle dot","Latin small letter l with stroke":"Latin small letter l with stroke","Latin small letter long s":"Latin small letter long s","Latin small letter n preceded by apostrophe":"Latin small letter n preceded by apostrophe","Latin small letter n with acute":"Latin small letter n with acute","Latin small letter n with caron":"Latin small letter n with caron","Latin small letter n with cedilla":"Latin small letter n with cedilla","Latin small letter o with breve":"Latin small letter o with breve","Latin small letter o with double acute":"Latin small letter o with double acute","Latin small letter o with macron":"Latin small letter o with macron","Latin small letter r with acute":"Latin small letter r with acute","Latin small letter r with caron":"Latin small letter r with caron","Latin small letter r with cedilla":"Latin small letter r with cedilla","Latin small letter s with acute":"Latin small letter s with acute","Latin small letter s with caron":"Latin small letter s with caron","Latin small letter s with cedilla":"Latin small letter s with cedilla","Latin small letter s with circumflex":"Latin small letter s with circumflex","Latin small letter t with caron":"Latin small letter t with caron","Latin small letter t with cedilla":"Latin small letter t with cedilla","Latin small letter t with stroke":"Latin small letter t with stroke","Latin small letter u with breve":"Latin small letter u with breve","Latin small letter u with double acute":"Latin small letter u with double acute","Latin small letter u with macron":"Latin small letter u with macron","Latin small letter u with ogonek":"Latin small letter u with ogonek","Latin small letter u with ring above":"Latin small letter u with ring above","Latin small letter u with tilde":"Latin small letter u with tilde","Latin small letter w with circumflex":"Latin small letter w with circumflex","Latin small letter y with circumflex":"Latin small letter y with circumflex","Latin small letter z with acute":"Latin small letter z with acute","Latin small letter z with caron":"Latin small letter z with caron","Latin small letter z with dot above":"Latin small letter z with dot above","Latin small ligature ij":"Latin small ligature ij","Latin small ligature oe":"Latin small ligature oe","Left aligned image":"Left aligned image","Left double quotation mark":"Left double quotation mark","Left single quotation mark":"Left single quotation mark","Left-pointing double angle quotation mark":"Left-pointing double angle quotation mark","leftwards arrow to bar":"leftwards arrow to bar","leftwards dashed arrow":"leftwards dashed arrow","leftwards double arrow":"leftwards double arrow","leftwards simple arrow":"leftwards simple arrow","Less-than or equal to":"Less-than or equal to","Less-than sign":"Less-than sign","Light blue":"Light blue","Light green":"Light green","Light grey":"Light grey",Link:"Link","Link image":"Link image","Link URL":"Link URL","Lira sign":"Lira sign","List properties":"List properties","Livre tournois sign":"Livre tournois sign","Loading...":"Loading...","Logical and":"Logical and","Logical or":"Logical or","Lower-latin":"Lower-latin","Lower–roman":"Lower–roman",Macron:"Macron","Manat sign":"Manat sign","Match case":"Match case","Media toolbar":"Media toolbar","Media URL":"Media URL","media widget":"media widget","Merge cell down":"Merge cell down","Merge cell left":"Merge cell left","Merge cell right":"Merge cell right","Merge cell up":"Merge cell up","Merge cells":"Merge cells","Mill sign":"Mill sign","Minus sign":"Minus sign","Multiple styles":"Multiple styles","Multiplication sign":"Multiplication sign","N-ary product":"N-ary product","N-ary summation":"N-ary summation",Nabla:"Nabla","Naira sign":"Naira sign","Name of the revision (optional)":"Name of the revision (optional)","Name this revision":"Name this revision","Navigate editable regions":"Navigate editable regions","New sheqel sign":"New sheqel sign",Next:"Next","Next editable region":"Next editable region","Next result":"Next result",No:"No","No changes":"No changes","No preview available":"No preview available",None:"None","Nordic mark sign":"Nordic mark sign","Not an element of":"Not an element of","Not equal to":"Not equal to","Not sign":"Not sign",NUMBER_OF_CHANGES:["%0 change","%0 changes"],NUMBER_OF_COMMENTS:["%0 Comment","%0 Comments"],"Numbered List":"Numbered List","Numbered list styles toolbar":"Numbered list styles toolbar","on with exclamation mark with left right arrow above":"on with exclamation mark with left right arrow above","Open file manager":"Open file manager","Open in a new tab":"Open in a new tab","Open link in new tab":"Open link in new tab","Open media in new tab":"Open media in new tab","Open revision history":"Open revision history",Orange:"Orange",Original:"Original",Outset:"Outset",Overline:"Overline",Padding:"Padding","Page break":"Page break",Paragraph:"Paragraph","Paragraph sign":"Paragraph sign","Partial differential":"Partial differential","Paste raw HTML here...":"Paste raw HTML here...","Paste the media URL in the input.":"Paste the media URL in the input.",PENDING_ACTION_COMMENT_THREAD:"Unsaved change in comment thread.",PENDING_ACTION_REVISION_HISTORY:"Unsaved change in revision history.",PENDING_ACTION_SENDING_DATA:"Sending data to the server.",PENDING_ACTION_SUGGESTION:"Unsaved change in suggestion.","Per mille sign":"Per mille sign","Per ten thousand sign":"Per ten thousand sign","Peseta sign":"Peseta sign","Peso sign":"Peso sign","Pink marker":"Pink marker","Plain text":"Plain text","Plus-minus sign":"Plus-minus sign","Pound sign":"Pound sign",Previous:"Previous","Previous editable region":"Previous editable region","Previous result":"Previous result","Proportional to":"Proportional to",Purple:"Purple","Question exclamation mark":"Question exclamation mark",Red:"Red","Red pen":"Red pen",Redo:"Redo","Registered sign":"Registered sign",Remove:"Remove","Remove color":"Remove color","Remove Format":"Remove Format","Remove highlight":"Remove highlight","Remove language":"Remove language","Removed by":"Removed by",Replace:"Replace","Replace all":"Replace all","Replace with…":"Replace with…",REPLACE_TEXT:"*Replace:* %0 *with* %1","Reply...":"Reply...","Resize image":"Resize image","Resize image to %0":"Resize image to %0","Resize image to the original size":"Resize image to the original size","Restore default":"Restore default","Restore this revision":"Restore this revision",Restored:"Restored","Reversed order":"Reversed order","Reversed paragraph sign":"Reversed paragraph sign","Revision author":"Revision author","Revision creator":"Revision creator","Revision history":"Revision history","Revision name":"Revision name","Rich Text Editor":"Rich Text Editor","Rich Text Editor. Editing area: %0":"Rich Text Editor. Editing area: %0",Ridge:"Ridge","Right aligned image":"Right aligned image","Right double quotation mark":"Right double quotation mark","Right single quotation mark":"Right single quotation mark","Right-pointing double angle quotation mark":"Right-pointing double angle quotation mark","rightwards arrow to bar":"rightwards arrow to bar","rightwards dashed arrow":"rightwards dashed arrow","rightwards double arrow":"rightwards double arrow","rightwards simple arrow":"rightwards simple arrow",Row:"Row","Ruble sign":"Ruble sign","Rupee sign":"Rupee sign",Save:"Save","Save changes":"Save changes","Save current revision":"Save current revision","Section sign":"Section sign","Select all":"Select all","Select column":"Select column","Select row":"Select row","Selecting resized image failed":"Selecting resized image failed","Show more items":"Show more items","Show next change":"Show next change","Show next page":"Show next page","Show options":"Show options","Show previous change":"Show previous change","Show previous page":"Show previous page","Side image":"Side image","Single left-pointing angle quotation mark":"Single left-pointing angle quotation mark","Single low-9 quotation mark":"Single low-9 quotation mark","Single right-pointing angle quotation mark":"Single right-pointing angle quotation mark",Small:"Small",Solid:"Solid","soon with rightwards arrow above":"soon with rightwards arrow above",Source:"Source","Special characters":"Special characters","Spesmilo sign":"Spesmilo sign","Split cell horizontally":"Split cell horizontally","Split cell vertically":"Split cell vertically",Square:"Square","Square root":"Square root","Start at":"Start at","Start index must be greater than 0.":"Start index must be greater than 0.",Strikethrough:"Strikethrough",Style:"Style",Styles:"Styles",Submit:"Submit",Subscript:"Subscript","Suggested by":"Suggested by",Superscript:"Superscript","Synchronization issue":"Synchronization issue","Table alignment toolbar":"Table alignment toolbar","Table cell text alignment":"Table cell text alignment","Table properties":"Table properties","Table toolbar":"Table toolbar","Tenge sign":"Tenge sign","Text alignment":"Text alignment","Text alignment toolbar":"Text alignment toolbar","Text alternative":"Text alternative","Text highlight toolbar":"Text highlight toolbar","Text styles":"Text styles","Text to find must not be empty.":"Text to find must not be empty.",'The color is invalid. Try "#FF0000" or "rgb(255,0,0)" or "red".':'The color is invalid. Try "#FF0000" or "rgb(255,0,0)" or "red".',"The document cannot be connected back to the server. To not lose your content save it locally and refresh the editor.":"The document cannot be connected back to the server. To not lose your content save it locally and refresh the editor.","The document details could not be taken during the reconnection. To not lose your content save it locally and refresh the editor.":"The document details could not be taken during the reconnection. To not lose your content save it locally and refresh the editor.","The last saved version of the document does not match the local version. To not lose your content save it locally and refresh the editor.":"The last saved version of the document does not match the local version. To not lose your content save it locally and refresh the editor.","The local document and server document differ and merging them can cause unexpected behavior. To not lose your content save it locally and refresh the editor.":"The local document and server document differ and merging them can cause unexpected behavior. To not lose your content save it locally and refresh the editor.","The URL must not be empty.":"The URL must not be empty.",'The value is invalid. Try "10px" or "2em" or simply "2".':'The value is invalid. Try "10px" or "2em" or simply "2".',"There exists":"There exists","This link has no URL":"This link has no URL","This media URL is not supported.":"This media URL is not supported.","Tilde operator":"Tilde operator",Tiny:"Tiny","Tip: Find some text first in order to replace it.":"Tip: Find some text first in order to replace it.","Tip: Paste the URL into the content to embed faster.":"Tip: Paste the URL into the content to embed faster.","To-do List":"To-do List","Toggle caption off":"Toggle caption off","Toggle caption on":"Toggle caption on","Toggle the circle list style":"Toggle the circle list style","Toggle the decimal list style":"Toggle the decimal list style","Toggle the decimal with leading zero list style":"Toggle the decimal with leading zero list style","Toggle the disc list style":"Toggle the disc list style","Toggle the lower–latin list style":"Toggle the lower–latin list style","Toggle the lower–roman list style":"Toggle the lower–roman list style","Toggle the square list style":"Toggle the square list style","Toggle the upper–latin list style":"Toggle the upper–latin list style","Toggle the upper–roman list style":"Toggle the upper–roman list style",TOO_LONG_COMMENT_ALERT:"Comment content is too long. Your comment has %0 characters but the limit is %1 characters.","top with upwards arrow above":"top with upwards arrow above",Total:"Total","Track changes":"Track changes","Trade mark sign":"Trade mark sign","Tugrik sign":"Tugrik sign","Turkish lira sign":"Turkish lira sign",Turquoise:"Turquoise","Two dot leader":"Two dot leader","Type or paste your content here.":"Type or paste your content here.","Type your title":"Type your title",Underline:"Underline",Undo:"Undo",Union:"Union",Unlink:"Unlink","up down arrow with base":"up down arrow with base",Update:"Update","Update image URL":"Update image URL","Upload failed":"Upload failed","Upload in progress":"Upload in progress","Upper-latin":"Upper-latin","Upper-roman":"Upper-roman","upwards arrow to bar":"upwards arrow to bar","upwards dashed arrow":"upwards dashed arrow","upwards double arrow":"upwards double arrow","upwards simple arrow":"upwards simple arrow","Vertical text alignment toolbar":"Vertical text alignment toolbar","Vulgar fraction one half":"Vulgar fraction one half","Vulgar fraction one quarter":"Vulgar fraction one quarter","Vulgar fraction three quarters":"Vulgar fraction three quarters",White:"White","Whole words only":"Whole words only","Widget toolbar":"Widget toolbar",Width:"Width","Won sign":"Won sign","Words: %0":"Words: %0","Wrap text":"Wrap text","Write a comment...":"Write a comment...",X_OF_Y_CHANGES:"%0 of %1",Yellow:"Yellow","Yellow marker":"Yellow marker","Yen sign":"Yen sign",Yes:"Yes"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={})), +/*! + * @license Copyright (c) 2003-2022, 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.CKEDITOR=e():t.CKEDITOR=e()}(self,(()=>(()=>{var __webpack_modules__={6732:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});class n extends Error{constructor(t,e,n=null,i={}){super("cloud-services-internal-error: "+t),this.context=e,this.code=n,this.data=i,this.name="CKEditorError"}static fromPublicError(t){return new n(function(t){let e="cloud-services-error: "+t.message;return t.explanation&&(e+="\nExplanation: "+t.explanation),t.action&&(e+="\nAction: "+t.action),t.traceId&&(e+="\nTraceId: "+t.traceId),t.code&&(e+="\nCode: "+t.code),e}(t),t)}}e.default=n},9073:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});class n extends Error{constructor(t,e){super(),this.name="CKEditorCloudServicesServerError",this.stack=void 0,this.message=t,this.code=e.code,this.traceId=e.traceId,this.data=e.data}static fromPublicError(t){return new n(function(t){let e="cloud-services-server-error: "+t.message;return t.explanation&&(e+="\nExplanation: "+t.explanation),t.action&&(e+="\nAction: "+t.action),t.traceId&&(e+="\nTraceId: "+t.traceId),t.code&&(e+="\nCode: "+t.code),e}(t),t)}}e.default=n},247:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e._SERVICE=void 0;const o=n(8410),r=n(6553),s=i(n(822)),a=i(n(3825)),c=i(n(5834)),l=i(n(4721)),d=i(n(4053)),u=i(n(5184)),h=i(n(3297)),m=i(n(3136)),g=i(n(6732)),p=i(n(6315)),f=i(n(2663)),b=i(n(3510));e._SERVICE=1;class k{constructor(t,e){if(!t)throw new TypeError('Param "bundleVersion" must be provided.');this._id=null!=e?e:(0,o.v4)(),this._isConnected=!1,this._bundleVersion=t}getId(){return this._id}isConnected(){return this._isConnected}connect(t,e={buffers:[],types:[]},n){const i=new c.default(this.getId(),e.buffers,e.types,this._bundleVersion,n);return this._connect(t,i)}reconnect(t,e){if(this.isConnected())throw new g.default("Cannot reconnect to already connected service.",t);return this._connect(t,new d.default(this.getId(),e,this._bundleVersion))}disconnect(){this._isConnected&&(this._isConnected=!1,this._wsGateway&&(this.stopListening(this._wsGateway),this._wsGateway=void 0),this._channel&&(this.stopListening(this._channel),this._channel=void 0),this._connectedSessions&&(this._connectedSessions.disconnect(),this._connectedSessions=void 0),this.fire("disconnected"),this.stopListening())}async getDocumentDetails(){const t=new b.default(this.getId());if(!this._wsGateway)throw new p.default("Collaborative Editing",this);const n=await this._wsGateway._sendRequest(e._SERVICE,b.default.TYPE,s.default.encode(t));return s.default.decode(n,f.default)}async sendOperations(t,n,i){if(!t||!t.types||!t.types.length)throw new g.default("Cannot send empty update.",this._wsGateway);const o="number"==typeof n?n:parseInt(n);if(!Number.isInteger(o)||o<0)throw new g.default("Base version not provided.",this._wsGateway);const r=new l.default(this.getId(),t.buffers,t.types,o,[],i);if(!this._wsGateway||!this._isConnected)throw new p.default("Collaborative Editing",this);const a=await this._wsGateway._sendRequest(e._SERVICE,l.default.TYPE,s.default.encode(r));return s.default.decode(a,u.default)}async getConnectedSessions(){if(!this._isConnected)throw new p.default("Collaborative Editing",this);return this._connectedSessions||(this._connectedSessions=await a.default.getConnectedSessions(this._wsGateway,this._id,e._SERVICE)),this._connectedSessions}static getConnectedSessions(t,n){return a.default.getConnectedSessions(t,n,e._SERVICE)}async _connect(t,n){if(this.isConnected())return;if(t.state!==m.default.STATE_CONNECTED)throw new g.default("WebSocket Gateway is not connected.",t);this._wsGateway=t,this.stopListening(t,"change:state");const i=await t._sendRequest(e._SERVICE,n.constructor.TYPE,s.default.encode(n)),o=s.default.decode(i,h.default);return this.listenTo(t,"change:state",((t,e,n)=>this._onWsGatewayStateChange(n)),{priority:m.default._CHANGE_STATE_EVENT_PRIORITY}),this._connectToChannel(t,o.channel),this._isConnected=!0,this.fire("connected"),o}_connectToChannel(t,n){this._channel=t._getChannel(e._SERVICE,n),this.listenTo(this._channel,this._channel.getEventName(l.default.TYPE),((t,e)=>{const n=s.default.decode(e,l.default);this.fire("operationsReceived",n.baseVersion,n.data,n.metadata)}))}_onWsGatewayStateChange(t){t===m.default.STATE_DISCONNECTED&&this.disconnect()}}k._SERVICE=e._SERVICE,(0,r.mix)(k,r.EmitterMixin),e.default=k},260:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(4229));class r extends o.default{static toJSON({createdAt:t,...e}){const n={...e};return t instanceof Date&&(n.createdAt=t.toISOString()),n}static fromJSON({createdAt:t,...e}){const n={...e};return t&&(n.createdAt=new Date(t)),n}}e.default=r,r.DESCRIPTOR_NAME="OperationMetadataDescriptor",r.DESCRIPTOR={fields:{userId:{type:"string",id:1},type:{type:"string",id:2},createdAt:{type:"string",id:3}}}},2421:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=class{static prepareMetadataForOperations(t,e){if(!(t&&t.length&&e&&e.length))return[];const n=[];let i=0;for(const o of t)if(0!==o){if(!e[i])throw new Error("Missing metadata for a operation");n.push(e[i]),i++}else n.push(n[n.length-1]);return n}static removeUnnecessaryMetadata(t,e){if(!(t&&t.length&&e&&e.length))return[];const n=[];for(let i=0;ithis._onWsGatewayStateChange(n)),{priority:w.default._CHANGE_STATE_EVENT_PRIORITY}),this._connectToChannel(t,o),this._isConnected=!0,this.fire("connected"),r}disconnect(){this._isConnected&&(this._isConnected=!1,this._wsGateway&&(this.stopListening(this._wsGateway),this._wsGateway=void 0),this._channel&&(this.stopListening(this._channel),this._channel=void 0),this._connectedSessions&&(this._connectedSessions.disconnect(),this._connectedSessions=void 0),this.fire("disconnected"),this.stopListening())}async addComment(t,e,n,i){const o=new l.default(this._documentId,t,n,e,void 0,void 0,i),r=await this._sendRequest(l.default.TYPE,o);return c.default.decode(r,d.default)}async updateComment(t,e,n,i){const o=void 0!==i,r=new p.default(this._documentId,t,e,n,i,o);await this._sendRequest(p.default.TYPE,r)}async removeComment(t,e){const n=new m.default(this._documentId,t,e);await this._sendRequest(m.default.TYPE,n)}async removeCommentThread(t){const e=new g.default(this._documentId,t);await this._sendRequest(g.default.TYPE,e)}async getCommentThread(t,e=1){const n=new f.default(t,this._documentId);try{const t=await this._sendRequest(f.default.TYPE,n),{comments:e,commentThreadId:i}=c.default.decode(t,b.default);return{comments:e,commentThreadId:i}}catch(n){if(n instanceof C.default&&"404"===n.code&&e<5)return await(i=100*e,new Promise((t=>{setTimeout(t,i)}))),this.getCommentThread(t,e+1);if(n instanceof C.default)throw n;throw C.default.fromPublicError(n)}var i}async getDocumentThreads(){const t=new k.default(this._documentId),e=await this._sendRequest(k.default.TYPE,t),{threads:n}=c.default.decode(e,x.default);return{threads:n}}async getConnectedSessions(){if(!this._isConnected)throw new v.default("Comments",this);return this._connectedSessions||(this._connectedSessions=await A.default.getConnectedSessions(this._wsGateway,this._documentId,e._SERVICE)),this._connectedSessions}_connectToChannel(t,e){this._channel=t._getChannel(y._SERVICE,e),this._channel&&(this.listenTo(this._channel,this._channel.getEventName(l.default.TYPE),((t,e)=>{const n=c.default.decode(e,l.default);this.fire("commentAdded",n)})),this.listenTo(this._channel,this._channel.getEventName(m.default.TYPE),((t,e)=>{const n=c.default.decode(e,m.default);this.fire("commentRemoved",n)})),this.listenTo(this._channel,this._channel.getEventName(p.default.TYPE),((t,e)=>{const n=c.default.decode(e,p.default);this.fire("commentUpdated",n)})),this.listenTo(this._channel,this._channel.getEventName(g.default.TYPE),((t,e)=>{const n=c.default.decode(e,g.default);this.fire("commentThreadRemoved",n)})))}_onWsGatewayStateChange(t){t===w.WEB_SOCKET_GATEWAY_STATES.DISCONNECTED&&this.disconnect()}_sendRequest(t,n){if(!this._wsGateway||!this._isConnected)throw new v.default("Comments",this);return this._wsGateway._sendRequest(e._SERVICE,t,c.default.encode(n))}}y._SERVICE=e._SERVICE,(0,a.mix)(y,a.EmitterMixin),e.default=y},3650:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(4229));class r extends o.default{static toJSON(t){var e;return{...t,createdAt:null===(e=t.createdAt)||void 0===e?void 0:e.toISOString(),attributes:t.attributes?JSON.stringify(t.attributes):null}}static fromJSON(t){return{...t,createdAt:new Date(t.createdAt),attributes:t.attributes?JSON.parse(t.attributes):null}}}e.default=r,r.DESCRIPTOR_NAME="CommentDescriptor",r.DESCRIPTOR={fields:{commentId:{id:1,type:"string"},commentThreadId:{id:2,type:"string"},userId:{id:3,type:"string"},content:{id:4,type:"string"},documentId:{id:5,type:"string"},createdAt:{id:6,type:"string"},attributes:{id:7,type:"string"}}}},6627:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(4229)),r=i(n(3650));class s extends o.default{static toJSON(t){var e;return{...t,comments:null===(e=t.comments)||void 0===e?void 0:e.map(r.default.toJSON)}}static fromJSON(t){var e;return{...t,comments:null===(e=t.comments)||void 0===e?void 0:e.map(r.default.fromJSON)}}}e.default=s,s.DESCRIPTOR_NAME="CommentsThreadDescriptor",s.DESCRIPTOR={fields:{commentThreadId:{type:"string",id:1},comments:{type:"CommentDescriptor",rule:"repeated",id:2}}}},8262:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e,n,i="",o,r="",s=null){super(),this.documentId=t,this.commentThreadId=e,this.content=n,this.commentId=i,this.userId=r,this.attributes=s,this.createdAt=o?new Date(o):""}toJSON(){return{commentThreadId:this.commentThreadId,content:this.content,documentId:this.documentId,commentId:this.commentId,createdAt:this.createdAt instanceof Date?this.createdAt.toISOString():this.createdAt,userId:this.userId,attributes:JSON.stringify(this.attributes)}}static fromJSON(t){return new r(t.documentId,t.commentThreadId,t.content,t.commentId?t.commentId:void 0,t.createdAt?new Date(t.createdAt):void 0,t.userId?t.userId:void 0,t.attributes?JSON.parse(t.attributes):{})}}e.default=r,r.TYPE="91",r.READABLE_TYPE_NAME="addComment",r.DESCRIPTOR_NAME="CommentsV2AddCommentMessage",r.DESCRIPTOR={fields:{commentThreadId:{type:"string",id:1},content:{type:"string",id:2},documentId:{type:"string",id:3},commentId:{type:"string",id:4},createdAt:{type:"string",id:5},userId:{type:"string",id:6},attributes:{type:"string",id:7}}}},7566:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t){super(),this.documentId=t}toJSON(){return{documentId:this.documentId}}static fromJSON(t){return new r(t.documentId)}}e.default=r,r.TYPE="92",r.READABLE_TYPE_NAME="connectToComment",r.DESCRIPTOR_NAME="CommentsV2ConnectMessage",r.DESCRIPTOR={fields:{documentId:{type:"string",id:1}}}},673:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e){super(),this.commentThreadId=t,this.documentId=e}toJSON(){return{commentThreadId:this.commentThreadId,documentId:this.documentId}}static fromJSON(t){return new r(t.commentThreadId,t.documentId)}}e.default=r,r.TYPE="93",r.READABLE_TYPE_NAME="getComment",r.DESCRIPTOR_NAME="CommentsV2GetCommentThreadMessage",r.DESCRIPTOR={fields:{commentThreadId:{type:"string",id:1},documentId:{type:"string",id:2}}}},5254:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t){super(),this.documentId=t}toJSON(){return{documentId:this.documentId}}static fromJSON(t){return new r(t.documentId)}}e.default=r,r.TYPE="94",r.READABLE_TYPE_NAME="getDocumentThreads",r.DESCRIPTOR_NAME="CommentsV2GetDocumentThreadsMessage",r.DESCRIPTOR={fields:{documentId:{type:"string",id:1}}}},7848:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e,n){super(),this.documentId=t,this.commentThreadId=e,this.commentId=n}toJSON(){return{documentId:this.documentId,commentThreadId:this.commentThreadId,commentId:this.commentId}}static fromJSON(t){return new r(t.documentId,t.commentThreadId,t.commentId)}}e.default=r,r.TYPE="95",r.READABLE_TYPE_NAME="removeComment",r.DESCRIPTOR_NAME="CommentsV2RemoveCommentMessage",r.DESCRIPTOR={fields:{commentThreadId:{type:"string",id:1},commentId:{type:"string",id:2},documentId:{type:"string",id:3}}}},5785:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e){super(),this.documentId=t,this.commentThreadId=e}toJSON(){return{documentId:this.documentId,commentThreadId:this.commentThreadId}}static fromJSON(t){return new r(t.documentId,t.commentThreadId)}}e.default=r,r.TYPE="97",r.READABLE_TYPE_NAME="removeCommentThread",r.DESCRIPTOR_NAME="CommentsV2RemoveCommentThreadMessage",r.DESCRIPTOR={fields:{commentThreadId:{type:"string",id:1},documentId:{type:"string",id:2}}}},5456:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e,n,i,o=null,r=!1){super(),this.documentId=t,this.commentThreadId=e,this.commentId=n,this.content=i,this.attributes=o,this.isAttributesUpdated=r}toJSON(){return{documentId:this.documentId,commentThreadId:this.commentThreadId,commentId:this.commentId,content:this.content,attributes:this.attributes?JSON.stringify(this.attributes):null,isAttributesUpdated:this.isAttributesUpdated}}static fromJSON(t){return new r(t.documentId,t.commentThreadId,t.commentId,t.content,t.attributes?JSON.parse(t.attributes):null,t.isAttributesUpdated)}}e.default=r,r.TYPE="96",r.READABLE_TYPE_NAME="updateComment",r.DESCRIPTOR_NAME="CommentsV2UpdateCommentMessage",r.DESCRIPTOR={fields:{commentThreadId:{type:"string",id:1},commentId:{type:"string",id:2},content:{type:"string",id:3},documentId:{type:"string",id:4},attributes:{type:"string",id:5},isAttributesUpdated:{type:"bool",id:6}}}},6689:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e,n){super(),this.commentThreadId=t,this.commentId=e,this.createdAt=new Date(n)}toJSON(){return{commentThreadId:this.commentThreadId,commentId:this.commentId,createdAt:this.createdAt.toISOString()}}static fromJSON(t){return new r(t.commentThreadId,t.commentId,t.createdAt)}}e.default=r,r.DESCRIPTOR_NAME="CommentsV2AddCommentResponse",r.DESCRIPTOR={fields:{commentThreadId:{type:"string",id:1},commentId:{type:"string",id:2},createdAt:{type:"string",id:3}}}},1376:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210)),r=i(n(6627));class s extends o.default{constructor(t,e,n){super(),this.channel=t,this._threads=e,this._threadsV2=n,this.threads=(null==n?void 0:n.length)?n:e}toJSON(){var t,e;return{channel:this.channel,threads:null===(t=this._threads)||void 0===t?void 0:t.map((t=>JSON.stringify(t))),threadsV2:null===(e=this._threadsV2)||void 0===e?void 0:e.map(r.default.toJSON)}}static fromJSON(t){var e,n;return new s(t.channel,null===(e=t.threads)||void 0===e?void 0:e.map((t=>JSON.parse(t))),null===(n=t.threadsV2)||void 0===n?void 0:n.map(r.default.fromJSON))}}e.default=s,s.DESCRIPTOR_NAME="CommentsV2ConnectResponse",s.DESCRIPTOR={fields:{channel:{type:"string",id:1},threads:{type:"string",rule:"repeated",id:2},threadsV2:{type:"CommentsThreadDescriptor",rule:"repeated",id:3}}}},9725:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210)),r=i(n(3650));class s extends o.default{constructor(t,e,n){super(),this.commentThreadId=t,this._comments=e,this._commentsV2=n,this.comments=(null==n?void 0:n.length)?n:e}toJSON(){var t,e;return{commentThreadId:this.commentThreadId,comments:null===(t=this._comments)||void 0===t?void 0:t.map((t=>JSON.stringify(t))),commentsV2:null===(e=this._commentsV2)||void 0===e?void 0:e.map(r.default.toJSON)}}static fromJSON(t){var e,n;return new s(t.commentThreadId,null===(e=t.comments)||void 0===e?void 0:e.map((t=>function(t){const e=JSON.parse(t);return{...e,createdAt:new Date(e.createdAt)}}(t))),null===(n=t.commentsV2)||void 0===n?void 0:n.map(r.default.fromJSON))}}e.default=s,s.DESCRIPTOR_NAME="CommentsV2GetCommentThreadResponse",s.DESCRIPTOR={fields:{commentThreadId:{type:"string",id:1},comments:{type:"string",rule:"repeated",id:2},commentsV2:{type:"CommentDescriptor",rule:"repeated",id:3}}}},5049:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210)),r=i(n(6627));class s extends o.default{constructor(t,e){super(),this._threads=t,this._threadsV2=e,this.threads=(null==e?void 0:e.length)?e:t}toJSON(){var t,e;return{threads:null===(t=this._threads)||void 0===t?void 0:t.map((t=>JSON.stringify(t))),threadsV2:null===(e=this._threadsV2)||void 0===e?void 0:e.map(r.default.toJSON)}}static fromJSON(t){var e,n;return new s(null===(e=t.threads)||void 0===e?void 0:e.map((t=>function(t){var e;const n=JSON.parse(t),i={...n};return n.comments&&(i.comments=null===(e=n.comments)||void 0===e?void 0:e.map((t=>({...t,createdAt:new Date(t.createdAt)})))),i}(t))),null===(n=t.threadsV2)||void 0===n?void 0:n.map(r.default.fromJSON))}}e.default=s,s.DESCRIPTOR_NAME="CommentsV2GetDocumentThreadsResponse",s.DESCRIPTOR={fields:{threads:{type:"string",rule:"repeated",id:1},threadsV2:{type:"CommentsThreadDescriptor",rule:"repeated",id:2}}}},4229:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=class{constructor(...t){}}},6805:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(4229));class r extends o.default{}e.default=r,r.DESCRIPTOR_NAME="KeyValueDescriptor",r.DESCRIPTOR={fields:{key:{type:"string",id:1},value:{type:"string",id:2}}}},5132:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e._SERVICE=void 0;const o=n(6553),r=i(n(822)),s=n(3136),a=i(n(4701)),c=i(n(4858)),l=i(n(6732));e._SERVICE=13;class d{static async isBundleUploaded(t,e){const n=new a.default(e);if(t.state!==s.WEB_SOCKET_GATEWAY_STATES.CONNECTED)throw new l.default("WebSocket Gateway is not connected.",t);const i=await t._sendRequest(d._SERVICE,a.default.TYPE,r.default.encode(n));return r.default.decode(i,c.default).isUploaded}}d._SERVICE=e._SERVICE,(0,o.mix)(d,o.EmitterMixin),e.default=d},4701:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t){super(),this.bundleVersion=t}toJSON(){return{bundleVersion:this.bundleVersion}}static fromJSON(t){return new r(t.bundleVersion)}}e.default=r,r.TYPE="131",r.READABLE_TYPE_NAME="isEditorBundleUploaded",r.DESCRIPTOR_NAME="IsEditorBundleUploadedMessage",r.DESCRIPTOR={fields:{bundleVersion:{type:"string",id:1}}}},4858:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t){super(),this.isUploaded=t}toJSON(){return{isUploaded:this.isUploaded}}static fromJSON(t){return new r(t.isUploaded)}}e.default=r,r.DESCRIPTOR_NAME="IsEditorBundleUploadedResponse",r.DESCRIPTOR={fields:{isUploaded:{type:"bool",id:1}}}},6315:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(6732));class r extends o.default{constructor(t,e){super(t+" Service is not connected.",e)}}e.default=r},3210:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(4229));class r extends o.default{constructor(...t){super()}static fromJSON(t){throw new TypeError("Must be implemented in a child class!")}}e.default=r,r.TYPE="1000"},822:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),o=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&i(e,t,n);return o(e,t),e},s=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const a=r(n(4492)),c=s(n(7892)),l=s(n(260)),d=s(n(6805)),u=s(n(3130)),h=s(n(3650)),m=s(n(6627)),g=s(n(7282)),p=s(n(3131)),f=[d.default,c.default,l.default,u.default,h.default,m.default,g.default,p.default],b=a.Root.fromJSON({nested:f.reduce(((t,e)=>(t[e.DESCRIPTOR_NAME]=e.DESCRIPTOR,t)),{})});function k(t){return e=t,b.lookup(e.DESCRIPTOR_NAME)||b.addJSON({[e.DESCRIPTOR_NAME]:e.DESCRIPTOR}),b.lookupType(t.DESCRIPTOR_NAME);var e}e.default=class{static decode(t,e){const n=k(e).decode("undefined"==typeof window?t:new Uint8Array(t));return e.fromJSON({...n})}static encode(t){const e=k(t.constructor),n=t.toJSON(),i=e.verify(n);if(i)throw Error(i);return e.encode(e.create(n)).finish()}}},3131:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(4229));class r extends o.default{static create(t){return{revisionId:t.id,name:t.name,creatorId:t.creatorId,createdAt:t.createdAt,fromVersion:t.fromVersion,toVersion:t.toVersion,isEmptyCurrent:t.isEmptyCurrent,diffData:t.diffData?JSON.stringify(t.diffData):void 0,attributes:t.attributes,authorsIds:t.authorsIds}}static toJSON(t){var e;return{revisionId:t.revisionId,name:t.name,creatorId:t.creatorId,authorsIds:t.authorsIds?JSON.stringify(t.authorsIds):void 0,diffData:t.diffData,createdAt:null===(e=t.createdAt)||void 0===e?void 0:e.toISOString(),attributes:t.attributes?JSON.stringify(t.attributes):void 0,toVersion:t.toVersion,fromVersion:t.fromVersion,isEmptyCurrent:t.isEmptyCurrent}}static fromJSON(t){return{revisionId:(t={...t}).revisionId,name:t.name,creatorId:t.creatorId,authorsIds:t.authorsIds?JSON.parse(t.authorsIds):void 0,diffData:t.diffData,createdAt:t.createdAt?new Date(t.createdAt):void 0,attributes:t.attributes?JSON.parse(t.attributes):void 0,toVersion:t.toVersion,fromVersion:t.fromVersion,isEmptyCurrent:t.isEmptyCurrent}}static toObject(t){return function(t){for(const[e,n]of Object.entries(t))void 0===n&&delete t[e];return t}({id:t.revisionId,name:t.name,creatorId:t.creatorId,createdAt:t.createdAt,fromVersion:t.fromVersion,toVersion:t.toVersion,isEmptyCurrent:t.isEmptyCurrent,diffData:t.diffData?JSON.parse(t.diffData):void 0,attributes:t.attributes,authorsIds:t.authorsIds})}}e.default=r,r.DESCRIPTOR_NAME="RevisionDescriptor",r.DESCRIPTOR={fields:{revisionId:{type:"string",id:1},name:{type:"string",id:2},creatorId:{type:"string",id:3},authorsIds:{type:"string",id:4},diffData:{type:"string",id:5},createdAt:{type:"string",id:6},attributes:{type:"string",id:7},toVersion:{type:"uint32",id:8},fromVersion:{type:"uint32",id:9},isEmptyCurrent:{type:"bool",id:10}}}},2269:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t){super(),this.documentId=t}toJSON(){return{documentId:this.documentId}}static fromJSON(t){return new r(t.documentId)}}e.default=r,r.TYPE="121",r.READABLE_TYPE_NAME="connectToRevisionHistory",r.DESCRIPTOR_NAME="RevisionHistoryConnectMessage",r.DESCRIPTOR={fields:{documentId:{type:"string",id:1}}}},8776:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e){super(),this.documentId=t,this.revisionId=e}toJSON(){return{documentId:this.documentId,revisionId:this.revisionId}}static fromJSON(t){return new r(t.documentId,t.revisionId)}}e.default=r,r.TYPE="123",r.READABLE_TYPE_NAME="getRevision",r.DESCRIPTOR_NAME="RevisionHistoryGetRevisionMessage",r.DESCRIPTOR={fields:{documentId:{type:"string",id:1},revisionId:{type:"string",id:2}}}},3728:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e){super(),this.documentId=t,this.requestId=e}toJSON(){return{documentId:this.documentId,requestId:this.requestId}}static fromJSON(t){return new r(t.documentId,t.requestId)}}e.default=r,r.TYPE="122",r.READABLE_TYPE_NAME="reconnectToRevisionHistory",r.DESCRIPTOR_NAME="RevisionHistoryReconnectMessage",r.DESCRIPTOR={fields:{documentId:{type:"string",id:1},requestId:{type:"uint32",id:2}}}},446:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210)),r=i(n(3131));class s extends o.default{constructor(t,e,n){super(),this.documentId=t,this.requestId=e,this.revisions=n}toJSON(){return{documentId:this.documentId,requestId:this.requestId,revisions:this.revisions.map(r.default.toJSON)}}toObject(){return{documentId:this.documentId,requestId:this.requestId,revisions:this.revisions.map(r.default.toObject)}}static create(t){return new s(t.documentId,t.requestId,t.revisions.map(r.default.create))}static fromJSON(t){return new s(t.documentId,t.requestId,t.revisions.map(r.default.fromJSON))}}e.default=s,s.TYPE="124",s.READABLE_TYPE_NAME="updateRevisions",s.DESCRIPTOR_NAME="RevisionHistoryUpdateRevisionsMessage",s.DESCRIPTOR={fields:{documentId:{type:"string",id:1},requestId:{type:"uint32",id:2},revisions:{type:"RevisionDescriptor",id:3,rule:"repeated"}}}},5847:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210)),r=i(n(3131));class s extends o.default{constructor(t,e,n){super(),this.channel=t,this.requestId=e,this.revisions=n}toJSON(){return{channel:this.channel,requestId:this.requestId,revisions:this.revisions.map(r.default.toJSON)}}toObject(){return{channel:this.channel,requestId:this.requestId,revisions:this.revisions.map(r.default.toObject)}}static fromJSON(t){return new s(t.channel,t.requestId,t.revisions.map(r.default.fromJSON))}}e.default=s,s.DESCRIPTOR_NAME="RevisionHistoryConnectResponse",s.DESCRIPTOR={fields:{channel:{type:"string",id:1},requestId:{type:"uint32",id:2},revisions:{type:"RevisionDescriptor",id:3,rule:"repeated"}}}},9055:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210)),r=i(n(3131));class s extends o.default{constructor(t,e,n,i,o,r,s,a,c,l){super(),this.revisionId=t,this.name=e,this.creatorId=n,this.authorsIds=i,this.createdAt=o,this.diffData=r,this.attributes=s,this.fromVersion=a,this.toVersion=c,this.isEmptyCurrent=l}toJSON(){return r.default.toJSON(this)}toObject(){return r.default.toObject(this)}static create(t){return new s(t.revisionId,t.name,t.creatorId,t.authorsIds,t.createdAt,t.diffData,t.attributes,t.fromVersion,t.toVersion,t.isEmptyCurrent)}static fromJSON(t){return new s(t.revisionId,t.name,t.creatorId,t.authorsIds?JSON.parse(t.authorsIds):void 0,t.createdAt?new Date(t.createdAt):void 0,t.diffData,t.attributes?JSON.parse(t.attributes):void 0,t.fromVersion,t.toVersion,t.isEmptyCurrent)}}e.default=s,s.DESCRIPTOR_NAME="RevisionHistoryGetRevisionResponse",s.DESCRIPTOR=r.default.DESCRIPTOR},8386:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t){super(),this.requestId=t}toJSON(){return{requestId:this.requestId}}static fromJSON(t){return new r(t.requestId)}}e.default=r,r.DESCRIPTOR_NAME="RevisionHistoryUpdateRevisionsResponse",r.DESCRIPTOR={fields:{requestId:{type:"uint32",id:1}}}},3432:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),o=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&i(e,t,n);return o(e,t),e},s=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e._SERVICE=void 0;const a=n(6553),c=s(n(822)),l=s(n(8776)),d=s(n(9055)),u=s(n(446)),h=s(n(8386)),m=s(n(2269)),g=s(n(5847)),p=s(n(3728)),f=s(n(6732)),b=r(n(3136)),k=s(n(6315));e._SERVICE=12;class x{constructor(t){this._documentId=t,this._isConnected=!1}get isConnected(){return this._isConnected}connect(t){return this._isConnected?Promise.resolve():this._connect(t,new m.default(this._documentId))}disconnect(){this._isConnected&&(this._isConnected=!1,this._wsGateway&&(this.stopListening(this._wsGateway),this._wsGateway=void 0),this._channel&&(this.stopListening(this._channel),this._channel=void 0),this.fire("disconnected"),this.stopListening())}reconnect(t,e){if(this.isConnected)throw new f.default("Cannot reconnect to already connected service.",t);return this._connect(t,new p.default(this._documentId,e))}async updateRevisions(t,e){const n=u.default.create({documentId:this._documentId,requestId:e,revisions:t}),i=await this._sendRequest(u.default.TYPE,n),{requestId:o}=c.default.decode(i,h.default);return o}async getRevision(t){const e=new l.default(this._documentId,t),n=await this._sendRequest(l.default.TYPE,e);return c.default.decode(n,d.default).toObject()}async _connect(t,n){if(t.state!==b.WEB_SOCKET_GATEWAY_STATES.CONNECTED)throw new f.default("WebSocket Gateway is not connected.",t);this._wsGateway=t,this.stopListening(t,"change:state");const i=await t._sendRequest(e._SERVICE,n.constructor.TYPE,c.default.encode(n)),{channel:o,requestId:r,revisions:s}=c.default.decode(i,g.default).toObject();return this.listenTo(t,"change:state",((t,e,n)=>this._onWsGatewayStateChange(n)),{priority:b.default._CHANGE_STATE_EVENT_PRIORITY}),this._connectToChannel(t,o),this._isConnected=!0,this.fire("connected"),{revisions:s,requestId:r}}_connectToChannel(t,e){this._channel=t._getChannel(x._SERVICE,e),this._channel&&this.listenTo(this._channel,this._channel.getEventName(u.default.TYPE),((t,e)=>{const{documentId:n,requestId:i,revisions:o}=c.default.decode(e,u.default).toObject();this.fire("revisionsUpdated",{documentId:n,requestId:i,revisionsData:o})}))}_onWsGatewayStateChange(t){t===b.WEB_SOCKET_GATEWAY_STATES.DISCONNECTED&&this.disconnect()}_sendRequest(t,n){if(!this._wsGateway||!this._isConnected)throw new k.default("Revision History",this);return this._wsGateway._sendRequest(e._SERVICE,t,c.default.encode(n))}}x._SERVICE=e._SERVICE,(0,a.mix)(x,a.EmitterMixin),e.default=x},7892:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(4229));class r extends o.default{}e.default=r,r.DESCRIPTOR_NAME="SessionsSocketDescriptor",r.DESCRIPTOR={fields:{session:{type:"string",id:1},user:{type:"string",id:2},role:{id:3,type:"string"},permissions:{rule:"repeated",type:"string",id:4}}}},7182:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e){super(),this.id=t,this.sessionType=e}toJSON(){return{id:this.id,sessionType:this.sessionType}}static fromJSON(t){return new r(t.id,t.sessionType)}}e.default=r,r.TYPE="31",r.READABLE_TYPE_NAME="getConnectedSockets",r.DESCRIPTOR_NAME="SessionsConnectMessage",r.DESCRIPTOR={fields:{id:{type:"string",id:1},sessionType:{type:"uint32",id:2}}}},733:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e,n,i){super(),this.id=t,this.userId=e,this.role=n,this.permissions=i}toJSON(){var t,e,n;return{id:this.id,userId:null!==(t=this.userId)&&void 0!==t?t:void 0,role:null!==(e=this.role)&&void 0!==e?e:void 0,permissions:null!==(n=this.permissions)&&void 0!==n?n:void 0}}static fromJSON(t){return new r(t.id,t.userId,t.role,t.permissions)}}e.default=r,r.TYPE="32",r.READABLE_TYPE_NAME="connectSocket",r.DESCRIPTOR_NAME="SocketConnectMessage",r.DESCRIPTOR={fields:{id:{type:"string",id:1},userId:{type:"string",id:2},role:{type:"string",id:3},permissions:{rule:"repeated",type:"string",id:4}}}},8902:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t){super(),this.id=t}toJSON(){return{id:this.id}}static fromJSON(t){return new r(t.id)}}e.default=r,r.TYPE="33",r.READABLE_TYPE_NAME="disconnectSocket",r.DESCRIPTOR_NAME="SocketDisconnectMessage",r.DESCRIPTOR={fields:{id:{type:"string",id:1}}}},6118:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e=[]){super(),this.channel=t,this.sockets=e}toJSON(){return{channel:this.channel,sockets:this.sockets.map((t=>({user:t.userId,session:t.id,role:t.role,permissions:t.permissions})))}}static fromJSON(t){return new r(t.channel,t.sockets.map((t=>({id:t.session,userId:t.user,role:t.role,permissions:t.permissions}))))}}e.default=r,r.DESCRIPTOR_NAME="SessionsConnectResponse",r.DESCRIPTOR={fields:{channel:{type:"string",id:1},sockets:{rule:"repeated",type:"SessionsSocketDescriptor",id:2}}}},8333:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=n(6553),r=n(3825),s=i(n(2203)),a=i(n(3136)),c=i(n(6118)),l=i(n(7182)),d=i(n(733)),u=i(n(8902)),h=i(n(822));class m extends o.Collection{constructor(t,e){super({idProperty:"id"}),this._id=t,this._sessionType=e,this._handlers=new Map,this._eventsQueue=[],this._isRunning=!1}async connect(t){this._wsGateway=t,this.stopListening(t,"change:state");const e=new l.default(this._id,this._sessionType);let n;try{const t=await this._wsGateway._sendRequest(r._SERVICE,l.default.TYPE,h.default.encode(e));n=h.default.decode(t,c.default)}catch(t){n=new c.default(this._id,[])}this._connectToChannel(this._wsGateway,n.channel,this._sessionType);const i=await async function(t,e){const n=e.map((t=>t.userId)),i=n.length?await s.default.getMany(t,n):[];return e.map((t=>{const e={id:t.id,role:t.role,permissions:t.permissions};return e.user=t.userId&&i.find((e=>e.id===t.userId))||new s.default,e}))}(this._wsGateway,n.sockets);for(const t of i)super.add(t);this._connected=!0,this.fire("connected"),this.listenTo(this._wsGateway,"change:state",((t,e,n)=>this._onWsGatewayStateChange(n)),{priority:a.default._CHANGE_STATE_EVENT_PRIORITY}),await this._runQueue()}disconnect(t=!0){if(this._connected){for(this._connected=!1,this._eventsQueue=[];this.length;)super.remove(0);this._channel&&(this.stopListening(this._channel),this._channel=void 0),this._wsGateway&&t&&(this.stopListening(this._wsGateway),this._wsGateway=void 0),this.fire("disconnected"),t&&this.stopListening()}}add(t,e){throw new TypeError("The collection is read-only.")}remove(t){throw new TypeError("The collection is read-only.")}_connectToChannel(t,e,n){this._channel=t._getChannel(n,e),this._channel&&(this._addHandler(this._channel,d.default.TYPE,(async e=>{const n=h.default.decode(e,d.default);if(-1===this.getIndex(n.id)){const e={id:n.id,role:n.role,permissions:n.permissions};n.userId&&(e.user=await s.default.get(t,n.userId)),super.add(e)}})),this._addHandler(this._channel,u.default.TYPE,(t=>{const e=h.default.decode(t,u.default);-1!==this.getIndex(e.id)&&super.remove(e.id)})))}async _onWsGatewayStateChange(t){t===a.default.STATE_DISCONNECTED&&this.disconnect(!1),t===a.default.STATE_CONNECTED&&await this.connect(this._wsGateway)}async _runQueue(){if(this._isRunning||!this._connected)return;let t;for(this._isRunning=!0;t=this._eventsQueue.shift();){const e=this._handlers.get(t.eventName);e&&await e(t.data)}this._isRunning=!1}_addHandler(t,e,n){const i=t.getEventName(e,!0);this.listenTo(t,i,(async(t,e)=>{const n=t.name;this._eventsQueue.push({eventName:n,data:e}),await this._runQueue()})),this._handlers.set(i,n)}}e.default=m},3825:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e._SERVICE=void 0;const o=i(n(8333));e._SERVICE=3,e.default=class{static async getConnectedSessions(t,e,n){const i=new o.default(e,n);return await i.connect(t),i}}},7282:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(4229));class r extends o.default{static toJSON(t){var e;return{...t,data:t.data?JSON.stringify(t.data):t.data,attributes:t.attributes?JSON.stringify(t.attributes):t.attributes,createdAt:null===(e=t.createdAt)||void 0===e?void 0:e.toISOString()}}static fromJSON(t){return{...t,data:t.data?JSON.parse(t.data):t.data,attributes:t.attributes?JSON.parse(t.attributes):t.attributes,createdAt:t.createdAt?new Date(t.createdAt):void 0}}}e.default=r,r.DESCRIPTOR_NAME="SuggestionDescriptor",r.DESCRIPTOR={fields:{id:{id:1,type:"string"},authorId:{id:2,type:"string"},type:{id:3,type:"string"},createdAt:{id:4,type:"string"},data:{id:5,type:"string"},hasComments:{id:6,type:"bool"},state:{id:7,type:"string"},attributes:{id:8,type:"string"}}}},5596:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e,n,i={},o=null,r=null){super(),this.id=t,this.documentId=e,this.type=n,this.data=i,this.originalSuggestionId=o,this.attributes=r}toJSON(){return{id:this.id,documentId:this.documentId,type:this.type,data:JSON.stringify(this.data),originalSuggestionId:this.originalSuggestionId,attributes:JSON.stringify(this.attributes)}}static fromJSON(t){var e;return new r(t.id,t.documentId,t.type,JSON.parse(t.data),null!==(e=t.originalSuggestionId)&&void 0!==e?e:null,t.attributes?JSON.parse(t.attributes):null)}}e.default=r,r.TYPE="101",r.READABLE_TYPE_NAME="addSuggestion",r.DESCRIPTOR_NAME="TrackChangesAddSuggestionMessage",r.DESCRIPTOR={fields:{id:{type:"string",id:1},documentId:{type:"string",id:2},type:{type:"string",id:3},data:{type:"string",id:4},originalSuggestionId:{type:"string",id:5},attributes:{type:"string",id:6}}}},8622:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e,n){super(),this.ids=t,this.documentId=e,this.state=n}toJSON(){return{ids:this.ids,documentId:this.documentId,state:this.state}}static fromJSON(t){return new r(t.ids,t.documentId,t.state)}}e.default=r,r.TYPE="106",r.READABLE_TYPE_NAME="batchUpdateSuggestionsState",r.DESCRIPTOR_NAME="TrackChangesBatchUpdateSuggestionsStateMessage",r.DESCRIPTOR={fields:{ids:{type:"string",rule:"repeated",id:1},documentId:{type:"string",id:2},state:{type:"string",id:3}}}},7323:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t){super(),this.documentId=t}toJSON(){return{documentId:this.documentId}}static fromJSON(t){return new r(t.documentId)}}e.default=r,r.TYPE="105",r.READABLE_TYPE_NAME="connectToSuggestions",r.DESCRIPTOR_NAME="TrackChangesConnectMessage",r.DESCRIPTOR={fields:{documentId:{type:"string",id:1}}}},4060:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t){super(),this.documentId=t}toJSON(){return{documentId:this.documentId}}static fromJSON(t){return new r(t.documentId)}}e.default=r,r.TYPE="102",r.READABLE_TYPE_NAME="getAllSuggestions",r.DESCRIPTOR_NAME="TrackChangesGetAllSuggestionMessage",r.DESCRIPTOR={fields:{documentId:{type:"string",id:1}}}},3031:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e){super(),this.id=t,this.documentId=e}toJSON(){return{id:this.id,documentId:this.documentId}}static fromJSON(t){return new r(t.id,t.documentId)}}e.default=r,r.TYPE="103",r.READABLE_TYPE_NAME="getSuggestion",r.DESCRIPTOR_NAME="TrackChangesGetSuggestionMessage",r.DESCRIPTOR={fields:{id:{type:"string",id:1},documentId:{type:"string",id:2}}}},2821:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e,n,i,o,r=null){super(),this.id=t,this.documentId=e,this.hasComments=n,this.isHasCommentsModified=i,this.state=o,this.attributes=r}toJSON(){return{id:this.id,documentId:this.documentId,hasComments:this.hasComments,isHasCommentsModified:this.isHasCommentsModified,state:this.state,attributes:JSON.stringify(this.attributes)}}static fromJSON(t){return new r(t.id,t.documentId,t.hasComments,t.isHasCommentsModified,t.state,t.attributes?JSON.parse(t.attributes):null)}}e.default=r,r.TYPE="104",r.READABLE_TYPE_NAME="updateSuggestion",r.DESCRIPTOR_NAME="TrackChangesUpdateSuggestionMessage",r.DESCRIPTOR={fields:{id:{type:"string",id:1},documentId:{type:"string",id:2},hasComments:{type:"bool",id:3},isHasCommentsModified:{type:"bool",id:4},state:{type:"string",id:5},attributes:{type:"string",id:6}}}},772:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e,n,i,o,r,s={},a=null){super(),this.id=t,this.authorId=e,this.type=n,this.hasComments=o,this.state=r,this.data=s,this.attributes=a,this.createdAt=i?new Date(i):void 0}toJSON(){var t;return{id:this.id,authorId:this.authorId,type:this.type,createdAt:null===(t=this.createdAt)||void 0===t?void 0:t.toISOString(),data:JSON.stringify(this.data),hasComments:this.hasComments,state:this.state,attributes:JSON.stringify(this.attributes)}}static fromJSON(t){return new r(t.id,t.authorId,t.type,t.createdAt,t.hasComments,t.state,JSON.parse(t.data),t.attributes?JSON.parse(t.attributes):null)}}e.default=r,r.DESCRIPTOR_NAME="TrackChangesAddSuggestionResponse",r.DESCRIPTOR={fields:{id:{type:"string",id:1},authorId:{type:"string",id:2},type:{type:"string",id:3},createdAt:{type:"string",id:4},data:{type:"string",id:5},hasComments:{type:"bool",id:6},state:{type:"string",id:7},attributes:{type:"string",id:8}}}},9940:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210)),r=i(n(7282));class s extends o.default{constructor(t,e,n){super(),this.channel=t,this._suggestions=e,this._suggestionsV2=n,this.suggestions=(null==n?void 0:n.length)?n:e}toJSON(){var t,e;return{channel:this.channel,suggestions:null===(t=this._suggestions)||void 0===t?void 0:t.map((t=>JSON.stringify(t))),suggestionsV2:null===(e=this._suggestionsV2)||void 0===e?void 0:e.map(r.default.toJSON)}}static fromJSON(t){var e,n;return new s(t.channel,null===(e=t.suggestions)||void 0===e?void 0:e.map((t=>JSON.parse(t))),null===(n=t.suggestionsV2)||void 0===n?void 0:n.map(r.default.fromJSON))}}e.default=s,s.DESCRIPTOR_NAME="TrackChangesConnectResponse",s.DESCRIPTOR={fields:{channel:{type:"string",id:1},suggestions:{type:"string",rule:"repeated",id:2},suggestionsV2:{type:"SuggestionDescriptor",rule:"repeated",id:3}}}},2414:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210)),r=i(n(7282));class s extends o.default{constructor(t,e){super(),this._suggestions=t,this._suggestionsV2=e,this.suggestions=(null==e?void 0:e.length)?e:t}toJSON(){var t,e;return{suggestions:null===(t=this._suggestions)||void 0===t?void 0:t.map((t=>JSON.stringify(t))),suggestionsV2:null===(e=this._suggestionsV2)||void 0===e?void 0:e.map(r.default.toJSON)}}static fromJSON(t){var e,n;return new s(null===(e=t.suggestions)||void 0===e?void 0:e.map(a),null===(n=t.suggestionsV2)||void 0===n?void 0:n.map(r.default.fromJSON))}}function a(t){const e=JSON.parse(t);return e.createdAt=e.createdAt?new Date(e.createdAt):void 0,e}e.default=s,s.DESCRIPTOR_NAME="TrackChangesGetAllSuggestionsResponse",s.DESCRIPTOR={fields:{suggestions:{type:"string",rule:"repeated",id:1},suggestionsV2:{type:"SuggestionDescriptor",rule:"repeated",id:2}}}},9849:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e,n,i,o,r,s={},a=null){super(),this.id=t,this.authorId=e,this.type=n,this.hasComments=o,this.state=r,this.data=s,this.attributes=a,this.createdAt=new Date(i)}toJSON(){return{id:this.id,authorId:this.authorId,type:this.type,createdAt:this.createdAt.toISOString(),data:JSON.stringify(this.data),hasComments:this.hasComments,state:this.state,attributes:JSON.stringify(this.attributes)}}static fromJSON(t){return new r(t.id,t.authorId,t.type,t.createdAt,t.hasComments,t.state,JSON.parse(t.data),t.attributes?JSON.parse(t.attributes):null)}}e.default=r,r.DESCRIPTOR_NAME="TrackChangesGetSuggestionResponse",r.DESCRIPTOR={fields:{id:{type:"string",id:1},authorId:{type:"string",id:2},type:{type:"string",id:3},createdAt:{type:"string",id:4},data:{type:"string",id:5},hasComments:{type:"bool",id:6},state:{type:"string",id:7},attributes:{type:"string",id:8}}}},716:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),o=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&i(e,t,n);return o(e,t),e},s=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e._SERVICE=void 0;const a=n(6553),c=s(n(822)),l=s(n(5596)),d=s(n(772)),u=s(n(3031)),h=s(n(9849)),m=s(n(4060)),g=s(n(2414)),p=s(n(2821)),f=s(n(7323)),b=s(n(9940)),k=s(n(6732)),x=r(n(3136)),w=s(n(6315)),_=s(n(9073)),A=s(n(8622));e._SERVICE=10;class v{constructor(t){this._documentId=t,this._isConnected=!1}get isConnected(){return this._isConnected}async connect(t){if(this._isConnected)return;if(t.state!==x.WEB_SOCKET_GATEWAY_STATES.CONNECTED)throw new k.default("WebSocket Gateway is not connected.",t);const n=new f.default(this._documentId);this._wsGateway=t,this.stopListening(t,"change:state");const i=await t._sendRequest(e._SERVICE,f.default.TYPE,c.default.encode(n)),o=c.default.decode(i,b.default);return this.listenTo(t,"change:state",((t,e,n)=>this._onWsGatewayStateChange(n)),{priority:x.default._CHANGE_STATE_EVENT_PRIORITY}),this._connectToChannel(t,o.channel),this._isConnected=!0,this.fire("connected"),o.suggestions}disconnect(){this._isConnected&&(this._isConnected=!1,this._wsGateway&&(this.stopListening(this._wsGateway),this._wsGateway=void 0),this._channel&&(this.stopListening(this._channel),this._channel=void 0),this.fire("disconnected"),this.stopListening())}async add(t,e,n,i=null,o){const r=new l.default(t,this._documentId,e,n,i,o),s=await this._sendRequest(l.default.TYPE,r);return c.default.decode(s,d.default)}async get(t,e=1){const n=new u.default(t,this._documentId);try{const t=await this._sendRequest(u.default.TYPE,n);return c.default.decode(t,h.default)}catch(n){if(n instanceof _.default&&"404"===n.code&&e<5)return await(i=100*e,new Promise((t=>{setTimeout(t,i)}))),this.get(t,e+1);if(n instanceof _.default)throw n;throw _.default.fromPublicError(n)}var i}async getAll(){const t=new m.default(this._documentId),e=await this._sendRequest(m.default.TYPE,t),{suggestions:n}=c.default.decode(e,g.default);return n}async update(t,e={}){const{hasComments:n,state:i,attributes:o}=e,r=void 0!==n,s=new p.default(t,this._documentId,n,r,i,o);await this._sendRequest(p.default.TYPE,s)}async batchUpdateState(t){const e=new A.default(t.ids,this._documentId,t.state);await this._sendRequest(A.default.TYPE,e)}_connectToChannel(t,e){this._channel=t._getChannel(v._SERVICE,e),this._channel&&this.listenTo(this._channel,this._channel.getEventName(p.default.TYPE),((t,e)=>{const n=c.default.decode(e,p.default);this.fire("suggestionUpdated",n)}))}_onWsGatewayStateChange(t){t===x.WEB_SOCKET_GATEWAY_STATES.DISCONNECTED&&this.disconnect()}_sendRequest(t,n){if(!this._wsGateway||!this._isConnected)throw new w.default("Track Changes",this);return this._wsGateway._sendRequest(e._SERVICE,t,c.default.encode(n))}}v._SERVICE=e._SERVICE,(0,a.mix)(v,a.EmitterMixin),e.default=v},3130:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(4229));class r extends o.default{}e.default=r,r.DESCRIPTOR_NAME="UserDescriptor",r.DESCRIPTOR={fields:{attributes:{rule:"repeated",type:"KeyValueDescriptor",id:1}}}},4076:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t){super(),this.ids=t}toJSON(){return{ids:this.ids}}static fromJSON(t){return new r(t.ids)}}e.default=r,r.TYPE="22",r.READABLE_TYPE_NAME="getManyUsers",r.DESCRIPTOR_NAME="GetManyUsersMessage",r.DESCRIPTOR={fields:{ids:{id:1,type:"string",rule:"repeated"}}}},3184:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t){super(),this.id=t}toJSON(){return{id:this.id}}static fromJSON(t){return new r(t.id)}}e.default=r,r.TYPE="21",r.READABLE_TYPE_NAME="getUser",r.DESCRIPTOR_NAME="GetUserMessage",r.DESCRIPTOR={fields:{id:{type:"string",id:1}}}},6461:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t){super(),this.users=t}toJSON(){return{users:this.users.map(s)}}static fromJSON(t){return new r(t.users.map(a))}}function s(t){return{attributes:Object.keys(t).map((e=>({key:e,value:JSON.stringify(t[e])})))}}function a(t){return t.attributes.reduce(((t,e)=>(t[e.key]=e.value?JSON.parse(e.value):null,t)),{})}e.default=r,r.DESCRIPTOR_NAME="GetManyUsersResponse",r.DESCRIPTOR={fields:{users:{rule:"repeated",type:"UserDescriptor",id:1}}}},1783:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t){super(),this.attributes=t}toJSON(){return{attributes:Object.keys(this.attributes).map((t=>({key:t,value:JSON.stringify(this.attributes[t])})))}}static fromJSON(t){const e=t.attributes.reduce(((t,e)=>(t[e.key]=e.value?JSON.parse(e.value):null,t)),{});return new r(e)}}e.default=r,r.DESCRIPTOR_NAME="GetUserResponse",r.DESCRIPTOR={fields:{attributes:{rule:"repeated",type:"KeyValueDescriptor",id:1}}}},2203:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3184)),r=i(n(1783)),s=i(n(822)),a=i(n(4076)),c=i(n(6461));class l{constructor(t={}){this._attributes=new Map;for(const e of Object.keys(t))"id"!==e?(this._attributes.set(e,t[e]),Object.defineProperty(this,e,{enumerable:!0,configurable:!1,get:()=>this._attributes.get(e)})):this.id=t.id}static fromData(t){return new l(t)}static async get(t,e){const n=new o.default(e);try{const e=await t._sendRequest(l._SERVICE,o.default.TYPE,s.default.encode(n)),i=s.default.decode(e,r.default);return new l(i.attributes)}catch(t){return new l({id:e})}}static async getMany(t,e){const n=new a.default(e);try{const e=await t._sendRequest(l._SERVICE,a.default.TYPE,s.default.encode(n));return s.default.decode(e,c.default).users.map((t=>new l(t)))}catch(t){return e.map((t=>new l({id:t})))}}}l._SERVICE=2,e.default=l},989:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default="37.0.0"},8290:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=n(6553),r=i(n(2021)),s=i(n(822));class a{constructor(t,e,n){this._channelName=t,this._wsGateway=e,this._socket=n,this._subscribeToChannel()}remove(){this._socket.off(this._channelName)}getEventName(t,e=!1){let n="";return e&&(n+="all:"),n+="event",t&&(n+=":"+t),n}_subscribeToChannel(){this._socket.on(this._channelName,(t=>{const e=s.default.decode(t,r.default);this.fire(this.getEventName(e.type,!0),e.data,e.socketId),e.socketId!==this._wsGateway.socketId&&this.fire(this.getEventName(e.type),e.data,e.socketId)}))}}(0,o.mix)(a,o.EmitterMixin),e.default=a},2021:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e,n){super(),this.type=t,this.socketId=e,this.data=n}toJSON(){return{type:this.type,socketId:this.socketId,data:this.data}}static fromJSON(t){return new r(t.type,t.socketId,t.data)}}e.default=r,r.DESCRIPTOR_NAME="ChannelMessage",r.DESCRIPTOR={fields:{type:{type:"uint32",id:1},socketId:{type:"string",id:2},data:{type:"bytes",id:3}}}},6311:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(4645)),r=i(n(822));e.default=class{encode(t,e,n,i="/",s={}){if(e.length>2)throw new Error("PacketParser supports only 2 elements in data");const a={type:t,data:e,id:n,nsp:i};return r.default.encode(o.default.create(a,s))}decode(t){const e=r.default.decode(t,o.default);return{packet:{id:e.id,type:e.type,data:e.packetData,nsp:e.nsp},options:{flags:e.options.flags,rooms:e.options.rooms,except:e.options.except}}}}},4454:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),o=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&i(e,t,n);return o(e,t),e},s=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const a=s(n(8372)),c=r(n(4568));class l extends a.default{constructor(t,e){super(),this.data=t,this.data1=e}toJSON(){return{data:this.data,data1:this.data1}}static fromJSON(t){return new l(t.data,t.data1)}static create(t,e){return new l(t,e)}}e.default=l,l.TYPE=c.default.getPacketType(c.MessageDataTypes.BUFFER,c.MessageDataTypes.BUFFER),l.DESCRIPTOR_NAME="BytesBytesPacketDataMessage",l.DESCRIPTOR={fields:{data:{type:"bytes",id:1},data1:{type:"bytes",id:2}}}},569:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),o=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&i(e,t,n);return o(e,t),e},s=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const a=s(n(8372)),c=r(n(4568));class l extends a.default{constructor(t,e){super(),this.data=t,this.data1=e}toJSON(){return{data:this.data,data1:this.data1}}static fromJSON(t){return new l(t.data,t.data1)}static create(t,e){return new l(t,e)}}e.default=l,l.TYPE=c.default.getPacketType(c.MessageDataTypes.NUMBER,c.MessageDataTypes.BUFFER),l.DESCRIPTOR_NAME="NumberBytesPacketDataMessage",l.DESCRIPTOR={fields:{data:{type:"uint32",id:1},data1:{type:"bytes",id:2}}}},9256:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),o=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&i(e,t,n);return o(e,t),e},s=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const a=s(n(8372)),c=r(n(4568));class l extends a.default{constructor(t,e){super(),this.data=t,this.data1=e}toJSON(){return{data:this.data,data1:this.data1}}static fromJSON(t){return new l(t.data,t.data1)}static create(t,e){return new l(t,e)}}e.default=l,l.TYPE=c.default.getPacketType(c.MessageDataTypes.NUMBER,c.MessageDataTypes.NUMBER),l.DESCRIPTOR_NAME="NumberNumberPacketDataMessage",l.DESCRIPTOR={fields:{data:{type:"uint32",id:1},data1:{type:"uint32",id:2}}}},4194:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),o=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&i(e,t,n);return o(e,t),e},s=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const a=s(n(8372)),c=r(n(4568));class l extends a.default{constructor(t,e){super(),this.data=t,this.data1=e}toJSON(){return{data:this.data,data1:this.data1?JSON.stringify(this.data1):void 0}}static fromJSON(t){return new l(t.data,t.data1&&JSON.parse(t.data1))}static create(t,e){return new l(t,e)}}e.default=l,l.TYPE=c.default.getPacketType(c.MessageDataTypes.NUMBER,c.MessageDataTypes.OBJECT),l.DESCRIPTOR_NAME="NumberObjectPacketDataMessage",l.DESCRIPTOR={fields:{data:{type:"uint32",id:1},data1:{type:"string",id:2}}}},6700:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),o=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&i(e,t,n);return o(e,t),e},s=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const a=s(n(8372)),c=r(n(4568));class l extends a.default{constructor(t,e){super(),this.data=t,this.data1=e}toJSON(){return{data:this.data,data1:this.data1}}static fromJSON(t){return new l(t.data,t.data1)}static create(t,e){return new l(t,e)}}e.default=l,l.TYPE=c.default.getPacketType(c.MessageDataTypes.NUMBER,c.MessageDataTypes.STRING),l.DESCRIPTOR_NAME="NumberStringPacketDataMessage",l.DESCRIPTOR={fields:{data:{type:"uint32",id:1},data1:{type:"string",id:2}}}},3903:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),o=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&i(e,t,n);return o(e,t),e},s=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const a=s(n(8372)),c=r(n(4568));class l extends a.default{constructor(t,e){super(),this.data=t,this.data1=e}toJSON(){return{data:this.data?JSON.stringify(this.data):void 0,data1:this.data1}}static fromJSON(t){return new l(t.data&&JSON.parse(t.data),t.data1)}static create(t,e){return new l(t,e)}}e.default=l,l.TYPE=c.default.getPacketType(c.MessageDataTypes.OBJECT,c.MessageDataTypes.BUFFER),l.DESCRIPTOR_NAME="ObjectBufferPacketDataMessage",l.DESCRIPTOR={fields:{data:{type:"string",id:1},data1:{type:"bytes",id:2}}}},3500:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),o=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&i(e,t,n);return o(e,t),e},s=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const a=s(n(8372)),c=r(n(4568));class l extends a.default{constructor(t,e){super(),this.data=t,this.data1=e}toJSON(){return{data:this.data?JSON.stringify(this.data):void 0,data1:this.data1?JSON.stringify(this.data1):void 0}}static fromJSON(t){return new l(t.data&&JSON.parse(t.data),t.data1&&JSON.parse(t.data1))}static create(t,e){return new l(t,e)}}e.default=l,l.TYPE=c.default.getPacketType(c.MessageDataTypes.OBJECT,c.MessageDataTypes.OBJECT),l.DESCRIPTOR_NAME="ObjectObjectPacketDataMessage",l.DESCRIPTOR={fields:{data:{type:"string",id:1},data1:{type:"string",id:2}}}},8372:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{static create(t,e){throw new TypeError("Must be implemented in a child class!")}}e.default=r,t.exports=r},4645:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(822)),r=i(n(3210)),s=i(n(9152)),a=i(n(4568)),c=i(n(569)),l=i(n(5229)),d=i(n(4454)),u=i(n(7926)),h=i(n(4194)),m=i(n(3500)),g=i(n(3903)),p=i(n(1919)),f=i(n(4149)),b=i(n(9256)),k=i(n(6700)),x=[c.default,l.default,d.default,u.default,h.default,m.default,g.default,p.default,f.default,b.default,k.default].reduce(((t,e)=>(t[e.TYPE]=e,t)),{});class w extends r.default{constructor(t,e,n,i="/",o=new s.default){super(),this.type=t,this.data=e,this.id=n,this.nsp=i,this.options=o}get packetData(){return void 0===this.data.data&&void 0===this.data.data1?[]:this.data.data&&void 0===this.data.data1?[this.data.data]:[this.data.data,this.data.data1]}toJSON(){const t=o.default.encode(this.options),e=o.default.encode(this.data);return{type:this.type+10*this.data.constructor.TYPE,id:this.id,nsp:"/"===this.nsp?void 0:this.nsp,data:e,options:t}}static fromJSON(t){const e=Math.floor(t.type/10);return new w(t.type-10*e,o.default.decode(t.data,x[e]),t.id,t.nsp,t.options?o.default.decode(t.options,s.default):new s.default)}static create(t,e={}){var n;const i=a.default.getPacketType(a.default.getType(t.data[0]),a.default.getType(null!==(n=t.data[1])&&void 0!==n?n:t.data[0]));return new w(t.type,x[i].create(t.data[0],t.data[1]),t.id,t.nsp,new s.default(e.flags,e.rooms,e.except))}}e.default=w,w.TYPE=10,w.DESCRIPTOR_NAME="PacketMessage",w.DESCRIPTOR={fields:{type:{type:"uint32",id:1},id:{type:"uint32",id:2},nsp:{type:"string",id:3},data:{type:"bytes",id:4},options:{type:"bytes",id:5}}}},9152:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(3210));class r extends o.default{constructor(t,e=[],n=[]){super(),this.flags=t,this.rooms=e,this.except=n}toJSON(){var t,e;return{flags:this.flags?JSON.stringify(this.flags):void 0,rooms:(null===(t=this.rooms)||void 0===t?void 0:t.length)?this.rooms:void 0,except:(null===(e=this.except)||void 0===e?void 0:e.length)?this.except:void 0}}static fromJSON(t){return new r(t.flags&&JSON.parse(t.flags),t.rooms,t.except)}}e.default=r,r.TYPE=11,r.DESCRIPTOR_NAME="PacketOptionsMessage",r.DESCRIPTOR={fields:{flags:{type:"string",id:1},rooms:{type:"string",id:2,rule:"repeated"},except:{type:"string",id:3,rule:"repeated"}}}},5229:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),o=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&i(e,t,n);return o(e,t),e},s=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const a=s(n(8372)),c=r(n(4568));class l extends a.default{constructor(t,e){super(),this.data=t,this.data1=e}toJSON(){return{data:this.data,data1:this.data1}}static fromJSON(t){return new l(t.data,t.data1)}static create(t,e){return new l(t,e)}}e.default=l,l.TYPE=c.default.getPacketType(c.MessageDataTypes.STRING,c.MessageDataTypes.BUFFER),l.DESCRIPTOR_NAME="StringBytesPacketDataMessage",l.DESCRIPTOR={fields:{data:{type:"string",id:1},data1:{type:"bytes",id:2}}}},4149:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),o=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&i(e,t,n);return o(e,t),e},s=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const a=s(n(8372)),c=r(n(4568));class l extends a.default{constructor(t,e){super(),this.data=t,this.data1=e}toJSON(){return{data:this.data,data1:this.data1}}static fromJSON(t){return new l(t.data,t.data1)}static create(t,e){return new l(t,e)}}e.default=l,l.TYPE=c.default.getPacketType(c.MessageDataTypes.STRING,c.MessageDataTypes.NUMBER),l.DESCRIPTOR_NAME="StringNumberPacketDataMessage",l.DESCRIPTOR={fields:{data:{type:"string",id:1},data1:{type:"uint32",id:2}}}},7926:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),o=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&i(e,t,n);return o(e,t),e},s=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const a=s(n(8372)),c=r(n(4568));class l extends a.default{constructor(t,e){super(),this.data=t,this.data1=e}toJSON(){return{data:this.data,data1:this.data1?JSON.stringify(this.data1):void 0}}static fromJSON(t){return new l(t.data,t.data1&&JSON.parse(t.data1))}static create(t,e){return new l(t,e)}}e.default=l,l.TYPE=c.default.getPacketType(c.MessageDataTypes.STRING,c.MessageDataTypes.OBJECT),l.DESCRIPTOR_NAME="StringObjectPacketDataMessage",l.DESCRIPTOR={fields:{data:{type:"string",id:1},data1:{type:"string",id:2}}}},1919:function(t,e,n){"use strict";var i=this&&this.__createBinding||(Object.create?function(t,e,n,i){void 0===i&&(i=n),Object.defineProperty(t,i,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,i){void 0===i&&(i=n),t[i]=e[n]}),o=this&&this.__setModuleDefault||(Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e}),r=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var n in t)"default"!==n&&Object.prototype.hasOwnProperty.call(t,n)&&i(e,t,n);return o(e,t),e},s=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const a=s(n(8372)),c=r(n(4568));class l extends a.default{constructor(t,e){super(),this.data=t,this.data1=e}toJSON(){return{data:this.data,data1:this.data1}}static fromJSON(t){return new l(t.data,t.data1)}static create(t,e){return new l(t,e)}}e.default=l,l.TYPE=c.default.getPacketType(c.MessageDataTypes.STRING,c.MessageDataTypes.STRING),l.DESCRIPTOR_NAME="StringStringPacketDataMessage",l.DESCRIPTOR={fields:{data:{type:"string",id:1},data1:{type:"string",id:2}}}},9549:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.Decoder=e.Encoder=e.ENCODED_TYPES=void 0;const o=n(4514),r=i(n(6311)),s=i(n(4568));e.ENCODED_TYPES=[o.PacketType.EVENT,o.PacketType.ACK,o.PacketType.BINARY_ACK,o.PacketType.BINARY_EVENT];class a extends o.Encoder{constructor(t=new r.default){super(),this._packetParser=t}encode(t){if(e.ENCODED_TYPES.includes(t.type))try{return[this._packetParser.encode(t.type,t.data,t.id,t.nsp)]}catch(t){console.error("Can not properly serialize or deserialize messages. Check the original error.",{originalError:{message:t.message}})}return super.encode(t)}}e.Encoder=a;class c extends o.Decoder{constructor(t=new r.default){super(),this._packetParser=t}add(t){if(!s.default.isBuffer(t))return super.add(t);let e;try{e=this._packetParser.decode(t).packet}catch(e){return super.add(t)}super.emitReserved("decoded",e)}}e.Decoder=c},4568:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.MessageDataTypes=void 0;const n=!("undefined"==typeof process||!process.versions||!process.versions.node);var i,o;(o=i=e.MessageDataTypes||(e.MessageDataTypes={}))[o.BUFFER=1]="BUFFER",o[o.STRING=2]="STRING",o[o.NUMBER=3]="NUMBER",o[o.OBJECT=4]="OBJECT";class r{static getPacketType(...t){let e=0;for(let n=0;n{t=n,e=i}));return{resolve:t,reject:e,promise:n}}(),this.timeout=setTimeout((()=>this.error(new o.default("Request timeout.",this._context))),e)}get promise(){return this._deferredPromise.promise}response(t){this._deferredPromise.resolve(t)}error(t){this._deferredPromise.reject(t)}}e.default=class{constructor(t){this._context=t,this._requests=new Set}async send(t,e=1e4){const n=this._createRequest(e);try{return t(n),await n.promise}finally{this._finishRequest(n)}}errorAll(t){for(const e of this._requests)e.error(t)}_createRequest(t){const e=new r(this._context,t);return this._requests.add(e),e}_finishRequest(t){this._requests.delete(t),clearTimeout(t.timeout)}}},3136:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.WEB_SOCKET_GATEWAY_STATES=void 0;const o=n(7046),r=i(n(4564)),s=n(6553),a=i(n(8290)),c=i(n(2203)),l=i(n(989)),d=i(n(6732)),u=i(n(9073)),h=n(9549),m=i(n(602));var g,p;(p=g=e.WEB_SOCKET_GATEWAY_STATES||(e.WEB_SOCKET_GATEWAY_STATES={})).DISCONNECTED="disconnected",p.CONNECTING="connecting",p.CONNECTED="connected";class f{constructor(t,e,n={},i=o.io,s=c.default.get){if(this._token=e,this._options=n,this._connectionProvider=i,this._userFactory=s,this._requestsManager=new m.default(this),this._channels=new Map,this._connectionAttempt=0,!t)throw new TypeError("Api address must be provided.");if(!this._token)throw new TypeError("Token must be provided.");this._options.requestTimeout||(this._options.requestTimeout=2e4),this._url=(0,r.default)(t.replace(/^(?!(?:\w+:)?\/\/)/,"https://")),this.set("state","disconnected"),this.set("socketId",void 0),this.set("me",void 0),this.on("change:state",(async(t,e,n)=>{var i;if(this._debugEvent("ws-gw:change:state",n),n!==f.STATE_CONNECTED){if(n===f.STATE_DISCONNECTED)return this._requestsManager.errorAll(new d.default("Not connected.",this))}else try{this.me=await this._userFactory.call(c.default,this,null===(i=this._socketAuth)||void 0===i?void 0:i.userId)}catch(t){}}),{priority:f._CHANGE_STATE_EVENT_PRIORITY}),this.on("error",((t,e)=>{this._options.onError?this._options.onError(e):console.error(e)}))}get sessionId(){return this.socketId}disconnect(){var t;this.state!==g.DISCONNECTED&&(null===(t=this._socket)||void 0===t||t.disconnect(),this._socket=void 0,this.state=g.DISCONNECTED)}async reconnect(){this._socket||this.state!==g.DISCONNECTED||(await this._token.refreshToken(),await this._connect())}static async connect(t,e="local.cs.dev:443/ws-v2",n={},i=o.io,r=c.default.get){const s=new f(e,t,n,i,r);return await s._connect(),s}_sendRequest(t,e,n){if(!t)throw new d.default("`serviceName` must be provided.",this);if(this.state!==f.STATE_CONNECTED)throw new d.default("Not connected.",this);if(!this._socketAuth||!this._socketAuth.isAuthenticated)throw new d.default("Not authenticated.",this);const i=new ArrayBuffer(n.length+2),o=new Uint8Array(i);return o[0]=t,o[1]=parseInt(e),o.set(n,2),this._emit(1,o)}_getChannel(t,e){const n=""+t+e;return!this._channels.has(n)&&this._socket&&this._channels.set(n,new a.default(n,this,this._socket)),this._channels.get(n)}_connect(){return new Promise(((t,e)=>{const n=this._setupSocket();!this.socketId&&n.io.on("reconnect_error",(()=>{this._debugEvent("reconnect_error"),this._reconnectionAttemptError(e)})),n.once("connect",(async()=>{this._debugEvent("once-connect");try{await this._onConnect(),t()}catch(t){e(t)}})),n.connect()}))}_getPortByProtocol(t){return["http:","ws:"].includes(t)?80:443}_setupSocket(){var t;if(this._socket)return this._socket;const e=this._url.port||this._getPortByProtocol(this._url.protocol),n=(this._url.protocol||"https:")+"//"+this._url.hostname+":"+e,i=this._connectionProvider(n,{parser:{Encoder:h.Encoder,Decoder:h.Decoder},path:"/ws-v2/ws",transports:["websocket"],timeout:void 0!==this._options.timeout?this._options.timeout:5e3,reconnection:void 0===this._options.autoReconnect||this._options.autoReconnect,reconnectionDelay:1e3,reconnectionDelayMax:5e3,rejectUnauthorized:void 0===this._options.rejectUnauthorized||this._options.rejectUnauthorized,query:{version:l.default},agent:null!==(t=this._options.agent)&&void 0!==t&&t,closeOnBeforeunload:!1});return this.state=g.CONNECTING,i.on("connect",(()=>{this._debugEvent("connect"),this.socketId=i.id})),i.on("connect_error",(t=>{this._debugEvent("connect_error"),this._onError(t)})),i.on("disconnect",(()=>{this._debugEvent("disconnect"),this._onDisconnect()})),i.io.on("reconnect",(async()=>{this._debugEvent("reconnect"),await this._onReconnect()})),i.io.on("reconnect_attempt",(t=>{this._debugEvent("reconnect_attempt",t),this.state=g.CONNECTING,this._connectionAttempt=t})),i.on("unauthorized",(t=>{this._debugEvent("unauthorized"),this._onUnauthorized(t)})),i.on("authenticationRequest",(async t=>{this._debugEvent("authenticationRequest",t.attempt),await this._onReconnect()})),this._socket=i,i}_emit(t,e){const n=this._socket;return this._requestsManager.send((i=>{n.emit(t,e,((t,e)=>{if(t)return i.error(u.default.fromPublicError(t));i.response(e)}))}),this._options.requestTimeout)}_addAuthData(t,e){this._socketAuth={environmentId:t,userId:e,isAuthenticated:!0}}_removeAuthData(){this._socketAuth=void 0}async _onConnect(){await this._authenticate(this._token.value),this.state=g.CONNECTED;const t=async(t,e,n)=>{this._debugEvent("token:value:change");try{await this._authenticate(n)}catch(t){}};this._token.on("change:value",t),this._socket.io.off("reconnect_error"),this.on("disconnect",(()=>{this._token.off("change:value",t)}))}async _onReconnect(){await this._token.refreshToken(),await this._onConnect()}_onDisconnect(){this.state=g.DISCONNECTED,this._connectionAttempt=0,this.fire("disconnect");for(const t of this._channels.values())t.remove();this._channels.clear(),void 0===this._options.autoReconnect||this._options.autoReconnect||(this._socket=void 0)}_onError(t){console.warn("Connection to WebSocket server failed. Details: ",{originalError:t})}_debugEvent(t,e){if(!this._isDebugModeEnabled())return;const n=void 0!==e?", data: "+e:"";console.info((new Date).toLocaleString()+" "+t+n)}_reconnectionAttemptError(t){this._connectionAttempt>=2&&(this.disconnect(),t(d.default.fromPublicError({message:"The number of initial connection attempts exceeded.",explanation:"Three initial connection attempts failed. It can be caused by a missing or blocked Internet connection.",action:"Please verify the stability of your Internet connection and ensure that no antivirus or firewall software blocks the Web Socket protocol connections."})))}_onUnauthorized({error:t}){this._removeAuthData(),this.fire("error",u.default.fromPublicError(t))}async _authenticate(t){try{const e=await this._emit(2,{token:t});this._addAuthData(e.environmentId,e.userId)}catch(t){throw this._removeAuthData(),t}}_isDebugModeEnabled(){var t;return!!s.global.window.localStorage&&"true"===(null!==(t=s.global.window.localStorage.getItem("csClientDebugMode"))&&void 0!==t?t:"false").toLowerCase()}}f.STATE_DISCONNECTED=g.DISCONNECTED,f.STATE_CONNECTING=g.CONNECTING,f.STATE_CONNECTED=g.CONNECTED,f._CHANGE_STATE_EVENT_PRIORITY=s.priorities.get("highest")+999999,(0,s.mix)(f,s.ObservableMixin),e.default=f},741:(t,e,n)=>{"use strict";t.exports=n(582)},6282:(t,e,n)=>{"use strict";var i=e,o=n(2014),r=n(6645);function s(t,e,n,i){if(e.resolvedType)if(e.resolvedType instanceof o){t("switch(d%s){",i);for(var r=e.resolvedType.values,s=Object.keys(r),a=0;a>>0",i,i);break;case"int32":case"sint32":case"sfixed32":t("m%s=d%s|0",i,i);break;case"uint64":c=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":t("if(util.Long)")("(m%s=util.Long.fromValue(d%s)).unsigned=%j",i,i,c)('else if(typeof d%s==="string")',i)("m%s=parseInt(d%s,10)",i,i)('else if(typeof d%s==="number")',i)("m%s=d%s",i,i)('else if(typeof d%s==="object")',i)("m%s=new util.LongBits(d%s.low>>>0,d%s.high>>>0).toNumber(%s)",i,i,i,c?"true":"");break;case"bytes":t('if(typeof d%s==="string")',i)("util.base64.decode(d%s,m%s=util.newBuffer(util.base64.length(d%s)),0)",i,i,i)("else if(d%s.length)",i)("m%s=d%s",i,i);break;case"string":t("m%s=String(d%s)",i,i);break;case"bool":t("m%s=Boolean(d%s)",i,i)}}return t}function a(t,e,n,i){if(e.resolvedType)e.resolvedType instanceof o?t("d%s=o.enums===String?types[%i].values[m%s]:m%s",i,n,i,i):t("d%s=types[%i].toObject(m%s,o)",i,n,i);else{var r=!1;switch(e.type){case"double":case"float":t("d%s=o.json&&!isFinite(m%s)?String(m%s):m%s",i,i,i,i);break;case"uint64":r=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":t('if(typeof m%s==="number")',i)("d%s=o.longs===String?String(m%s):m%s",i,i,i)("else")("d%s=o.longs===String?util.Long.prototype.toString.call(m%s):o.longs===Number?new util.LongBits(m%s.low>>>0,m%s.high>>>0).toNumber(%s):m%s",i,i,i,i,r?"true":"",i);break;case"bytes":t("d%s=o.bytes===String?util.base64.encode(m%s,0,m%s.length):o.bytes===Array?Array.prototype.slice.call(m%s):m%s",i,i,i,i,i);break;default:t("d%s=m%s",i,i)}}return t}i.fromObject=function(t){var e=t.fieldsArray,n=r.codegen(["d"],t.name+"$fromObject")("if(d instanceof this.ctor)")("return d");if(!e.length)return n("return new this.ctor");n("var m=new this.ctor");for(var i=0;i{"use strict";t.exports=function(t){var e=r.codegen(["r","l"],t.name+"$decode")("if(!(r instanceof Reader))")("r=Reader.create(r)")("var c=l===undefined?r.len:r.pos+l,m=new this.ctor"+(t.fieldsArray.filter((function(t){return t.map})).length?",k,value":""))("while(r.pos>>3){");for(var n=0;n>>3){")("case 1: k=r.%s(); break",a.keyType)("case 2:"),void 0===o.basic[c]?e("value=types[%i].decode(r,r.uint32())",n):e("value=r.%s()",c),e("break")("default:")("r.skipType(tag2&7)")("break")("}")("}"),void 0!==o.long[a.keyType]?e('%s[typeof k==="object"?util.longToHash(k):k]=value',l):e("%s[k]=value",l)):a.repeated?(e("if(!(%s&&%s.length))",l,l)("%s=[]",l),void 0!==o.packed[c]&&e("if((t&7)===2){")("var c2=r.uint32()+r.pos")("while(r.pos{"use strict";t.exports=function(t){for(var e,n=r.codegen(["m","w"],t.name+"$encode")("if(!w)")("w=Writer.create()"),a=t.fieldsArray.slice().sort(r.compareFieldsById),c=0;c>>0,8|o.mapKey[l.keyType],l.keyType),void 0===h?n("types[%i].encode(%s[ks[i]],w.uint32(18).fork()).ldelim().ldelim()",d,e):n(".uint32(%i).%s(%s[ks[i]]).ldelim()",16|h,u,e),n("}")("}")):l.repeated?(n("if(%s!=null&&%s.length){",e,e),l.packed&&void 0!==o.packed[u]?n("w.uint32(%i).fork()",(l.id<<3|2)>>>0)("for(var i=0;i<%s.length;++i)",e)("w.%s(%s[i])",u,e)("w.ldelim()"):(n("for(var i=0;i<%s.length;++i)",e),void 0===h?s(n,l,d,e+"[i]"):n("w.uint32(%i).%s(%s[i])",(l.id<<3|h)>>>0,u,e)),n("}")):(l.optional&&n("if(%s!=null&&Object.hasOwnProperty.call(m,%j))",e,l.name),void 0===h?s(n,l,d,e):n("w.uint32(%i).%s(%s)",(l.id<<3|h)>>>0,u,e))}return n("return w")};var i=n(2014),o=n(7089),r=n(6645);function s(t,e,n,i){return e.resolvedType.group?t("types[%i].encode(%s,w.uint32(%i)).uint32(%i)",n,i,(e.id<<3|3)>>>0,(e.id<<3|4)>>>0):t("types[%i].encode(%s,w.uint32(%i).fork()).ldelim()",n,i,(e.id<<3|2)>>>0)}},2014:(t,e,n)=>{"use strict";t.exports=s;var i=n(7142);((s.prototype=Object.create(i.prototype)).constructor=s).className="Enum";var o=n(437),r=n(6645);function s(t,e,n,o,r){if(i.call(this,t,n),e&&"object"!=typeof e)throw TypeError("values must be an object");if(this.valuesById={},this.values=Object.create(this.valuesById),this.comment=o,this.comments=r||{},this.reserved=void 0,e)for(var s=Object.keys(e),a=0;a{"use strict";t.exports=l;var i=n(7142);((l.prototype=Object.create(i.prototype)).constructor=l).className="Field";var o,r=n(2014),s=n(7089),a=n(6645),c=/^required|optional|repeated$/;function l(t,e,n,o,r,l,d){if(a.isObject(o)?(d=r,l=o,o=r=void 0):a.isObject(r)&&(d=l,l=r,r=void 0),i.call(this,t,l),!a.isInteger(e)||e<0)throw TypeError("id must be a non-negative integer");if(!a.isString(n))throw TypeError("type must be a string");if(void 0!==o&&!c.test(o=o.toString().toLowerCase()))throw TypeError("rule must be a string rule");if(void 0!==r&&!a.isString(r))throw TypeError("extend must be a string");"proto3_optional"===o&&(o="optional"),this.rule=o&&"optional"!==o?o:void 0,this.type=n,this.id=e,this.extend=r||void 0,this.required="required"===o,this.optional=!this.required,this.repeated="repeated"===o,this.map=!1,this.message=null,this.partOf=null,this.typeDefault=null,this.defaultValue=null,this.long=!!a.Long&&void 0!==s.long[n],this.bytes="bytes"===n,this.resolvedType=null,this.extensionField=null,this.declaringField=null,this._packed=null,this.comment=d}l.fromJSON=function(t,e){return new l(t,e.id,e.type,e.rule,e.extend,e.options,e.comment)},Object.defineProperty(l.prototype,"packed",{get:function(){return null===this._packed&&(this._packed=!1!==this.getOption("packed")),this._packed}}),l.prototype.setOption=function(t,e,n){return"packed"===t&&(this._packed=null),i.prototype.setOption.call(this,t,e,n)},l.prototype.toJSON=function(t){var e=!!t&&Boolean(t.keepComments);return a.toObject(["rule","optional"!==this.rule&&this.rule||void 0,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",e?this.comment:void 0])},l.prototype.resolve=function(){if(this.resolved)return this;if(void 0===(this.typeDefault=s.defaults[this.type])&&(this.resolvedType=(this.declaringField?this.declaringField.parent:this.parent).lookupTypeOrEnum(this.type),this.resolvedType instanceof o?this.typeDefault=null:this.typeDefault=this.resolvedType.values[Object.keys(this.resolvedType.values)[0]]),this.options&&null!=this.options.default&&(this.typeDefault=this.options.default,this.resolvedType instanceof r&&"string"==typeof this.typeDefault&&(this.typeDefault=this.resolvedType.values[this.typeDefault])),this.options&&(!0!==this.options.packed&&(void 0===this.options.packed||!this.resolvedType||this.resolvedType instanceof r)||delete this.options.packed,Object.keys(this.options).length||(this.options=void 0)),this.long)this.typeDefault=a.Long.fromNumber(this.typeDefault,"u"===this.type.charAt(0)),Object.freeze&&Object.freeze(this.typeDefault);else if(this.bytes&&"string"==typeof this.typeDefault){var t;a.base64.test(this.typeDefault)?a.base64.decode(this.typeDefault,t=a.newBuffer(a.base64.length(this.typeDefault)),0):a.utf8.write(this.typeDefault,t=a.newBuffer(a.utf8.length(this.typeDefault)),0),this.typeDefault=t}return this.map?this.defaultValue=a.emptyObject:this.repeated?this.defaultValue=a.emptyArray:this.defaultValue=this.typeDefault,this.parent instanceof o&&(this.parent.ctor.prototype[this.name]=this.defaultValue),i.prototype.resolve.call(this)},l.d=function(t,e,n,i){return"function"==typeof e?e=a.decorateType(e).name:e&&"object"==typeof e&&(e=a.decorateEnum(e).name),function(o,r){a.decorateType(o.constructor).add(new l(r,t,e,n,{default:i}))}},l._configure=function(t){o=t}},582:(t,e,n)=>{"use strict";var i=t.exports=n(3881);i.build="light",i.load=function(t,e,n){return"function"==typeof e?(n=e,e=new i.Root):e||(e=new i.Root),e.load(t,n)},i.loadSync=function(t,e){return e||(e=new i.Root),e.loadSync(t)},i.encoder=n(313),i.decoder=n(3122),i.verifier=n(3490),i.converter=n(6282),i.ReflectionObject=n(7142),i.Namespace=n(437),i.Root=n(349),i.Enum=n(2014),i.Type=n(1697),i.Field=n(114),i.OneOf=n(9943),i.MapField=n(9395),i.Service=n(7066),i.Method=n(2621),i.Message=n(7377),i.wrappers=n(9809),i.types=n(7089),i.util=n(6645),i.ReflectionObject._configure(i.Root),i.Namespace._configure(i.Type,i.Service,i.Enum),i.Root._configure(i.Type),i.Field._configure(i.Type)},3881:(t,e,n)=>{"use strict";var i=e;function o(){i.util._configure(),i.Writer._configure(i.BufferWriter),i.Reader._configure(i.BufferReader)}i.build="minimal",i.Writer=n(1722),i.BufferWriter=n(8160),i.Reader=n(840),i.BufferReader=n(8952),i.util=n(850),i.rpc=n(5735),i.roots=n(1384),i.configure=o,o()},9395:(t,e,n)=>{"use strict";t.exports=s;var i=n(114);((s.prototype=Object.create(i.prototype)).constructor=s).className="MapField";var o=n(7089),r=n(6645);function s(t,e,n,o,s,a){if(i.call(this,t,e,o,void 0,void 0,s,a),!r.isString(n))throw TypeError("keyType must be a string");this.keyType=n,this.resolvedKeyType=null,this.map=!0}s.fromJSON=function(t,e){return new s(t,e.id,e.keyType,e.type,e.options,e.comment)},s.prototype.toJSON=function(t){var e=!!t&&Boolean(t.keepComments);return r.toObject(["keyType",this.keyType,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",e?this.comment:void 0])},s.prototype.resolve=function(){if(this.resolved)return this;if(void 0===o.mapKey[this.keyType])throw Error("invalid key type: "+this.keyType);return i.prototype.resolve.call(this)},s.d=function(t,e,n){return"function"==typeof n?n=r.decorateType(n).name:n&&"object"==typeof n&&(n=r.decorateEnum(n).name),function(i,o){r.decorateType(i.constructor).add(new s(o,t,e,n))}}},7377:(t,e,n)=>{"use strict";t.exports=o;var i=n(850);function o(t){if(t)for(var e=Object.keys(t),n=0;n{"use strict";t.exports=r;var i=n(7142);((r.prototype=Object.create(i.prototype)).constructor=r).className="Method";var o=n(6645);function r(t,e,n,r,s,a,c,l,d){if(o.isObject(s)?(c=s,s=a=void 0):o.isObject(a)&&(c=a,a=void 0),void 0!==e&&!o.isString(e))throw TypeError("type must be a string");if(!o.isString(n))throw TypeError("requestType must be a string");if(!o.isString(r))throw TypeError("responseType must be a string");i.call(this,t,c),this.type=e||"rpc",this.requestType=n,this.requestStream=!!s||void 0,this.responseType=r,this.responseStream=!!a||void 0,this.resolvedRequestType=null,this.resolvedResponseType=null,this.comment=l,this.parsedOptions=d}r.fromJSON=function(t,e){return new r(t,e.type,e.requestType,e.responseType,e.requestStream,e.responseStream,e.options,e.comment,e.parsedOptions)},r.prototype.toJSON=function(t){var e=!!t&&Boolean(t.keepComments);return o.toObject(["type","rpc"!==this.type&&this.type||void 0,"requestType",this.requestType,"requestStream",this.requestStream,"responseType",this.responseType,"responseStream",this.responseStream,"options",this.options,"comment",e?this.comment:void 0,"parsedOptions",this.parsedOptions])},r.prototype.resolve=function(){return this.resolved?this:(this.resolvedRequestType=this.parent.lookupType(this.requestType),this.resolvedResponseType=this.parent.lookupType(this.responseType),i.prototype.resolve.call(this))}},437:(t,e,n)=>{"use strict";t.exports=u;var i=n(7142);((u.prototype=Object.create(i.prototype)).constructor=u).className="Namespace";var o,r,s,a=n(114),c=n(9943),l=n(6645);function d(t,e){if(t&&t.length){for(var n={},i=0;ie)return!0;return!1},u.isReservedName=function(t,e){if(t)for(var n=0;n0;){var i=t.shift();if(n.nested&&n.nested[i]){if(!((n=n.nested[i])instanceof u))throw Error("path conflicts with non-namespace objects")}else n.add(n=new u(i))}return e&&n.addJSON(e),n},u.prototype.resolveAll=function(){for(var t=this.nestedArray,e=0;e-1)return i}else if(i instanceof u&&(i=i.lookup(t.slice(1),e,!0)))return i}else for(var o=0;o{"use strict";t.exports=r,r.className="ReflectionObject";var i,o=n(6645);function r(t,e){if(!o.isString(t))throw TypeError("name must be a string");if(e&&!o.isObject(e))throw TypeError("options must be an object");this.options=e,this.parsedOptions=null,this.name=t,this.parent=null,this.resolved=!1,this.comment=null,this.filename=null}Object.defineProperties(r.prototype,{root:{get:function(){for(var t=this;null!==t.parent;)t=t.parent;return t}},fullName:{get:function(){for(var t=[this.name],e=this.parent;e;)t.unshift(e.name),e=e.parent;return t.join(".")}}}),r.prototype.toJSON=function(){throw Error()},r.prototype.onAdd=function(t){this.parent&&this.parent!==t&&this.parent.remove(this),this.parent=t,this.resolved=!1;var e=t.root;e instanceof i&&e._handleAdd(this)},r.prototype.onRemove=function(t){var e=t.root;e instanceof i&&e._handleRemove(this),this.parent=null,this.resolved=!1},r.prototype.resolve=function(){return this.resolved||this.root instanceof i&&(this.resolved=!0),this},r.prototype.getOption=function(t){if(this.options)return this.options[t]},r.prototype.setOption=function(t,e,n){return n&&this.options&&void 0!==this.options[t]||((this.options||(this.options={}))[t]=e),this},r.prototype.setParsedOption=function(t,e,n){this.parsedOptions||(this.parsedOptions=[]);var i=this.parsedOptions;if(n){var r=i.find((function(e){return Object.prototype.hasOwnProperty.call(e,t)}));if(r){var s=r[t];o.setProperty(s,n,e)}else(r={})[t]=o.setProperty({},n,e),i.push(r)}else{var a={};a[t]=e,i.push(a)}return this},r.prototype.setOptions=function(t,e){if(t)for(var n=Object.keys(t),i=0;i{"use strict";t.exports=s;var i=n(7142);((s.prototype=Object.create(i.prototype)).constructor=s).className="OneOf";var o=n(114),r=n(6645);function s(t,e,n,o){if(Array.isArray(e)||(n=e,e=void 0),i.call(this,t,n),void 0!==e&&!Array.isArray(e))throw TypeError("fieldNames must be an Array");this.oneof=e||[],this.fieldsArray=[],this.comment=o}function a(t){if(t.parent)for(var e=0;e-1&&this.oneof.splice(e,1),t.partOf=null,this},s.prototype.onAdd=function(t){i.prototype.onAdd.call(this,t);for(var e=0;e{"use strict";t.exports=c;var i,o=n(850),r=o.LongBits,s=o.utf8;function a(t,e){return RangeError("index out of range: "+t.pos+" + "+(e||1)+" > "+t.len)}function c(t){this.buf=t,this.pos=0,this.len=t.length}var l,d="undefined"!=typeof Uint8Array?function(t){if(t instanceof Uint8Array||Array.isArray(t))return new c(t);throw Error("illegal buffer")}:function(t){if(Array.isArray(t))return new c(t);throw Error("illegal buffer")},u=function(){return o.Buffer?function(t){return(c.create=function(t){return o.Buffer.isBuffer(t)?new i(t):d(t)})(t)}:d};function h(){var t=new r(0,0),e=0;if(!(this.len-this.pos>4)){for(;e<3;++e){if(this.pos>=this.len)throw a(this);if(t.lo=(t.lo|(127&this.buf[this.pos])<<7*e)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(127&this.buf[this.pos++])<<7*e)>>>0,t}for(;e<4;++e)if(t.lo=(t.lo|(127&this.buf[this.pos])<<7*e)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(127&this.buf[this.pos])<<28)>>>0,t.hi=(t.hi|(127&this.buf[this.pos])>>4)>>>0,this.buf[this.pos++]<128)return t;if(e=0,this.len-this.pos>4){for(;e<5;++e)if(t.hi=(t.hi|(127&this.buf[this.pos])<<7*e+3)>>>0,this.buf[this.pos++]<128)return t}else for(;e<5;++e){if(this.pos>=this.len)throw a(this);if(t.hi=(t.hi|(127&this.buf[this.pos])<<7*e+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}function m(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}function g(){if(this.pos+8>this.len)throw a(this,8);return new r(m(this.buf,this.pos+=4),m(this.buf,this.pos+=4))}c.create=u(),c.prototype._slice=o.Array.prototype.subarray||o.Array.prototype.slice,c.prototype.uint32=(l=4294967295,function(){if(l=(127&this.buf[this.pos])>>>0,this.buf[this.pos++]<128)return l;if(l=(l|(127&this.buf[this.pos])<<7)>>>0,this.buf[this.pos++]<128)return l;if(l=(l|(127&this.buf[this.pos])<<14)>>>0,this.buf[this.pos++]<128)return l;if(l=(l|(127&this.buf[this.pos])<<21)>>>0,this.buf[this.pos++]<128)return l;if(l=(l|(15&this.buf[this.pos])<<28)>>>0,this.buf[this.pos++]<128)return l;if((this.pos+=5)>this.len)throw this.pos=this.len,a(this,10);return l}),c.prototype.int32=function(){return 0|this.uint32()},c.prototype.sint32=function(){var t=this.uint32();return t>>>1^-(1&t)|0},c.prototype.bool=function(){return 0!==this.uint32()},c.prototype.fixed32=function(){if(this.pos+4>this.len)throw a(this,4);return m(this.buf,this.pos+=4)},c.prototype.sfixed32=function(){if(this.pos+4>this.len)throw a(this,4);return 0|m(this.buf,this.pos+=4)},c.prototype.float=function(){if(this.pos+4>this.len)throw a(this,4);var t=o.float.readFloatLE(this.buf,this.pos);return this.pos+=4,t},c.prototype.double=function(){if(this.pos+8>this.len)throw a(this,4);var t=o.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,t},c.prototype.bytes=function(){var t=this.uint32(),e=this.pos,n=this.pos+t;if(n>this.len)throw a(this,t);return this.pos+=t,Array.isArray(this.buf)?this.buf.slice(e,n):e===n?new this.buf.constructor(0):this._slice.call(this.buf,e,n)},c.prototype.string=function(){var t=this.bytes();return s.read(t,0,t.length)},c.prototype.skip=function(t){if("number"==typeof t){if(this.pos+t>this.len)throw a(this,t);this.pos+=t}else do{if(this.pos>=this.len)throw a(this)}while(128&this.buf[this.pos++]);return this},c.prototype.skipType=function(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;4!=(t=7&this.uint32());)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+t+" at offset "+this.pos)}return this},c._configure=function(t){i=t,c.create=u(),i._configure();var e=o.Long?"toLong":"toNumber";o.merge(c.prototype,{int64:function(){return h.call(this)[e](!1)},uint64:function(){return h.call(this)[e](!0)},sint64:function(){return h.call(this).zzDecode()[e](!1)},fixed64:function(){return g.call(this)[e](!0)},sfixed64:function(){return g.call(this)[e](!1)}})}},8952:(t,e,n)=>{"use strict";t.exports=r;var i=n(840);(r.prototype=Object.create(i.prototype)).constructor=r;var o=n(850);function r(t){i.call(this,t)}r._configure=function(){o.Buffer&&(r.prototype._slice=o.Buffer.prototype.slice)},r.prototype.string=function(){var t=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+t,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+t,this.len))},r._configure()},349:(t,e,n)=>{"use strict";t.exports=u;var i=n(437);((u.prototype=Object.create(i.prototype)).constructor=u).className="Root";var o,r,s,a=n(114),c=n(2014),l=n(9943),d=n(6645);function u(t){i.call(this,"",t),this.deferred=[],this.files=[]}function h(){}u.fromJSON=function(t,e){return e||(e=new u),t.options&&e.setOptions(t.options),e.addJSON(t.nested)},u.prototype.resolvePath=d.path.resolve,u.prototype.fetch=d.fetch,u.prototype.load=function t(e,n,i){"function"==typeof n&&(i=n,n=void 0);var o=this;if(!i)return d.asPromise(t,o,e,n);var a=i===h;function c(t,e){if(i){var n=i;if(i=null,a)throw t;n(t,e)}}function l(t){var e=t.lastIndexOf("google/protobuf/");if(e>-1){var n=t.substring(e);if(n in s)return n}return null}function u(t,e){try{if(d.isString(e)&&"{"===e.charAt(0)&&(e=JSON.parse(e)),d.isString(e)){r.filename=t;var i,s=r(e,o,n),u=0;if(s.imports)for(;u-1))if(o.files.push(t),t in s)a?u(t,s[t]):(++g,setTimeout((function(){--g,u(t,s[t])})));else if(a){var n;try{n=d.fs.readFileSync(t).toString("utf8")}catch(t){return void(e||c(t))}u(t,n)}else++g,o.fetch(t,(function(n,r){--g,i&&(n?e?g||c(null,o):c(n):u(t,r))}))}var g=0;d.isString(e)&&(e=[e]);for(var p,f=0;f-1&&this.deferred.splice(e,1)}}else if(t instanceof c)m.test(t.name)&&delete t.parent[t.name];else if(t instanceof i){for(var n=0;n{"use strict";t.exports={}},5735:(t,e,n)=>{"use strict";e.Service=n(334)},334:(t,e,n)=>{"use strict";t.exports=o;var i=n(850);function o(t,e,n){if("function"!=typeof t)throw TypeError("rpcImpl must be a function");i.EventEmitter.call(this),this.rpcImpl=t,this.requestDelimited=Boolean(e),this.responseDelimited=Boolean(n)}(o.prototype=Object.create(i.EventEmitter.prototype)).constructor=o,o.prototype.rpcCall=function t(e,n,o,r,s){if(!r)throw TypeError("request must be specified");var a=this;if(!s)return i.asPromise(t,a,e,n,o,r);if(a.rpcImpl)try{return a.rpcImpl(e,n[a.requestDelimited?"encodeDelimited":"encode"](r).finish(),(function(t,n){if(t)return a.emit("error",t,e),s(t);if(null!==n){if(!(n instanceof o))try{n=o[a.responseDelimited?"decodeDelimited":"decode"](n)}catch(t){return a.emit("error",t,e),s(t)}return a.emit("data",n,e),s(null,n)}a.end(!0)}))}catch(t){return a.emit("error",t,e),void setTimeout((function(){s(t)}),0)}else setTimeout((function(){s(Error("already ended"))}),0)},o.prototype.end=function(t){return this.rpcImpl&&(t||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},7066:(t,e,n)=>{"use strict";t.exports=a;var i=n(437);((a.prototype=Object.create(i.prototype)).constructor=a).className="Service";var o=n(2621),r=n(6645),s=n(5735);function a(t,e){i.call(this,t,e),this.methods={},this._methodsArray=null}function c(t){return t._methodsArray=null,t}a.fromJSON=function(t,e){var n=new a(t,e.options);if(e.methods)for(var i=Object.keys(e.methods),r=0;r{"use strict";t.exports=k;var i=n(437);((k.prototype=Object.create(i.prototype)).constructor=k).className="Type";var o=n(2014),r=n(9943),s=n(114),a=n(9395),c=n(7066),l=n(7377),d=n(840),u=n(1722),h=n(6645),m=n(313),g=n(3122),p=n(3490),f=n(6282),b=n(9809);function k(t,e){i.call(this,t,e),this.fields={},this.oneofs=void 0,this.extensions=void 0,this.reserved=void 0,this.group=void 0,this._fieldsById=null,this._fieldsArray=null,this._oneofsArray=null,this._ctor=null}function x(t){return t._fieldsById=t._fieldsArray=t._oneofsArray=null,delete t.encode,delete t.decode,delete t.verify,t}Object.defineProperties(k.prototype,{fieldsById:{get:function(){if(this._fieldsById)return this._fieldsById;this._fieldsById={};for(var t=Object.keys(this.fields),e=0;e{"use strict";var i=e,o=n(6645),r=["double","float","int32","uint32","sint32","fixed32","sfixed32","int64","uint64","sint64","fixed64","sfixed64","bool","string","bytes"];function s(t,e){var n=0,i={};for(e|=0;n{"use strict";var i,o,r=t.exports=n(850),s=n(1384);r.codegen=n(5124),r.fetch=n(9054),r.path=n(8626),r.fs=r.inquire("fs"),r.toArray=function(t){if(t){for(var e=Object.keys(t),n=new Array(e.length),i=0;i0)e[o]=t(e[o]||{},n,i);else{var r=e[o];r&&(i=[].concat(r).concat(i)),e[o]=i}return e}(t,e=e.split("."),n)},Object.defineProperty(r,"decorateRoot",{get:function(){return s.decorated||(s.decorated=new(n(349)))}})},8929:(t,e,n)=>{"use strict";t.exports=o;var i=n(850);function o(t,e){this.lo=t>>>0,this.hi=e>>>0}var r=o.zero=new o(0,0);r.toNumber=function(){return 0},r.zzEncode=r.zzDecode=function(){return this},r.length=function(){return 1};var s=o.zeroHash="\0\0\0\0\0\0\0\0";o.fromNumber=function(t){if(0===t)return r;var e=t<0;e&&(t=-t);var n=t>>>0,i=(t-n)/4294967296>>>0;return e&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new o(n,i)},o.from=function(t){if("number"==typeof t)return o.fromNumber(t);if(i.isString(t)){if(!i.Long)return o.fromNumber(parseInt(t,10));t=i.Long.fromString(t)}return t.low||t.high?new o(t.low>>>0,t.high>>>0):r},o.prototype.toNumber=function(t){if(!t&&this.hi>>>31){var e=1+~this.lo>>>0,n=~this.hi>>>0;return e||(n=n+1>>>0),-(e+4294967296*n)}return this.lo+4294967296*this.hi},o.prototype.toLong=function(t){return i.Long?new i.Long(0|this.lo,0|this.hi,Boolean(t)):{low:0|this.lo,high:0|this.hi,unsigned:Boolean(t)}};var a=String.prototype.charCodeAt;o.fromHash=function(t){return t===s?r:new o((a.call(t,0)|a.call(t,1)<<8|a.call(t,2)<<16|a.call(t,3)<<24)>>>0,(a.call(t,4)|a.call(t,5)<<8|a.call(t,6)<<16|a.call(t,7)<<24)>>>0)},o.prototype.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},o.prototype.zzEncode=function(){var t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this},o.prototype.zzDecode=function(){var t=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this},o.prototype.length=function(){var t=this.lo,e=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return 0===n?0===e?t<16384?t<128?1:2:t<2097152?3:4:e<16384?e<128?5:6:e<2097152?7:8:n<128?9:10}},850:function(t,e,n){"use strict";var i=e;function o(t,e,n){for(var i=Object.keys(e),o=0;o0)},i.Buffer=function(){try{var t=i.inquire("buffer").Buffer;return t.prototype.utf8Write?t:null}catch(t){return null}}(),i._Buffer_from=null,i._Buffer_allocUnsafe=null,i.newBuffer=function(t){return"number"==typeof t?i.Buffer?i._Buffer_allocUnsafe(t):new i.Array(t):i.Buffer?i._Buffer_from(t):"undefined"==typeof Uint8Array?t:new Uint8Array(t)},i.Array="undefined"!=typeof Uint8Array?Uint8Array:Array,i.Long=i.global.dcodeIO&&i.global.dcodeIO.Long||i.global.Long||i.inquire("long"),i.key2Re=/^true|false|0|1$/,i.key32Re=/^-?(?:0|[1-9][0-9]*)$/,i.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,i.longToHash=function(t){return t?i.LongBits.from(t).toHash():i.LongBits.zeroHash},i.longFromHash=function(t,e){var n=i.LongBits.fromHash(t);return i.Long?i.Long.fromBits(n.lo,n.hi,e):n.toNumber(Boolean(e))},i.merge=o,i.lcFirst=function(t){return t.charAt(0).toLowerCase()+t.substring(1)},i.newError=r,i.ProtocolError=r("ProtocolError"),i.oneOfGetter=function(t){for(var e={},n=0;n-1;--n)if(1===e[t[n]]&&void 0!==this[t[n]]&&null!==this[t[n]])return t[n]}},i.oneOfSetter=function(t){return function(e){for(var n=0;n{"use strict";t.exports=function(t){var e=o.codegen(["m"],t.name+"$verify")('if(typeof m!=="object"||m===null)')("return%j","object expected"),n=t.oneofsArray,i={};n.length&&e("var p={}");for(var c=0;c{"use strict";var i=e,o=n(7377);i[".google.protobuf.Any"]={fromObject:function(t){if(t&&t["@type"]){var e=t["@type"].substring(t["@type"].lastIndexOf("/")+1),n=this.lookup(e);if(n){var i="."===t["@type"].charAt(0)?t["@type"].substr(1):t["@type"];return-1===i.indexOf("/")&&(i="/"+i),this.create({type_url:i,value:n.encode(n.fromObject(t)).finish()})}}return this.fromObject(t)},toObject:function(t,e){var n="",i="";if(e&&e.json&&t.type_url&&t.value){i=t.type_url.substring(t.type_url.lastIndexOf("/")+1),n=t.type_url.substring(0,t.type_url.lastIndexOf("/")+1);var r=this.lookup(i);r&&(t=r.decode(t.value))}if(!(t instanceof this.ctor)&&t instanceof o){var s=t.$type.toObject(t,e);return""===n&&(n="type.googleapis.com/"),i=n+("."===t.$type.fullName[0]?t.$type.fullName.substr(1):t.$type.fullName),s["@type"]=i,s}return this.toObject(t,e)}}},1722:(t,e,n)=>{"use strict";t.exports=u;var i,o=n(850),r=o.LongBits,s=o.base64,a=o.utf8;function c(t,e,n){this.fn=t,this.len=e,this.next=void 0,this.val=n}function l(){}function d(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}function u(){this.len=0,this.head=new c(l,0,0),this.tail=this.head,this.states=null}var h=function(){return o.Buffer?function(){return(u.create=function(){return new i})()}:function(){return new u}};function m(t,e,n){e[n]=255&t}function g(t,e){this.len=t,this.next=void 0,this.val=e}function p(t,e,n){for(;t.hi;)e[n++]=127&t.lo|128,t.lo=(t.lo>>>7|t.hi<<25)>>>0,t.hi>>>=7;for(;t.lo>127;)e[n++]=127&t.lo|128,t.lo=t.lo>>>7;e[n++]=t.lo}function f(t,e,n){e[n]=255&t,e[n+1]=t>>>8&255,e[n+2]=t>>>16&255,e[n+3]=t>>>24}u.create=h(),u.alloc=function(t){return new o.Array(t)},o.Array!==Array&&(u.alloc=o.pool(u.alloc,o.Array.prototype.subarray)),u.prototype._push=function(t,e,n){return this.tail=this.tail.next=new c(t,e,n),this.len+=e,this},g.prototype=Object.create(c.prototype),g.prototype.fn=function(t,e,n){for(;t>127;)e[n++]=127&t|128,t>>>=7;e[n]=t},u.prototype.uint32=function(t){return this.len+=(this.tail=this.tail.next=new g((t>>>=0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this},u.prototype.int32=function(t){return t<0?this._push(p,10,r.fromNumber(t)):this.uint32(t)},u.prototype.sint32=function(t){return this.uint32((t<<1^t>>31)>>>0)},u.prototype.uint64=function(t){var e=r.from(t);return this._push(p,e.length(),e)},u.prototype.int64=u.prototype.uint64,u.prototype.sint64=function(t){var e=r.from(t).zzEncode();return this._push(p,e.length(),e)},u.prototype.bool=function(t){return this._push(m,1,t?1:0)},u.prototype.fixed32=function(t){return this._push(f,4,t>>>0)},u.prototype.sfixed32=u.prototype.fixed32,u.prototype.fixed64=function(t){var e=r.from(t);return this._push(f,4,e.lo)._push(f,4,e.hi)},u.prototype.sfixed64=u.prototype.fixed64,u.prototype.float=function(t){return this._push(o.float.writeFloatLE,4,t)},u.prototype.double=function(t){return this._push(o.float.writeDoubleLE,8,t)};var b=o.Array.prototype.set?function(t,e,n){e.set(t,n)}:function(t,e,n){for(var i=0;i>>0;if(!e)return this._push(m,1,0);if(o.isString(t)){var n=u.alloc(e=s.length(t));s.decode(t,n,0),t=n}return this.uint32(e)._push(b,e,t)},u.prototype.string=function(t){var e=a.length(t);return e?this.uint32(e)._push(a.write,e,t):this._push(m,1,0)},u.prototype.fork=function(){return this.states=new d(this),this.head=this.tail=new c(l,0,0),this.len=0,this},u.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new c(l,0,0),this.len=0),this},u.prototype.ldelim=function(){var t=this.head,e=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=t.next,this.tail=e,this.len+=n),this},u.prototype.finish=function(){for(var t=this.head.next,e=this.constructor.alloc(this.len),n=0;t;)t.fn(t.val,e,n),n+=t.len,t=t.next;return e},u._configure=function(t){i=t,u.create=h(),i._configure()}},8160:(t,e,n)=>{"use strict";t.exports=r;var i=n(1722);(r.prototype=Object.create(i.prototype)).constructor=r;var o=n(850);function r(){i.call(this)}function s(t,e,n){t.length<40?o.utf8.write(t,e,n):e.utf8Write?e.utf8Write(t,n):e.write(t,n)}r._configure=function(){r.alloc=o._Buffer_allocUnsafe,r.writeBytesBuffer=o.Buffer&&o.Buffer.prototype instanceof Uint8Array&&"set"===o.Buffer.prototype.set.name?function(t,e,n){e.set(t,n)}:function(t,e,n){if(t.copy)t.copy(e,n,0,t.length);else for(var i=0;i>>0;return this.uint32(e),e&&this._push(r.writeBytesBuffer,e,t),this},r.prototype.string=function(t){var e=o.Buffer.byteLength(t);return this.uint32(e),e&&this._push(s,e,t),this},r._configure()},8378:(t,e,n)=>{"use strict";n.d(e,{H:()=>r,KE:()=>o,ZP:()=>i});class i extends Error{constructor(t,e,n){super(function(t,e){const n=new WeakSet,i=(t,e)=>{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=s(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 i(t.message,e);throw n.stack=t.stack,n}}function o(t,e){console.warn(...a(t,e))}function r(t,e){console.error(...a(t,e))}function s(t){return`\nRead more: https://ckeditor.com/docs/ckeditor5/latest/support/error-codes.html#error-${t}`}function a(t,e){const n=s(t);return e?[t,e,n]:[t,n]}},4033:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(669),o=n(8378),r=n(369),s=n(5838);class a extends i.Q5{constructor(t={},e={}){super();const n=(0,s.Z)(t);if(n||(e=t),this._items=[],this._itemMap=new Map,this._idProperty=e.idProperty||"id",this._bindToExternalToInternalMap=new WeakMap,this._bindToInternalToExternalMap=new WeakMap,this._skippedIndexesFromExternal=[],n)for(const e of t)this._items.push(e),this._itemMap.set(this._getItemIdBeforeAdding(e),e)}get length(){return this._items.length}get first(){return this._items[0]||null}get last(){return this._items[this.length-1]||null}add(t,e){return this.addMany([t],e)}addMany(t,e){if(void 0===e)e=this._items.length;else if(e>this._items.length||e<0)throw new o.ZP("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 o.ZP("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)}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 o.ZP("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 o.ZP("collection-add-invalid-id",this);if(this.get(n))throw new o.ZP("collection-add-item-already-exists",this)}else t[e]=n=(0,r.Z)();return n}_remove(t){let e,n,i,r=!1;const s=this._idProperty;if("string"==typeof t?(n=t,i=this._itemMap.get(n),r=!i,i&&(e=this._items.indexOf(i))):"number"==typeof t?(e=t,i=this._items[e],r=!i,i&&(n=i[s])):(i=t,n=i[s],e=this._items.indexOf(i),r=-1==e||!this._itemMap.get(n)),r)throw new o.ZP("collection-remove-404",this);this._items.splice(e,1),this._itemMap.delete(n);const a=this._bindToInternalToExternalMap.get(i);return this._bindToInternalToExternalMap.delete(i),this._bindToExternalToInternalMap.delete(a),this.fire("remove",i,e),[i,e]}[Symbol.iterator](){return this._items[Symbol.iterator]()}}},327:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var i=n(4068);function o(t,e,n){n=n||function(t,e){return t===e};const i=t.length,r=e.length;if(i>200||r>200||i+r>300)return o.fastDiff(t,e,n,!0);let s,a;if(rr?-1:1;u[i+d]&&(u[i]=u[i+d].slice(0)),u[i]||(u[i]=[]),u[i].push(o>r?s:a);let m=Math.max(o,r),g=m-i;for(;gd;g--)h[g]=m(g);h[d]=m(d),p++}while(h[d]!==l);return u[d].slice(1)}o.fastDiff=i.Z},8979:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(5838),o=n(3243),r=n(7771),s=n(8533);const a=function(t){return"string"==typeof t||!(0,r.Z)(t)&&(0,s.Z)(t)&&"[object String]"==(0,o.Z)(t)};function c(t,e,n={},o=[]){const r=n&&n.xmlns,s=r?t.createElementNS(r,e):t.createElement(e);for(const t in n)s.setAttribute(t,n[t]);!a(o)&&(0,i.Z)(o)||(o=[o]);for(let e of o)a(e)&&(e=t.createTextNode(e)),s.appendChild(e);return s}},1916:(t,e,n)=>{"use strict";n.d(e,{Q:()=>c,Z:()=>a});var i=n(669),o=n(369),r=n(5006),s=n(3003);function a(t){return class extends t{listenTo(t,e,n,o={}){if((0,r.Z)(t)||(0,s.Z)(t)){const i={capture:!!o.useCapture,passive:!!o.usePassive},r=this._getProxyEmitter(t,i)||new l(t,i);this.listenTo(r,e,n,o)}else i.Q5.prototype.listenTo.call(this,t,e,n,o)}stopListening(t,e,n){if((0,r.Z)(t)||(0,s.Z)(t)){const i=this._getAllProxyEmitters(t);for(const t of i)this.stopListening(t,e,n)}else i.Q5.prototype.stopListening.call(this,t,e,n)}_getProxyEmitter(t,e){return(0,i.Rl)(this,d(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))}}}const c=a(i.Q5);["_getProxyEmitter","_getAllProxyEmitters","on","once","off","listenTo","stopListening","fire","delegate","stopDelegating","_addEventListener","_removeEventListener"].forEach((t=>{a[t]=c.prototype[t]}));class l extends i.Q5{constructor(t,e){super(),(0,i.Hv)(this,d(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),i.Q5.prototype._addEventListener.call(this,t,e,n)}_removeEventListener(t,e){i.Q5.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 d(t,e){let n=function(t){return t["data-ck-expando"]||(t["data-ck-expando"]=(0,o.Z)())}(t);for(const t of Object.keys(e).sort())e[t]&&(n+="-"+t);return n}},407:(t,e,n)=>{"use strict";function i(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)}}n.d(e,{Z:()=>i})},2152:(t,e,n)=>{"use strict";let i;n.d(e,{Z:()=>o});try{i={window,document}}catch(t){i={window:{},document:{}}}const o=i},5006:(t,e,n)=>{"use strict";function i(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}n.d(e,{Z:()=>i})},3978:(t,e,n)=>{"use strict";function i(t){return"[object Range]"==Object.prototype.toString.apply(t)}n.d(e,{Z:()=>i})},7363:(t,e,n)=>{"use strict";function i(t){return"[object Text]"==Object.prototype.toString.call(t)}n.d(e,{Z:()=>i})},6905:(t,e,n)=>{"use strict";function i(t){return!!(t&&t.getClientRects&&t.getClientRects().length)}n.d(e,{Z:()=>i})},3003:(t,e,n)=>{"use strict";function i(t){const e=Object.prototype.toString.apply(t);return"[object Window]"==e||"[object global]"==e}n.d(e,{Z:()=>i})},6224:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(3978),o=n(3003),r=n(407),s=n(7363);const a=["top","right","bottom","left","width","height"];class c{constructor(t){const e=(0,i.Z)(t);if(Object.defineProperty(this,"_source",{value:t._source||t,writable:!0,enumerable:!1}),u(t)||e)if(e){const e=c.getDomRangeRects(t);l(this,c.getBoundingRect(e))}else l(this,t.getBoundingClientRect());else if((0,o.Z)(t)){const{innerWidth:e,innerHeight:n}=t;l(this,{top:0,right:e,bottom:n,left:0,width:e,height:n})}else l(this,t)}clone(){return new c(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};return e.width=e.right-e.left,e.height=e.bottom-e.top,e.width<0||e.height<0?null:new c(e)}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(!d(t)){let n=t.parentNode||t.commonAncestorContainer;for(;n&&!d(n);){const t=new c(n),i=e.getIntersection(t);if(!i)return null;i.getArea(){"use strict";n.d(e,{Z:()=>o});var i=n(2152);class o{constructor(t,e){o._observerInstance||o._createObserver(),this._element=t,this._callback=e,o._addElementCallback(t,e),o._observerInstance.observe(t)}destroy(){o._deleteElementCallback(this._element,this._callback)}static _addElementCallback(t,e){o._elementCallbacks||(o._elementCallbacks=new Map);let n=o._elementCallbacks.get(t);n||(n=new Set,o._elementCallbacks.set(t,n)),n.add(e)}static _deleteElementCallback(t,e){const n=o._getElementCallbacks(t);n&&(n.delete(e),n.size||(o._elementCallbacks.delete(t),o._observerInstance.unobserve(t))),o._elementCallbacks&&!o._elementCallbacks.size&&(o._observerInstance=null,o._elementCallbacks=null)}static _getElementCallbacks(t){return o._elementCallbacks?o._elementCallbacks.get(t):null}static _createObserver(){o._observerInstance=new i.Z.window.ResizeObserver((t=>{for(const e of t){const t=o._getElementCallbacks(e.target);if(t)for(const n of t)n(e)}}))}}o._observerInstance=null,o._elementCallbacks=null},7275:(t,e,n)=>{"use strict";n.d(e,{F:()=>a,m:()=>s});var i=n(3978),o=n(6224),r=n(7363);function s({target:t,viewportOffset:e=0}){const n=g(t);let i=n,o=null;for(;i;){let r;r=p(i==n?t:o),l(r,(()=>f(t,i)));const s=f(t,i);if(c(i,s,e),i.parent!=i){if(o=i.frameElement,i=i.parent,!o)return}else i=null}}function a(t){l(p(t),(()=>new o.Z(t)))}function c(t,e,n){const i=e.clone().moveBy(0,n),r=e.clone().moveBy(0,-n),s=new o.Z(t).excludeScrollbarsAndBorders();if(![r,i].every((t=>s.contains(t)))){let{scrollX:o,scrollY:a}=t;u(r,s)?a-=s.top-e.top+n:d(i,s)&&(a+=e.bottom-s.bottom+n),h(e,s)?o-=s.left-e.left+n:m(e,s)&&(o+=e.right-s.right+n),t.scrollTo(o,a)}}function l(t,e){const n=g(t);let i,r;for(;t!=n.document.body;)r=e(),i=new o.Z(t).excludeScrollbarsAndBorders(),i.contains(r)||(u(r,i)?t.scrollTop-=i.top-r.top:d(r,i)&&(t.scrollTop+=r.bottom-i.bottom),h(r,i)?t.scrollLeft-=i.left-r.left:m(r,i)&&(t.scrollLeft+=r.right-i.right)),t=t.parentNode}function d(t,e){return t.bottom>e.bottom}function u(t,e){return t.tope.right}function g(t){return(0,i.Z)(t)?t.startContainer.ownerDocument.defaultView:t.ownerDocument.defaultView}function p(t){if((0,i.Z)(t)){let e=t.commonAncestorContainer;return(0,r.Z)(e)&&(e=e.parentNode),e}return t.parentNode}function f(t,e){const n=g(t),i=new o.Z(t);if(n===e)return i;{let t=n;for(;t!=e;){const e=t.frameElement,n=new o.Z(e).excludeScrollbarsAndBorders();i.moveBy(n.left,n.top),t=t.parent}}return i}},8236:(t,e,n)=>{"use strict";function i(t,e){t instanceof HTMLTextAreaElement&&(t.value=e),t.innerHTML=e}n.d(e,{Z:()=>i})},2907:(t,e,n)=>{"use strict";function i(t){return e=>e+t}n.d(e,{Z:()=>i})},669:(t,e,n)=>{"use strict";n.d(e,{Hv:()=>g,Q5:()=>h,Rl:()=>m,ZP:()=>u});var i=n(8483),o=n(369),r=n(4841),s=n(6547),a=(n(9807),n(8378));const c=Symbol("listeningTo"),l=Symbol("emitterId"),d=Symbol("delegations");function u(t){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[c]||(this[c]={});const s=this[c];p(t)||g(t);const a=p(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[c];let o=t&&p(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){w(this,t,e,n);-1!==s.indexOf(n)&&(1===s.length?delete r.callbacks[e]:w(this,t,e,n))}else if(s){for(;n=s.pop();)w(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[c]}}fire(t,...e){try{const n=t instanceof i.Z?t:new i.Z(this,t),o=n.name;let r=k(this,o);if(n.path.push(this),r){const t=[n,...e];r=Array.from(r);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=f(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=b(this,t),o={callback:e,priority:r.Z.get(n.priority)};for(const t of i)(0,s.Z)(t,o)}_removeEventListener(t,e){const n=b(this,t);for(const t of n)for(let n=0;n-1?k(t,e.substr(0,e.lastIndexOf(":"))):null}function x(t,e,n){for(let[o,r]of t){r?"function"==typeof r&&(r=r(e.name)):r=e.name;const t=new i.Z(e.source,r);t.path=[...e.path],o.fire(t,...n)}}function w(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=>{u[t]=h.prototype[t]}))},3950:(t,e,n)=>{"use strict";n.d(e,{ZP:()=>r});const i=function(){try{return navigator.userAgent.toLowerCase()}catch(t){return""}}(),o={isMac:s(i),isWindows:function(t){return t.indexOf("windows")>-1}(i),isGecko:function(t){return!!t.match(/gecko\/\d+/)}(i),isSafari:function(t){return t.indexOf(" applewebkit/")>-1&&-1===t.indexOf("chrome")}(i),isiOS:function(t){return!!t.match(/iphone|ipad/i)||s(t)&&navigator.maxTouchPoints>0}(i),isAndroid:function(t){return t.indexOf("android")>-1}(i),isBlink:function(t){return t.indexOf("chrome/")>-1&&t.indexOf("edge/")<0}(i),features:{isRegExpUnicodePropertySupported:function(){let t=!1;try{t=0==="ć".search(new RegExp("[\\p{L}]","u"))}catch(t){}return t}()}},r=o;function s(t){return t.indexOf("macintosh")>-1}},8483:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});const i=function(){return function t(){t.called=!0}};class o{constructor(t,e){this.source=t,this.name=e,this.path=[],this.stop=i(),this.off=i()}}},4068:(t,e,n)=>{"use strict";function i(t,e,n,i=!1){n=n||function(t,e){return t===e};const s=Array.isArray(t)?t:Array.prototype.slice.call(t),a=Array.isArray(e)?e:Array.prototype.slice.call(e),c=function(t,e,n){const i=o(t,e,n);if(-1===i)return{firstIndex:-1,lastIndexOld:-1,lastIndexNew:-1};const s=r(t,i),a=r(e,i),c=o(s,a,n),l=t.length-c,d=e.length-c;return{firstIndex:i,lastIndexOld:l,lastIndexNew:d}}(s,a,n);return 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}(a,c)}function o(t,e,n){for(let i=0;ii})},7246:(t,e,n)=>{"use strict";function i(t){const e=t.next();return e.done?null:e.value}n.d(e,{Z:()=>i})},2073:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var i=n(1916),o=n(9110),r=n(8378);class s extends((0,i.Z)(o.y)){constructor(){super(),this.set("isFocused",!1),this.set("focusedElement",null),this._elements=new Set,this._nextEventLoopTimeout=null}add(t){if(this._elements.has(t))throw new r.ZP("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)}}},7557:(t,e,n)=>{"use strict";n.d(e,{Bb:()=>c.ZP,FE:()=>v.Z,Xu:()=>u.Z,a6:()=>l,ln:()=>s.ZP,Rh:()=>y.Z,VD:()=>E.Z,go:()=>A.Z,Re:()=>a.Z,UL:()=>g.Z,do:()=>p.Z,az:()=>d.Z,Hg:()=>o.Z,OB:()=>i.ZP,Ps:()=>C.Z,Cq:()=>w.Cq,yy:()=>m,XU:()=>w.XU,j9:()=>_.j,mA:()=>w.mA,CO:()=>h.Z,VG:()=>I.Z,dj:()=>w.dj,Zt:()=>w.Zt,pn:()=>k.Z,Do:()=>w.Do,H:()=>c.H,KE:()=>c.KE,CD:()=>r,Zz:()=>w.Zz,tA:()=>S.Z,F0:()=>x.F,mR:()=>x.m,jS:()=>f.Z,qo:()=>T.Z,qL:()=>D.Z,nn:()=>b.Z,hQ:()=>B.Z,i8:()=>M.Z});var i=n(3950),o=n(327);function r(t,...e){e.forEach((e=>{const n=Object.getOwnPropertyNames(e),i=Object.getOwnPropertySymbols(e);n.concat(i).forEach((n=>{if(n in t.prototype)return;if("function"==typeof e&&("length"==n||"name"==n||"prototype"==n))return;const i=Object.getOwnPropertyDescriptor(e,n);i.enumerable=!1,Object.defineProperty(t.prototype,n,i)}))}))}var s=n(669),a=n(9110),c=n(8378);class l{constructor(){this._replacedElements=[]}replace(t,e){this._replacedElements.push({element:t,newElement:e}),t.style.display="none",e&&t.parentNode.insertBefore(e,t.nextSibling)}restore(){this._replacedElements.forEach((({element:t,newElement:e})=>{t.style.display="",e&&e.remove()})),this._replacedElements=[]}}var d=n(8979),u=n(1916),h=n(2152);function m(t){return t instanceof HTMLTextAreaElement?t.value:t.innerHTML}var g=n(6224),p=n(679),f=n(8236),b=n(2907),k=n(6905),x=n(7275),w=n(1147),_=n(8918),A=n(3386),v=n(4033),C=n(7246),y=n(2073),E=n(6550),T=n(3701),D=n(9047),S=n(4841),I=n(6547),B=n(369),M=n(9807)},6547:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var i=n(4841);function o(t,e){const n=i.Z.get(e.priority);for(let o=0;o{"use strict";function i(t){return!(!t||!t[Symbol.iterator])}n.d(e,{Z:()=>i})},1147:(t,e,n)=>{"use strict";n.d(e,{Cq:()=>l,Do:()=>a,XU:()=>u,Zt:()=>g,Zz:()=>d,dj:()=>h,mA:()=>m});var i=n(8378),o=n(3950);const r={ctrl:"⌃",cmd:"⌘",alt:"⌥",shift:"⇧"},s={ctrl:"Ctrl+",alt:"Alt+",shift:"Shift+"},a=function(){const t={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++){const n=String.fromCharCode(e);t[n.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;for(const e of"`-=[];',./\\")t[e]=e.charCodeAt(0);return t}(),c=Object.fromEntries(Object.entries(a).map((([t,e])=>[e,t.charAt(0).toUpperCase()+t.slice(1)])));function l(t){let e;if("string"==typeof t){if(e=a[t.toLowerCase()],!e)throw new i.ZP("keyboard-unknown-key",null,{key:t})}else e=t.keyCode+(t.altKey?a.alt:0)+(t.ctrlKey?a.ctrl:0)+(t.shiftKey?a.shift:0)+(t.metaKey?a.cmd:0);return e}function d(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 l(t.slice(0,-1));const e=l(t);return o.ZP.isMac&&e==a.ctrl?a.cmd:e}(t):t)).reduce(((t,e)=>e+t),0)}function u(t){let e=d(t);return Object.entries(o.ZP.isMac?r:s).reduce(((t,[n,i])=>(0!=(e&a[n])&&(e&=~a[n],t+=i),t)),"")+(e?c[e]:"")}function h(t){return t==a.arrowright||t==a.arrowleft||t==a.arrowup||t==a.arrowdown}function m(t,e){const n="ltr"===e;switch(t){case a.arrowleft:return n?"left":"right";case a.arrowright:return n?"right":"left";case a.arrowup:return"up";case a.arrowdown:return"down"}}function g(t,e){const n=m(t,e);return"down"===n||"right"===n}},6550:(t,e,n)=>{"use strict";n.d(e,{Z:()=>r});var i=n(1916),o=n(1147);class r{constructor(){this._listener=new i.Q}listenTo(t){this._listener.listenTo(t,"keydown",((t,e)=>{this._listener.fire("_keydown:"+(0,o.Cq)(e),e)}))}set(t,e,n={}){const i=(0,o.Zz)(t),r=n.priority;this._listener.listenTo(this._listener,"_keydown:"+i,((t,n)=>{e(n,(()=>{n.preventDefault(),n.stopPropagation(),t.stop()})),t.return=!0}),{priority:r})}press(t){return!!this._listener.fire("_keydown:"+(0,o.Cq)(t),t)}destroy(){this._listener.stopListening()}}},8918:(t,e,n)=>{"use strict";n.d(e,{j:()=>o});const i=["ar","ara","fa","per","fas","he","heb","ku","kur","ug","uig"];function o(t){return i.includes(t)?"rtl":"ltr"}},3386:(t,e,n)=>{"use strict";n.d(e,{Z:()=>c});var i=n(3701),o=n(8378),r=n(2152);function s(t,e,n=1){if("number"!=typeof n)throw new o.ZP("translation-service-quantity-not-a-number",null,{quantity:n});const i=Object.keys(r.Z.window.CKEDITOR_TRANSLATIONS).length;1===i&&(t=Object.keys(r.Z.window.CKEDITOR_TRANSLATIONS)[0]);const s=e.id||e.string;if(0===i||!function(t,e){return!!r.Z.window.CKEDITOR_TRANSLATIONS[t]&&!!r.Z.window.CKEDITOR_TRANSLATIONS[t].dictionary[e]}(t,s))return 1!==n?e.plural:e.string;const a=r.Z.window.CKEDITOR_TRANSLATIONS[t].dictionary,c=r.Z.window.CKEDITOR_TRANSLATIONS[t].getPluralForm||(t=>1===t?0:1),l=a[s];if("string"==typeof l)return l;return l[Number(c(n))]}r.Z.window.CKEDITOR_TRANSLATIONS||(r.Z.window.CKEDITOR_TRANSLATIONS={});var a=n(8918);class c{constructor(t={}){this.uiLanguage=t.uiLanguage||"en",this.contentLanguage=t.contentLanguage||this.uiLanguage,this.uiLanguageDirection=(0,a.j)(this.uiLanguage),this.contentLanguageDirection=(0,a.j)(this.contentLanguage),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=(0,i.Z)(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)=>n{"use strict";n.d(e,{Z:()=>u,y:()=>h});var i=n(669),o=n(8378),r=n(7226);const s=Symbol("observableProperties"),a=Symbol("boundObservables"),c=Symbol("boundProperties"),l=Symbol("decoratedMethods"),d=Symbol("decoratedOriginal");function u(t){return class extends t{set(t,e){if((0,r.Z)(t))return void Object.keys(t).forEach((e=>{this.set(e,t[e])}),this);m(this);const n=this[s];if(t in this&&!n.has(t))throw new o.ZP("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||!f(t))throw new o.ZP("observable-bind-wrong-properties",this);if(new Set(t).size!==t.length)throw new o.ZP("observable-bind-duplicate-properties",this);m(this);const e=this[c];t.forEach((t=>{if(e.has(t))throw new o.ZP("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:p,_observable:this,_bindProperties:t,_to:[],_bindings:n}}unbind(...t){if(!this[s])return;const e=this[c],n=this[a];if(t.length){if(!f(t))throw new o.ZP("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){m(this);const e=this[t];if(!e)throw new o.ZP("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][d]=e,this[l]||(this[l]=[]),this[l].push(t)}stopListening(t,e,n){if(!t&&this[l]){for(const t of this[l])this[t]=this[t][d];delete this[l]}i.Q5.prototype.stopListening.call(this,t,e,n)}}}const h=u(i.Q5);function m(t){t[s]||(Object.defineProperty(t,s,{value:new Map}),Object.defineProperty(t,a,{value:new Map}),Object.defineProperty(t,c,{value:new Map}))}function g(...t){const e=function(...t){if(!t.length)throw new o.ZP("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 o.ZP("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 o.ZP("observable-bind-to-no-callback",this);if(i>1&&e.callback)throw new o.ZP("observable-bind-to-extra-callback",this);var r;e.to.forEach((t=>{if(t.properties.length&&t.properties.length!==i)throw new o.ZP("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),r=this._observable,this._to.forEach((t=>{const e=r[a];let n;e.get(t.observable)||r.listenTo(t.observable,"change",((i,o)=>{n=e.get(t.observable)[o],n&&n.forEach((t=>{b(r,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[a],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=>{b(this._observable,t)}))}function p(t,e,n){if(this._bindings.size>1)throw new o.ZP("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 f(t){return t.every((t=>"string"==typeof t))}function b(t,e){const n=t[c].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)}["set","bind","unbind","decorate","on","once","off","listenTo","stopListening","fire","delegate","stopDelegating","_addEventListener","_removeEventListener"].forEach((t=>{u[t]=h.prototype[t]}))},4841:(t,e,n)=>{"use strict";n.d(e,{Z:()=>i});const i={get(t="normal"){return"number"!=typeof t?this[t]||this.normal:t},highest:1e5,high:1e3,normal:0,low:-1e3,lowest:-1e5}},3701:(t,e,n)=>{"use strict";function i(t){return Array.isArray(t)?t:[t]}n.d(e,{Z:()=>i})},9047:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});var i=n(5838);function o(t){return(0,i.Z)(t)?new Map(t):function(t){const e=new Map;for(const n in t)e.set(n,t[n]);return e}(t)}},369:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});const i=new Array(256).fill("").map(((t,e)=>("0"+e.toString(16)).slice(-2)));function o(){const t=4294967296*Math.random()>>>0,e=4294967296*Math.random()>>>0,n=4294967296*Math.random()>>>0,o=4294967296*Math.random()>>>0;return"e"+i[t>>0&255]+i[t>>8&255]+i[t>>16&255]+i[t>>24&255]+i[e>>0&255]+i[e>>8&255]+i[e>>16&255]+i[e>>24&255]+i[n>>0&255]+i[n>>8&255]+i[n>>16&255]+i[n>>24&255]+i[o>>0&255]+i[o>>8&255]+i[o>>16&255]+i[o>>24&255]}},9807:(t,e,n)=>{"use strict";n.d(e,{Z:()=>r});var i=n(8378);const o="35.3.0",r=o,s="object"==typeof window?window:n.g;if(s.CKEDITOR_VERSION)throw new i.ZP("ckeditor-duplicated-modules",null);s.CKEDITOR_VERSION=o},4537:t=>{"use strict";t.exports=function(t,e){var n=new Array(arguments.length-1),i=0,o=2,r=!0;for(;o{"use strict";var n=e;n.length=function(t){var e=t.length;if(!e)return 0;for(var n=0;--e%4>1&&"="===t.charAt(e);)++n;return Math.ceil(3*t.length)/4-n};for(var i=new Array(64),o=new Array(123),r=0;r<64;)o[i[r]=r<26?r+65:r<52?r+71:r<62?r-4:r-59|43]=r++;n.encode=function(t,e,n){for(var o,r=null,s=[],a=0,c=0;e>2],o=(3&l)<<4,c=1;break;case 1:s[a++]=i[o|l>>4],o=(15&l)<<2,c=2;break;case 2:s[a++]=i[o|l>>6],s[a++]=i[63&l],c=0}a>8191&&((r||(r=[])).push(String.fromCharCode.apply(String,s)),a=0)}return c&&(s[a++]=i[o],s[a++]=61,1===c&&(s[a++]=61)),r?(a&&r.push(String.fromCharCode.apply(String,s.slice(0,a))),r.join("")):String.fromCharCode.apply(String,s.slice(0,a))};var s="invalid encoding";n.decode=function(t,e,n){for(var i,r=n,a=0,c=0;c1)break;if(void 0===(l=o[l]))throw Error(s);switch(a){case 0:i=l,a=1;break;case 1:e[n++]=i<<2|(48&l)>>4,i=l,a=2;break;case 2:e[n++]=(15&i)<<4|(60&l)>>2,i=l,a=3;break;case 3:e[n++]=(3&i)<<6|l,a=0}}if(1===a)throw Error(s);return n-r},n.test=function(t){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(t)}},5124:t=>{"use strict";function e(t,n){"string"==typeof t&&(n=t,t=void 0);var i=[];function o(t){if("string"!=typeof t){var n=r();if(e.verbose&&console.log("codegen: "+n),n="return "+n,t){for(var s=Object.keys(t),a=new Array(s.length+1),c=new Array(s.length),l=0;l{"use strict";function e(){this._listeners={}}t.exports=e,e.prototype.on=function(t,e,n){return(this._listeners[t]||(this._listeners[t]=[])).push({fn:e,ctx:n||this}),this},e.prototype.off=function(t,e){if(void 0===t)this._listeners={};else if(void 0===e)this._listeners[t]=[];else for(var n=this._listeners[t],i=0;i{"use strict";t.exports=r;var i=n(4537),o=n(7199)("fs");function r(t,e,n){return"function"==typeof e?(n=e,e={}):e||(e={}),n?!e.xhr&&o&&o.readFile?o.readFile(t,(function(i,o){return i&&"undefined"!=typeof XMLHttpRequest?r.xhr(t,e,n):i?n(i):n(null,e.binary?o:o.toString("utf8"))})):r.xhr(t,e,n):i(r,this,t,e)}r.xhr=function(t,e,n){var i=new XMLHttpRequest;i.onreadystatechange=function(){if(4===i.readyState){if(0!==i.status&&200!==i.status)return n(Error("status "+i.status));if(e.binary){var t=i.response;if(!t){t=[];for(var o=0;o{"use strict";function e(t){return"undefined"!=typeof Float32Array?function(){var e=new Float32Array([-0]),n=new Uint8Array(e.buffer),i=128===n[3];function o(t,i,o){e[0]=t,i[o]=n[0],i[o+1]=n[1],i[o+2]=n[2],i[o+3]=n[3]}function r(t,i,o){e[0]=t,i[o]=n[3],i[o+1]=n[2],i[o+2]=n[1],i[o+3]=n[0]}function s(t,i){return n[0]=t[i],n[1]=t[i+1],n[2]=t[i+2],n[3]=t[i+3],e[0]}function a(t,i){return n[3]=t[i],n[2]=t[i+1],n[1]=t[i+2],n[0]=t[i+3],e[0]}t.writeFloatLE=i?o:r,t.writeFloatBE=i?r:o,t.readFloatLE=i?s:a,t.readFloatBE=i?a:s}():function(){function e(t,e,n,i){var o=e<0?1:0;if(o&&(e=-e),0===e)t(1/e>0?0:2147483648,n,i);else if(isNaN(e))t(2143289344,n,i);else if(e>34028234663852886e22)t((o<<31|2139095040)>>>0,n,i);else if(e<11754943508222875e-54)t((o<<31|Math.round(e/1401298464324817e-60))>>>0,n,i);else{var r=Math.floor(Math.log(e)/Math.LN2);t((o<<31|r+127<<23|8388607&Math.round(e*Math.pow(2,-r)*8388608))>>>0,n,i)}}function s(t,e,n){var i=t(e,n),o=2*(i>>31)+1,r=i>>>23&255,s=8388607&i;return 255===r?s?NaN:o*(1/0):0===r?1401298464324817e-60*o*s:o*Math.pow(2,r-150)*(s+8388608)}t.writeFloatLE=e.bind(null,n),t.writeFloatBE=e.bind(null,i),t.readFloatLE=s.bind(null,o),t.readFloatBE=s.bind(null,r)}(),"undefined"!=typeof Float64Array?function(){var e=new Float64Array([-0]),n=new Uint8Array(e.buffer),i=128===n[7];function o(t,i,o){e[0]=t,i[o]=n[0],i[o+1]=n[1],i[o+2]=n[2],i[o+3]=n[3],i[o+4]=n[4],i[o+5]=n[5],i[o+6]=n[6],i[o+7]=n[7]}function r(t,i,o){e[0]=t,i[o]=n[7],i[o+1]=n[6],i[o+2]=n[5],i[o+3]=n[4],i[o+4]=n[3],i[o+5]=n[2],i[o+6]=n[1],i[o+7]=n[0]}function s(t,i){return n[0]=t[i],n[1]=t[i+1],n[2]=t[i+2],n[3]=t[i+3],n[4]=t[i+4],n[5]=t[i+5],n[6]=t[i+6],n[7]=t[i+7],e[0]}function a(t,i){return n[7]=t[i],n[6]=t[i+1],n[5]=t[i+2],n[4]=t[i+3],n[3]=t[i+4],n[2]=t[i+5],n[1]=t[i+6],n[0]=t[i+7],e[0]}t.writeDoubleLE=i?o:r,t.writeDoubleBE=i?r:o,t.readDoubleLE=i?s:a,t.readDoubleBE=i?a:s}():function(){function e(t,e,n,i,o,r){var s=i<0?1:0;if(s&&(i=-i),0===i)t(0,o,r+e),t(1/i>0?0:2147483648,o,r+n);else if(isNaN(i))t(0,o,r+e),t(2146959360,o,r+n);else if(i>17976931348623157e292)t(0,o,r+e),t((s<<31|2146435072)>>>0,o,r+n);else{var a;if(i<22250738585072014e-324)t((a=i/5e-324)>>>0,o,r+e),t((s<<31|a/4294967296)>>>0,o,r+n);else{var c=Math.floor(Math.log(i)/Math.LN2);1024===c&&(c=1023),t(4503599627370496*(a=i*Math.pow(2,-c))>>>0,o,r+e),t((s<<31|c+1023<<20|1048576*a&1048575)>>>0,o,r+n)}}}function s(t,e,n,i,o){var r=t(i,o+e),s=t(i,o+n),a=2*(s>>31)+1,c=s>>>20&2047,l=4294967296*(1048575&s)+r;return 2047===c?l?NaN:a*(1/0):0===c?5e-324*a*l:a*Math.pow(2,c-1075)*(l+4503599627370496)}t.writeDoubleLE=e.bind(null,n,0,4),t.writeDoubleBE=e.bind(null,i,4,0),t.readDoubleLE=s.bind(null,o,0,4),t.readDoubleBE=s.bind(null,r,4,0)}(),t}function n(t,e,n){e[n]=255&t,e[n+1]=t>>>8&255,e[n+2]=t>>>16&255,e[n+3]=t>>>24}function i(t,e,n){e[n]=t>>>24,e[n+1]=t>>>16&255,e[n+2]=t>>>8&255,e[n+3]=255&t}function o(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16|t[e+3]<<24)>>>0}function r(t,e){return(t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3])>>>0}t.exports=e(e)},7199:module=>{"use strict";function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(t){}return null}module.exports=inquire},8626:(t,e)=>{"use strict";var n=e,i=n.isAbsolute=function(t){return/^(?:\/|\w+:)/.test(t)},o=n.normalize=function(t){var e=(t=t.replace(/\\/g,"/").replace(/\/{2,}/g,"/")).split("/"),n=i(t),o="";n&&(o=e.shift()+"/");for(var r=0;r0&&".."!==e[r-1]?e.splice(--r,2):n?e.splice(r,1):++r:"."===e[r]?e.splice(r,1):++r;return o+e.join("/")};n.resolve=function(t,e,n){return n||(e=o(e)),i(e)?e:(n||(t=o(t)),(t=t.replace(/(?:\/|^)[^/]+$/,"")).length?o(t+"/"+e):e)}},6662:t=>{"use strict";t.exports=function(t,e,n){var i=n||8192,o=i>>>1,r=null,s=i;return function(n){if(n<1||n>o)return t(n);s+n>i&&(r=t(i),s=0);var a=e.call(r,s,s+=n);return 7&s&&(s=1+(7|s)),a}}},4997:(t,e)=>{"use strict";var n=e;n.length=function(t){for(var e=0,n=0,i=0;i191&&i<224?r[s++]=(31&i)<<6|63&t[e++]:i>239&&i<365?(i=((7&i)<<18|(63&t[e++])<<12|(63&t[e++])<<6|63&t[e++])-65536,r[s++]=55296+(i>>10),r[s++]=56320+(1023&i)):r[s++]=(15&i)<<12|(63&t[e++])<<6|63&t[e++],s>8191&&((o||(o=[])).push(String.fromCharCode.apply(String,r)),s=0);return o?(s&&o.push(String.fromCharCode.apply(String,r.slice(0,s))),o.join("")):String.fromCharCode.apply(String,r.slice(0,s))},n.write=function(t,e,n){for(var i,o,r=n,s=0;s>6|192,e[n++]=63&i|128):55296==(64512&i)&&56320==(64512&(o=t.charCodeAt(s+1)))?(i=65536+((1023&i)<<10)+(1023&o),++s,e[n++]=i>>18|240,e[n++]=i>>12&63|128,e[n++]=i>>6&63|128,e[n++]=63&i|128):(e[n++]=i>>12|224,e[n++]=i>>6&63|128,e[n++]=63&i|128);return n-r}},3063:(t,e)=>{function n(t){if(t)return function(t){for(var e in n.prototype)t[e]=n.prototype[e];return t}(t)}e.Emitter=n,n.prototype.on=n.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+t]=this._callbacks["$"+t]||[]).push(e),this},n.prototype.once=function(t,e){function n(){this.off(t,n),e.apply(this,arguments)}return n.fn=e,this.on(t,n),this},n.prototype.off=n.prototype.removeListener=n.prototype.removeAllListeners=n.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var n,i=this._callbacks["$"+t];if(!i)return this;if(1==arguments.length)return delete this._callbacks["$"+t],this;for(var o=0;o{"use strict";var md5,__WEBPACK_DEFAULT_EXPORT__=md5;(function(){var HxOverrides=function(){};HxOverrides.__name__=!0,HxOverrides.dateStr=function(t){var e=t.getMonth()+1,n=t.getDate(),i=t.getHours(),o=t.getMinutes(),r=t.getSeconds();return t.getFullYear()+"-"+(e<10?"0"+e:""+e)+"-"+(n<10?"0"+n:""+n)+" "+(i<10?"0"+i:""+i)+":"+(o<10?"0"+o:""+o)+":"+(r<10?"0"+r:""+r)},HxOverrides.strDate=function(t){switch(t.length){case 8:var e=t.split(":"),n=new Date;return n.setTime(0),n.setUTCHours(e[0]),n.setUTCMinutes(e[1]),n.setUTCSeconds(e[2]),n;case 10:e=t.split("-");return new Date(e[0],e[1]-1,e[2],0,0,0);case 19:var i=(e=t.split(" "))[0].split("-"),o=e[1].split(":");return new Date(i[0],i[1]-1,i[2],o[0],o[1],o[2]);default:throw"Invalid date format : "+t}},HxOverrides.cca=function(t,e){var n=t.charCodeAt(e);if(n==n)return n},HxOverrides.substr=function(t,e,n){return null!=e&&0!=e&&null!=n&&n<0?"":(null==n&&(n=t.length),e<0?(e=t.length+e)<0&&(e=0):n<0&&(n=t.length+n-e),t.substr(e,n))},HxOverrides.remove=function(t,e){for(var n=0,i=t.length;n>>32-e},str2blks:function(t){for(var e=1+(t.length+8>>6),n=new Array,i=0,o=16*e;i>2]|=HxOverrides.cca(t,r)<<(8*t.length+r)%4*8,r++;n[r>>2]|=128<<(8*t.length+r)%4*8;var s=8*t.length,a=16*e-2;return n[a]=255&s,n[a]|=(s>>>8&255)<<8,n[a]|=(s>>>16&255)<<16,n[a]|=(s>>>24&255)<<24,n},rhex:function(t){for(var e="",n="0123456789abcdef",i=0;i<4;){var o=i++;e+=n.charAt(t>>8*o+4&15)+n.charAt(t>>8*o&15)}return e},addme:function(t,e){var n=(65535&t)+(65535&e);return(t>>16)+(e>>16)+(n>>16)<<16|65535&n},bitAND:function(t,e){return(t>>>1&e>>>1)<<1|1&t&e},bitXOR:function(t,e){return(t>>>1^e>>>1)<<1|1&t^1&e},bitOR:function(t,e){return(t>>>1|e>>>1)<<1|(1&t|1&e)},__class__:haxe.Md5},haxe.Timer=function(t){var e=this;this.id=window.setInterval((function(){e.run()}),t)},haxe.Timer.__name__=!0,haxe.Timer.delay=function(t,e){var n=new haxe.Timer(e);return n.run=function(){n.stop(),t()},n},haxe.Timer.measure=function(t,e){var n=haxe.Timer.stamp(),i=t();return haxe.Log.trace(haxe.Timer.stamp()-n+"s",e),i},haxe.Timer.stamp=function(){return(new Date).getTime()/1e3},haxe.Timer.prototype={run:function(){},stop:function(){null!=this.id&&(window.clearInterval(this.id),this.id=null)},__class__:haxe.Timer};var js=js||{},$_;function $bind(t,e){var n=function(){return n.method.apply(n.scope,arguments)};return n.scope=t,n.method=e,n}js.Boot=function(){},js.Boot.__name__=!0,js.Boot.__unhtml=function(t){return t.split("&").join("&").split("<").join("<").split(">").join(">")},js.Boot.__trace=function(t,e){var n,i=null!=e?e.fileName+":"+e.lineNumber+": ":"";i+=js.Boot.__string_rec(t,""),"undefined"!=typeof document&&null!=(n=document.getElementById("haxe:trace"))?n.innerHTML+=js.Boot.__unhtml(i)+"
":"undefined"!=typeof console&&null!=console.log&&console.log(i)},js.Boot.__clear_trace=function(){var t=document.getElementById("haxe:trace");null!=t&&(t.innerHTML="")},js.Boot.isClass=function(t){return t.__name__},js.Boot.isEnum=function(t){return t.__ename__},js.Boot.getClass=function(t){return t.__class__},js.Boot.__string_rec=function(t,e){if(null==t)return"null";if(e.length>=5)return"<...>";var n=typeof t;switch("function"==n&&(t.__name__||t.__ename__)&&(n="object"),n){case"object":if(t instanceof Array){if(t.__enum__){if(2==t.length)return t[0];var i=t[0]+"(";e+="\t";for(var o=2,r=t.length;o0?",":"")+js.Boot.__string_rec(t[c],e)}return i+="]"}var l;try{l=t.toString}catch(t){return"???"}if(null!=l&&l!=Object.toString){var d=t.toString();if("[object Object]"!=d)return d}var u=null;i="{\n";e+="\t";var h=null!=t.hasOwnProperty;for(var u in t)h&&!t.hasOwnProperty(u)||"prototype"!=u&&"__class__"!=u&&"__super__"!=u&&"__interfaces__"!=u&&"__properties__"!=u&&(2!=i.length&&(i+=", \n"),i+=e+u+" : "+js.Boot.__string_rec(t[u],e));return i+="\n"+(e=e.substring(1))+"}";case"function":return"";case"string":return t;default:return String(t)}},js.Boot.__interfLoop=function(t,e){if(null==t)return!1;if(t==e)return!0;var n=t.__interfaces__;if(null!=n)for(var i=0,o=n.length;i>>32-e},str2blks:function(t){for(var e=1+(t.length+8>>6),n=new Array,i=0,o=16*e;i>2]|=HxOverrides.cca(t,r)<<(8*t.length+r)%4*8,r++;n[r>>2]|=128<<(8*t.length+r)%4*8;var s=8*t.length,a=16*e-2;return n[a]=255&s,n[a]|=(s>>>8&255)<<8,n[a]|=(s>>>16&255)<<16,n[a]|=(s>>>24&255)<<24,n},rhex:function(t){for(var e="",n="0123456789abcdef",i=0;i<4;){var o=i++;e+=n.charAt(t>>8*o+4&15)+n.charAt(t>>8*o&15)}return e},addme:function(t,e){var n=(65535&t)+(65535&e);return(t>>16)+(e>>16)+(n>>16)<<16|65535&n},bitAND:function(t,e){return(t>>>1&e>>>1)<<1|1&t&e},bitXOR:function(t,e){return(t>>>1^e>>>1)<<1|1&t^1&e},bitOR:function(t,e){return(t>>>1|e>>>1)<<1|(1&t|1&e)},__class__:haxe.Md5},haxe.Timer=function(t){var e=this;this.id=window.setInterval((function(){e.run()}),t)},haxe.Timer.__name__=!0,haxe.Timer.delay=function(t,e){var n=new haxe.Timer(e);return n.run=function(){n.stop(),t()},n},haxe.Timer.measure=function(t,e){var n=haxe.Timer.stamp(),i=t();return haxe.Log.trace(haxe.Timer.stamp()-n+"s",e),i},haxe.Timer.stamp=function(){return(new Date).getTime()/1e3},haxe.Timer.prototype={run:function(){},stop:function(){null!=this.id&&(window.clearInterval(this.id),this.id=null)},__class__:haxe.Timer};var js=js||{},$_;function $bind(t,e){var n=function(){return n.method.apply(n.scope,arguments)};return n.scope=t,n.method=e,n}js.Boot=function(){},js.Boot.__name__=!0,js.Boot.__unhtml=function(t){return t.split("&").join("&").split("<").join("<").split(">").join(">")},js.Boot.__trace=function(t,e){var n,i=null!=e?e.fileName+":"+e.lineNumber+": ":"";i+=js.Boot.__string_rec(t,""),"undefined"!=typeof document&&null!=(n=document.getElementById("haxe:trace"))?n.innerHTML+=js.Boot.__unhtml(i)+"
":"undefined"!=typeof console&&null!=console.log&&console.log(i)},js.Boot.__clear_trace=function(){var t=document.getElementById("haxe:trace");null!=t&&(t.innerHTML="")},js.Boot.isClass=function(t){return t.__name__},js.Boot.isEnum=function(t){return t.__ename__},js.Boot.getClass=function(t){return t.__class__},js.Boot.__string_rec=function(t,e){if(null==t)return"null";if(e.length>=5)return"<...>";var n=typeof t;switch("function"==n&&(t.__name__||t.__ename__)&&(n="object"),n){case"object":if(t instanceof Array){if(t.__enum__){if(2==t.length)return t[0];var i=t[0]+"(";e+="\t";for(var o=2,r=t.length;o0?",":"")+js.Boot.__string_rec(t[c],e)}return i+="]"}var l;try{l=t.toString}catch(t){return"???"}if(null!=l&&l!=Object.toString){var d=t.toString();if("[object Object]"!=d)return d}var u=null;i="{\n";e+="\t";var h=null!=t.hasOwnProperty;for(var u in t)h&&!t.hasOwnProperty(u)||"prototype"!=u&&"__class__"!=u&&"__super__"!=u&&"__interfaces__"!=u&&"__properties__"!=u&&(2!=i.length&&(i+=", \n"),i+=e+u+" : "+js.Boot.__string_rec(t[u],e));return i+="\n"+(e=e.substring(1))+"}";case"function":return"";case"string":return t;default:return String(t)}},js.Boot.__interfLoop=function(t,e){if(null==t)return!1;if(t==e)return!0;var n=t.__interfaces__;if(null!=n)for(var i=0,o=n.length;i{function e(t){t=t||{},this.ms=t.min||100,this.max=t.max||1e4,this.factor=t.factor||2,this.jitter=t.jitter>0&&t.jitter<=1?t.jitter:0,this.attempts=0}t.exports=e,e.prototype.duration=function(){var t=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),n=Math.floor(e*this.jitter*t);t=0==(1&Math.floor(10*e))?t-n:t+n}return 0|Math.min(t,this.max)},e.prototype.reset=function(){this.attempts=0},e.prototype.setMin=function(t){this.ms=t},e.prototype.setMax=function(t){this.max=t},e.prototype.setJitter=function(t){this.jitter=t}},6553:(t,e,n)=>{"use strict";n.r(e),n.d(e,{CKEditorError:()=>i.Bb,Collection:()=>i.FE,DomEmitterMixin:()=>i.Xu,ElementReplacer:()=>i.a6,EmitterMixin:()=>i.ln,FocusTracker:()=>i.Rh,KeystrokeHandler:()=>i.VD,Locale:()=>i.go,ObservableMixin:()=>i.Re,Rect:()=>i.UL,ResizeObserver:()=>i.do,createElement:()=>i.az,diff:()=>i.Hg,env:()=>i.OB,first:()=>i.Ps,getCode:()=>i.Cq,getDataFromElement:()=>i.yy,getEnvKeystrokeText:()=>i.XU,getLanguageDirection:()=>i.j9,getLocalizedArrowKeyCodeDirection:()=>i.mA,global:()=>i.CO,insertToPriorityArray:()=>i.VG,isArrowKeyCode:()=>i.dj,isForwardArrowKeyCode:()=>i.Zt,isVisible:()=>i.pn,keyCodes:()=>i.Do,logError:()=>i.H,logWarning:()=>i.KE,mix:()=>i.CD,parseKeystroke:()=>i.Zz,priorities:()=>i.tA,scrollAncestorsToShowTarget:()=>i.F0,scrollViewportToShowTarget:()=>i.mR,setDataInElement:()=>i.jS,toArray:()=>i.qo,toMap:()=>i.qL,toUnit:()=>i.nn,uid:()=>i.hQ,version:()=>i.i8});var i=n(7557)},8180:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-basic-styles/theme/code.css"],names:[],mappings:"AAKA,iBACC,kCAAuC,CAEvC,iBAAkB,CADlB,aAED,CAEA,0CACC,kCACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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},636:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/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-2022, 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},390:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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}: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}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-clipboard/theme/clipboard.css","webpack://./node_modules/@ckeditor/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,CCzBF,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,CA2DF,kEACC,gGACD,CAKA,gDACC,OAAS,CACT,sBACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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 * Copyright (c) 2003-2022, 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-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(var(--ck-clipboard-drop-target-dot-height) * -.5);\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// Horizontal drop target (between blocks).\n\t& .ck.ck-clipboard-drop-target-position {\n\t\tdisplay: block;\n\t\tposition: relative;\n\t\twidth: 100%;\n\t\theight: 0;\n\t\tmargin: 0;\n\t\ttext-align: initial;\n\n\t\t& .ck-clipboard-drop-target__line {\n\t\t\tposition: absolute;\n\t\t\twidth: 100%;\n\t\t\theight: 0;\n\t\t\tborder: 1px solid var(--ck-clipboard-drop-target-color);\n\t\t\tmargin-top: -1px;\n\n\t\t\t&::before {\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: calc(-1 * var(--ck-clipboard-drop-target-dot-size));\n\t\t\t\ttop: 0;\n\n\t\t\t\ttransform: translateY(-50%);\n\t\t\t\tborder-color: transparent transparent transparent var(--ck-clipboard-drop-target-color);\n\t\t\t\tborder-width: var(--ck-clipboard-drop-target-dot-size) 0 var(--ck-clipboard-drop-target-dot-size) calc(2 * var(--ck-clipboard-drop-target-dot-size));\n\t\t\t\tborder-style: solid;\n\t\t\t}\n\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\tright: calc(-1 * var(--ck-clipboard-drop-target-dot-size));\n\t\t\t\ttop: 0;\n\n\t\t\t\ttransform: translateY(-50%);\n\t\t\t\tborder-color: transparent var(--ck-clipboard-drop-target-color) transparent transparent;\n\t\t\t\tborder-width: var(--ck-clipboard-drop-target-dot-size) calc(2 * var(--ck-clipboard-drop-target-dot-size)) var(--ck-clipboard-drop-target-dot-size) 0;\n\t\t\t\tborder-style: solid;\n\t\t\t}\n\t\t}\n\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'],sourceRoot:""}]);const a=s},9085:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-code-block/theme/codeblock.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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},4807:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck-content pre>code.ck-suggestion-marker-formatBlock{box-shadow:-7px 0 0 0 #ededed,-10px 0 0 0 var(--ck-color-suggestion-marker-format-border);display:block}.ck-content pre>code.ck-suggestion-marker-formatBlock.ck-suggestion-marker--active{box-shadow:-5px 0 0 0 #ededed,-8px 0 0 0 var(--ck-color-suggestion-marker-format-border-active)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-collaboration-core/theme/integrations/codeblock.css"],names:[],mappings:"AAAA,sDAEC,yFAAoG,CADpG,aAMD,CAHC,mFACC,+FACD",sourcesContent:[".ck-content pre > code.ck-suggestion-marker-formatBlock {\n\tdisplay: block;\n\tbox-shadow: -7px 0 0 0 hsl(0deg 0% 93%), -10px 0 0 0 var(--ck-color-suggestion-marker-format-border);\n\n\t&.ck-suggestion-marker--active {\n\t\tbox-shadow: -5px 0 0 0 hsl(0deg 0% 93%), -8px 0 0 0 var(--ck-color-suggestion-marker-format-border-active);\n\t}\n}\n"],sourceRoot:""}]);const a=s},8350:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck-content .ck-suggestion-marker-deletion.ck-widget.ck-horizontal-line{background-color:var(--ck-color-suggestion-widget-deletion-background)}.ck-content .ck-suggestion-marker-deletion.ck-widget.ck-horizontal-line.ck-suggestion-marker--active{background-color:var(--ck-color-suggestion-widget-deletion-background-active)}.ck-content .ck-suggestion-marker-insertion.ck-widget.ck-horizontal-line{background-color:var(--ck-color-suggestion-widget-insertion-background)}.ck-content .ck-suggestion-marker-insertion.ck-widget.ck-horizontal-line.ck-suggestion-marker--active{background-color:var(--ck-color-suggestion-widget-insertion-background-active)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-collaboration-core/theme/integrations/horizontalline.css"],names:[],mappings:"AAAA,wEACC,sEAKD,CAHC,qGACC,6EACD,CAGD,yEACC,uEAKD,CAHC,sGACC,8EACD",sourcesContent:[".ck-content .ck-suggestion-marker-deletion.ck-widget.ck-horizontal-line {\n\tbackground-color: var(--ck-color-suggestion-widget-deletion-background);\n\n\t&.ck-suggestion-marker--active {\n\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background-active);\n\t}\n}\n\n.ck-content .ck-suggestion-marker-insertion.ck-widget.ck-horizontal-line {\n\tbackground-color: var(--ck-color-suggestion-widget-insertion-background);\n\n\t&.ck-suggestion-marker--active {\n\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background-active);\n\t}\n}\n"],sourceRoot:""}]);const a=s},8136:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck-content .ck-suggestion-marker-deletion.ck-widget.image{background-color:var(--ck-color-suggestion-widget-deletion-background)}.ck-content .ck-suggestion-marker-deletion.ck-widget.image img{opacity:.6}.ck-content .ck-suggestion-marker-deletion.ck-widget.image figcaption{background-color:var(--ck-color-suggestion-widget-deletion-background)}.ck-content .ck-suggestion-marker-deletion.ck-widget.image.ck-suggestion-marker--active,.ck-content .ck-suggestion-marker-deletion.ck-widget.image.ck-suggestion-marker--active figcaption{background-color:var(--ck-color-suggestion-widget-deletion-background-active)}.ck-content .ck-suggestion-marker-insertion.ck-widget.image,.ck-content .ck-suggestion-marker-insertion.ck-widget.image figcaption{background-color:var(--ck-color-suggestion-widget-insertion-background)}.ck-content .ck-suggestion-marker-insertion.ck-widget.image.ck-suggestion-marker--active,.ck-content .ck-suggestion-marker-insertion.ck-widget.image.ck-suggestion-marker--active figcaption{background-color:var(--ck-color-suggestion-widget-insertion-background-active)}.ck-content .ck-widget.image>figcaption.ck-suggestion-marker-deletion{background-color:var(--ck-color-suggestion-widget-deletion-background);border:none}.ck-content .ck-widget.image>figcaption.ck-suggestion-marker-deletion.ck-suggestion-marker--active{background-color:var(--ck-color-suggestion-widget-deletion-background-active)}.ck-content .ck-widget.image>figcaption.ck-suggestion-marker-insertion{background-color:var(--ck-color-suggestion-widget-insertion-background);border:none}.ck-content .ck-widget.image>figcaption.ck-suggestion-marker-insertion.ck-suggestion-marker--active{background-color:var(--ck-color-suggestion-widget-insertion-background-active)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-collaboration-core/theme/integrations/image.css"],names:[],mappings:"AAAA,2DACC,sEAiBD,CAfC,+DACC,UACD,CAEA,sEACC,sEACD,CAKC,2LACC,6EACD,CAOD,mIACC,uEACD,CAKC,6LACC,8EACD,CAKD,sEACC,sEAAuE,CACvE,WAKD,CAHC,mGACC,6EACD,CAGD,uEACC,uEAAwE,CACxE,WAKD,CAHC,oGACC,8EACD",sourcesContent:[".ck-content .ck-suggestion-marker-deletion.ck-widget.image {\n\tbackground-color: var(--ck-color-suggestion-widget-deletion-background);\n\n\t& img {\n\t\topacity: 0.6;\n\t}\n\n\t& figcaption {\n\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background);\n\t}\n\n\t&.ck-suggestion-marker--active {\n\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background-active);\n\n\t\t& figcaption {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background-active);\n\t\t}\n\t}\n}\n\n.ck-content .ck-suggestion-marker-insertion.ck-widget.image {\n\tbackground-color: var(--ck-color-suggestion-widget-insertion-background);\n\n\t& figcaption {\n\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background);\n\t}\n\n\t&.ck-suggestion-marker--active {\n\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background-active);\n\n\t\t& figcaption {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background-active);\n\t\t}\n\t}\n}\n\n.ck-content .ck-widget.image > figcaption {\n\t&.ck-suggestion-marker-deletion {\n\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background);\n\t\tborder: none;\n\n\t\t&.ck-suggestion-marker--active {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background-active);\n\t\t}\n\t}\n\n\t&.ck-suggestion-marker-insertion {\n\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background);\n\t\tborder: none;\n\n\t\t&.ck-suggestion-marker--active {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background-active);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},9224:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck-content .ck-suggestion-marker-deletion.ck-widget.media{background-color:var(--ck-color-suggestion-widget-deletion-background)}.ck-content .ck-suggestion-marker-deletion.ck-widget.media .ck-media__wrapper{opacity:.6}.ck-content .ck-suggestion-marker-deletion.ck-widget.media.ck-suggestion-marker--active{background-color:var(--ck-color-suggestion-widget-deletion-background-active)}.ck-content .ck-suggestion-marker-insertion.ck-widget.media{background-color:var(--ck-color-suggestion-widget-insertion-background)}.ck-content .ck-suggestion-marker-insertion.ck-widget.media.ck-suggestion-marker--active{background-color:var(--ck-color-suggestion-widget-insertion-background-active)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-collaboration-core/theme/integrations/mediaembed.css"],names:[],mappings:"AAAA,2DACC,sEASD,CAPC,8EACC,UACD,CAEA,wFACC,6EACD,CAGD,4DACC,uEAKD,CAHC,yFACC,8EACD",sourcesContent:[".ck-content .ck-suggestion-marker-deletion.ck-widget.media {\n\tbackground-color: var(--ck-color-suggestion-widget-deletion-background);\n\n\t& .ck-media__wrapper {\n\t\topacity: 0.6;\n\t}\n\n\t&.ck-suggestion-marker--active {\n\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background-active);\n\t}\n}\n\n.ck-content .ck-suggestion-marker-insertion.ck-widget.media {\n\tbackground-color: var(--ck-color-suggestion-widget-insertion-background);\n\n\t&.ck-suggestion-marker--active {\n\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background-active);\n\t}\n}\n"],sourceRoot:""}]);const a=s},2102:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck-content .ck-suggestion-marker-deletion.ck-widget.page-break{background-color:var(--ck-color-suggestion-widget-deletion-background)}.ck-content .ck-suggestion-marker-deletion.ck-widget.page-break.ck-suggestion-marker--active{background-color:var(--ck-color-suggestion-widget-deletion-background-active)}.ck-content .ck-suggestion-marker-insertion.ck-widget.page-break{background-color:var(--ck-color-suggestion-widget-insertion-background)}.ck-content .ck-suggestion-marker-insertion.ck-widget.page-break.ck-suggestion-marker--active{background-color:var(--ck-color-suggestion-widget-insertion-background-active)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-collaboration-core/theme/integrations/pagebreak.css"],names:[],mappings:"AAAA,gEACC,sEAKD,CAHC,6FACC,6EACD,CAGD,iEACC,uEAKD,CAHC,8FACC,8EACD",sourcesContent:[".ck-content .ck-suggestion-marker-deletion.ck-widget.page-break {\n\tbackground-color: var(--ck-color-suggestion-widget-deletion-background);\n\n\t&.ck-suggestion-marker--active {\n\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background-active);\n\t}\n}\n\n.ck-content .ck-suggestion-marker-insertion.ck-widget.page-break {\n\tbackground-color: var(--ck-color-suggestion-widget-insertion-background);\n\n\t&.ck-suggestion-marker--active {\n\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background-active);\n\t}\n}\n"],sourceRoot:""}]);const a=s},9050:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-suggestion-widget-th-insertion-background:rgba(102,229,119,.12);--ck-color-suggestion-widget-th-insertion-background-active:rgba(37,218,61,.14);--ck-color-suggestion-widget-th-deletion-background:rgba(229,102,134,.14);--ck-color-suggestion-widget-th-deletion-background-active:rgba(196,33,74,.16)}.ck-content figure.table .ck-suggestion-marker-formatBlock{box-shadow:-3px 0 0 0 var(--ck-color-suggestion-marker-format-border)}.ck-content figure.table .ck-suggestion-marker-formatBlock.ck-suggestion-marker--active{box-shadow:-3px 0 0 0 var(--ck-color-suggestion-marker-format-border-active)}.ck-content .ck-suggestion-marker-insertion.table{border-color:var(--ck-color-suggestion-marker-insertion-border)}.ck-content .ck-suggestion-marker-insertion.table>figcaption{background-color:var(--ck-color-suggestion-widget-insertion-background)}.ck-content .ck-suggestion-marker-insertion.table>table>tbody>tr>th,.ck-content .ck-suggestion-marker-insertion.table>table>thead>tr>th{background-color:var(--ck-color-suggestion-widget-th-insertion-background);border-color:var(--ck-color-suggestion-marker-insertion-border)}.ck-content .ck-suggestion-marker-insertion.table>table>tbody>tr>td{background-color:var(--ck-color-suggestion-widget-insertion-background);border-color:var(--ck-color-suggestion-marker-insertion-border)}.ck-content .ck-suggestion-marker-insertion.ck-suggestion-marker--active.table{border-color:var(--ck-color-suggestion-marker-insertion-border-active)}.ck-content .ck-suggestion-marker-insertion.ck-suggestion-marker--active.table>figcaption{background-color:var(--ck-color-suggestion-widget-insertion-background-active)}.ck-content .ck-suggestion-marker-insertion.ck-suggestion-marker--active.table>table>tbody>tr>th,.ck-content .ck-suggestion-marker-insertion.ck-suggestion-marker--active.table>table>thead>tr>th{background-color:var(--ck-color-suggestion-widget-th-insertion-background-active);border-color:var(--ck-color-suggestion-marker-insertion-border-active)}.ck-content .ck-suggestion-marker-insertion.ck-suggestion-marker--active.table>table>tbody>tr>td{background-color:var(--ck-color-suggestion-widget-insertion-background-active);border-color:var(--ck-color-suggestion-marker-insertion-border-active)}.ck-content .ck-suggestion-marker-deletion.ck-widget.table{border-color:var(--ck-color-suggestion-marker-deletion-border)}.ck-content .ck-suggestion-marker-deletion.ck-widget.table>figcaption{background-color:var(--ck-color-suggestion-widget-deletion-background)}.ck-content .ck-suggestion-marker-deletion.ck-widget.table>table>tbody>tr>th,.ck-content .ck-suggestion-marker-deletion.ck-widget.table>table>thead>tr>th{background-color:var(--ck-color-suggestion-widget-th-deletion-background);border-color:var(--ck-color-suggestion-marker-deletion-border);text-decoration:none}.ck-content .ck-suggestion-marker-deletion.ck-widget.table>table>tbody>tr>td{background-color:var(--ck-color-suggestion-widget-deletion-background);border-color:var(--ck-color-suggestion-marker-deletion-border);text-decoration:none}.ck-content .ck-suggestion-marker-deletion.ck-suggestion-marker--active.table{border-color:var(--ck-color-suggestion-marker-deletion-border-active)}.ck-content .ck-suggestion-marker-deletion.ck-suggestion-marker--active.table>figcaption{background-color:var(--ck-color-suggestion-widget-deletion-background-active)}.ck-content .ck-suggestion-marker-deletion.ck-suggestion-marker--active.table>table>tbody>tr>th,.ck-content .ck-suggestion-marker-deletion.ck-suggestion-marker--active.table>table>thead>tr>th{background-color:var(--ck-color-suggestion-widget-th-deletion-background-active);border-color:var(--ck-color-suggestion-marker-deletion-border-active)}.ck-content .ck-suggestion-marker-deletion.ck-suggestion-marker--active.table>table>tbody>tr>td{background-color:var(--ck-color-suggestion-widget-deletion-background-active);border-color:var(--ck-color-suggestion-marker-deletion-border-active)}.ck-content .ck-widget.table>figcaption.ck-suggestion-marker-deletion{background-color:var(--ck-color-suggestion-widget-deletion-background);border:none}.ck-content .ck-widget.table>figcaption.ck-suggestion-marker-deletion.ck-suggestion-marker--active{background-color:var(--ck-color-suggestion-widget-deletion-background-active)}.ck-content .ck-widget.table>figcaption.ck-suggestion-marker-insertion{background-color:var(--ck-color-suggestion-widget-insertion-background);border:none}.ck-content .ck-widget.table>figcaption.ck-suggestion-marker-insertion.ck-suggestion-marker--active{background-color:var(--ck-color-suggestion-widget-insertion-background-active)}.ck-content .table th.ck-suggestion-marker-insertion{background-color:var(--ck-color-suggestion-widget-th-insertion-background)}.ck-content .table th.ck-suggestion-marker-insertion.ck-suggestion-marker--active{background-color:var(--ck-color-suggestion-widget-th-insertion-background-active)}.ck-content .table th.ck-suggestion-marker-deletion{background-color:var(--ck-color-suggestion-widget-th-deletion-background);text-decoration:none}.ck-content .table th.ck-suggestion-marker-deletion.ck-suggestion-marker--active{background-color:var(--ck-color-suggestion-widget-th-deletion-background-active)}.ck-content .table td.ck-suggestion-marker-insertion{background-color:var(--ck-color-suggestion-widget-insertion-background)}.ck-content .table td.ck-suggestion-marker-insertion.ck-suggestion-marker--active{background-color:var(--ck-color-suggestion-widget-insertion-background-active)}.ck-content .table td.ck-suggestion-marker-deletion{background-color:var(--ck-color-suggestion-widget-deletion-background);text-decoration:none}.ck-content .table td.ck-suggestion-marker-deletion.ck-suggestion-marker--active{background-color:var(--ck-color-suggestion-widget-deletion-background-active)}.ck-content .table td.ck-suggestion-marker-formatBlock,.ck-content .table td.ck-suggestion-marker-formatInline,.ck-content .table th.ck-suggestion-marker-formatBlock,.ck-content .table th.ck-suggestion-marker-formatInline{background-color:var(--ck-color-suggestion-widget-format-background);box-shadow:none}.ck-content .table td.ck-suggestion-marker-formatBlock.ck-suggestion-marker--active,.ck-content .table td.ck-suggestion-marker-formatInline.ck-suggestion-marker--active,.ck-content .table th.ck-suggestion-marker-formatBlock.ck-suggestion-marker--active,.ck-content .table th.ck-suggestion-marker-formatInline.ck-suggestion-marker--active{background-color:var(--ck-color-suggestion-widget-format-background-active);box-shadow:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-collaboration-core/theme/integrations/table.css"],names:[],mappings:"AAAA,MACC,0EAA8E,CAC9E,+EAAqF,CAErF,yEAA6E,CAC7E,8EACD,CAEA,2DACC,qEAKD,CAHC,wFACC,4EACD,CAGD,kDACC,+DAsBD,CApBC,6DACC,uEACD,CAQC,wIACC,0EAA2E,CAC3E,+DACD,CAEA,oEACC,uEAAwE,CACxE,+DACD,CAIF,+EACC,sEAsBD,CApBC,0FACC,8EACD,CAQC,kMACC,iFAAkF,CAClF,sEACD,CAEA,iGACC,8EAA+E,CAC/E,sEACD,CAIF,2DACC,8DAyBD,CAvBC,sEACC,sEACD,CASC,0JACC,yEAA0E,CAC1E,8DAA+D,CAC/D,oBACD,CAEA,6EACC,sEAAuE,CACvE,8DAA+D,CAC/D,oBACD,CAIF,8EACC,qEAsBD,CApBC,yFACC,6EACD,CAQC,gMACC,gFAAiF,CACjF,qEACD,CAEA,gGACC,6EAA8E,CAC9E,qEACD,CAKD,sEACC,sEAAuE,CACvE,WAKD,CAHC,mGACC,6EACD,CAGD,uEACC,uEAAwE,CACxE,WAKD,CAHC,oGACC,8EACD,CASD,qDACC,0EAKD,CAHC,kFACC,iFACD,CAGD,oDACC,yEAA0E,CAC1E,oBAKD,CAHC,iFACC,gFACD,CAGD,qDACC,uEAKD,CAHC,kFACC,8EACD,CAGD,oDACC,sEAAuE,CACvE,oBAKD,CAHC,iFACC,6EACD,CAGD,8NAIC,oEAAqE,CACrE,eAMD,CAJC,kVACC,2EAA4E,CAC5E,eACD",sourcesContent:[":root {\n\t--ck-color-suggestion-widget-th-insertion-background: hsla(128, 71%, 65%, .12);\n\t--ck-color-suggestion-widget-th-insertion-background-active: hsla(128, 71%, 50%, .14);\n\n\t--ck-color-suggestion-widget-th-deletion-background: hsla(345, 71%, 65%, .14);\n\t--ck-color-suggestion-widget-th-deletion-background-active: hsla(345, 71%, 45%, .16);\n}\n\n.ck-content figure.table .ck-suggestion-marker-formatBlock {\n\tbox-shadow: -3px 0 0 0 var(--ck-color-suggestion-marker-format-border);\n\n\t&.ck-suggestion-marker--active {\n\t\tbox-shadow: -3px 0 0 0 var(--ck-color-suggestion-marker-format-border-active);\n\t}\n}\n\n.ck-content .ck-suggestion-marker-insertion.table {\n\tborder-color: var(--ck-color-suggestion-marker-insertion-border);\n\n\t& > figcaption {\n\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background);\n\t}\n\n & > table {\n\t\t& > tbody > tr > th {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-th-insertion-background);\n\t\t\tborder-color: var(--ck-color-suggestion-marker-insertion-border);\n\t\t}\n\n\t\t& > thead > tr > th {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-th-insertion-background);\n\t\t\tborder-color: var(--ck-color-suggestion-marker-insertion-border);\n\t\t}\n\n\t\t& > tbody > tr > td {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background);\n\t\t\tborder-color: var(--ck-color-suggestion-marker-insertion-border);\n\t\t}\n\t}\n}\n\n.ck-content .ck-suggestion-marker-insertion.ck-suggestion-marker--active.table {\n\tborder-color: var(--ck-color-suggestion-marker-insertion-border-active);\n\n\t& > figcaption {\n\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background-active);\n\t}\n\n\t& > table {\n\t\t& > tbody > tr > th {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-th-insertion-background-active);\n\t\t\tborder-color: var(--ck-color-suggestion-marker-insertion-border-active);\n\t\t}\n\n\t\t& > thead > tr > th {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-th-insertion-background-active);\n\t\t\tborder-color: var(--ck-color-suggestion-marker-insertion-border-active);\n\t\t}\n\n\t\t& > tbody > tr > td {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background-active);\n\t\t\tborder-color: var(--ck-color-suggestion-marker-insertion-border-active);\n\t\t}\n\t}\n}\n\n.ck-content .ck-suggestion-marker-deletion.ck-widget.table {\n\tborder-color: var(--ck-color-suggestion-marker-deletion-border);\n\n\t& > figcaption {\n\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background);\n\t}\n\n\t& > table {\n\t\t& > tbody > tr > th {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-th-deletion-background);\n\t\t\tborder-color: var(--ck-color-suggestion-marker-deletion-border);\n\t\t\ttext-decoration: none;\n\t\t}\n\n\t\t& > thead > tr > th {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-th-deletion-background);\n\t\t\tborder-color: var(--ck-color-suggestion-marker-deletion-border);\n\t\t\ttext-decoration: none;\n\t\t}\n\n\t\t& > tbody > tr > td {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background);\n\t\t\tborder-color: var(--ck-color-suggestion-marker-deletion-border);\n\t\t\ttext-decoration: none;\n\t\t}\n }\n}\n\n.ck-content .ck-suggestion-marker-deletion.ck-suggestion-marker--active.table {\n\tborder-color: var(--ck-color-suggestion-marker-deletion-border-active);\n\n\t& > figcaption {\n\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background-active);\n\t}\n\n & > table {\n\t\t& > tbody > tr > th {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-th-deletion-background-active);\n\t\t\tborder-color: var(--ck-color-suggestion-marker-deletion-border-active);\n\t\t}\n\n\t\t& > thead > tr > th {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-th-deletion-background-active);\n\t\t\tborder-color: var(--ck-color-suggestion-marker-deletion-border-active);\n\t\t}\n\n\t\t& > tbody > tr > td {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background-active);\n\t\t\tborder-color: var(--ck-color-suggestion-marker-deletion-border-active);\n\t\t}\n\t}\n}\n\n.ck-content .ck-widget.table > figcaption {\n\t&.ck-suggestion-marker-deletion {\n\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background);\n\t\tborder: none;\n\n\t\t&.ck-suggestion-marker--active {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background-active);\n\t\t}\n\t}\n\n\t&.ck-suggestion-marker-insertion {\n\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background);\n\t\tborder: none;\n\n\t\t&.ck-suggestion-marker--active {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background-active);\n\t\t}\n\t}\n}\n\n/*\n * We need here at least 022 CSS Specificity because of table styles like `.ck-content .table table th { background: ... }\n * See: https://github.com/ckeditor/ckeditor5-table/blob/master/theme/table.css#L29\n */\n.ck-content .table {\n\t& th.ck-suggestion-marker-insertion {\n\t\tbackground-color: var(--ck-color-suggestion-widget-th-insertion-background);\n\n\t\t&.ck-suggestion-marker--active {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-th-insertion-background-active);\n\t\t}\n\t}\n\n\t& th.ck-suggestion-marker-deletion {\n\t\tbackground-color: var(--ck-color-suggestion-widget-th-deletion-background);\n\t\ttext-decoration: none;\n\n\t\t&.ck-suggestion-marker--active {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-th-deletion-background-active);\n\t\t}\n\t}\n\n\t& td.ck-suggestion-marker-insertion {\n\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background);\n\n\t\t&.ck-suggestion-marker--active {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-insertion-background-active);\n\t\t}\n\t}\n\n\t& td.ck-suggestion-marker-deletion {\n\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background);\n\t\ttext-decoration: none;\n\n\t\t&.ck-suggestion-marker--active {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-deletion-background-active);\n\t\t}\n\t}\n\n\t& th.ck-suggestion-marker-formatInline,\n\t& td.ck-suggestion-marker-formatInline,\n\t& th.ck-suggestion-marker-formatBlock,\n\t& td.ck-suggestion-marker-formatBlock {\n\t\tbackground-color: var(--ck-color-suggestion-widget-format-background);\n\t\tbox-shadow: none;\n\n\t\t&.ck-suggestion-marker--active {\n\t\t\tbackground-color: var(--ck-color-suggestion-widget-format-background-active);\n\t\t\tbox-shadow: none;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},9032:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-comment-box-border:#f2de02;--ck-color-suggestion-box-deletion-border:#d85a79;--ck-color-suggestion-box-insertion-border:#5ad86b;--ck-color-suggestion-box-format-border:#5ac1d8}.ck .ck-suggestion{border-top-left-radius:var(--ck-border-radius)}.ck .ck-annotation{border-left:3px solid transparent}.ck .ck-suggestion--disabled-comments .ck-annotation{min-height:80px}.ck .ck-comment,.ck .ck-comment__input-container,.ck .ck-thread__comment-count{border-left:3px solid var(--ck-color-comment-box-border)}.ck .ck-suggestion-insertion .ck-suggestion{border-left-color:var(--ck-color-suggestion-box-insertion-border)}.ck .ck-suggestion-deletion .ck-suggestion{border-left-color:var(--ck-color-suggestion-box-deletion-border)}.ck .ck-suggestion-replace .ck-suggestion{border-left-color:var(--ck-color-suggestion-box-insertion-border)}.ck .ck-suggestion-format .ck-suggestion{border-left-color:var(--ck-color-suggestion-box-format-border)}.ck .ck-suggestion-wrapper{outline:0}.ck .ck-suggestion-type{font-weight:700}.ck .ck-suggestion-color{border-radius:14px;box-shadow:0 0 0 1px #444;display:inline-block;height:14px;margin:0 5px;vertical-align:text-bottom;width:14px}.ck .ck-suggestion-insertion .ck-comment,.ck .ck-suggestion-insertion .ck-comment__input-container,.ck .ck-suggestion-insertion .ck-thread__comment-count,.ck .ck-suggestion-replace .ck-comment,.ck .ck-suggestion-replace .ck-comment__input-container,.ck .ck-suggestion-replace .ck-thread__comment-count{border-left-color:var(--ck-color-suggestion-box-insertion-border)}.ck .ck-suggestion-deletion .ck-comment,.ck .ck-suggestion-deletion .ck-comment__input-container,.ck .ck-suggestion-deletion .ck-thread__comment-count{border-left-color:var(--ck-color-suggestion-box-deletion-border)}.ck .ck-suggestion-format .ck-comment,.ck .ck-suggestion-format .ck-comment__input-container,.ck .ck-suggestion-format .ck-thread__comment-count{border-left-color:var(--ck-color-suggestion-box-format-border)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-collaboration-core/theme/suggestion.css"],names:[],mappings:"AAAA,MACC,qCAAgD,CAChD,iDAA6D,CAC7D,kDAA8D,CAC9D,+CACD,CAEA,mBACC,8CACD,CAEA,mBACC,iCACD,CAKA,qDACC,eACD,CAIA,+EAGC,wDACD,CAEA,4CACC,iEACD,CAEA,2CACC,gEACD,CAEA,0CACC,iEACD,CAEA,yCACC,8DACD,CAEA,2BACC,SACD,CAEA,wBACC,eACD,CAEA,yBAIC,kBAAmB,CAGnB,yBAA0B,CAN1B,oBAAqB,CAErB,WAAY,CAGZ,YAAa,CADb,0BAA2B,CAH3B,UAMD,CAKA,8SAMC,iEACD,CAEA,uJAGC,gEACD,CAEA,iJAGC,8DACD",sourcesContent:[":root {\n\t--ck-color-comment-box-border: hsl(55, 98%, 48%);\n\t--ck-color-suggestion-box-deletion-border: hsl(345, 62%, 60%);\n\t--ck-color-suggestion-box-insertion-border: hsl(128, 62%, 60%);\n\t--ck-color-suggestion-box-format-border: hsl(191, 62%, 60%);\n}\n\n.ck .ck-suggestion {\n\tborder-top-left-radius: var(--ck-border-radius);\n}\n\n.ck .ck-annotation {\n\tborder-left: 3px solid transparent;\n}\n\n\n/* See: #3683.\n * Inline Suggestion annotations that can't be commented on contains a scrollbar by default */\n.ck .ck-suggestion--disabled-comments .ck-annotation {\n\tmin-height: 80px;\n}\n\n/* See: #2459.\nWith track-changes feature enabled, we need to distinguish various types of annotations (comments and suggestions). */\n.ck .ck-comment,\n.ck .ck-thread__comment-count,\n.ck .ck-comment__input-container {\n\tborder-left: 3px solid var(--ck-color-comment-box-border);\n}\n\n.ck .ck-suggestion-insertion .ck-suggestion {\n\tborder-left-color: var(--ck-color-suggestion-box-insertion-border);\n}\n\n.ck .ck-suggestion-deletion .ck-suggestion {\n\tborder-left-color: var(--ck-color-suggestion-box-deletion-border);\n}\n\n.ck .ck-suggestion-replace .ck-suggestion {\n\tborder-left-color: var(--ck-color-suggestion-box-insertion-border);\n}\n\n.ck .ck-suggestion-format .ck-suggestion {\n\tborder-left-color: var(--ck-color-suggestion-box-format-border);\n}\n\n.ck .ck-suggestion-wrapper {\n\toutline: 0;\n}\n\n.ck .ck-suggestion-type {\n\tfont-weight: bold;\n}\n\n.ck .ck-suggestion-color {\n\tdisplay: inline-block;\n\twidth: 14px;\n\theight: 14px;\n\tborder-radius: 14px;\n\tvertical-align: text-bottom;\n\tmargin: 0 5px;\n\tbox-shadow: 0 0 0 1px #444;\n}\n\n/* Comments inside suggestion. */\n\n/* Handle comments inside suggestion keep same border-color. */\n.ck .ck-suggestion-insertion .ck-comment,\n.ck .ck-suggestion-insertion .ck-thread__comment-count,\n.ck .ck-suggestion-insertion .ck-comment__input-container,\n.ck .ck-suggestion-replace .ck-comment,\n.ck .ck-suggestion-replace .ck-thread__comment-count,\n.ck .ck-suggestion-replace .ck-comment__input-container {\n\tborder-left-color: var(--ck-color-suggestion-box-insertion-border);\n}\n\n.ck .ck-suggestion-deletion .ck-comment,\n.ck .ck-suggestion-deletion .ck-thread__comment-count,\n.ck .ck-suggestion-deletion .ck-comment__input-container {\n\tborder-left-color: var(--ck-color-suggestion-box-deletion-border);\n}\n\n.ck .ck-suggestion-format .ck-comment,\n.ck .ck-suggestion-format .ck-thread__comment-count,\n.ck .ck-suggestion-format .ck-comment__input-container {\n\tborder-left-color: var(--ck-color-suggestion-box-format-border);\n}\n"],sourceRoot:""}]);const a=s},6533:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,':root{--ck-color-suggestion-marker-insertion-border:rgba(30,174,49,.35);--ck-color-suggestion-marker-insertion-border-active:rgba(18,109,31,.5);--ck-color-suggestion-marker-insertion-background:rgba(102,229,119,.35);--ck-color-suggestion-marker-insertion-background-active:rgba(37,218,61,.5);--ck-color-suggestion-marker-deletion-border:rgba(174,30,66,.35);--ck-color-suggestion-marker-deletion-border-active:rgba(109,18,41,.5);--ck-color-suggestion-marker-deletion-background:rgba(229,102,134,.35);--ck-color-suggestion-marker-deletion-background-active:rgba(218,37,82,.5);--ck-color-suggestion-marker-deletion-stroke:rgba(87,15,33,.5);--ck-color-suggestion-marker-format-border:rgba(10,160,194,.4);--ck-color-suggestion-marker-format-border-active:rgba(10,160,194,.65);--ck-color-suggestion-widget-insertion-background:rgba(102,229,119,.05);--ck-color-suggestion-widget-insertion-background-active:rgba(37,218,61,.07);--ck-color-suggestion-widget-deletion-background:rgba(229,102,134,.05);--ck-color-suggestion-widget-deletion-background-active:rgba(196,33,74,.07);--ck-color-suggestion-widget-format-background:rgba(10,160,194,.09);--ck-color-suggestion-widget-format-background-active:rgba(10,160,194,.16)}.ck-content .ck-suggestion-marker-insertion{background:var(--ck-color-suggestion-marker-insertion-background);border-bottom:3px solid var(--ck-color-suggestion-marker-insertion-border);border-top:3px solid var(--ck-color-suggestion-marker-insertion-border)}.ck-content .ck-suggestion-marker-insertion.ck-suggestion-marker--active{background:var(--ck-color-suggestion-marker-insertion-background-active);border-color:var(--ck-color-suggestion-marker-insertion-border-active)}.ck-content .ck-suggestion-marker-insertion.ck-widget{background:none;border:3px solid var(--ck-color-suggestion-marker-insertion-border);text-decoration:none}.ck-content .ck-suggestion-marker-insertion.ck-widget.ck-suggestion-marker--active{border-color:var(--ck-color-suggestion-marker-insertion-border-active)}.ck-content .ck-suggestion-marker-deletion{background:var(--ck-color-suggestion-marker-deletion-background);border-bottom:3px solid var(--ck-color-suggestion-marker-deletion-border);border-top:3px solid var(--ck-color-suggestion-marker-deletion-border);text-decoration:line-through;text-decoration-color:var(--ck-color-suggestion-marker-deletion-stroke);text-decoration-thickness:3px}.ck-content .ck-suggestion-marker-deletion.ck-suggestion-marker--active{background:var(--ck-color-suggestion-marker-deletion-background-active);border-color:var(--ck-color-suggestion-marker-deletion-border-active)}.ck-content .ck-suggestion-marker-deletion.ck-widget{background:none;border:3px solid var(--ck-color-suggestion-marker-deletion-border);text-decoration:none}.ck-content .ck-suggestion-marker-deletion.ck-widget.ck-suggestion-marker--active{border-color:var(--ck-color-suggestion-marker-deletion-border-active)}.ck-content .ck-suggestion-marker-merge:after{background:var(--ck-color-suggestion-marker-deletion-background);border-bottom:3px solid var(--ck-color-suggestion-marker-deletion-border);border-top:3px solid var(--ck-color-suggestion-marker-deletion-border);color:var(--ck-color-suggestion-marker-deletion-stroke);content:"¶";text-decoration:line-through;text-decoration-color:var(--ck-color-suggestion-marker-deletion-stroke)}.ck-content .ck-suggestion-marker-merge.ck-suggestion-marker--active:after{background:var(--ck-color-suggestion-marker-deletion-background-active);border-color:var(--ck-color-suggestion-marker-deletion-border-active)}.ck-content .ck-suggestion-marker-split:after{background:var(--ck-color-suggestion-marker-insertion-background);border-bottom:3px solid var(--ck-color-suggestion-marker-insertion-border);border-top:3px solid var(--ck-color-suggestion-marker-insertion-border);color:var(--ck-color-suggestion-marker-insertion-border);content:"¶"}.ck-content .ck-suggestion-marker-split.ck-suggestion-marker--active:after{background:var(--ck-color-suggestion-marker-insertion-background-active);border-color:var(--ck-color-suggestion-marker-insertion-border-active)}.ck-content .ck-suggestion-marker-formatInline{border-bottom:3px solid var(--ck-color-suggestion-marker-format-border);border-top:3px solid var(--ck-color-suggestion-marker-format-border)}.ck-content .ck-suggestion-marker-formatInline.ck-suggestion-marker--active{border-color:var(--ck-color-suggestion-marker-format-border-active)}.ck-content .ck-suggestion-marker-formatInline.ck-widget{background:none;border:3px solid var(--ck-color-suggestion-marker-format-border)}.ck-content .ck-suggestion-marker-formatInline.ck-widget.ck-suggestion-marker--active{border-color:var(--ck-color-suggestion-marker-format-border-active)}.ck-content .ck-suggestion-marker-formatBlock{background:none;border:0;box-shadow:-7px 0 0 0 var(--ck-color-base-background),-10px 0 0 0 var(--ck-color-suggestion-marker-format-border)}.ck-content .ck-suggestion-marker-formatBlock.ck-suggestion-marker--active{box-shadow:-5px 0 0 0 var(--ck-color-base-background),-8px 0 0 0 var(--ck-color-suggestion-marker-format-border-active)}.ck-content ol .ck-suggestion-marker-formatBlock,.ck-content ul .ck-suggestion-marker-formatBlock{box-shadow:-2px 0 0 0 var(--ck-color-base-background),-5px 0 0 0 var(--ck-color-suggestion-marker-format-border)}.ck-content ol .ck-suggestion-marker-formatBlock.ck-suggestion-marker--active,.ck-content ul .ck-suggestion-marker-formatBlock.ck-suggestion-marker--active{box-shadow:-2px 0 0 0 var(--ck-color-base-background),-5px 0 0 0 var(--ck-color-suggestion-marker-format-border-active)}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-collaboration-core/theme/suggestionmarker.css"],names:[],mappings:"AAQA,MACC,iEAAuE,CACvE,uEAA6E,CAC7E,uEAA2E,CAC3E,2EAAiF,CAEjF,gEAAsE,CACtE,sEAA4E,CAC5E,sEAA0E,CAC1E,0EAAgF,CAChF,8DAAqE,CAErE,8DAAmE,CACnE,sEAA2E,CAE3E,uEAA2E,CAC3E,4EAAkF,CAElF,sEAA0E,CAC1E,2EAAiF,CAEjF,mEAAwE,CACxE,0EACD,CAEA,4CAGC,iEAAkE,CADlE,0EAA2E,CAD3E,uEAmBD,CAfC,yEAEC,wEAAyE,CADzE,sEAED,CAGA,sDACC,eAAgB,CAEhB,mEAAoE,CADpE,oBAMD,CAHC,mFACC,sEACD,CAIF,2CASC,gEAAiE,CAPjE,yEAA0E,CAD1E,sEAAuE,CAIvE,4BAA6B,CAC7B,uEAAwE,CACxE,6BAmBD,CAfC,wEAEC,uEAAwE,CADxE,qEAED,CAGA,qDACC,eAAgB,CAEhB,kEAAmE,CADnE,oBAMD,CAHC,kFACC,qEACD,CAKD,8CAQC,gEAAiE,CANjE,yEAA0E,CAD1E,sEAAuE,CAQvE,uDAAwD,CACxD,WAAY,CALZ,4BAA6B,CAC7B,uEAKD,CAEA,2EAEC,uEAAwE,CADxE,qEAED,CAIA,8CAGC,iEAAkE,CADlE,0EAA2E,CAD3E,uEAAwE,CAGxE,wDAAyD,CACzD,WACD,CAEA,2EAEC,wEAAyE,CADzE,sEAED,CAGD,+CAEC,uEAAwE,CADxE,oEAeD,CAZC,4EACC,mEACD,CAEA,yDACC,eAAgB,CAChB,gEAKD,CAHC,sFACC,mEACD,CAWF,8CAEC,eAAgB,CADhB,QAAS,CAET,iHAKD,CAHC,2EACC,uHACD,CAGD,kGAEC,gHAKD,CAHC,4JACC,uHACD",sourcesContent:["/*\n * What you're currently looking at is the source code of a legally protected, proprietary software.\n * Letters is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n * all Letters content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n *\n * Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n */\n\n:root {\n\t--ck-color-suggestion-marker-insertion-border: hsla(128, 71%, 40%, .35);\n\t--ck-color-suggestion-marker-insertion-border-active: hsla(128, 71%, 25%, .5);\n\t--ck-color-suggestion-marker-insertion-background: hsla(128, 71%, 65%, .35);\n\t--ck-color-suggestion-marker-insertion-background-active: hsla(128, 71%, 50%, .5);\n\n\t--ck-color-suggestion-marker-deletion-border: hsla(345, 71%, 40%, .35);\n\t--ck-color-suggestion-marker-deletion-border-active: hsla(345, 71%, 25%, .5);\n\t--ck-color-suggestion-marker-deletion-background: hsla(345, 71%, 65%, .35);\n\t--ck-color-suggestion-marker-deletion-background-active: hsla(345, 71%, 50%, .5);\n\t--ck-color-suggestion-marker-deletion-stroke: hsla(345, 71%, 20%, .5);\n\n\t--ck-color-suggestion-marker-format-border: hsla(191, 90%, 40%, .4);\n\t--ck-color-suggestion-marker-format-border-active: hsla(191, 90%, 40%, .65);\n\n\t--ck-color-suggestion-widget-insertion-background: hsla(128, 71%, 65%, .05);\n\t--ck-color-suggestion-widget-insertion-background-active: hsla(128, 71%, 50%, .07);\n\n\t--ck-color-suggestion-widget-deletion-background: hsla(345, 71%, 65%, .05);\n\t--ck-color-suggestion-widget-deletion-background-active: hsla(345, 71%, 45%, .07);\n\n\t--ck-color-suggestion-widget-format-background: hsla(191, 90%, 40%, .09);\n\t--ck-color-suggestion-widget-format-background-active: hsla(191, 90%, 40%, .16);\n}\n\n.ck-content .ck-suggestion-marker-insertion {\n\tborder-top: 3px solid var(--ck-color-suggestion-marker-insertion-border);\n\tborder-bottom: 3px solid var(--ck-color-suggestion-marker-insertion-border);\n\tbackground: var(--ck-color-suggestion-marker-insertion-background);\n\n\t&.ck-suggestion-marker--active {\n\t\tborder-color: var(--ck-color-suggestion-marker-insertion-border-active);\n\t\tbackground: var(--ck-color-suggestion-marker-insertion-background-active);\n\t}\n\n\t/* Disable background of marker inside widget. */\n\t&.ck-widget {\n\t\tbackground: none;\n\t\ttext-decoration: none;\n\t\tborder: 3px solid var(--ck-color-suggestion-marker-insertion-border);\n\n\t\t&.ck-suggestion-marker--active {\n\t\t\tborder-color: var(--ck-color-suggestion-marker-insertion-border-active);\n\t\t}\n\t}\n}\n\n.ck-content .ck-suggestion-marker-deletion {\n\tborder-top: 3px solid var(--ck-color-suggestion-marker-deletion-border);\n\tborder-bottom: 3px solid var(--ck-color-suggestion-marker-deletion-border);\n\n\t/* #2810. Safari doesn't support combined text-decoration values. */\n\ttext-decoration: line-through;\n\ttext-decoration-color: var(--ck-color-suggestion-marker-deletion-stroke);\n\ttext-decoration-thickness: 3px;\n\n\tbackground: var(--ck-color-suggestion-marker-deletion-background);\n\n\t&.ck-suggestion-marker--active {\n\t\tborder-color: var(--ck-color-suggestion-marker-deletion-border-active);\n\t\tbackground: var(--ck-color-suggestion-marker-deletion-background-active);\n\t}\n\n\t/* Disable background of marker inside widget. */\n\t&.ck-widget {\n\t\tbackground: none;\n\t\ttext-decoration: none;\n\t\tborder: 3px solid var(--ck-color-suggestion-marker-deletion-border);\n\n\t\t&.ck-suggestion-marker--active {\n\t\t\tborder-color: var(--ck-color-suggestion-marker-deletion-border-active);\n\t\t}\n\t}\n}\n\n.ck-content .ck-suggestion-marker-merge {\n\t&::after {\n\t\tborder-top: 3px solid var(--ck-color-suggestion-marker-deletion-border);\n\t\tborder-bottom: 3px solid var(--ck-color-suggestion-marker-deletion-border);\n\n\t\t/* #2810. Safari doesn't support combined text-decoration values. */\n\t\ttext-decoration: line-through;\n\t\ttext-decoration-color: var(--ck-color-suggestion-marker-deletion-stroke);\n\n\t\tbackground: var(--ck-color-suggestion-marker-deletion-background);\n\t\tcolor: var(--ck-color-suggestion-marker-deletion-stroke);\n\t\tcontent: '¶';\n\t}\n\n\t&.ck-suggestion-marker--active::after {\n\t\tborder-color: var(--ck-color-suggestion-marker-deletion-border-active);\n\t\tbackground: var(--ck-color-suggestion-marker-deletion-background-active);\n\t}\n}\n\n.ck-content .ck-suggestion-marker-split {\n\t&::after {\n\t\tborder-top: 3px solid var(--ck-color-suggestion-marker-insertion-border);\n\t\tborder-bottom: 3px solid var(--ck-color-suggestion-marker-insertion-border);\n\t\tbackground: var(--ck-color-suggestion-marker-insertion-background);\n\t\tcolor: var(--ck-color-suggestion-marker-insertion-border);\n\t\tcontent: '¶';\n\t}\n\n\t&.ck-suggestion-marker--active::after {\n\t\tborder-color: var(--ck-color-suggestion-marker-insertion-border-active);\n\t\tbackground: var(--ck-color-suggestion-marker-insertion-background-active);\n\t}\n}\n\n.ck-content .ck-suggestion-marker-formatInline {\n\tborder-top: 3px solid var(--ck-color-suggestion-marker-format-border);\n\tborder-bottom: 3px solid var(--ck-color-suggestion-marker-format-border);\n\n\t&.ck-suggestion-marker--active {\n\t\tborder-color: var(--ck-color-suggestion-marker-format-border-active);\n\t}\n\n\t&.ck-widget {\n\t\tbackground: none;\n\t\tborder: 3px solid var(--ck-color-suggestion-marker-format-border);\n\n\t\t&.ck-suggestion-marker--active {\n\t\t\tborder-color: var(--ck-color-suggestion-marker-format-border-active);\n\t\t}\n\t}\n}\n\n/* This is a tricky case.\n * We can't use `border-left` because sticky marker to the element looks kinda ugly.\n * We can't use `::before` pseudoelement because it requires `position: relative` of parent, which breaks side-image.\n * We can't use `outline` because it's impossible to display only left side of outline.\n * So... we need to use power of CSS hacks <3 and use doubled box-shadow.\n */\n\n.ck-content .ck-suggestion-marker-formatBlock {\n\tborder: 0;\n\tbackground: none;\n\tbox-shadow: -7px 0 0 0 var(--ck-color-base-background), -10px 0 0 0 var(--ck-color-suggestion-marker-format-border);\n\n\t&.ck-suggestion-marker--active {\n\t\tbox-shadow: -5px 0 0 0 var(--ck-color-base-background), -8px 0 0 0 var(--ck-color-suggestion-marker-format-border-active);\n\t}\n}\n\n.ck-content ul .ck-suggestion-marker-formatBlock,\n.ck-content ol .ck-suggestion-marker-formatBlock {\n\tbox-shadow: -2px 0 0 0 var(--ck-color-base-background), -5px 0 0 0 var(--ck-color-suggestion-marker-format-border);\n\n\t&.ck-suggestion-marker--active {\n\t\tbox-shadow: -2px 0 0 0 var(--ck-color-base-background), -5px 0 0 0 var(--ck-color-suggestion-marker-format-border-active);\n\t}\n}\n"],sourceRoot:""}]);const a=s},4853:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-user-colors--0:#6d78e8;--ck-user-colors--0-alpha:rgba(109,120,232,.15);--ck-user-colors--1:#007a6c;--ck-user-colors--1-alpha:rgba(0,122,108,.15);--ck-user-colors--2:#ba4545;--ck-user-colors--2-alpha:rgba(186,69,69,.15);--ck-user-colors--3:#5635b1;--ck-user-colors--3-alpha:rgba(86,53,177,.15);--ck-user-colors--4:#548a2e;--ck-user-colors--4-alpha:rgba(84,138,46,.15);--ck-user-colors--5:#c3185d;--ck-user-colors--5-alpha:rgba(195,24,93,.15);--ck-user-colors--6:#ea4343;--ck-user-colors--6-alpha:rgba(234,67,67,.15);--ck-user-colors--7:#0bc3d0;--ck-user-colors--7-alpha:rgba(11,195,208,.15);--ck-user-dot-size:6px}.ck .ck-user__color--0{color:var(--ck-user-colors--0)}.ck .ck-user__bg-color--0{background-color:var(--ck-user-colors--0)}.ck .ck-user__selection--0{background-color:var(--ck-user-colors--0-alpha)}.ck .ck-user__selection--0.ck-widget{background-color:transparent;border:3px solid var(--ck-user-colors--0)}.ck .ck-user__marker--0,.ck .ck-user__marker--0 .ck-user__marker-dot,.ck .ck-user__marker--0:after{background-color:var(--ck-user-colors--0)}.ck .ck-user__marker--0 .ck-user__marker-line{border:1px solid var(--ck-user-colors--0)}.ck .ck-user__color--1{color:var(--ck-user-colors--1)}.ck .ck-user__bg-color--1{background-color:var(--ck-user-colors--1)}.ck .ck-user__selection--1{background-color:var(--ck-user-colors--1-alpha)}.ck .ck-user__selection--1.ck-widget{background-color:transparent;border:3px solid var(--ck-user-colors--1)}.ck .ck-user__marker--1,.ck .ck-user__marker--1 .ck-user__marker-dot,.ck .ck-user__marker--1:after{background-color:var(--ck-user-colors--1)}.ck .ck-user__marker--1 .ck-user__marker-line{border:1px solid var(--ck-user-colors--1)}.ck .ck-user__color--2{color:var(--ck-user-colors--2)}.ck .ck-user__bg-color--2{background-color:var(--ck-user-colors--2)}.ck .ck-user__selection--2{background-color:var(--ck-user-colors--2-alpha)}.ck .ck-user__selection--2.ck-widget{background-color:transparent;border:3px solid var(--ck-user-colors--2)}.ck .ck-user__marker--2,.ck .ck-user__marker--2 .ck-user__marker-dot,.ck .ck-user__marker--2:after{background-color:var(--ck-user-colors--2)}.ck .ck-user__marker--2 .ck-user__marker-line{border:1px solid var(--ck-user-colors--2)}.ck .ck-user__color--3{color:var(--ck-user-colors--3)}.ck .ck-user__bg-color--3{background-color:var(--ck-user-colors--3)}.ck .ck-user__selection--3{background-color:var(--ck-user-colors--3-alpha)}.ck .ck-user__selection--3.ck-widget{background-color:transparent;border:3px solid var(--ck-user-colors--3)}.ck .ck-user__marker--3,.ck .ck-user__marker--3 .ck-user__marker-dot,.ck .ck-user__marker--3:after{background-color:var(--ck-user-colors--3)}.ck .ck-user__marker--3 .ck-user__marker-line{border:1px solid var(--ck-user-colors--3)}.ck .ck-user__color--4{color:var(--ck-user-colors--4)}.ck .ck-user__bg-color--4{background-color:var(--ck-user-colors--4)}.ck .ck-user__selection--4{background-color:var(--ck-user-colors--4-alpha)}.ck .ck-user__selection--4.ck-widget{background-color:transparent;border:3px solid var(--ck-user-colors--4)}.ck .ck-user__marker--4,.ck .ck-user__marker--4 .ck-user__marker-dot,.ck .ck-user__marker--4:after{background-color:var(--ck-user-colors--4)}.ck .ck-user__marker--4 .ck-user__marker-line{border:1px solid var(--ck-user-colors--4)}.ck .ck-user__color--5{color:var(--ck-user-colors--5)}.ck .ck-user__bg-color--5{background-color:var(--ck-user-colors--5)}.ck .ck-user__selection--5{background-color:var(--ck-user-colors--5-alpha)}.ck .ck-user__selection--5.ck-widget{background-color:transparent;border:3px solid var(--ck-user-colors--5)}.ck .ck-user__marker--5,.ck .ck-user__marker--5 .ck-user__marker-dot,.ck .ck-user__marker--5:after{background-color:var(--ck-user-colors--5)}.ck .ck-user__marker--5 .ck-user__marker-line{border:1px solid var(--ck-user-colors--5)}.ck .ck-user__color--6{color:var(--ck-user-colors--6)}.ck .ck-user__bg-color--6{background-color:var(--ck-user-colors--6)}.ck .ck-user__selection--6{background-color:var(--ck-user-colors--6-alpha)}.ck .ck-user__selection--6.ck-widget{background-color:transparent;border:3px solid var(--ck-user-colors--6)}.ck .ck-user__marker--6,.ck .ck-user__marker--6 .ck-user__marker-dot,.ck .ck-user__marker--6:after{background-color:var(--ck-user-colors--6)}.ck .ck-user__marker--6 .ck-user__marker-line{border:1px solid var(--ck-user-colors--6)}.ck .ck-user__color--7{color:var(--ck-user-colors--7)}.ck .ck-user__bg-color--7{background-color:var(--ck-user-colors--7)}.ck .ck-user__selection--7{background-color:var(--ck-user-colors--7-alpha)}.ck .ck-user__selection--7.ck-widget{background-color:transparent;border:3px solid var(--ck-user-colors--7)}.ck .ck-user__marker--7,.ck .ck-user__marker--7 .ck-user__marker-dot,.ck .ck-user__marker--7:after{background-color:var(--ck-user-colors--7)}.ck .ck-user__marker--7 .ck-user__marker-line{border:1px solid var(--ck-user-colors--7)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-collaboration-core/theme/usercolors.css","webpack://./node_modules/@ckeditor/ckeditor5-collaboration-core/theme/usercolormixin.css"],names:[],mappings:"AAUA,MACC,2BAA2C,CAC3C,+CAAoD,CAEpD,2BAA4C,CAC5C,6CAAqD,CAErD,2BAAyC,CACzC,6CAAkD,CAElD,2BAA2C,CAC3C,6CAAoD,CAEpD,2BAA0C,CAC1C,6CAAmD,CAEnD,2BAA2C,CAC3C,6CAAoD,CAEpD,2BAAyC,CACzC,6CAAkD,CAElD,2BAA2C,CAC3C,8CAAoD,CAEpD,sBACD,CCnCC,uBACC,8BACD,CAEA,0BACC,yCACD,CAEA,2BACC,+CAMD,CAJC,qCACC,4BAA6B,CAC7B,yCACD,CAIA,mGAGC,yCACD,CAEA,8CACC,yCACD,CA1BD,uBACC,8BACD,CAEA,0BACC,yCACD,CAEA,2BACC,+CAMD,CAJC,qCACC,4BAA6B,CAC7B,yCACD,CAIA,mGAGC,yCACD,CAEA,8CACC,yCACD,CA1BD,uBACC,8BACD,CAEA,0BACC,yCACD,CAEA,2BACC,+CAMD,CAJC,qCACC,4BAA6B,CAC7B,yCACD,CAIA,mGAGC,yCACD,CAEA,8CACC,yCACD,CA1BD,uBACC,8BACD,CAEA,0BACC,yCACD,CAEA,2BACC,+CAMD,CAJC,qCACC,4BAA6B,CAC7B,yCACD,CAIA,mGAGC,yCACD,CAEA,8CACC,yCACD,CA1BD,uBACC,8BACD,CAEA,0BACC,yCACD,CAEA,2BACC,+CAMD,CAJC,qCACC,4BAA6B,CAC7B,yCACD,CAIA,mGAGC,yCACD,CAEA,8CACC,yCACD,CA1BD,uBACC,8BACD,CAEA,0BACC,yCACD,CAEA,2BACC,+CAMD,CAJC,qCACC,4BAA6B,CAC7B,yCACD,CAIA,mGAGC,yCACD,CAEA,8CACC,yCACD,CA1BD,uBACC,8BACD,CAEA,0BACC,yCACD,CAEA,2BACC,+CAMD,CAJC,qCACC,4BAA6B,CAC7B,yCACD,CAIA,mGAGC,yCACD,CAEA,8CACC,yCACD,CA1BD,uBACC,8BACD,CAEA,0BACC,yCACD,CAEA,2BACC,+CAMD,CAJC,qCACC,4BAA6B,CAC7B,yCACD,CAIA,mGAGC,yCACD,CAEA,8CACC,yCACD",sourcesContent:['/*\n * What you\'re currently looking at is the source code of a legally protected, proprietary software.\n * CKEditor 5 Collaboration is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n * all CKEditor 5 Collaboration content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n *\n * Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n */\n\n@import "./usercolormixin.css";\n\n:root {\n\t--ck-user-colors--0: hsla(235, 73%, 67%, 1);\n\t--ck-user-colors--0-alpha: hsla(235, 73%, 67%, 0.15);\n\n\t--ck-user-colors--1: hsla(173, 100%, 24%, 1);\n\t--ck-user-colors--1-alpha: hsla(173, 100%, 24%, 0.15);\n\n\t--ck-user-colors--2: hsla(0, 46%, 50%, 1);\n\t--ck-user-colors--2-alpha: hsla(0, 46%, 50%, 0.15);\n\n\t--ck-user-colors--3: hsla(256, 54%, 45%, 1);\n\t--ck-user-colors--3-alpha: hsla(256, 54%, 45%, 0.15);\n\n\t--ck-user-colors--4: hsla(95, 50%, 36%, 1);\n\t--ck-user-colors--4-alpha: hsla(95, 50%, 36%, 0.15);\n\n\t--ck-user-colors--5: hsla(336, 78%, 43%, 1);\n\t--ck-user-colors--5-alpha: hsla(336, 78%, 43%, 0.15);\n\n\t--ck-user-colors--6: hsla(0, 80%, 59%, 1);\n\t--ck-user-colors--6-alpha: hsla(0, 80%, 59%, 0.15);\n\n\t--ck-user-colors--7: hsla(184, 90%, 43%, 1);\n\t--ck-user-colors--7-alpha: hsla(184, 90%, 43%, 0.15);\n\n\t--ck-user-dot-size: 6px;\n}\n\n/* We are using mixins here because of lack of PostCSS loop plugin. */\n\n@mixin userColor var(--ck-user-colors--0), var(--ck-user-colors--0-alpha), 0;\n@mixin userColor var(--ck-user-colors--1), var(--ck-user-colors--1-alpha), 1;\n@mixin userColor var(--ck-user-colors--2), var(--ck-user-colors--2-alpha), 2;\n@mixin userColor var(--ck-user-colors--3), var(--ck-user-colors--3-alpha), 3;\n@mixin userColor var(--ck-user-colors--4), var(--ck-user-colors--4-alpha), 4;\n@mixin userColor var(--ck-user-colors--5), var(--ck-user-colors--5-alpha), 5;\n@mixin userColor var(--ck-user-colors--6), var(--ck-user-colors--6-alpha), 6;\n@mixin userColor var(--ck-user-colors--7), var(--ck-user-colors--7-alpha), 7;\n',"@define-mixin userColor $color, $colorAlpha, $number {\n\t.ck .ck-user__color--$(number) {\n\t\tcolor: $color;\n\t}\n\n\t.ck .ck-user__bg-color--$(number) {\n\t\tbackground-color: $color;\n\t}\n\n\t.ck .ck-user__selection--$(number) {\n\t\tbackground-color: $colorAlpha;\n\n\t\t&.ck-widget {\n\t\t\tbackground-color: transparent;\n\t\t\tborder: 3px solid $color;\n\t\t}\n\t}\n\n\t.ck .ck-user__marker--$(number) {\n\t\t&,\n\t\t&:after,\n\t\t& .ck-user__marker-dot {\n\t\t\tbackground-color: $color;\n\t\t}\n\n\t\t& .ck-user__marker-line {\n\t\t\tborder: 1px solid $color;\n\t\t}\n\t}\n}"],sourceRoot:""}]);const a=s},9097:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-user-avatar-size:40px;--ck-user-avatar-background:#3670ab;--ck-user-avatar-color:#fff}.ck.ck-user{align-items:center;background-color:var(--ck-user-avatar-background);border-radius:50%;display:flex;height:var(--ck-user-avatar-size);justify-content:center;min-height:var(--ck-user-avatar-size);min-width:var(--ck-user-avatar-size);position:relative;width:var(--ck-user-avatar-size)}.ck.ck-user__name{color:var(--ck-user-avatar-color);cursor:default;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.ck.ck-user__name.ck-user__name--hidden{display:none}.ck.ck-user__img{background-color:var(--ck-user-avatar-background);background-position:50%;background-repeat:no-repeat;background-size:cover;border:2px solid var(--ck-user-avatar-background);border-radius:50%;display:none;height:inherit;width:inherit}.ck.ck-user__img.ck-user__anonymous{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='%23FFF' d='M9.8 20H2c0-5.7 5-5.7 6-7l.2-.8c-1.6-.8-2.7-2.7-2.7-5 0-2.8 2-5.2 4.3-5.2S14 4.4 14 7.3c0 2.2-1 4-2.6 5l.2.6c1.2 1.3 6 1.4 6 7H9.8z'/%3E%3C/svg%3E\");display:block}.ck.ck-user__img.ck-user__anonymous+.ck-user__name{display:none}.ck.ck-user__img.ck-user__avatar{background-color:#fff;display:block}.ck.ck-user__img.ck-user__img--hidden{display:none}.ck.ck-user__notification{align-items:center;background:#fff;border:2px solid #fff;border-radius:50%;box-sizing:content-box;display:flex;height:15px;justify-content:center;overflow:hidden;position:absolute;right:-7px;top:-8px;transform:translateZ(0);width:15px}.ck.ck-user__notification .ck-user__icon{background:#fff;color:var(--ck-color-annotation-info);height:19px;max-height:19px;max-width:19px;min-height:19px;min-width:19px;width:19px}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-collaboration-core/theme/users.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css"],names:[],mappings:"AAUA,MACC,0BAA2B,CAE3B,mCAA+C,CAC/C,2BACD,CAEA,YAGC,kBAAmB,CAGnB,iDAAkD,CADlD,iBAAkB,CAJlB,YAAa,CAMb,iCAAkC,CALlC,sBAAuB,CAQvB,qCAAsC,CADtC,oCAAqC,CALrC,iBAAkB,CAIlB,gCAGD,CAEA,kBACC,iCAAkC,CAClC,cAAe,CCvBf,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBD0BD,CAHC,wCACC,YACD,CAGD,iBAOC,iDAAkD,CAHlD,uBAAkC,CAClC,2BAA4B,CAC5B,qBAAsB,CAGtB,iDAAkD,CADlD,iBAAkB,CAPlB,YAAa,CAEb,cAAe,CADf,aA6BD,CApBC,oCAEC,oSAAmZ,CADnZ,aAOD,CAHC,mDACC,YACD,CAGD,iCAIC,qBAAkC,CAHlC,aAID,CAEA,sCACC,YACD,CAGD,0BAKC,kBAAmB,CACnB,eAAiB,CACjB,qBAAuB,CACvB,iBAAkB,CAClB,sBAAuB,CARvB,YAAa,CAEb,WAAY,CACZ,sBAAuB,CAUvB,eAAgB,CAHhB,iBAAkB,CAElB,UAAW,CADX,QAAS,CAGT,uBAAwB,CAbxB,UAyBD,CAVC,yCAEC,eAAiB,CADjB,qCAAsC,CAGtC,WAAY,CAEZ,eAAgB,CADhB,cAAe,CAGf,eAAgB,CADhB,cAAe,CAJf,UAMD",sourcesContent:["/*\n * What you're currently looking at is the source code of a legally protected, proprietary software.\n * CKEditor 5 Collaboration is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n * all CKEditor 5 Collaboration content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n *\n * Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n */\n\n@import '@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css';\n\n:root {\n\t--ck-user-avatar-size: 40px;\n\n\t--ck-user-avatar-background: hsl(210, 52%, 44%);\n\t--ck-user-avatar-color: hsl(0, 0%, 100%);\n}\n\n.ck.ck-user {\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\tposition: relative;\n\tborder-radius: 50%;\n\tbackground-color: var(--ck-user-avatar-background);\n\theight: var(--ck-user-avatar-size);\n\twidth: var(--ck-user-avatar-size);\n\tmin-width: var(--ck-user-avatar-size);\n\tmin-height: var(--ck-user-avatar-size);\n}\n\n.ck.ck-user__name {\n\tcolor: var(--ck-user-avatar-color);\n\tcursor: default;\n\t@mixin ck-unselectable;\n\n\t&.ck-user__name--hidden {\n\t\tdisplay: none;\n\t}\n}\n\n.ck.ck-user__img {\n\tdisplay: none;\n\twidth: inherit;\n\theight: inherit;\n\tbackground-position: center center;\n\tbackground-repeat: no-repeat;\n\tbackground-size: cover;\n\tbackground-color: var(--ck-user-avatar-background);\n\tborder-radius: 50%;\n\tborder: 2px solid var(--ck-user-avatar-background);\n\n\t&.ck-user__anonymous {\n\t\tdisplay: block;\n\t\tbackground-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2020%2020%22%3E%0A%20%20%3Cpath%20fill%3D%22%23FFF%22%20fill-rule%3D%22nonzero%22%20d%3D%22M9.8%2020H2c0-5.7%205-5.7%206-7l.2-.8c-1.6-.8-2.7-2.7-2.7-5%200-2.8%202-5.2%204.3-5.2S14%204.4%2014%207.3c0%202.2-1%204-2.6%205l.2.6c1.2%201.3%206%201.4%206%207H9.8z%22%2F%3E%0A%3C%2Fsvg%3E);\n\n\t\t/* Do not display initials when user is anonymous. */\n\t\t& + .ck-user__name {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t&.ck-user__avatar {\n\t\tdisplay: block;\n\n\t\t/* In case if avatar is transparent make background white. */\n\t\tbackground-color: hsl(0, 0%, 100%);\n\t}\n\n\t&.ck-user__img--hidden {\n\t\tdisplay: none;\n\t}\n}\n\n.ck.ck-user__notification {\n\tdisplay: flex;\n\twidth: 15px;\n\theight: 15px;\n\tjustify-content: center;\n\talign-items: center;\n\tbackground: white;\n\tborder: 2px solid white;\n\tborder-radius: 50%;\n\tbox-sizing: content-box;\n\n\tposition: absolute;\n\ttop: -8px;\n\tright: -7px;\n\toverflow: hidden;\n\ttransform: translateZ(0);\n\n\t& .ck-user__icon {\n\t\tcolor: var(--ck-color-annotation-info);\n\t\tbackground: white;\n\t\twidth: 19px;\n\t\theight: 19px;\n\t\tmax-width: 19px;\n\t\tmax-height: 19px;\n\t\tmin-width: 19px;\n\t\tmin-height: 19px;\n\t}\n}\n","/*\n * Copyright (c) 2003-2022, 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"],sourceRoot:""}]);const a=s},6610:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-inline-annotation-container-width:300px;--ck-inline-annotation-container-max-height:400px}.ck.ck-balloon-panel .ck-annotation-wrapper{max-height:var(--ck-inline-annotation-container-max-height);overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;position:static;width:var(--ck-inline-annotation-container-width)}.ck.ck-balloon-panel .ck-annotation{animation:none}.ck.ck-balloon-panel .ck-annotation-wrapper *{white-space:normal}.ck.ck-balloon-panel .ck-annotation-wrapper strong{font-weight:700}.ck.ck-balloon-panel .ck-annotation-wrapper i{font-style:italic}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-comments/theme/annotation-inline.css"],names:[],mappings:"AAUA,MACC,4CAA6C,CAC7C,iDACD,CAEA,4CAKC,2DAA4D,CAQ5D,iBAAkB,CANlB,eAAgB,CAGhB,6BAA8B,CAR9B,eAAgB,CAEhB,iDAUD,CAEA,oCAEC,cACD,CAEA,8CAEC,kBACD,CAGA,mDACC,eACD,CAEA,8CACC,iBACD",sourcesContent:["/*\n * What you're currently looking at is the source code of a legally protected, proprietary software.\n * CKEditor 5 Collaboration is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n * all CKEditor 5 Collaboration content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n *\n * Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n */\n\n/* Common styles for inline comment and inline suggestion. */\n\n:root {\n\t--ck-inline-annotation-container-width: 300px;\n\t--ck-inline-annotation-container-max-height: 400px;\n}\n\n.ck.ck-balloon-panel .ck-annotation-wrapper {\n\t/* Override default `position: absolute`. */\n\tposition: static;\n\n\twidth: var(--ck-inline-annotation-container-width);\n\tmax-height: var(--ck-inline-annotation-container-max-height);\n\n\toverflow-y: auto;\n\n\t/* Get rid of scroll chaining. */\n\toverscroll-behavior-y: contain;\n\n\t/* We need to hide overflow in x-axis to prevent container stretching because of buttons tooltip. */\n\toverflow-x: hidden;\n}\n\n.ck.ck-balloon-panel .ck-annotation {\n\t/* We don't need fadeInLeft animation for inline annotations. */\n\tanimation: none;\n}\n\n.ck.ck-balloon-panel .ck-annotation-wrapper * {\n\t/* Default `.ck.ck-reset_all *` has `white-space: nowrap` and display content in one line. */\n\twhite-space: normal;\n}\n\n/* Because `.ck.ck-reset_all *` is overriding default font property. */\n.ck.ck-balloon-panel .ck-annotation-wrapper strong {\n\tfont-weight: bold;\n}\n\n.ck.ck-balloon-panel .ck-annotation-wrapper i {\n\tfont-style: italic;\n}\n"],sourceRoot:""}]);const a=s},5899:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-annotation-icon:grey;--ck-color-annotation-info:#757575;--ck-annotation-button-size:0.85em}.ck .ck-annotation{--ck-user-avatar-size:28px;animation:fadeInLeft .3s;display:flex;font-size:var(--ck-font-size-base);padding:var(--ck-spacing-standard);position:relative;transition:background-color .3s ease}.ck .ck-annotation .ck-button{background-color:transparent;border-radius:var(--ck-border-radius);color:var(--ck-color-annotation-icon);cursor:pointer;font-size:var(--ck-annotation-button-size);min-height:unset;min-width:unset}.ck .ck-annotation__main{border-radius:var(--ck-border-radius);display:flex;flex-wrap:wrap;justify-content:space-between;padding-left:var(--ck-spacing-standard);transition:all .2s ease;width:calc(100% - var(--ck-user-avatar-size))}.ck .ck-annotation__main p{font-size:var(--ck-font-size-base);line-height:1.5em;margin:0;white-space:normal}.ck .ck-annotation__user{margin-top:var(--ck-spacing-small)}.ck .ck-annotation__info{align-items:center;color:var(--ck-color-annotation-info);display:flex;min-height:2.4em}.ck .ck-annotation__info-name,.ck .ck-annotation__info-time{color:var(--ck-color-annotation-info);font-size:var(--ck-font-size-small);font-weight:700;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ck .ck-annotation__info-time{margin-left:var(--ck-spacing-large)}.ck .ck-annotation__actions{opacity:.5;transition:opacity .2s ease}.ck .ck-annotation__content-wrapper{width:100%}@keyframes fadeInLeft{0%{opacity:0;transform:translate3d(-5%,0,0)}to{opacity:1;transform:translateZ(0)}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-comments/theme/annotation.css"],names:[],mappings:"AASA,MACC,+BAA2C,CAC3C,kCAA2C,CAE3C,kCACD,CAEA,mBAEC,0BAA2B,CAM3B,wBAA2B,CAF3B,YAAa,CAFb,kCAAmC,CAMnC,kCAAmC,CAHnC,iBAAkB,CAElB,oCAED,CAGC,8BAEC,4BAA6B,CAK7B,qCAAsC,CADtC,qCAAsC,CADtC,cAAe,CAGf,0CAA2C,CAJ3C,gBAAiB,CADjB,eAMD,CAGD,yBASC,qCAAsC,CARtC,YAAa,CACb,cAAe,CACf,6BAA8B,CAO9B,uCAAwC,CAFxC,uBAA0B,CAF1B,6CAKD,CAEA,2BAKC,kCAAmC,CAGnC,iBAAkB,CAPlB,QAAS,CAGT,kBAKD,CAEA,yBACC,kCACD,CAEA,yBAEC,kBAAmB,CACnB,qCAAsC,CAFtC,YAAa,CAKb,gBACD,CAEA,4DASC,qCAAsC,CACtC,mCAAoC,CARpC,eAAiB,CACjB,eAAgB,CAEhB,eAAgB,CAChB,sBAAuB,CAFvB,kBAOD,CAEA,8BACC,mCACD,CAEA,4BAEC,UAAY,CADZ,2BAED,CAGA,oCACC,UACD,CAEA,sBACC,GAEC,SAAU,CADV,8BAED,CAEA,GAEC,SAAU,CADV,uBAED,CACD",sourcesContent:["/*\n * What you're currently looking at is the source code of a legally protected, proprietary software.\n * CKEditor 5 Collaboration is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n * all CKEditor 5 Collaboration content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n *\n * Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n */\n\n/* Common styles for single comment and single suggestion. */\n:root {\n\t--ck-color-annotation-icon: hsl(0, 0%, 50%);\n\t--ck-color-annotation-info: hsl(0, 0%, 46%);\n\n\t--ck-annotation-button-size: 0.85em;\n}\n\n.ck .ck-annotation {\n\t/* Make avatar size in the comment smaller than in presence list. */\n\t--ck-user-avatar-size: 28px;\n\n\tfont-size: var(--ck-font-size-base);\n\n\tdisplay: flex;\n\tposition: relative;\n\tanimation: fadeInLeft 300ms;\n\ttransition: background-color 300ms ease;\n\tpadding: var(--ck-spacing-standard);\n}\n\n.ck .ck-annotation {\n\t& .ck-button {\n\t\t/* Overwrite CK5 button default styles. */\n\t\tbackground-color: transparent;\n\t\tmin-width: unset;\n\t\tmin-height: unset;\n\t\tcursor: pointer;\n\t\tcolor: var(--ck-color-annotation-icon);\n\t\tborder-radius: var(--ck-border-radius);\n\t\tfont-size: var(--ck-annotation-button-size);\n\t}\n}\n\n.ck .ck-annotation__main {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tjustify-content: space-between;\n\n\t/* #1829. Firefox is wrongly rendering flex container width 100% with overflowed (non-spaced) text. */\n\twidth: calc( 100% - var(--ck-user-avatar-size) );\n\n\ttransition: all 200ms ease;\n\tborder-radius: var(--ck-border-radius);\n\tpadding-left: var(--ck-spacing-standard);\n}\n\n.ck .ck-annotation__main p {\n\tmargin: 0;\n\n\t/* We need it to prevent `.ck.ck-reset` ovverride. */\n\twhite-space: normal;\n\tfont-size: var(--ck-font-size-base);\n\n\t/* TODO: refactor this value later. */\n\tline-height: 1.5em;\n}\n\n.ck .ck-annotation__user {\n\tmargin-top: var(--ck-spacing-small);\n}\n\n.ck .ck-annotation__info {\n\tdisplay: flex;\n\talign-items: center;\n\tcolor: var(--ck-color-annotation-info);\n\n\t/* #156. Edit & remove icon are higher than plain text with the same font-size, so we need to take care if icons are hidden. */\n\tmin-height: 2.4em;\n}\n\n.ck .ck-annotation__info-name,\n.ck .ck-annotation__info-time {\n\tfont-weight: bold;\n\tmax-width: 150px;\n\twhite-space: nowrap;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n\n\t/* We need it to prevent `.ck.ck-reset` ovverride. */\n\tcolor: var(--ck-color-annotation-info);\n\tfont-size: var(--ck-font-size-small);\n}\n\n.ck .ck-annotation__info-time {\n\tmargin-left: var(--ck-spacing-large);\n}\n\n.ck .ck-annotation__actions {\n\ttransition: opacity 200ms ease;\n\topacity: 0.5;\n}\n\n/* Because of display flex, we need to strech out annotation content to 100%. */\n.ck .ck-annotation__content-wrapper {\n\twidth: 100%;\n}\n\n@keyframes fadeInLeft {\n\tfrom {\n\t\ttransform: translate3d( -5%, 0, 0 );\n\t\topacity: 0;\n\t}\n\n\tto {\n\t\ttransform: translate3d( 0, 0, 0 );\n\t\topacity: 1;\n\t}\n}\n"],sourceRoot:""}]);const a=s},1556:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,':root{--ck-color-comment-background:#f3f7fb;--ck-color-comment-separator:#cddeef;--ck-color-comment-remove-background:#fcc;--ck-color-comment-input-background:var(--ck-color-comment-background)}.ck .ck-comment__wrapper{font-size:var(--ck-font-size-base);outline:0;position:relative;transition:all .3s linear}.ck .ck-comment__wrapper.ck-comment--remove-confirmation{transform:translate3d(-100%,0,0)}.ck .ck-comment__wrapper:first-of-type{border-top-left-radius:var(--ck-border-radius);border-top-right-radius:var(--ck-border-radius)}.ck .ck-comment:after{background-color:var(--ck-color-comment-separator);content:"";display:block;height:100%;left:calc(var(--ck-spacing-standard) + var(--ck-user-avatar-size)/2 - 2px);opacity:1;position:absolute;top:calc(var(--ck-user-avatar-size) + var(--ck-spacing-small));width:4px}.ck .ck-comment--remove{background-color:var(--ck-color-comment-remove-background)}.ck .ck-comment--remove:after{opacity:0}.ck .ck-comment--edit{background-color:var(--ck-color-comment-input-background)}.ck .ck-comment--edit:after{opacity:0}.ck .ck-comment__main .ck-comment__input-wrapper{display:flex;flex-direction:column;position:relative;transition:all .3s linear}.ck .ck-comment__main .ck-comment__input-wrapper .ck-comment__input{padding:0}.ck .ck-comment__content{word-break:break-word}.ck .ck-comment__user{z-index:var(--ck-z-default)}.ck-comment__input-actions .ck.ck-button.ck-comment__input-actions--submit{color:var(--ck-color-button-save)}.ck-comment__input-actions .ck.ck-button.ck-comment__input-actions--cancel{color:var(--ck-color-button-cancel)}.ck .ck-comment p,.ck .ck-comment__input p{margin:0}.ck .ck-comment ol,.ck .ck-comment ul,.ck .ck-comment__input ol,.ck .ck-comment__input ul{margin-left:10px;padding-left:10px}.ck .ck-comment ul,.ck .ck-comment__input ul{list-style:disc;margin-bottom:5px;margin-top:0}.ck .ck-comment ul ul,.ck .ck-comment__input ul ul{list-style:circle}.ck .ck-comment ul ul ul,.ck .ck-comment__input ul ul ul{list-style:square}.ck .ck-comment__external{color:var(--ck-color-annotation-info);font-size:var(--ck-font-size-tiny);font-style:italic;margin-top:var(--ck-spacing-standard)}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-comments/theme/comment.css"],names:[],mappings:"AAQA,MACC,qCAAiD,CACjD,oCAAgD,CAChD,yCAAuD,CACvD,sEACD,CAEA,yBACC,kCAAmC,CAEnC,SAAU,CADV,iBAAkB,CAElB,yBAUD,CARC,yDACC,gCACD,CAEA,uCAEC,8CAA+C,CAD/C,+CAED,CAIA,sBAcC,kDAAmD,CAbnD,UAAW,CACX,aAAc,CAWd,WAAY,CAPZ,0EAKE,CAPF,SAAU,CADV,iBAAkB,CAElB,8DAAiE,CAOjE,SAGD,CAGD,wBACC,0DAKD,CAHC,8BACC,SACD,CAGD,sBACC,yDAKD,CAHC,4BACC,SACD,CAIA,iDACC,YAAa,CACb,qBAAsB,CACtB,iBAAkB,CAClB,yBAKD,CAHC,oEACC,SACD,CAIF,yBACC,qBACD,CAEA,sBAEC,2BACD,CAGA,2EACC,iCACD,CAEA,2EACC,mCACD,CAMC,2CACC,QACD,CAEA,0FAGC,gBAAiB,CADjB,iBAED,CAEA,6CACC,eAAgB,CAChB,iBAAkB,CAClB,YASD,CAPC,mDACC,iBAKD,CAHC,yDACC,iBACD,CAKH,0BAEC,qCAAsC,CACtC,kCAAmC,CAFnC,iBAAkB,CAGlB,qCACD",sourcesContent:["/*\n * What you're currently looking at is the source code of a legally protected, proprietary software.\n * CKEditor 5 Collaboration is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n * all CKEditor 5 Collaboration content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n *\n * Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n */\n\n:root {\n\t--ck-color-comment-background: hsl(210, 52%, 97%);\n\t--ck-color-comment-separator: hsl(210, 52%, 87%);\n\t--ck-color-comment-remove-background: hsl(0, 100%, 90%);\n\t--ck-color-comment-input-background: var(--ck-color-comment-background);\n}\n\n.ck .ck-comment__wrapper {\n\tfont-size: var(--ck-font-size-base);\n\tposition: relative;\n\toutline: 0;\n\ttransition: all 300ms linear;\n\n\t&.ck-comment--remove-confirmation {\n\t\ttransform: translate3d( -100%, 0, 0 );\n\t}\n\n\t&:first-of-type {\n\t\tborder-top-right-radius: var(--ck-border-radius);\n\t\tborder-top-left-radius: var(--ck-border-radius);\n\t}\n}\n\n.ck .ck-comment {\n\t&::after {\n\t\tcontent: '';\n\t\tdisplay: block;\n\t\tposition: absolute;\n\t\topacity: 1;\n\t\ttop: calc( var(--ck-user-avatar-size) + var(--ck-spacing-small) );\n\t\tleft: calc(\n\t\t\tvar(--ck-spacing-standard) + ( var(--ck-user-avatar-size) / 2 )\n\n\t\t\t/* Half width of line. */\n\t\t\t- 2px\n\t\t\t);\n\t\twidth: 4px;\n\t\theight: 100%;\n\t\tbackground-color: var(--ck-color-comment-separator);\n\t}\n}\n\n.ck .ck-comment--remove {\n\tbackground-color: var(--ck-color-comment-remove-background);\n\n\t&::after {\n\t\topacity: 0;\n\t}\n}\n\n.ck .ck-comment--edit {\n\tbackground-color: var(--ck-color-comment-input-background);\n\n\t&::after {\n\t\topacity: 0;\n\t}\n}\n\n.ck .ck-comment__main {\n\t& .ck-comment__input-wrapper {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\tposition: relative;\n\t\ttransition: all 300ms linear;\n\n\t\t& .ck-comment__input {\n\t\t\tpadding: 0;\n\t\t}\n\t}\n}\n\n.ck .ck-comment__content {\n\tword-break: break-word;\n}\n\n.ck .ck-comment__user {\n\t/* Display user above vertical line. */\n\tz-index: var(--ck-z-default);\n}\n\n/* We need specificity 030 to beat styles in `commentinput.css`. */\n.ck-comment__input-actions .ck.ck-button.ck-comment__input-actions--submit {\n\tcolor: var(--ck-color-button-save);\n}\n\n.ck-comment__input-actions .ck.ck-button.ck-comment__input-actions--cancel {\n\tcolor: var(--ck-color-button-cancel);\n}\n\n/* Common styles for typography inside comment element and editable input.\nWe are styling resetting list-style because of parent
    element. */\n.ck .ck-comment,\n.ck .ck-comment__input {\n\t& p {\n\t\tmargin: 0;\n\t}\n\n\t& ul,\n\t& ol {\n\t\tpadding-left: 10px;\n\t\tmargin-left: 10px;\n\t}\n\n\t& ul {\n\t\tlist-style: disc;\n\t\tmargin-bottom: 5px;\n\t\tmargin-top: 0;\n\n\t\t& ul {\n\t\t\tlist-style: circle;\n\n\t\t\t& ul {\n\t\t\t\tlist-style: square;\n\t\t\t}\n\t\t}\n\t}\n}\n\n.ck .ck-comment__external {\n\tfont-style: italic;\n\tcolor: var(--ck-color-annotation-info);\n\tfont-size: var(--ck-font-size-tiny);\n\tmargin-top: var(--ck-spacing-standard);\n}\n"],sourceRoot:""}]);const a=s},4964:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck .ck-comment__input-container{--ck-user-avatar-size:28px;background:var(--ck-color-comment-background);display:none;font-size:var(--ck-font-size-base);padding:var(--ck-spacing-standard)}.ck .ck-comment__input-container--active{display:flex}.ck .ck-comment__input{background-color:transparent;border-width:0;color:var(--ck-color-base-text);padding:var(--ck-spacing-standard);padding-top:var(--ck-spacing-medium);resize:none;transition:color .3s ease-in-out}.ck .ck-comment__input:focus{outline:none}.ck .ck-comment__input .ck-editor__editable_inline{--ck-focus-ring:none;--ck-inner-shadow:none;background-color:transparent;border:0;overflow:visible;padding:0;word-break:break-word}.ck-comment__input-wrapper .ck.ck-editor__editable_inline :first-child{margin-top:0}.ck-comment__input-wrapper .ck.ck-editor__editable_inline :last-child{margin-bottom:0}.ck .ck-comment__input-actions{display:none;text-align:right;width:100%}.ck .ck-comment__input-actions.ck-comment__input-actions--active{display:block}.ck .ck-comment__input-actions .ck-button{background-color:transparent;border-radius:var(--ck-border-radius);color:var(--ck-color-annotations-icon);cursor:pointer;font-size:var(--ck-annotation-button-size);min-height:unset;min-width:unset}.ck .ck-comment__input-actions .ck-button.ck-disabled{opacity:.3}.ck .ck-comment__input-textarea{display:block}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-comments/theme/commentinput.css"],names:[],mappings:"AAQA,iCAEC,0BAA2B,CAM3B,6CAA8C,CAF9C,YAAa,CAFb,kCAAmC,CAGnC,kCAED,CAEA,yCACC,YACD,CAEA,uBASC,4BAA6B,CAF7B,cAAe,CADf,+BAAgC,CALhC,kCAAmC,CAGnC,oCAAqC,CAIrC,WAAY,CAEZ,gCAiBD,CAfC,6BACC,YACD,CAEA,mDAEC,oBAAqB,CACrB,sBAAuB,CAKvB,4BAA6B,CAD7B,QAAS,CADT,gBAAiB,CADjB,SAAU,CAIV,qBACD,CAKD,uEACC,YACD,CACA,sEACC,eACD,CAEA,+BAGC,YAAa,CADb,gBAAiB,CADjB,UAsBD,CAlBC,iEACC,aACD,CAEA,0CAEC,4BAA6B,CAK7B,qCAAsC,CADtC,sCAAuC,CADvC,cAAe,CAGf,0CAA2C,CAJ3C,gBAAiB,CADjB,eAMD,CAEA,sDACC,UACD,CAGD,gCACC,aACD",sourcesContent:["/*\n * What you're currently looking at is the source code of a legally protected, proprietary software.\n * CKEditor 5 Collaboration is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n * all CKEditor 5 Collaboration content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n *\n * Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n */\n\n.ck .ck-comment__input-container {\n\t/* Make avatar size in the comment smaller than in presence list. */\n\t--ck-user-avatar-size: 28px;\n\n\tfont-size: var(--ck-font-size-base);\n\n\tdisplay: none;\n\tpadding: var(--ck-spacing-standard);\n\tbackground: var(--ck-color-comment-background);\n}\n\n.ck .ck-comment__input-container--active {\n\tdisplay: flex;\n}\n\n.ck .ck-comment__input {\n\tpadding: var(--ck-spacing-standard);\n\n\t/* To keep vertical align with avatar. */\n\tpadding-top: var(--ck-spacing-medium);\n\n\tcolor: var(--ck-color-base-text);\n\tborder-width: 0;\n\tresize: none;\n\tbackground-color: transparent;\n\ttransition: color 300ms ease-in-out;\n\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t& .ck-editor__editable_inline {\n\t\t/* Disable default outline and border in editable input. */\n\t\t--ck-focus-ring: none;\n\t\t--ck-inner-shadow: none;\n\n\t\tpadding: 0;\n\t\toverflow: visible;\n\t\tborder: 0;\n\t\tbackground-color: transparent;\n\t\tword-break: break-word;\n\t}\n}\n\n/* Overwrite default CKEditor 5 margin of editable children.\nSee: ckeditor5-theme-lark/theme/ckeditor5-ui/components/editorui/editorui.css. */\n.ck-comment__input-wrapper .ck.ck-editor__editable_inline *:first-child {\n\tmargin-top: 0;\n}\n.ck-comment__input-wrapper .ck.ck-editor__editable_inline *:last-child {\n\tmargin-bottom: 0;\n}\n\n.ck .ck-comment__input-actions {\n\twidth: 100%;\n\ttext-align: right;\n\tdisplay: none;\n\n\t&.ck-comment__input-actions--active {\n\t\tdisplay: block;\n\t}\n\n\t& .ck-button {\n\t\t/* Overwrite CK5 button default styles. */\n\t\tbackground-color: transparent;\n\t\tmin-width: unset;\n\t\tmin-height: unset;\n\t\tcursor: pointer;\n\t\tcolor: var(--ck-color-annotations-icon);\n\t\tborder-radius: var(--ck-border-radius);\n\t\tfont-size: var(--ck-annotation-button-size);\n\t}\n\n\t& .ck-button.ck-disabled {\n\t\topacity: .3;\n\t}\n}\n\n.ck .ck-comment__input-textarea {\n\tdisplay: block;\n}\n"],sourceRoot:""}]);const a=s},5743:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-comment-marker:#fef7a9;--ck-color-comment-marker-active:#fdf05d}.ck-comment-marker{background:var(--ck-color-comment-marker);border-bottom:3px solid transparent;border-top:3px solid transparent}.ck-comment-marker.ck-widget{background-color:transparent;border:3px solid var(--ck-color-comment-marker)}.ck-comment-marker--active{background:var(--ck-color-comment-marker-active)}.ck-comment-marker--active.ck-widget{border-color:var(--ck-color-comment-marker-active)}.ck-comment-marker--active.ck-widget .ck-comment-marker{background-color:var(--ck-color-comment-marker)}.ck-comment-marker--active .ck-comment-marker{background:var(--ck-color-comment-marker-active)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-comments/theme/commentmarker.css"],names:[],mappings:"AAQA,MACC,iCAA4C,CAC5C,wCACD,CAEA,mBACC,yCAA0C,CAI1C,mCAAoC,CADpC,gCAQD,CAJC,6BACC,4BAA6B,CAC7B,+CACD,CAGD,2BACC,gDAeD,CAbC,qCACC,kDAMD,CAHC,wDACC,+CACD,CAID,8CACC,gDACD",sourcesContent:["/*\n * What you're currently looking at is the source code of a legally protected, proprietary software.\n * CKEditor 5 Collaboration is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n * all CKEditor 5 Collaboration content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n *\n * Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n */\n\n:root {\n\t--ck-color-comment-marker: hsl(55, 98%, 83%);\n\t--ck-color-comment-marker-active: hsl(55, 98%, 68%);\n}\n\n.ck-comment-marker {\n\tbackground: var(--ck-color-comment-marker);\n\n\t/* Match size with suggestion markers */\n\tborder-top: 3px solid transparent;\n\tborder-bottom: 3px solid transparent;\n\n\t/* #152. In the image case, we change marker background to border. */\n\t&.ck-widget {\n\t\tbackground-color: transparent;\n\t\tborder: 3px solid var(--ck-color-comment-marker);\n\t}\n}\n\n.ck-comment-marker--active {\n\tbackground: var(--ck-color-comment-marker-active);\n\n\t&.ck-widget {\n\t\tborder-color: var(--ck-color-comment-marker-active);\n\n\t\t/* See #2469. Inactive comment in a widget inside an active comment should not be highlighted. */\n\t\t& .ck-comment-marker {\n\t\t\tbackground-color: var(--ck-color-comment-marker);\n\t\t}\n\t}\n\n\t/* See #2469. Inactive comment marker inside an active one should be highlighted too. */\n\t& .ck-comment-marker {\n\t\tbackground: var(--ck-color-comment-marker-active);\n\t}\n}\n"],sourceRoot:""}]);const a=s},4342:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,':root{--ck-color-thread-remove-background:var(--ck-color-comment-remove-background);--ck-color-comment-count:#5891ca}.ck .ck-thread{background-color:var(--ck-color-base-background);border-radius:var(--ck-border-radius);color:var(--ck-color-base-text);outline:0;overflow:hidden;transition:all .3s ease;width:100%}.ck .ck-thread__comments .ck-comment__wrapper:last-of-type .ck-comment:after{opacity:0}.ck .ck-thread__container{transition:transform .3s ease}.ck .ck-thread__comments{border-radius:var(--ck-border-radius);list-style:none;margin:0;overflow:hidden;padding:0;position:relative;z-index:var(--ck-z-default)}.ck .ck-thread__comment-count{--ck-user-avatar-size:28px;color:var(--ck-color-comment-count);cursor:pointer;font-size:var(--ck-font-size-base);font-weight:700;padding-left:calc(var(--ck-user-avatar-size) + var(--ck-spacing-standard)*2);transition:background-color .3s ease}.ck .ck-thread__comment-count:before{content:"\\25BC";margin-right:var(--ck-spacing-small)}.ck .ck-thread--active .ck-comment__options.ck-dropdown{display:block}.ck .ck-thread--active .ck-thread__input{background-color:var(--ck-color-comment-background);display:block}.ck .ck-thread--remove .ck-comment{background-color:var(--ck-color-comment-remove-background)}.ck .ck-thread--remove .ck-thread__input--active{background-color:var(--ck-color-base-background)}.ck .ck-thread--remove .ck-thread__comment-count,.ck .ck-thread--remove .ck-thread__input--active.ck-thread__input{background-color:var(--ck-color-comment-remove-background)}.ck .ck-thread--remove .ck-comment__wrapper .ck-comment:after{opacity:0}.ck .ck-thread--remove-confirmation .ck-thread__container{transform:translate3d(-100%,0,0)}.ck.ck-button.ck-thread__remove-confirm-submit{color:var(--ck-color-button-save)}.ck.ck-button.ck-thread__remove-confirm-cancel{color:var(--ck-color-button-cancel)}.ck .ck-thread__remove-confirm{background-color:var(--ck-color-comment-remove-background);display:flex;font-size:var(--ck-font-size-base);height:100%;justify-content:flex-start;left:100%;position:absolute;top:0;width:100%}.ck .ck-thread__remove-confirm .ck-thread__remove-confirm-inner{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;max-height:400px;padding-top:var(--ck-spacing-standard);width:100%}.ck .ck-thread__remove-confirm p{font-weight:700;margin:0}.ck .ck-thread__input{border-radius:var(--ck-border-radius);transition:background-color .2s ease-in-out;width:calc(100% - var(--ck-user-avatar-size))}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-comments/theme/commentthread.css"],names:[],mappings:"AAQA,MACC,6EAA8E,CAC9E,gCACD,CAEA,eAIC,gDAAiD,CAGjD,qCAAsC,CALtC,+BAAgC,CAChC,SAAU,CAEV,eAAgB,CAChB,uBAA0B,CAL1B,UAOD,CAKE,6EACC,SACD,CAIF,0BACC,6BACD,CAEA,yBAMC,qCAAsC,CAHtC,eAAgB,CAChB,QAAS,CAGT,eAAgB,CAFhB,SAAU,CAJV,iBAAkB,CAClB,2BAMD,CAEA,8BAEC,0BAA2B,CAI3B,mCAAoC,CAGpC,cAAe,CAFf,kCAAmC,CACnC,eAAiB,CAJjB,4EAAiF,CAQjF,oCAMD,CAJC,qCACC,eAAgB,CAChB,oCACD,CAIA,wDACC,aACD,CAEA,yCAEC,mDAAoD,CADpD,aAED,CAIA,mCACC,0DACD,CAEA,iDACC,gDAKD,CAEA,mHACC,0DACD,CAIC,8DACC,SACD,CAKD,0DACC,gCACD,CAID,+CACC,iCACD,CAEA,+CACC,mCACD,CAEA,+BASC,0DAA2D,CAN3D,YAAa,CAFb,kCAAmC,CAOnC,WAAY,CAJZ,0BAA2B,CAE3B,SAAU,CAJV,iBAAkB,CAGlB,KAAM,CAEN,UAqBD,CAjBC,gEAGC,kBAAmB,CAFnB,YAAa,CACb,qBAAsB,CAItB,WAAY,CAFZ,sBAAuB,CAMvB,gBAAiB,CALjB,sCAAuC,CAEvC,UAID,CAEA,iCACC,eAAiB,CACjB,QACD,CAGD,sBAKC,qCAAsC,CADtC,2CAA8C,CAF9C,6CAID",sourcesContent:["/*\n * What you're currently looking at is the source code of a legally protected, proprietary software.\n * CKEditor 5 Collaboration is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n * all CKEditor 5 Collaboration content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n *\n * Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n */\n\n:root {\n\t--ck-color-thread-remove-background: var(--ck-color-comment-remove-background);\n\t--ck-color-comment-count: hsl(210, 52%, 57%);\n}\n\n.ck .ck-thread {\n\twidth: 100%;\n\tcolor: var(--ck-color-base-text);\n\toutline: 0;\n\tbackground-color: var(--ck-color-base-background);\n\toverflow: hidden;\n\ttransition: all 300ms ease;\n\tborder-radius: var(--ck-border-radius);\n}\n\n/* Handle visibility of vertical line below avatars. */\n.ck .ck-thread__comments .ck-comment__wrapper {\n\t&:last-of-type {\n\t\t& .ck-comment::after {\n\t\t\topacity: 0;\n\t\t}\n\t}\n}\n\n.ck .ck-thread__container {\n\ttransition: transform 300ms ease;\n}\n\n.ck .ck-thread__comments {\n\tposition: relative;\n\tz-index: var(--ck-z-default);\n\tlist-style: none;\n\tmargin: 0;\n\tpadding: 0;\n\tborder-radius: var(--ck-border-radius);\n\toverflow: hidden;\n}\n\n.ck .ck-thread__comment-count {\n\t/* Make avatar size in the comment smaller than in presence list. */\n\t--ck-user-avatar-size: 28px;\n\n\tpadding-left: calc( var(--ck-user-avatar-size) + var(--ck-spacing-standard) * 2 );\n\n\tcolor: var(--ck-color-comment-count);\n\tfont-size: var(--ck-font-size-base);\n\tfont-weight: bold;\n\tcursor: pointer;\n\n\t/* Keep similar transition like `ck-annotation`. */\n\ttransition: background-color 300ms ease;\n\n\t&::before {\n\t\tcontent: '\\25BC';\n\t\tmargin-right: var(--ck-spacing-small);\n\t}\n}\n\n.ck .ck-thread--active {\n\t& .ck-comment__options.ck-dropdown {\n\t\tdisplay: block;\n\t}\n\n\t& .ck-thread__input {\n\t\tdisplay: block;\n\t\tbackground-color: var(--ck-color-comment-background);\n\t}\n}\n\n.ck .ck-thread--remove {\n\t& .ck-comment {\n\t\tbackground-color: var(--ck-color-comment-remove-background);\n\t}\n\n\t& .ck-thread__input--active {\n\t\tbackground-color: var(--ck-color-base-background);\n\n\t\t&.ck-thread__input {\n\t\t\tbackground-color: var(--ck-color-comment-remove-background);\n\t\t}\n\t}\n\n\t& .ck-thread__comment-count {\n\t\tbackground-color: var(--ck-color-comment-remove-background);\n\t}\n\n\t/* Handle visibility of vertical line below avatars. */\n\t& .ck-comment__wrapper {\n\t\t& .ck-comment::after {\n\t\t\topacity: 0;\n\t\t}\n\t}\n}\n\n.ck .ck-thread--remove-confirmation {\n\t& .ck-thread__container {\n\t\ttransform: translate3d( -100%, 0, 0 );\n\t}\n}\n\n/* We need specificity 020 to beat .ck.ck-button. */\n.ck.ck-button.ck-thread__remove-confirm-submit {\n\tcolor: var(--ck-color-button-save);\n}\n\n.ck.ck-button.ck-thread__remove-confirm-cancel {\n\tcolor: var(--ck-color-button-cancel);\n}\n\n.ck .ck-thread__remove-confirm {\n\tfont-size: var(--ck-font-size-base);\n\tposition: absolute;\n\tdisplay: flex;\n\tjustify-content: flex-start;\n\ttop: 0;\n\tleft: 100%;\n\twidth: 100%;\n\theight: 100%;\n\tbackground-color: var(--ck-color-comment-remove-background);\n\n\t& .ck-thread__remove-confirm-inner {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\tpadding-top: var(--ck-spacing-standard);\n\t\theight: 100%;\n\t\twidth: 100%;\n\n\t\t/* Maximum height of confirmation (in case with such long comment). */\n\t\tmax-height: 400px;\n\t}\n\n\t& p {\n\t\tfont-weight: bold;\n\t\tmargin: 0;\n\t}\n}\n\n.ck .ck-thread__input {\n\t/* #1829. Firefox is wrongly rendering flex container width 100% with overflowed (non-spaced) text. */\n\twidth: calc( 100% - var(--ck-user-avatar-size) );\n\n\ttransition: background-color 200ms ease-in-out;\n\tborder-radius: var(--ck-border-radius);\n}\n"],sourceRoot:""}]);const a=s},659:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-annotation-counter-icon-size:16px;--ck-annotation-counter-number-size:10px;--ck-color-annotation-counter-comment:#f2de02;--ck-color-annotation-counter-suggestion-insertion:#5ad86b;--ck-color-annotation-counter-suggestion-deletion:#d85a79;--ck-color-annotation-counter-suggestion-format:#5ac1d8}.ck.ck-sidebar--narrow .ck-sidebar-item{display:flex;justify-content:center}.ck.ck-sidebar--narrow .ck-annotation-counter{color:grey;cursor:pointer;font-size:var(--ck-annotation-counter-icon-size);min-height:unset;padding:0}.ck.ck-sidebar--narrow .ck-annotation-counter:focus,.ck.ck-sidebar--narrow .ck-annotation-counter:hover{background:transparent;box-shadow:none;color:#4d4d4d}.ck.ck-sidebar--narrow .ck-annotation-counter__badge{background:#333;border-radius:50%;color:#fff;display:flex;font-family:var(--ck-font-face);font-size:var(--ck-annotation-counter-number-size);font-weight:700;height:16px;justify-content:center;line-height:16px;position:absolute;right:0;text-shadow:-1px 0 2px #444,1px 0 2px #444;top:-6px;width:16px;z-index:1}.ck.ck-sidebar--narrow .ck-annotation-counter__badge--edit-mode{line-height:1}.ck.ck-sidebar--narrow .ck-annotation-counter__badge--suggestion-insertion,.ck.ck-sidebar--narrow .ck-annotation-counter__badge--suggestion-replace{background:var(--ck-color-annotation-counter-suggestion-insertion)}.ck.ck-sidebar--narrow .ck-annotation-counter__badge--suggestion-deletion{background:var(--ck-color-annotation-counter-suggestion-deletion)}.ck.ck-sidebar--narrow .ck-annotation-counter__badge--suggestion-format{background:var(--ck-color-annotation-counter-suggestion-format)}.ck.ck-sidebar--narrow .ck-annotation-counter__badge--comment{background:var(--ck-color-annotation-counter-comment)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-comments/theme/sidebar-narrow.css"],names:[],mappings:"AAQA,MACC,sCAAuC,CACvC,wCAAyC,CACzC,6CAAwD,CACxD,0DAAsE,CACtE,yDAAqE,CACrE,uDACD,CAGA,wCACC,YAAa,CACb,sBACD,CAEA,8CASC,UAAsB,CADtB,cAAe,CANf,gDAAiD,CAGjD,gBAAiB,CACjB,SAID,CAEA,wGAEC,sBAAuB,CACvB,eAAgB,CAChB,aACD,CAEA,qDAKC,eAA2B,CAJ3B,iBAAkB,CAMlB,UAAW,CAUX,YAAa,CARb,+BAAgC,CADhC,kDAAmD,CAFnD,eAAiB,CAFjB,WAAY,CAcZ,sBAAuB,CAGvB,gBAAiB,CAnBjB,iBAAkB,CAQlB,OAAQ,CAIR,0CAA4C,CAH5C,QAAS,CART,UAAW,CAqBX,SACD,CAGA,gEACC,aACD,CAEA,oJAEC,kEACD,CAEA,0EACC,iEACD,CAEA,wEACC,+DACD,CAEA,8DACC,qDACD",sourcesContent:["/*\n * What you're currently looking at is the source code of a legally protected, proprietary software.\n * CKEditor 5 Collaboration is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n * all CKEditor 5 Collaboration content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n *\n * Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n */\n\n:root {\n\t--ck-annotation-counter-icon-size: 16px;\n\t--ck-annotation-counter-number-size: 10px;\n\t--ck-color-annotation-counter-comment: hsl(55, 98%, 48%);\n\t--ck-color-annotation-counter-suggestion-insertion: hsl(128, 62%, 60%);\n\t--ck-color-annotation-counter-suggestion-deletion: hsl(345, 62%, 60%);\n\t--ck-color-annotation-counter-suggestion-format: hsl(191, 62%, 60%);\n}\n\n/* Center a annotation counter icon no matter of parent container width. */\n.ck.ck-sidebar--narrow .ck-sidebar-item {\n\tdisplay: flex;\n\tjustify-content: center;\n}\n\n.ck.ck-sidebar--narrow .ck-annotation-counter {\n\t/* Let's reduce icon size a bit. */\n\tfont-size: var(--ck-annotation-counter-icon-size);\n\n\t/* Reduce default `.ck-button` min-height which is 2.3em, bigger than current icon. */\n\tmin-height: unset;\n\tpadding: 0;\n\n\tcursor: pointer;\n\tcolor: hsl(0, 0%, 50%);\n}\n\n.ck.ck-sidebar--narrow .ck-annotation-counter:hover,\n.ck.ck-sidebar--narrow .ck-annotation-counter:focus {\n\tbackground: transparent;\n\tbox-shadow: none;\n\tcolor: hsl(0, 0%, 30%);\n}\n\n.ck.ck-sidebar--narrow .ck-annotation-counter__badge {\n\tborder-radius: 50%;\n\tposition: absolute;\n\twidth: 16px;\n\theight: 16px;\n\tbackground: hsl(0, 0%, 20%);\n\tfont-weight: bold;\n\tcolor: #fff;\n\tfont-size: var(--ck-annotation-counter-number-size);\n\tfont-family: var(--ck-font-face);\n\tright: 0;\n\ttop: -6px;\n\n\t/* Improve visibility of counter number. */\n\ttext-shadow: -1px 0 2px #444, 1px 0 2px #444;\n\n\t/* Display number perfectly center of circle. */\n\tdisplay: flex;\n\tjustify-content: center;\n\n\t/* We can't use here `align-items: center` because we need to edit `line-height` for edit mode case. */\n\tline-height: 16px;\n\n\t/* To display above comment icon. */\n\tz-index: 1;\n}\n\n/* When annotation is in edit mode, center `...` differently. */\n.ck.ck-sidebar--narrow .ck-annotation-counter__badge--edit-mode {\n\tline-height: 1;\n}\n\n.ck.ck-sidebar--narrow .ck-annotation-counter__badge--suggestion-insertion,\n.ck.ck-sidebar--narrow .ck-annotation-counter__badge--suggestion-replace {\n\tbackground: var(--ck-color-annotation-counter-suggestion-insertion);\n}\n\n.ck.ck-sidebar--narrow .ck-annotation-counter__badge--suggestion-deletion {\n\tbackground: var(--ck-color-annotation-counter-suggestion-deletion);\n}\n\n.ck.ck-sidebar--narrow .ck-annotation-counter__badge--suggestion-format {\n\tbackground: var(--ck-color-annotation-counter-suggestion-format);\n}\n\n.ck.ck-sidebar--narrow .ck-annotation-counter__badge--comment {\n\tbackground: var(--ck-color-annotation-counter-comment);\n}\n"],sourceRoot:""}]);const a=s},5745:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-annotation-wrapper-background:#fff;--ck-color-annotation-wrapper-drop-shadow:0 1px 1px 1px #e6e6e6}.ck.ck-sidebar{outline:0;position:relative;transition:min-height .25s ease}.ck-sidebar-item{position:absolute;transition:top .3s ease,box-shadow .3s ease;width:100%}.ck-sidebar-item--no-animation{transition:top 0s ease!important}.ck.ck-annotation-wrapper{background:var(--ck-color-annotation-wrapper-background);border-radius:var(--ck-border-radius);box-shadow:var(--ck-color-annotation-wrapper-drop-shadow);outline:0}.ck.ck-annotation-wrapper:not(.ck-annotation-wrapper--active):hover{box-shadow:var(--ck-drop-shadow)}.ck.ck-annotation-wrapper--active{box-shadow:var(--ck-drop-shadow-active)}.ck.ck-annotation-wrapper--active .ck-annotation__actions,.ck.ck-annotation-wrapper:hover .ck-annotation__actions{opacity:1}.ck.ck-annotation-wrapper--active .ck-suggestion--accept,.ck.ck-annotation-wrapper:hover .ck-suggestion--accept{color:var(--ck-color-button-save)}.ck.ck-annotation-wrapper--active .ck-suggestion--discard,.ck.ck-annotation-wrapper:hover .ck-suggestion--discard{color:var(--ck-color-button-cancel)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-comments/theme/sidebar.css"],names:[],mappings:"AAQA,MACC,6CAA0D,CAC1D,+DACD,CAEA,eAGC,SAAU,CAFV,iBAAkB,CAClB,+BAED,CAEA,iBACC,iBAAkB,CAElB,2CAAiD,CADjD,UAED,CAEA,+BACC,gCACD,CAEA,0BAGC,wDAAyD,CADzD,qCAAsC,CAEtC,yDAA0D,CAH1D,SAID,CAGA,oEACC,gCACD,CAEA,kCACC,uCACD,CAIC,kHACC,SACD,CAEA,gHACC,iCACD,CAEA,kHACC,mCACD",sourcesContent:["/*\n * What you're currently looking at is the source code of a legally protected, proprietary software.\n * CKEditor 5 Collaboration is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n * all CKEditor 5 Collaboration content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n *\n * Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n */\n\n:root {\n\t--ck-color-annotation-wrapper-background: hsl(0, 0%, 100%);\n\t--ck-color-annotation-wrapper-drop-shadow: 0 1px 1px 1px hsl(0, 0%, 90%);\n}\n\n.ck.ck-sidebar {\n\tposition: relative;\n\ttransition: min-height 250ms ease;\n\toutline: 0;\n}\n\n.ck-sidebar-item {\n\tposition: absolute;\n\twidth: 100%;\n\ttransition: top 300ms ease, box-shadow 300ms ease;\n}\n\n.ck-sidebar-item--no-animation {\n\ttransition: top 0s ease !important;\n}\n\n.ck.ck-annotation-wrapper {\n\toutline: 0;\n\tborder-radius: var(--ck-border-radius);\n\tbackground: var(--ck-color-annotation-wrapper-background);\n\tbox-shadow: var(--ck-color-annotation-wrapper-drop-shadow);\n}\n\n/* Handle case where annotation is inactive and users hover them. */\n.ck.ck-annotation-wrapper:not(.ck-annotation-wrapper--active):hover {\n\tbox-shadow: var(--ck-drop-shadow);\n}\n\n.ck.ck-annotation-wrapper--active {\n\tbox-shadow: var(--ck-drop-shadow-active);\n}\n\n.ck.ck-annotation-wrapper:hover,\n.ck.ck-annotation-wrapper--active {\n\t& .ck-annotation__actions {\n\t\topacity: 1;\n\t}\n\n\t& .ck-suggestion--accept {\n\t\tcolor: var(--ck-color-button-save)\n\t}\n\n\t& .ck-suggestion--discard {\n\t\tcolor: var(--ck-color-button-cancel)\n\t}\n}\n"],sourceRoot:""}]);const a=s},3638:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-editor{position:relative}.ck.ck-editor .ck-editor__top .ck-sticky-panel .ck-toolbar{z-index:var(--ck-z-modal)}.ck.ck-editor__top .ck-sticky-panel .ck-toolbar{border-radius:0}.ck-rounded-corners .ck.ck-editor__top .ck-sticky-panel .ck-toolbar,.ck.ck-editor__top .ck-sticky-panel .ck-toolbar.ck-rounded-corners{border-radius:var(--ck-border-radius);border-bottom-left-radius:0;border-bottom-right-radius:0}.ck.ck-editor__top .ck-sticky-panel .ck-toolbar{border-bottom-width:0}.ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content_sticky .ck-toolbar{border-bottom-width:1px;border-radius:0}.ck-rounded-corners .ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content_sticky .ck-toolbar,.ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content_sticky .ck-toolbar.ck-rounded-corners{border-radius:var(--ck-border-radius);border-radius:0}.ck.ck-editor__main>.ck-editor__editable{background:var(--ck-color-base-background);border-radius:0}.ck-rounded-corners .ck.ck-editor__main>.ck-editor__editable,.ck.ck-editor__main>.ck-editor__editable.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0;border-top-right-radius:0}.ck.ck-editor__main>.ck-editor__editable:not(.ck-focused){border-color:var(--ck-color-base-border)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-editor-classic/theme/classiceditor.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-editor-classic/classiceditor.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAKA,cAIC,iBAMD,CAJC,2DAEC,yBACD,CCLC,gDCED,eDKC,CAPA,uICMA,qCAAsC,CDJpC,2BAA4B,CAC5B,4BAIF,CAPA,gDAMC,qBACD,CAEA,iFACC,uBAAwB,CCR1B,eDaC,CANA,yMCHA,qCAAsC,CDOpC,eAEF,CAKF,yCAEC,0CAA2C,CCpB3C,eD8BD,CAZA,yHCdE,qCAAsC,CDmBtC,wBAAyB,CACzB,yBAMF,CAHC,0DACC,wCACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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 {\n\t/* All the elements within `.ck-editor` are positioned relatively to it.\n\t If any element needs to be positioned with respect to the , etc.,\n\t it must land outside of the `.ck-editor` in DOM. */\n\tposition: relative;\n\n\t& .ck-editor__top .ck-sticky-panel .ck-toolbar {\n\t\t/* https://github.com/ckeditor/ckeditor5-editor-classic/issues/62 */\n\t\tz-index: var(--ck-z-modal);\n\t}\n}\n",'/*\n * Copyright (c) 2003-2022, 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-editor__top {\n\t& .ck-sticky-panel {\n\t\t& .ck-toolbar {\n\t\t\t@mixin ck-rounded-corners {\n\t\t\t\tborder-bottom-left-radius: 0;\n\t\t\t\tborder-bottom-right-radius: 0;\n\t\t\t}\n\n\t\t\tborder-bottom-width: 0;\n\t\t}\n\n\t\t& .ck-sticky-panel__content_sticky .ck-toolbar {\n\t\t\tborder-bottom-width: 1px;\n\n\t\t\t@mixin ck-rounded-corners {\n\t\t\t\tborder-radius: 0;\n\t\t\t}\n\t\t}\n\t}\n}\n\n/* Note: Use ck-editor__main to make sure these styles don\'t apply to other editor types */\n.ck.ck-editor__main > .ck-editor__editable {\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/113 */\n\tbackground: var(--ck-color-base-background);\n\n\t@mixin ck-rounded-corners {\n\t\tborder-top-left-radius: 0;\n\t\tborder-top-right-radius: 0;\n\t}\n\n\t&:not(.ck-focused) {\n\t\tborder-color: var(--ck-color-base-border);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2022, 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},8894:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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}.ck .ck-placeholder:before,.ck.ck-placeholder:before{color:var(--ck-color-engine-placeholder-text);cursor:text}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-engine/theme/placeholder.css","webpack://./node_modules/@ckeditor/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,CC5BC,qDAEC,6CAA8C,CAD9C,WAED",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-2022, 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, .ck .ck-placeholder {\n\t&::before {\n\t\tcursor: text;\n\t\tcolor: var(--ck-color-engine-placeholder-text);\n\t}\n}\n"],sourceRoot:""}]);const a=s},4401:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-editor__editable span[data-ck-unsafe-element]{display:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-engine/theme/renderer.css"],names:[],mappings:"AAMA,qDACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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},6491:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-toolbar-spinner-size:18px}.ck-exportpdf_status-pending{position:relative}.ck.ck-exportpdf__spinner-container{display:none}.ck.ck-exportpdf__spinner{border:2px solid var(--ck-color-text);border-radius:50%;border-top:2px solid transparent;left:0;margin:0 auto;right:0;top:50%;transform:translateY(-50%);z-index:1}.ck-exportpdf_status-pending .ck.ck-exportpdf__spinner-container,.ck.ck-exportpdf__spinner{height:var(--ck-toolbar-spinner-size);position:absolute;width:var(--ck-toolbar-spinner-size)}.ck-exportpdf_status-pending .ck.ck-exportpdf__spinner-container{animation:rotate 1.5s linear infinite;display:block}.ck-exportpdf_status-pending .ck.ck-button__icon{color:transparent}@keyframes rotate{to{transform:rotate(1turn)}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-export-pdf/theme/exportpdf.css"],names:[],mappings:"AASA,MACC,8BACD,CAEA,6BACC,iBACD,CAEA,oCACC,YACD,CAEA,0BAUC,qCAA6B,CAF7B,iBAAkB,CAElB,gCAA6B,CAP7B,MAAO,CAEP,aAAc,CADd,OAAQ,CAFR,OAAQ,CASR,0BAA2B,CAC3B,SACD,CAEA,2FARC,qCAAsC,CANtC,iBAAkB,CAKlB,oCAeD,CANA,iEAKC,qCAAsC,CAJtC,aAKD,CAEA,iDACC,iBACD,CAEA,kBACC,GACC,uBACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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/* TODO\n\tExtract theme-lark styles before public release.\n*/\n\n:root {\n\t--ck-toolbar-spinner-size: 18px;\n}\n\n.ck-exportpdf_status-pending {\n\tposition: relative;\n}\n\n.ck.ck-exportpdf__spinner-container {\n\tdisplay: none;\n}\n\n.ck.ck-exportpdf__spinner {\n\tposition: absolute;\n\ttop: 50%;\n\tleft: 0;\n\tright: 0;\n\tmargin: 0 auto;\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\ttransform: translateY(-50%);\n\tz-index: 1;\n}\n\n.ck-exportpdf_status-pending .ck.ck-exportpdf__spinner-container {\n\tdisplay: block;\n\tposition: absolute;\n\twidth: var(--ck-toolbar-spinner-size);\n\theight: var(--ck-toolbar-spinner-size);\n\tanimation: 1.5s infinite rotate linear;\n}\n\n.ck-exportpdf_status-pending .ck.ck-button__icon {\n\tcolor: transparent;\n}\n\n@keyframes rotate {\n\tto {\n\t\ttransform: rotate(360deg)\n\t}\n}\n"],sourceRoot:""}]);const a=s},160:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-toolbar-spinner-size:18px}.ck-exportword_status-pending{position:relative}.ck.ck-exportword__spinner-container{display:none}.ck.ck-exportword__spinner{border:2px solid var(--ck-color-text);border-radius:50%;border-top:2px solid transparent;height:var(--ck-toolbar-spinner-size);left:0;margin:0 auto;position:absolute;right:0;top:50%;transform:translateY(-50%);width:var(--ck-toolbar-spinner-size);z-index:1}.ck-exportword_status-pending .ck.ck-exportword__spinner-container{animation:rotate 1.5s linear infinite;display:block;height:var(--ck-toolbar-spinner-size);position:absolute;width:var(--ck-toolbar-spinner-size)}.ck-exportword_status-pending .ck.ck-button__icon{color:transparent}@keyframes rotate{to{transform:rotate(1turn)}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-export-word/theme/exportword.css"],names:[],mappings:"AAKA,MACC,8BACD,CAEA,8BACC,iBACD,CAEA,qCACC,YACD,CAEA,2BAUC,qCAA6B,CAF7B,iBAAkB,CAElB,gCAA6B,CAH7B,qCAAsC,CAJtC,MAAO,CAEP,aAAc,CAJd,iBAAkB,CAGlB,OAAQ,CAFR,OAAQ,CASR,0BAA2B,CAL3B,oCAAqC,CAMrC,SACD,CAEA,mEAKC,qCAAsC,CAJtC,aAAc,CAGd,qCAAsC,CAFtC,iBAAkB,CAClB,oCAGD,CAEA,kDACC,iBACD,CAEA,kBACC,GACC,uBACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-exportword_status-pending {\n\tposition: relative;\n}\n\n.ck.ck-exportword__spinner-container {\n\tdisplay: none;\n}\n\n.ck.ck-exportword__spinner {\n\tposition: absolute;\n\ttop: 50%;\n\tleft: 0;\n\tright: 0;\n\tmargin: 0 auto;\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\ttransform: translateY(-50%);\n\tz-index: 1;\n}\n\n.ck-exportword_status-pending .ck.ck-exportword__spinner-container {\n\tdisplay: block;\n\tposition: absolute;\n\twidth: var(--ck-toolbar-spinner-size);\n\theight: var(--ck-toolbar-spinner-size);\n\tanimation: 1.5s infinite rotate linear;\n}\n\n.ck-exportword_status-pending .ck.ck-button__icon {\n\tcolor: transparent;\n}\n\n@keyframes rotate {\n\tto {\n\t\ttransform: rotate(360deg)\n\t}\n}\n"],sourceRoot:""}]);const a=s},5436:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-find-and-replace/theme/findandreplace.css"],names:[],mappings:"AAKA,gBACC,+CAAgD,CAChD,0BACD,CAEA,yBACC,kBACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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},9289:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-find-and-replace-form{max-width:100%}.ck.ck-find-and-replace-form fieldset{display:flex}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .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 fieldset{align-content:stretch;align-items:center;border:0;flex-direction:row;flex-wrap:nowrap;margin:0;padding:var(--ck-spacing-large)}.ck.ck-find-and-replace-form fieldset>.ck-button{flex:0 0 auto}[dir=ltr] .ck.ck-find-and-replace-form fieldset>*+*{margin-left:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-find-and-replace-form fieldset>*+*{margin-right:var(--ck-spacing-standard)}.ck.ck-find-and-replace-form fieldset .ck-labeled-field-view{flex:1 1 auto}.ck.ck-find-and-replace-form fieldset .ck-labeled-field-view .ck-input{min-width:50px;width:100%}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find{align-items:flex-start}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-find{font-weight:700}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-find .ck-button__label{padding-left:var(--ck-spacing-large);padding-right:var(--ck-spacing-large)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-prev>.ck-icon{transform:rotate(90deg)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button-next>.ck-icon{transform:rotate(-90deg)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{top:50%;transform:translateY(-50%)}[dir=ltr] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{left:var(--ck-spacing-standard)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-results-counter{color:var(--ck-color-base-border)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace{flex-wrap:wrap;justify-content:flex-end;margin-top:calc(var(--ck-spacing-large)*-1)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-labeled-field-view{margin-bottom:var(--ck-spacing-large)}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-options-dropdown{margin-left:0;margin-right:auto}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-labeled-field-view,.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-labeled-field-view .ck-input{width:100%}@media screen and (max-width:600px){.ck.ck-find-and-replace-form{width:300px}.ck.ck-find-and-replace-form fieldset{flex-wrap:wrap}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find .ck-labeled-field-view{flex:1 0 auto;margin-bottom:var(--ck-spacing-standard);width:100%}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button{text-align:center}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type{flex:1 1 auto}[dir=ltr] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type{margin-left:0}[dir=rtl] .ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type{margin-right:0}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__find>.ck-button:first-of-type .ck-button__label{text-align:center;width:100%}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>:not(.ck-labeled-field-view){flex:1 1 auto}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-dropdown:not(.ck-labeled-field-view){flex-grow:0}.ck.ck-find-and-replace-form fieldset.ck-find-and-replace-form__replace>.ck-button:not(.ck-labeled-field-view)>.ck-button__label{text-align:center;width:100%}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-find-and-replace/theme/findandreplaceform.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-find-and-replace/findandreplaceform.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAKA,6BACC,cAUD,CARC,sCACC,YAMD,CAHC,yFACC,iBACD,CCNF,6BACC,WAyGD,CAnGC,mCACC,YACD,CAEA,sCAIC,qBAAsB,CADtB,kBAAmB,CAInB,QAAS,CANT,kBAAmB,CACnB,gBAAiB,CAMjB,QAAS,CAFT,+BAwFD,CApFC,iDACC,aACD,CAGC,oDACC,sCACD,CAIA,oDACC,uCACD,CAGD,6DACC,aAMD,CAJC,uEAEC,cAAe,CADf,UAED,CAID,qEAEC,sBAkCD,CAhCC,qFACC,eAOD,CAJC,uGACC,oCAAqC,CACrC,qCACD,CAGD,8FACC,uBACD,CAEA,8FACC,wBACD,CAEA,yFACC,OAAQ,CACR,0BAWD,CAbA,mGAKE,gCAQF,CAbA,mGASE,+BAIF,CAbA,yFAYC,iCACD,CAID,wEACC,cAAe,CACf,wBAAyB,CACzB,2CAeD,CAbC,+FACC,qCACD,CAEA,6FAEC,aAAc,CADd,iBAED,CAEA,wMAEC,UACD,CCzGF,oCD+GA,6BACC,WAiDD,CA/CC,sCACC,cA6CD,CAzCE,4FACC,aAAc,CAEd,wCAAyC,CADzC,UAED,CAEA,gFACC,iBAkBD,CAhBC,8FACC,aAcD,CAfA,wGAIE,aAWF,CAfA,wGAQE,cAOF,CAJC,gHAEC,iBAAkB,CADlB,UAED,CAMH,qGACC,aAUD,CARC,iHACC,WACD,CAEA,iIAEC,iBAAkB,CADlB,UAED,CC5JH",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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& fieldset {\n\t\tdisplay: flex;\n\n\t\t/* The find fieldset */\n\t\t&.ck-find-and-replace-form__find .ck-results-counter {\n\t\t\tposition: absolute;\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2022, 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& fieldset {\n\t\tflex-direction: row;\n\t\tflex-wrap: nowrap;\n\t\talign-items: center;\n\t\talign-content: stretch;\n\n\t\tpadding: var(--ck-spacing-large);\n\t\tborder: 0;\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\t/* The find fieldset */\n\t\t&.ck-find-and-replace-form__find {\n\t\t\t/* To display all controls in line when there\'s an error under the input */\n\t\t\talign-items: flex-start;\n\n\t\t\t& > .ck-button-find {\n\t\t\t\tfont-weight: bold;\n\n\t\t\t\t/* Beef the find button up a little. It\'s the main action button in the form */\n\t\t\t\t& .ck-button__label {\n\t\t\t\t\tpadding-left: var(--ck-spacing-large);\n\t\t\t\t\tpadding-right: var(--ck-spacing-large);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t& > .ck-button-prev > .ck-icon {\n\t\t\t\ttransform: rotate(90deg);\n\t\t\t}\n\n\t\t\t& > .ck-button-next > .ck-icon {\n\t\t\t\ttransform: rotate(-90deg);\n\t\t\t}\n\n\t\t\t& .ck-results-counter {\n\t\t\t\ttop: 50%;\n\t\t\t\ttransform: translateY(-50%);\n\n\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\tright: var(--ck-spacing-standard);\n\t\t\t\t}\n\n\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\tleft: var(--ck-spacing-standard);\n\t\t\t\t}\n\n\t\t\t\tcolor: var(--ck-color-base-border);\n\t\t\t}\n\t\t}\n\n\t\t/* The replace fieldset */\n\t\t&.ck-find-and-replace-form__replace {\n\t\t\tflex-wrap: wrap;\n\t\t\tjustify-content: flex-end;\n\t\t\tmargin-top: calc( -1 * var(--ck-spacing-large) );\n\n\t\t\t& > .ck-labeled-field-view {\n\t\t\t\tmargin-bottom: var(--ck-spacing-large);\n\t\t\t}\n\n\t\t\t& > .ck-options-dropdown {\n\t\t\t\tmargin-right: auto;\n\t\t\t\tmargin-left: 0;\n\t\t\t}\n\n\t\t\t& > .ck-labeled-field-view,\n\t\t\t& > .ck-labeled-field-view .ck-input {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t}\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& fieldset {\n\t\t\tflex-wrap: wrap;\n\n\t\t\t/* The find fieldset */\n\t\t\t&.ck-find-and-replace-form__find {\n\t\t\t\t& .ck-labeled-field-view {\n\t\t\t\t\tflex: 1 0 auto;\n\t\t\t\t\twidth: 100%;\n\t\t\t\t\tmargin-bottom: var(--ck-spacing-standard);\n\t\t\t\t}\n\n\t\t\t\t& > .ck-button {\n\t\t\t\t\ttext-align: center;\n\n\t\t\t\t\t&:first-of-type {\n\t\t\t\t\t\tflex: 1 1 auto;\n\n\t\t\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\t\t\tmargin-left: 0;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\t\t\tmargin-right: 0;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t& .ck-button__label {\n\t\t\t\t\t\t\twidth: 100%;\n\t\t\t\t\t\t\ttext-align: center;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t/* The replace fieldset */\n\t\t\t&.ck-find-and-replace-form__replace > :not(.ck-labeled-field-view) {\n\t\t\t\tflex: 1 1 auto;\n\n\t\t\t\t&.ck-dropdown {\n\t\t\t\t\tflex-grow: 0;\n\t\t\t\t}\n\n\t\t\t\t&.ck-button > .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-2022, 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},2585:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck .ck-button.ck-color-table__remove-color{align-items:center;display:flex;width:100%}label.ck.ck-color-grid__label{font-weight:unset}.ck .ck-button.ck-color-table__remove-color{border-bottom-left-radius:0;border-bottom-right-radius:0;padding:calc(var(--ck-spacing-standard)/2) var(--ck-spacing-standard)}.ck .ck-button.ck-color-table__remove-color:not(:focus){border-bottom:1px solid var(--ck-color-base-border)}[dir=ltr] .ck .ck-button.ck-color-table__remove-color .ck.ck-icon{margin-right:var(--ck-spacing-standard)}[dir=rtl] .ck .ck-button.ck-color-table__remove-color .ck.ck-icon{margin-left:var(--ck-spacing-standard)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-font/theme/fontcolor.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-font/fontcolor.css"],names:[],mappings:"AAKA,4CAEC,kBAAmB,CADnB,YAAa,CAEb,UACD,CAEA,8BACC,iBACD,CCNA,4CAEC,2BAA4B,CAC5B,4BAA6B,CAF7B,qEAiBD,CAbC,wDACC,mDACD,CAEA,kEAEE,uCAMF,CARA,kEAME,sCAEF",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-color-table__remove-color {\n\tdisplay: flex;\n\talign-items: center;\n\twidth: 100%;\n}\n\nlabel.ck.ck-color-grid__label {\n\tfont-weight: unset;\n}\n",'/*\n * Copyright (c) 2003-2022, 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-button.ck-color-table__remove-color {\n\tpadding: calc(var(--ck-spacing-standard) / 2 ) var(--ck-spacing-standard);\n\tborder-bottom-left-radius: 0;\n\tborder-bottom-right-radius: 0;\n\n\t&:not(:focus) {\n\t\tborder-bottom: 1px solid var(--ck-color-base-border);\n\t}\n\n\t& .ck.ck-icon {\n\t\t@mixin ck-dir ltr {\n\t\t\tmargin-right: var(--ck-spacing-standard);\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n}\n\n'],sourceRoot:""}]);const a=s},6203:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-font/theme/fontsize.css"],names:[],mappings:"AAUC,uBACC,cACD,CAEA,wBACC,eACD,CAEA,sBACC,eACD,CAEA,uBACC,eACD",sourcesContent:['/*\n * Copyright (c) 2003-2022, 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},3230:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-heading/theme/heading.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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},713:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-highlight-marker-yellow:#fdfd77;--ck-highlight-marker-green:#62f962;--ck-highlight-marker-pink:#fc7899;--ck-highlight-marker-blue:#72ccfd;--ck-highlight-pen-red:#e71313;--ck-highlight-pen-green:#128a00}.ck-content .marker-yellow{background-color:var(--ck-highlight-marker-yellow)}.ck-content .marker-green{background-color:var(--ck-highlight-marker-green)}.ck-content .marker-pink{background-color:var(--ck-highlight-marker-pink)}.ck-content .marker-blue{background-color:var(--ck-highlight-marker-blue)}.ck-content .pen-red{background-color:transparent;color:var(--ck-highlight-pen-red)}.ck-content .pen-green{background-color:transparent;color:var(--ck-highlight-pen-green)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-highlight/theme/highlight.css"],names:[],mappings:"AAKA,MACC,oCAA+C,CAC/C,mCAA+C,CAC/C,kCAA8C,CAC9C,kCAA8C,CAC9C,8BAAwC,CACxC,gCACD,CAGC,2BACC,kDACD,CAFA,0BACC,iDACD,CAFA,yBACC,gDACD,CAFA,yBACC,gDACD,CAIA,qBAIC,4BAA6B,CAH7B,iCAID,CALA,uBAIC,4BAA6B,CAH7B,mCAID",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-highlight-marker-yellow: hsl(60, 97%, 73%);\n\t--ck-highlight-marker-green: hsl(120, 93%, 68%);\n\t--ck-highlight-marker-pink: hsl(345, 96%, 73%);\n\t--ck-highlight-marker-blue: hsl(201, 97%, 72%);\n\t--ck-highlight-pen-red: hsl(0, 85%, 49%);\n\t--ck-highlight-pen-green: hsl(112, 100%, 27%);\n}\n\n@define-mixin highlight-marker-color $color {\n\t.ck-content .marker-$color {\n\t\tbackground-color: var(--ck-highlight-marker-$color);\n\t}\n}\n\n@define-mixin highlight-pen-color $color {\n\t.ck-content .pen-$color {\n\t\tcolor: var(--ck-highlight-pen-$color);\n\n\t\t/* Override default yellow background of `` from user agent stylesheet */\n\t\tbackground-color: transparent;\n\t}\n}\n\n@mixin highlight-marker-color yellow;\n@mixin highlight-marker-color green;\n@mixin highlight-marker-color pink;\n@mixin highlight-marker-color blue;\n\n@mixin highlight-pen-color red;\n@mixin highlight-pen-color green;\n"],sourceRoot:""}]);const a=s},2536:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/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-2022, 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},3403:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck-widget.raw-html-embed{display:flow-root;font-style:normal;margin:.9em auto;min-width:15em;position:relative}.ck-widget.raw-html-embed:before{position:absolute;z-index:1}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper{display:flex;flex-direction:column;position:absolute}.ck-widget.raw-html-embed .raw-html-embed__preview{display:flex;overflow:hidden;position:relative}.ck-widget.raw-html-embed .raw-html-embed__preview-content{border-collapse:separate;border-spacing:7px;display:table;margin:auto;position:relative;width:100%}.ck-widget.raw-html-embed .raw-html-embed__preview-placeholder{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}:root{--ck-html-embed-content-width:calc(100% - var(--ck-icon-size)*1.5);--ck-html-embed-source-height:10em;--ck-html-embed-unfocused-outline-width:1px;--ck-html-embed-content-min-height:calc(var(--ck-icon-size) + var(--ck-spacing-standard));--ck-html-embed-source-disabled-background:var(--ck-color-base-foreground);--ck-html-embed-source-disabled-color:#737373}.ck-widget.raw-html-embed{background-color:var(--ck-color-base-foreground);font-size:var(--ck-font-size-base)}.ck-widget.raw-html-embed:not(.ck-widget_selected):not(:hover){outline:var(--ck-html-embed-unfocused-outline-width) dashed var(--ck-color-widget-blurred-border)}.ck-widget.raw-html-embed[dir=ltr]{text-align:left}.ck-widget.raw-html-embed[dir=rtl]{text-align:right}.ck-widget.raw-html-embed:before{background:#999;border-radius:0 0 var(--ck-border-radius) var(--ck-border-radius);color:var(--ck-color-base-background);content:attr(data-html-embed-label);font-family:var(--ck-font-face);font-size:var(--ck-font-size-tiny);left:var(--ck-spacing-standard);padding:calc(var(--ck-spacing-tiny) + var(--ck-html-embed-unfocused-outline-width)) var(--ck-spacing-small) var(--ck-spacing-tiny);top:calc(var(--ck-html-embed-unfocused-outline-width)*-1);transition:background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve)}.ck-widget.raw-html-embed[dir=rtl]:before{left:auto;right:var(--ck-spacing-standard)}.ck-widget.raw-html-embed[dir=ltr] .ck-widget__type-around .ck-widget__type-around__button.ck-widget__type-around__button_before{margin-left:50px}.ck.ck-editor__editable.ck-blurred .ck-widget.raw-html-embed.ck-widget_selected:before{padding:var(--ck-spacing-tiny) var(--ck-spacing-small);top:0}.ck.ck-editor__editable:not(.ck-blurred) .ck-widget.raw-html-embed.ck-widget_selected:before{background:var(--ck-color-focus-border);padding:var(--ck-spacing-tiny) var(--ck-spacing-small);top:0}.ck.ck-editor__editable .ck-widget.raw-html-embed:not(.ck-widget_selected):hover:before{padding:var(--ck-spacing-tiny) var(--ck-spacing-small);top:0}.ck-widget.raw-html-embed .raw-html-embed__content-wrapper{padding:var(--ck-spacing-standard)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper{right:var(--ck-spacing-standard);top:var(--ck-spacing-standard)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper .ck-button.raw-html-embed__save-button{color:var(--ck-color-button-save)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper .ck-button.raw-html-embed__cancel-button{color:var(--ck-color-button-cancel)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper .ck-button:not(:first-child){margin-top:var(--ck-spacing-small)}.ck-widget.raw-html-embed[dir=rtl] .raw-html-embed__buttons-wrapper{left:var(--ck-spacing-standard);right:auto}.ck-widget.raw-html-embed .raw-html-embed__source{box-sizing:border-box;direction:ltr;font-family:monospace;font-size:var(--ck-font-size-base);height:var(--ck-html-embed-source-height);min-width:0;padding:var(--ck-spacing-standard);resize:none;tab-size:4;text-align:left;white-space:pre-wrap;width:var(--ck-html-embed-content-width)}.ck-widget.raw-html-embed .raw-html-embed__source[disabled]{-webkit-text-fill-color:var(--ck-html-embed-source-disabled-color);background:var(--ck-html-embed-source-disabled-background);color:var(--ck-html-embed-source-disabled-color);opacity:1}.ck-widget.raw-html-embed .raw-html-embed__preview{min-height:var(--ck-html-embed-content-min-height);width:var(--ck-html-embed-content-width)}.ck-editor__editable:not(.ck-read-only) .ck-widget.raw-html-embed .raw-html-embed__preview{pointer-events:none}.ck-widget.raw-html-embed .raw-html-embed__preview-content{background-color:var(--ck-color-base-foreground);box-sizing:border-box}.ck-widget.raw-html-embed .raw-html-embed__preview-content>*{margin-left:auto;margin-right:auto}.ck-widget.raw-html-embed .raw-html-embed__preview-placeholder{color:var(--ck-html-embed-source-disabled-color)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-html-embed/theme/htmlembed.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-html-embed/htmlembed.css"],names:[],mappings:"AAMA,0BAMC,iBAAkB,CAOlB,iBAAkB,CATlB,gBAAkB,CAMlB,cAAe,CALf,iBAwDD,CA5CC,iCACC,iBAAkB,CAGlB,SACD,CAKA,2DAEC,YAAa,CACb,qBAAsB,CAFtB,iBAGD,CAEA,mDAGC,YAAa,CADb,eAAgB,CADhB,iBAGD,CAEA,2DAOC,wBAAyB,CACzB,kBAAmB,CAFnB,aAAc,CAHd,WAAY,CADZ,iBAAkB,CADlB,UAQD,CAEA,+DAQC,kBAAmB,CAHnB,QAAS,CAET,YAAa,CAEb,sBAAuB,CAPvB,MAAO,CADP,iBAAkB,CAGlB,OAAQ,CADR,KAOD,CC7DD,MACC,kEAAqE,CACrE,kCAAmC,CACnC,2CAA4C,CAC5C,yFAA0F,CAE1F,0EAA2E,CAC3E,6CACD,CAGA,0BAEC,gDAAiD,CADjD,kCA0ID,CAvIC,+DACC,iGACD,CAGA,mCACC,eACD,CAEA,mCACC,gBACD,CAIA,iCAIC,eAA4B,CAG5B,iEAAkE,CAClE,qCAAsC,CAPtC,mCAAoC,CASpC,+BAAgC,CADhC,kCAAmC,CANnC,+BAAgC,CAGhC,kIAAmI,CAJnI,yDAA4D,CAG5D,0GAMD,CAEA,0CACC,SAAU,CACV,gCACD,CAGA,iIACC,gBACD,CAxCD,uFA4CE,sDAAuD,CADvD,KAgGF,CA3IA,6FAkDE,uCAAwC,CADxC,sDAAuD,CADvD,KA2FF,CA3IA,wFAuDE,sDAAuD,CADvD,KAqFF,CA/EC,2DACC,kCACD,CAGA,2DAEC,gCAAiC,CADjC,8BAcD,CAXC,kGACC,iCACD,CAEA,oGACC,mCACD,CAEA,wFACC,kCACD,CAGD,oEACC,+BAAgC,CAChC,UACD,CAGA,kDACC,qBAAsB,CActB,aAAc,CAPd,qBAAsB,CAGtB,kCAAmC,CATnC,yCAA0C,CAG1C,WAAY,CACZ,kCAAmC,CAFnC,WAAY,CAKZ,UAAW,CAKX,eAAgB,CAJhB,oBAAqB,CAPrB,wCAsBD,CARC,4DAKC,kEAAmE,CAJnE,0DAA2D,CAC3D,gDAAiD,CAIjD,SACD,CAID,mDACC,kDAAmD,CACnD,wCAMD,CARA,2FAME,mBAEF,CAEA,2DAEC,gDAAiD,CADjD,qBAOD,CAJC,6DACC,gBAAiB,CACjB,iBACD,CAGD,+DACC,gDACD",sourcesContent:['/*\n * Copyright (c) 2003-2022, 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 feature container. */\n.ck-widget.raw-html-embed {\n\t/* Give the embed some air. */\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\tposition: relative;\n\tdisplay: flow-root;\n\n\t/* Give the html embed some minimal width in the content to prevent them\n\tfrom being "squashed" in tight spaces, e.g. in table cells (https://github.com/ckeditor/ckeditor5/issues/8331) */\n\tmin-width: 15em;\n\n\t/* Don\'t inherit the style, e.g. when in a block quote. */\n\tfont-style: normal;\n\n\t/* ----- Emebed label in the upper left corner ----------------------------------------------- */\n\n\t&::before {\n\t\tposition: absolute;\n\n\t\t/* Make sure the content does not cover the label. */\n\t\tz-index: 1;\n\t}\n\n\t/* ----- Emebed internals --------------------------------------------------------------------- */\n\n\t/* The switch mode button wrapper. */\n\t& .raw-html-embed__buttons-wrapper {\n\t\tposition: absolute;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t}\n\n\t& .raw-html-embed__preview {\n\t\tposition: relative;\n\t\toverflow: hidden;\n\t\tdisplay: flex;\n\t}\n\n\t& .raw-html-embed__preview-content {\n\t\twidth: 100%;\n\t\tposition: relative;\n\t\tmargin: auto;\n\n\t\t/* Gives spacing to the small renderable elements, so they always cover the placeholder. */\n\t\tdisplay: table;\n\t\tborder-collapse: separate;\n\t\tborder-spacing: 7px;\n\t}\n\n\t& .raw-html-embed__preview-placeholder {\n\t\tposition: absolute;\n\t\tleft: 0;\n\t\ttop: 0;\n\t\tright: 0;\n\t\tbottom: 0;\n\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t}\n}\n','/*\n * Copyright (c) 2003-2022, 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-html-embed-content-width: calc(100% - 1.5 * var(--ck-icon-size));\n\t--ck-html-embed-source-height: 10em;\n\t--ck-html-embed-unfocused-outline-width: 1px;\n\t--ck-html-embed-content-min-height: calc(var(--ck-icon-size) + var(--ck-spacing-standard));\n\n\t--ck-html-embed-source-disabled-background: var(--ck-color-base-foreground);\n\t--ck-html-embed-source-disabled-color: hsl(0deg 0% 45%);\n}\n\n/* The feature container. */\n.ck-widget.raw-html-embed {\n\tfont-size: var(--ck-font-size-base);\n\tbackground-color: var(--ck-color-base-foreground);\n\n\t&:not(.ck-widget_selected):not(:hover) {\n\t\toutline: var(--ck-html-embed-unfocused-outline-width) dashed var(--ck-color-widget-blurred-border);\n\t}\n\n\t/* HTML embed widget itself should respect UI language direction */\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/* ----- Embed label in the upper left corner ----------------------------------------------- */\n\n\t&::before {\n\t\tcontent: attr(data-html-embed-label);\n\t\ttop: calc(-1 * var(--ck-html-embed-unfocused-outline-width));\n\t\tleft: var(--ck-spacing-standard);\n\t\tbackground: hsl(0deg 0% 60%);\n\t\ttransition: background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\t\tpadding: calc(var(--ck-spacing-tiny) + var(--ck-html-embed-unfocused-outline-width)) var(--ck-spacing-small) var(--ck-spacing-tiny);\n\t\tborder-radius: 0 0 var(--ck-border-radius) var(--ck-border-radius);\n\t\tcolor: var(--ck-color-base-background);\n\t\tfont-size: var(--ck-font-size-tiny);\n\t\tfont-family: var(--ck-font-face);\n\t}\n\n\t&[dir="rtl"]::before {\n\t\tleft: auto;\n\t\tright: var(--ck-spacing-standard);\n\t}\n\n\t/* Make space for label but it only collides in LTR languages */\n\t&[dir="ltr"] .ck-widget__type-around .ck-widget__type-around__button.ck-widget__type-around__button_before {\n\t\tmargin-left: 50px;\n\t}\n\n\t@nest .ck.ck-editor__editable.ck-blurred &.ck-widget_selected::before {\n\t\ttop: 0px;\n\t\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-small);\n\t}\n\n\t@nest .ck.ck-editor__editable:not(.ck-blurred) &.ck-widget_selected::before {\n\t\ttop: 0;\n\t\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-small);\n\t\tbackground: var(--ck-color-focus-border);\n\t}\n\n\t@nest .ck.ck-editor__editable &:not(.ck-widget_selected):hover::before {\n\t\ttop: 0px;\n\t\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-small);\n\t}\n\n\t/* ----- Emebed internals --------------------------------------------------------------------- */\n\n\t& .raw-html-embed__content-wrapper {\n\t\tpadding: var(--ck-spacing-standard);\n\t}\n\n\t/* The switch mode button wrapper. */\n\t& .raw-html-embed__buttons-wrapper {\n\t\ttop: var(--ck-spacing-standard);\n\t\tright: var(--ck-spacing-standard);\n\n\t\t& .ck-button.raw-html-embed__save-button {\n\t\t\tcolor: var(--ck-color-button-save);\n\t\t}\n\n\t\t& .ck-button.raw-html-embed__cancel-button {\n\t\t\tcolor: var(--ck-color-button-cancel);\n\t\t}\n\n\t\t& .ck-button:not(:first-child) {\n\t\t\tmargin-top: var(--ck-spacing-small);\n\t\t}\n\t}\n\n\t&[dir="rtl"] .raw-html-embed__buttons-wrapper {\n\t\tleft: var(--ck-spacing-standard);\n\t\tright: auto;\n\t}\n\n\t/* The edit source element. */\n\t& .raw-html-embed__source {\n\t\tbox-sizing: border-box;\n\t\theight: var(--ck-html-embed-source-height);\n\t\twidth: var(--ck-html-embed-content-width);\n\t\tresize: none;\n\t\tmin-width: 0;\n\t\tpadding: var(--ck-spacing-standard);\n\n\t\tfont-family: monospace;\n\t\ttab-size: 4;\n\t\twhite-space: pre-wrap;\n\t\tfont-size: var(--ck-font-size-base); /* Safari needs this. */\n\n\t\t/* HTML code is direction–agnostic. */\n\t\ttext-align: left;\n\t\tdirection: ltr;\n\n\t\t&[disabled] {\n\t\t\tbackground: var(--ck-html-embed-source-disabled-background);\n\t\t\tcolor: var(--ck-html-embed-source-disabled-color);\n\n\t\t\t/* Safari needs this for the proper text color in disabled input (https://github.com/ckeditor/ckeditor5/issues/8320). */\n\t\t\t-webkit-text-fill-color: var(--ck-html-embed-source-disabled-color);\n\t\t\topacity: 1;\n\t\t}\n\t}\n\n\t/* The preview data container. */\n\t& .raw-html-embed__preview {\n\t\tmin-height: var(--ck-html-embed-content-min-height);\n\t\twidth: var(--ck-html-embed-content-width);\n\n\t\t/* Disable all mouse interaction as long as the editor is not read–only. */\n\t\t@nest .ck-editor__editable:not(.ck-read-only) & {\n\t\t\tpointer-events: none;\n\t\t}\n\t}\n\n\t& .raw-html-embed__preview-content {\n\t\tbox-sizing: border-box;\n\t\tbackground-color: var(--ck-color-base-foreground);\n\n\t\t& > * {\n\t\t\tmargin-left: auto;\n\t\t\tmargin-right: auto;\n\t\t}\n\t}\n\n\t& .raw-html-embed__preview-placeholder {\n\t\tcolor: var(--ck-html-embed-source-disabled-color)\n\t}\n}\n'],sourceRoot:""}]);const a=s},8468:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-html-object-embed-unfocused-outline-width:1px}.ck-widget.html-object-embed{background-color:var(--ck-color-base-foreground);font-size:var(--ck-font-size-base);min-width:calc(76px + var(--ck-spacing-standard));padding:var(--ck-spacing-small);padding-top:calc(var(--ck-font-size-tiny) + var(--ck-spacing-large))}.ck-widget.html-object-embed:not(.ck-widget_selected):not(:hover){outline:var(--ck-html-object-embed-unfocused-outline-width) dashed var(--ck-color-widget-blurred-border)}.ck-widget.html-object-embed:before{background:#999;border-radius:0 0 var(--ck-border-radius) var(--ck-border-radius);color:var(--ck-color-base-background);content:attr(data-html-object-embed-label);font-family:var(--ck-font-face);font-size:var(--ck-font-size-tiny);font-style:normal;font-weight:400;left:var(--ck-spacing-standard);padding:calc(var(--ck-spacing-tiny) + var(--ck-html-object-embed-unfocused-outline-width)) var(--ck-spacing-small) var(--ck-spacing-tiny);position:absolute;top:0;transition:background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve)}.ck-widget.html-object-embed .ck-widget__type-around .ck-widget__type-around__button.ck-widget__type-around__button_before{margin-left:50px}.ck-widget.html-object-embed .html-object-embed__content{pointer-events:none}div.ck-widget.html-object-embed{margin:1em auto}span.ck-widget.html-object-embed{display:inline-block}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-html-support/theme/datafilter.css"],names:[],mappings:"AAKA,MACC,kDACD,CAEA,6BAEC,gDAAiD,CADjD,kCAAmC,CAKnC,iDAAkD,CAHlD,+BAAgC,CAEhC,oEAgCD,CA7BC,kEACC,wGACD,CAEA,oCAOC,eAA4B,CAG5B,iEAAkE,CAClE,qCAAsC,CAPtC,0CAA2C,CAS3C,+BAAgC,CADhC,kCAAmC,CAVnC,iBAAkB,CADlB,eAAmB,CAKnB,+BAAgC,CAGhC,yIAA0I,CAN1I,iBAAkB,CAElB,KAAM,CAGN,0GAMD,CAGA,2HACC,gBACD,CAEA,yDAEC,mBACD,CAGD,gCACC,eACD,CAEA,iCACC,oBACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-html-object-embed-unfocused-outline-width: 1px;\n}\n\n.ck-widget.html-object-embed {\n\tfont-size: var(--ck-font-size-base);\n\tbackground-color: var(--ck-color-base-foreground);\n\tpadding: var(--ck-spacing-small);\n\t/* Leave space for label */\n\tpadding-top: calc(var(--ck-font-size-tiny) + var(--ck-spacing-large));\n\tmin-width: calc(76px + var(--ck-spacing-standard));\n\n\t&:not(.ck-widget_selected):not(:hover) {\n\t\toutline: var(--ck-html-object-embed-unfocused-outline-width) dashed var(--ck-color-widget-blurred-border);\n\t}\n\n\t&::before {\n\t\tfont-weight: normal;\n\t\tfont-style: normal;\n\t\tposition: absolute;\n\t\tcontent: attr(data-html-object-embed-label);\n\t\ttop: 0;\n\t\tleft: var(--ck-spacing-standard);\n\t\tbackground: hsl(0deg 0% 60%);\n\t\ttransition: background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\t\tpadding: calc(var(--ck-spacing-tiny) + var(--ck-html-object-embed-unfocused-outline-width)) var(--ck-spacing-small) var(--ck-spacing-tiny);\n\t\tborder-radius: 0 0 var(--ck-border-radius) var(--ck-border-radius);\n\t\tcolor: var(--ck-color-base-background);\n\t\tfont-size: var(--ck-font-size-tiny);\n\t\tfont-family: var(--ck-font-face);\n\t}\n\n\t/* Make space for label. */\n\t& .ck-widget__type-around .ck-widget__type-around__button.ck-widget__type-around__button_before {\n\t\tmargin-left: 50px;\n\t}\n\n\t& .html-object-embed__content {\n\t\t/* Disable user interaction with embed content */\n\t\tpointer-events: none;\n\t}\n}\n\ndiv.ck-widget.html-object-embed {\n\tmargin: 1em auto;\n}\n\nspan.ck-widget.html-object-embed {\n\tdisplay: inline-block;\n}\n\n"],sourceRoot:""}]);const a=s},9048:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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;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-inline.ck-widget_selected,.ck.ck-editor__editable .image.ck-widget_selected{z-index:1}.ck.ck-editor__editable .image-inline.ck-widget_selected ::selection{display:none}.ck.ck-editor__editable td .image-inline img,.ck.ck-editor__editable th .image-inline img{max-width:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/image.css"],names:[],mappings:"AAMC,mBAEC,UAAW,CADX,aAAc,CAOd,gBAAkB,CAGlB,cAAe,CARf,iBAuBD,CAbC,uBAEC,aAAc,CAGd,aAAc,CAGd,cAAe,CAGf,cACD,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,CAWA,2GACC,SAUD,CAHC,qEACC,YACD,CAOA,0FACC,cACD",sourcesContent:['/*\n * Copyright (c) 2003-2022, 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\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\n\t/*\n\t * Make sure the selected inline image always stays on top of its siblings.\n\t * See https://github.com/ckeditor/ckeditor5/issues/9108.\n\t */\n\t& .image.ck-widget_selected {\n\t\tz-index: 1;\n\t}\n\n\t& .image-inline.ck-widget_selected {\n\t\tz-index: 1;\n\n\t\t/*\n\t\t * Make sure the native browser selection style is not displayed.\n\t\t * Inline image widgets have their own styles for the selected state and\n\t\t * leaving this up to the browser is asking for a visual collision.\n\t\t */\n\t\t& ::selection {\n\t\t\tdisplay: none;\n\t\t}\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},8662:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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-highligted-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}.ck.ck-editor__editable .image>figcaption.image__caption_highlighted{animation:ck-image-caption-highlight .6s ease-out}@keyframes ck-image-caption-highlight{0%{background-color:var(--ck-color-image-caption-highligted-background)}to{background-color:var(--ck-color-image-caption-background)}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imagecaption.css"],names:[],mappings:"AAKA,MACC,2CAAoD,CACpD,kCAA8C,CAC9C,mDACD,CAGA,8BAKC,yDAA0D,CAH1D,mBAAoB,CAEpB,wCAAyC,CAHzC,qBAAsB,CAMtB,eAAgB,CAChB,mBAAoB,CAFpB,YAAa,CAHb,qBAMD,CAGA,qEACC,iDACD,CAEA,sCACC,GACC,oEACD,CAEA,GACC,yDACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-caption-background: hsl(0, 0%, 97%);\n\t--ck-color-image-caption-text: hsl(0, 0%, 20%);\n\t--ck-color-image-caption-highligted-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\n/* Editing styles */\n.ck.ck-editor__editable .image > figcaption.image__caption_highlighted {\n\tanimation: ck-image-caption-highlight .6s ease-out;\n}\n\n@keyframes ck-image-caption-highlight {\n\t0% {\n\t\tbackground-color: var(--ck-color-image-caption-highligted-background);\n\t}\n\n\t100% {\n\t\tbackground-color: var(--ck-color-image-caption-background);\n\t}\n}\n"],sourceRoot:""}]);const a=s},9292:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-image-insert__panel{padding:var(--ck-spacing-large)}.ck.ck-image-insert__ck-finder-button{border:1px solid #ccc;border-radius:var(--ck-border-radius);display:block;margin:var(--ck-spacing-standard) auto;width:100%}.ck.ck-splitbutton>.ck-file-dialog-button.ck-button{border:none;margin:0;padding:0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imageinsert.css"],names:[],mappings:"AAKA,2BACC,+BACD,CAEA,sCAIC,qBAAiC,CACjC,qCAAsC,CAJtC,aAAc,CAEd,sCAAuC,CADvC,UAID,CAGA,oDAGC,WAAY,CADZ,QAAS,CADT,SAGD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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__panel {\n\tpadding: var(--ck-spacing-large);\n}\n\n.ck.ck-image-insert__ck-finder-button {\n\tdisplay: block;\n\twidth: 100%;\n\tmargin: var(--ck-spacing-standard) auto;\n\tborder: 1px solid hsl(0, 0%, 80%);\n\tborder-radius: var(--ck-border-radius);\n}\n\n/* https://github.com/ckeditor/ckeditor5/issues/7986 */\n.ck.ck-splitbutton > .ck-file-dialog-button.ck-button {\n\tpadding: 0;\n\tmargin: 0;\n\tborder: none;\n}\n"],sourceRoot:""}]);const a=s},5150:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-image-insert-form:focus{outline:none}.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-image-insert-form__action-row{margin-top:var(--ck-spacing-standard)}.ck.ck-form__row.ck-image-insert-form__action-row .ck-button-cancel,.ck.ck-form__row.ck-image-insert-form__action-row .ck-button-save{justify-content:center}.ck.ck-form__row.ck-image-insert-form__action-row .ck-button .ck-button__label{color:var(--ck-color-text)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-image/theme/imageinsertformrowview.css"],names:[],mappings:"AAMC,+BAEC,YACD,CAGD,iBACC,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CACjB,6BAmBD,CAhBC,iCACC,WACD,CAEA,kDACC,qCAUD,CARC,sIAEC,sBACD,CAEA,+EACC,0BACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-form {\n\t&:focus {\n\t\t/* See: https://github.com/ckeditor/ckeditor5/issues/4773 */\n\t\toutline: none;\n\t}\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-image-insert-form__action-row {\n\t\tmargin-top: var(--ck-spacing-standard);\n\n\t\t& .ck-button-save,\n\t\t& .ck-button-cancel {\n\t\t\tjustify-content: center;\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"],sourceRoot:""}]);const a=s},1043:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".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://./node_modules/@ckeditor/ckeditor5-image/theme/imageresize.css"],names:[],mappings:"AAKA,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-2022, 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 .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},4622:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/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-2022, 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},9899:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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}@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://./node_modules/@ckeditor/ckeditor5-image/theme/imageuploadicon.css","webpack://./node_modules/@ckeditor/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,mFA0BD,CAtBC,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,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-2022, 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-2022, 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\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},9825:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-image/theme/imageuploadloader.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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},5870:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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}.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://./node_modules/@ckeditor/ckeditor5-image/theme/imageuploadprogress.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-image/imageuploadprogress.css"],names:[],mappings:"AAMC,qEAEC,iBACD,CAGA,uGAIC,MAAO,CAFP,iBAAkB,CAClB,KAED,CCRC,yFACC,oBACD,CAID,uGAIC,gDAAiD,CAFjD,UAAW,CAGX,oBAAuB,CAFvB,OAGD,CAGD,kBACC,GAAO,SAAY,CACnB,GAAO,SAAY,CACpB",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-2022, 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\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},6831:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-image/theme/textalternativeform.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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},4704:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck-content span[lang]{font-style:italic}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-language/theme/language.css"],names:[],mappings:"AAKA,uBACC,iBACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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 span[lang] {\n\tfont-style: italic;\n}\n"],sourceRoot:""}]);const a=s},399:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/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-2022, 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},9465:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-link/theme/linkactions.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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-2022, 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},4827:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-link-form{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://./node_modules/@ckeditor/ckeditor5-link/theme/linkform.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-link/linkform.css"],names:[],mappings:"AAOA,iBACC,YAiBD,CAfC,2BACC,YACD,CCNA,oCDCD,iBAQE,cAUF,CARE,wCACC,eACD,CAEA,4BACC,cACD,CCfD,CDuBD,iCACC,aAYD,CALE,wHAEC,mCACD,CE/BF,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-2022, 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\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-2022, 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-2022, 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},3858:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iI2ZmZiIgZD0ibTExLjA3NyAxNSAuOTkxLTEuNDE2YS43NS43NSAwIDEgMSAxLjIyOS44NmwtMS4xNDggMS42NGEuNzQ4Ljc0OCAwIDAgMS0uMjE3LjIwNiA1LjI1MSA1LjI1MSAwIDAgMS04LjUwMy01Ljk1NS43NDEuNzQxIDAgMCAxIC4xMi0uMjc0bDEuMTQ3LTEuNjM5YS43NS43NSAwIDEgMSAxLjIyOC44Nkw0LjkzMyAxMC43bC4wMDYuMDAzYTMuNzUgMy43NSAwIDAgMCA2LjEzMiA0LjI5NGwuMDA2LjAwNHptNS40OTQtNS4zMzVhLjc0OC43NDggMCAwIDEtLjEyLjI3NGwtMS4xNDcgMS42MzlhLjc1Ljc1IDAgMSAxLTEuMjI4LS44NmwuODYtMS4yM2EzLjc1IDMuNzUgMCAwIDAtNi4xNDQtNC4zMDFsLS44NiAxLjIyOWEuNzUuNzUgMCAwIDEtMS4yMjktLjg2bDEuMTQ4LTEuNjRhLjc0OC43NDggMCAwIDEgLjIxNy0uMjA2IDUuMjUxIDUuMjUxIDAgMCAxIDguNTAzIDUuOTU1em0tNC41NjMtMi41MzJhLjc1Ljc1IDAgMCAxIC4xODQgMS4wNDVsLTMuMTU1IDQuNTA1YS43NS43NSAwIDEgMS0xLjIyOS0uODZsMy4xNTUtNC41MDZhLjc1Ljc1IDAgMCAxIDEuMDQ1LS4xODR6Ii8+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://./node_modules/@ckeditor/ckeditor5-link/theme/linkimage.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-link/linkimage.css"],names:[],mappings:"AASE,+FACC,aAAc,CACd,iBACD,CCPF,MAEC,sCAAuC,CACvC,oEACD,CAME,+FAUC,+BAAqC,CACrC,83BAA+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-2022, 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-2022, 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},3195:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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-spacing-medium) var(--ck-spacing-large);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:0 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://./node_modules/@ckeditor/ckeditor5-list/theme/collapsible.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-list/collapsible.css"],names:[],mappings:"AAMC,sEACC,YACD,CCHD,MACC,yDACD,CAGC,iCAIC,eAAgB,CAChB,aAAc,CAHd,eAAiB,CACjB,wDAAyD,CAFzD,UAoBD,CAdC,uCACC,sBACD,CAEA,wIACC,sBAAuB,CACvB,wBAAyB,CACzB,eACD,CAEA,0CACC,qCAAsC,CACtC,sCACD,CAGD,6CACC,yDACD,CAGC,mEACC,wBACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-2022, 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-spacing-medium) var(--ck-spacing-large);\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: 0 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},8676:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck-editor__editable .ck-list-bogus-paragraph{display:block}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-list/theme/documentlist.css"],names:[],mappings:"AAKA,8CACC,aACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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},7133:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/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-2022, 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},4553:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-list-styles-list{display:grid}.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:circle}.ck-content ul ul{list-style-type:disc}.ck-content ul ul ul,.ck-content ul ul ul ul{list-style-type:square}: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://./node_modules/@ckeditor/ckeditor5-list/theme/liststyles.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-list/liststyles.css"],names:[],mappings:"AAKA,wBACC,YACD,CAEA,eACC,uBAiBD,CAfC,kBACC,2BAaD,CAXC,qBACC,2BASD,CAPC,wBACC,2BAKD,CAHC,2BACC,2BACD,CAMJ,eACC,sBAaD,CAXC,kBACC,oBASD,CAJE,6CACC,sBACD,CCnCH,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-2022, 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.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: circle;\n\n\t& ul {\n\t\tlist-style-type: disc;\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",'/*\n * Copyright (c) 2003-2022, 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},1588:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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}.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 .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,background .25s ease-in-out,border .25s ease-in-out;width:100%}.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}[dir=rtl] .todo-list .todo-list__label>input{left:0;margin-left:-15px;margin-right:0;right:-25px}.ck-editor__editable .todo-list .todo-list__label>input{cursor:pointer}.ck-editor__editable .todo-list .todo-list__label>input:hover:before{box-shadow:0 0 0 5px rgba(0,0,0,.1)}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-list/theme/todolist.css"],names:[],mappings:"AAKA,MACC,kCACD,CAEA,uBACC,eA0ED,CAxEC,0BACC,iBAKD,CAHC,qCACC,cACD,CAIA,+CACC,uBAAwB,CAQxB,QAAS,CAPT,oBAAqB,CAGrB,yCAA0C,CAO1C,UAAW,CAGX,aAAc,CAFd,kBAAmB,CAVnB,iBAAkB,CAWlB,OAAQ,CARR,qBAAsB,CAFtB,wCAqDD,CAxCC,sDAOC,qBAAiC,CACjC,iBAAkB,CALlB,qBAAsB,CACtB,UAAW,CAHX,aAAc,CAKd,WAAY,CAJZ,iBAAkB,CAOlB,0FAAgG,CAJhG,UAKD,CAEA,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,CAIF,wEACC,qBACD,CAKF,6CACC,MAAO,CAGP,iBAAkB,CAFlB,cAAe,CACf,WAED,CAMA,wDACC,cAKD,CAHC,qEACC,mCACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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.ck-content .todo-list {\n\tlist-style: none;\n\n\t& li {\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-webkit-appearance: none;\n\t\t\tdisplay: inline-block;\n\t\t\tposition: relative;\n\t\t\twidth: var(--ck-todo-list-checkmark-size);\n\t\t\theight: var(--ck-todo-list-checkmark-size);\n\t\t\tvertical-align: middle;\n\n\t\t\t/* Needed on iOS */\n\t\t\tborder: 0;\n\n\t\t\t/* LTR styles */\n\t\t\tleft: -25px;\n\t\t\tmargin-right: -15px;\n\t\t\tright: 0;\n\t\t\tmargin-left: 0;\n\n\t\t\t&::before {\n\t\t\t\tdisplay: block;\n\t\t\t\tposition: absolute;\n\t\t\t\tbox-sizing: border-box;\n\t\t\t\tcontent: '';\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t\tborder: 1px solid hsl(0, 0%, 20%);\n\t\t\t\tborder-radius: 2px;\n\t\t\t\ttransition: 250ms ease-in-out box-shadow, 250ms ease-in-out background, 250ms ease-in-out border;\n\t\t\t}\n\n\t\t\t&::after {\n\t\t\t\tdisplay: block;\n\t\t\t\tposition: absolute;\n\t\t\t\tbox-sizing: content-box;\n\t\t\t\tpointer-events: none;\n\t\t\t\tcontent: '';\n\n\t\t\t\t/* Calculate tick position, size and border-width proportional to the checkmark size. */\n\t\t\t\tleft: calc( var(--ck-todo-list-checkmark-size) / 3 );\n\t\t\t\ttop: calc( var(--ck-todo-list-checkmark-size) / 5.3 );\n\t\t\t\twidth: calc( var(--ck-todo-list-checkmark-size) / 5.3 );\n\t\t\t\theight: calc( var(--ck-todo-list-checkmark-size) / 2.6 );\n\t\t\t\tborder-style: solid;\n\t\t\t\tborder-color: transparent;\n\t\t\t\tborder-width: 0 calc( var(--ck-todo-list-checkmark-size) / 8 ) calc( var(--ck-todo-list-checkmark-size) / 8 ) 0;\n\t\t\t\ttransform: rotate(45deg);\n\t\t\t}\n\n\t\t\t&[checked] {\n\t\t\t\t&::before {\n\t\t\t\t\tbackground: hsl(126, 64%, 41%);\n\t\t\t\t\tborder-color: hsl(126, 64%, 41%);\n\t\t\t\t}\n\n\t\t\t\t&::after {\n\t\t\t\t\tborder-color: hsl(0, 0%, 100%);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t& .todo-list__label__description {\n\t\t\tvertical-align: middle;\n\t\t}\n\t}\n}\n\n/* RTL styles */\n[dir=\"rtl\"] .todo-list .todo-list__label > input {\n\tleft: 0;\n\tmargin-right: 0;\n\tright: -25px;\n\tmargin-left: -15px;\n}\n\n/*\n * To-do list should be interactive only during the editing\n * (https://github.com/ckeditor/ckeditor5/issues/2090).\n */\n.ck-editor__editable .todo-list .todo-list__label > input {\n\tcursor: pointer;\n\n\t&:hover::before {\n\t\tbox-shadow: 0 0 0 5px hsla(0, 0%, 0%, 0.1);\n\t}\n}\n"],sourceRoot:""}]);const a=s},5777:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck-content .media{clear:both;display:block;margin:.9em 0;min-width:15em}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-media-embed/theme/mediaembed.css"],names:[],mappings:"AAKA,mBAGC,UAAW,CASX,aAAc,CAJd,aAAe,CAQf,cACD",sourcesContent:['/*\n * Copyright (c) 2003-2022, 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 .media {\n\t/* Don\'t allow floated content overlap the media.\n\thttps://github.com/ckeditor/ckeditor5-media-embed/issues/53 */\n\tclear: both;\n\n\t/* Make sure there is some space between the content and the media. */\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 0;\n\n\t/* Make sure media is not overriden with Bootstrap default `flex` value.\n\tSee: https://github.com/ckeditor/ckeditor5/issues/1373. */\n\tdisplay: block;\n\n\t/* Give the media some minimal width in the content to prevent them\n\tfrom being "squashed" in tight spaces, e.g. in table cells (#44) */\n\tmin-width: 15em;\n}\n'],sourceRoot:""}]);const a=s},952:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,'.ck-media__wrapper .ck-media__placeholder{align-items:center;display:flex;flex-direction:column}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url{max-width:100%;position:relative}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url .ck-media__placeholder__url__text{display:block;overflow:hidden}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="goo.gl/maps"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="google.com/maps"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="maps.app.goo.gl"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="maps.google.com"] .ck-media__placeholder__icon *,.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck-media__placeholder__icon *{display:none}.ck-editor__editable:not(.ck-read-only) .ck-media__wrapper>:not(.ck-media__placeholder),.ck-editor__editable:not(.ck-read-only) .ck-widget:not(.ck-widget_selected) .ck-media__placeholder{pointer-events:none}:root{--ck-media-embed-placeholder-icon-size:3em;--ck-color-media-embed-placeholder-url-text:#757575;--ck-color-media-embed-placeholder-url-text-hover:var(--ck-color-base-text)}.ck-media__wrapper{margin:0 auto}.ck-media__wrapper .ck-media__placeholder{background:var(--ck-color-base-foreground);padding:calc(var(--ck-spacing-standard)*3)}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__icon{background-position:50%;background-size:cover;height:var(--ck-media-embed-placeholder-icon-size);margin-bottom:var(--ck-spacing-large);min-width:var(--ck-media-embed-placeholder-icon-size)}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__icon .ck-icon{height:100%;width:100%}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url__text{color:var(--ck-color-media-embed-placeholder-url-text);font-style:italic;text-align:center;text-overflow:ellipsis;white-space:nowrap}.ck-media__wrapper .ck-media__placeholder .ck-media__placeholder__url__text:hover{color:var(--ck-color-media-embed-placeholder-url-text-hover);cursor:pointer;text-decoration:underline}.ck-media__wrapper[data-oembed-url*="open.spotify.com"]{max-height:380px;max-width:300px}.ck-media__wrapper[data-oembed-url*="goo.gl/maps"] .ck-media__placeholder__icon,.ck-media__wrapper[data-oembed-url*="google.com/maps"] .ck-media__placeholder__icon,.ck-media__wrapper[data-oembed-url*="maps.app.goo.gl"] .ck-media__placeholder__icon,.ck-media__wrapper[data-oembed-url*="maps.google.com"] .ck-media__placeholder__icon{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTAuMzc4IiBoZWlnaHQ9IjI1NC4xNjciIHZpZXdCb3g9IjAgMCA2Ni4yNDYgNjcuMjQ4Ij48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTcyLjUzMSAtMjE4LjQ1NSkgc2NhbGUoLjk4MDEyKSI+PHJlY3Qgcnk9IjUuMjM4IiByeD0iNS4yMzgiIHk9IjIzMS4zOTkiIHg9IjE3Ni4wMzEiIGhlaWdodD0iNjAuMDk5IiB3aWR0aD0iNjAuMDk5IiBmaWxsPSIjMzRhNjY4IiBwYWludC1vcmRlcj0ibWFya2VycyBzdHJva2UgZmlsbCIvPjxwYXRoIGQ9Im0yMDYuNDc3IDI2MC45LTI4Ljk4NyAyOC45ODdhNS4yMTggNS4yMTggMCAwIDAgMy43OCAxLjYxaDQ5LjYyMWMxLjY5NCAwIDMuMTktLjc5OCA0LjE0Ni0yLjAzN3oiIGZpbGw9IiM1Yzg4YzUiLz48cGF0aCBkPSJNMjI2Ljc0MiAyMjIuOTg4Yy05LjI2NiAwLTE2Ljc3NyA3LjE3LTE2Ljc3NyAxNi4wMTQuMDA3IDIuNzYyLjY2MyA1LjQ3NCAyLjA5MyA3Ljg3NS40My43MDMuODMgMS40MDggMS4xOSAyLjEwNy4zMzMuNTAyLjY1IDEuMDA1Ljk1IDEuNTA4LjM0My40NzcuNjczLjk1Ny45ODggMS40NCAxLjMxIDEuNzY5IDIuNSAzLjUwMiAzLjYzNyA1LjE2OC43OTMgMS4yNzUgMS42ODMgMi42NCAyLjQ2NiAzLjk5IDIuMzYzIDQuMDk0IDQuMDA3IDguMDkyIDQuNiAxMy45MTR2LjAxMmMuMTgyLjQxMi41MTYuNjY2Ljg3OS42NjcuNDAzLS4wMDEuNzY4LS4zMTQuOTMtLjc5OS42MDMtNS43NTYgMi4yMzgtOS43MjkgNC41ODUtMTMuNzk0Ljc4Mi0xLjM1IDEuNjczLTIuNzE1IDIuNDY1LTMuOTkgMS4xMzctMS42NjYgMi4zMjgtMy40IDMuNjM4LTUuMTY5LjMxNS0uNDgyLjY0NS0uOTYyLjk4OC0xLjQzOS4zLS41MDMuNjE3LTEuMDA2Ljk1LTEuNTA4LjM1OS0uNy43Ni0xLjQwNCAxLjE5LTIuMTA3IDEuNDI2LTIuNDAyIDItNS4xMTQgMi4wMDQtNy44NzUgMC04Ljg0NC03LjUxMS0xNi4wMTQtMTYuNzc2LTE2LjAxNHoiIGZpbGw9IiNkZDRiM2UiIHBhaW50LW9yZGVyPSJtYXJrZXJzIHN0cm9rZSBmaWxsIi8+PGVsbGlwc2Ugcnk9IjUuNTY0IiByeD0iNS44MjgiIGN5PSIyMzkuMDAyIiBjeD0iMjI2Ljc0MiIgZmlsbD0iIzgwMmQyNyIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48cGF0aCBkPSJNMTkwLjMwMSAyMzcuMjgzYy00LjY3IDAtOC40NTcgMy44NTMtOC40NTcgOC42MDZzMy43ODYgOC42MDcgOC40NTcgOC42MDdjMy4wNDMgMCA0LjgwNi0uOTU4IDYuMzM3LTIuNTE2IDEuNTMtMS41NTcgMi4wODctMy45MTMgMi4wODctNi4yOSAwLS4zNjItLjAyMy0uNzIyLS4wNjQtMS4wNzloLTguMjU3djMuMDQzaDQuODVjLS4xOTcuNzU5LS41MzEgMS40NS0xLjA1OCAxLjk4Ni0uOTQyLjk1OC0yLjAyOCAxLjU0OC0zLjkwMSAxLjU0OC0yLjg3NiAwLTUuMjA4LTIuMzcyLTUuMjA4LTUuMjk5IDAtMi45MjYgMi4zMzItNS4yOTkgNS4yMDgtNS4yOTkgMS4zOTkgMCAyLjYxOC40MDcgMy41ODQgMS4yOTNsMi4zODEtMi4zOGMwLS4wMDItLjAwMy0uMDA0LS4wMDQtLjAwNS0xLjU4OC0xLjUyNC0zLjYyLTIuMjE1LTUuOTU1LTIuMjE1em00LjQzIDUuNjYuMDAzLjAwNnYtLjAwM3oiIGZpbGw9IiNmZmYiIHBhaW50LW9yZGVyPSJtYXJrZXJzIHN0cm9rZSBmaWxsIi8+PHBhdGggZD0ibTIxNS4xODQgMjUxLjkyOS03Ljk4IDcuOTc5IDI4LjQ3NyAyOC40NzVhNS4yMzMgNS4yMzMgMCAwIDAgLjQ0OS0yLjEyM3YtMzEuMTY1Yy0uNDY5LjY3NS0uOTM0IDEuMzQ5LTEuMzgyIDIuMDA1LS43OTIgMS4yNzUtMS42ODIgMi42NC0yLjQ2NSAzLjk5LTIuMzQ3IDQuMDY1LTMuOTgyIDguMDM4LTQuNTg1IDEzLjc5NC0uMTYyLjQ4NS0uNTI3Ljc5OC0uOTMuNzk5LS4zNjMtLjAwMS0uNjk3LS4yNTUtLjg3OS0uNjY3di0uMDEyYy0uNTkzLTUuODIyLTIuMjM3LTkuODItNC42LTEzLjkxNC0uNzgzLTEuMzUtMS42NzMtMi43MTUtMi40NjYtMy45OS0xLjEzNy0xLjY2Ni0yLjMyNy0zLjQtMy42MzctNS4xNjlsLS4wMDItLjAwM3oiIGZpbGw9IiNjM2MzYzMiLz48cGF0aCBkPSJtMjEyLjk4MyAyNDguNDk1LTM2Ljk1MiAzNi45NTN2LjgxMmE1LjIyNyA1LjIyNyAwIDAgMCA1LjIzOCA1LjIzOGgxLjAxNWwzNS42NjYtMzUuNjY2YTEzNi4yNzUgMTM2LjI3NSAwIDAgMC0yLjc2NC0zLjkgMzcuNTc1IDM3LjU3NSAwIDAgMC0uOTg5LTEuNDQgMzUuMTI3IDM1LjEyNyAwIDAgMC0uOTUtMS41MDhjLS4wODMtLjE2Mi0uMTc2LS4zMjYtLjI2NC0uNDg5eiIgZmlsbD0iI2ZkZGM0ZiIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48cGF0aCBkPSJtMjExLjk5OCAyNjEuMDgzLTYuMTUyIDYuMTUxIDI0LjI2NCAyNC4yNjRoLjc4MWE1LjIyNyA1LjIyNyAwIDAgMCA1LjIzOS01LjIzOHYtMS4wNDV6IiBmaWxsPSIjZmZmIiBwYWludC1vcmRlcj0ibWFya2VycyBzdHJva2UgZmlsbCIvPjwvZz48L3N2Zz4=)}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder{background:#4268b3}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder .ck-media__placeholder__icon{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAyNCIgaGVpZ2h0PSIxMDI0IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik05NjcuNDg0IDBINTYuNTE3QzI1LjMwNCAwIDAgMjUuMzA0IDAgNTYuNTE3djkxMC45NjZDMCA5OTguNjk0IDI1LjI5NyAxMDI0IDU2LjUyMiAxMDI0SDU0N1Y2MjhINDE0VjQ3M2gxMzNWMzU5LjAyOWMwLTEzMi4yNjIgODAuNzczLTIwNC4yODIgMTk4Ljc1Ni0yMDQuMjgyIDU2LjUxMyAwIDEwNS4wODYgNC4yMDggMTE5LjI0NCA2LjA4OVYyOTlsLTgxLjYxNi4wMzdjLTYzLjk5MyAwLTc2LjM4NCAzMC40OTItNzYuMzg0IDc1LjIzNlY0NzNoMTUzLjQ4N2wtMTkuOTg2IDE1NUg3MDd2Mzk2aDI2MC40ODRjMzEuMjEzIDAgNTYuNTE2LTI1LjMwMyA1Ni41MTYtNTYuNTE2VjU2LjUxNUMxMDI0IDI1LjMwMyA5OTguNjk3IDAgOTY3LjQ4NCAwIiBmaWxsPSIjRkZGRkZFIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiLz48L3N2Zz4=)}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder .ck-media__placeholder__url__text{color:#cdf}.ck-media__wrapper[data-oembed-url*="facebook.com"] .ck-media__placeholder .ck-media__placeholder__url__text:hover{color:#fff}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder{background:linear-gradient(-135deg,#1400c7,#b800b1,#f50000)}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder .ck-media__placeholder__icon{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTA0IiBoZWlnaHQ9IjUwNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGRlZnM+PHBhdGggaWQ9ImEiIGQ9Ik0wIC4xNTloNTAzLjg0MVY1MDMuOTRIMHoiLz48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48bWFzayBpZD0iYiIgZmlsbD0iI2ZmZiI+PHVzZSB4bGluazpocmVmPSIjYSIvPjwvbWFzaz48cGF0aCBkPSJNMjUxLjkyMS4xNTljLTY4LjQxOCAwLTc2Ljk5Ny4yOS0xMDMuODY3IDEuNTE2LTI2LjgxNCAxLjIyMy00NS4xMjcgNS40ODItNjEuMTUxIDExLjcxLTE2LjU2NiA2LjQzNy0zMC42MTUgMTUuMDUxLTQ0LjYyMSAyOS4wNTYtMTQuMDA1IDE0LjAwNi0yMi42MTkgMjguMDU1LTI5LjA1NiA0NC42MjEtNi4yMjggMTYuMDI0LTEwLjQ4NyAzNC4zMzctMTEuNzEgNjEuMTUxQy4yOSAxNzUuMDgzIDAgMTgzLjY2MiAwIDI1Mi4wOGMwIDY4LjQxNy4yOSA3Ni45OTYgMS41MTYgMTAzLjg2NiAxLjIyMyAyNi44MTQgNS40ODIgNDUuMTI3IDExLjcxIDYxLjE1MSA2LjQzNyAxNi41NjYgMTUuMDUxIDMwLjYxNSAyOS4wNTYgNDQuNjIxIDE0LjAwNiAxNC4wMDUgMjguMDU1IDIyLjYxOSA0NC42MjEgMjkuMDU3IDE2LjAyNCA2LjIyNyAzNC4zMzcgMTAuNDg2IDYxLjE1MSAxMS43MDkgMjYuODcgMS4yMjYgMzUuNDQ5IDEuNTE2IDEwMy44NjcgMS41MTYgNjguNDE3IDAgNzYuOTk2LS4yOSAxMDMuODY2LTEuNTE2IDI2LjgxNC0xLjIyMyA0NS4xMjctNS40ODIgNjEuMTUxLTExLjcwOSAxNi41NjYtNi40MzggMzAuNjE1LTE1LjA1MiA0NC42MjEtMjkuMDU3IDE0LjAwNS0xNC4wMDYgMjIuNjE5LTI4LjA1NSAyOS4wNTctNDQuNjIxIDYuMjI3LTE2LjAyNCAxMC40ODYtMzQuMzM3IDExLjcwOS02MS4xNTEgMS4yMjYtMjYuODcgMS41MTYtMzUuNDQ5IDEuNTE2LTEwMy44NjYgMC02OC40MTgtLjI5LTc2Ljk5Ny0xLjUxNi0xMDMuODY3LTEuMjIzLTI2LjgxNC01LjQ4Mi00NS4xMjctMTEuNzA5LTYxLjE1MS02LjQzOC0xNi41NjYtMTUuMDUyLTMwLjYxNS0yOS4wNTctNDQuNjIxLTE0LjAwNi0xNC4wMDUtMjguMDU1LTIyLjYxOS00NC42MjEtMjkuMDU2LTE2LjAyNC02LjIyOC0zNC4zMzctMTAuNDg3LTYxLjE1MS0xMS43MUMzMjguOTE3LjQ0OSAzMjAuMzM4LjE1OSAyNTEuOTIxLjE1OVptMCA0NS4zOTFjNjcuMjY1IDAgNzUuMjMzLjI1NyAxMDEuNzk3IDEuNDY5IDI0LjU2MiAxLjEyIDM3LjkwMSA1LjIyNCA0Ni43NzggOC42NzQgMTEuNzU5IDQuNTcgMjAuMTUxIDEwLjAyOSAyOC45NjYgMTguODQ1IDguODE2IDguODE1IDE0LjI3NSAxNy4yMDcgMTguODQ1IDI4Ljk2NiAzLjQ1IDguODc3IDcuNTU0IDIyLjIxNiA4LjY3NCA0Ni43NzggMS4yMTIgMjYuNTY0IDEuNDY5IDM0LjUzMiAxLjQ2OSAxMDEuNzk4IDAgNjcuMjY1LS4yNTcgNzUuMjMzLTEuNDY5IDEwMS43OTctMS4xMiAyNC41NjItNS4yMjQgMzcuOTAxLTguNjc0IDQ2Ljc3OC00LjU3IDExLjc1OS0xMC4wMjkgMjAuMTUxLTE4Ljg0NSAyOC45NjYtOC44MTUgOC44MTYtMTcuMjA3IDE0LjI3NS0yOC45NjYgMTguODQ1LTguODc3IDMuNDUtMjIuMjE2IDcuNTU0LTQ2Ljc3OCA4LjY3NC0yNi41NiAxLjIxMi0zNC41MjcgMS40NjktMTAxLjc5NyAxLjQ2OS02Ny4yNzEgMC03NS4yMzctLjI1Ny0xMDEuNzk4LTEuNDY5LTI0LjU2Mi0xLjEyLTM3LjkwMS01LjIyNC00Ni43NzgtOC42NzQtMTEuNzU5LTQuNTctMjAuMTUxLTEwLjAyOS0yOC45NjYtMTguODQ1LTguODE1LTguODE1LTE0LjI3NS0xNy4yMDctMTguODQ1LTI4Ljk2Ni0zLjQ1LTguODc3LTcuNTU0LTIyLjIxNi04LjY3NC00Ni43NzgtMS4yMTItMjYuNTY0LTEuNDY5LTM0LjUzMi0xLjQ2OS0xMDEuNzk3IDAtNjcuMjY2LjI1Ny03NS4yMzQgMS40NjktMTAxLjc5OCAxLjEyLTI0LjU2MiA1LjIyNC0zNy45MDEgOC42NzQtNDYuNzc4IDQuNTctMTEuNzU5IDEwLjAyOS0yMC4xNTEgMTguODQ1LTI4Ljk2NiA4LjgxNS04LjgxNiAxNy4yMDctMTQuMjc1IDI4Ljk2Ni0xOC44NDUgOC44NzctMy40NSAyMi4yMTYtNy41NTQgNDYuNzc4LTguNjc0IDI2LjU2NC0xLjIxMiAzNC41MzItMS40NjkgMTAxLjc5OC0xLjQ2OVoiIGZpbGw9IiNGRkYiIG1hc2s9InVybCgjYikiLz48cGF0aCBkPSJNMjUxLjkyMSAzMzYuMDUzYy00Ni4zNzggMC04My45NzQtMzcuNTk2LTgzLjk3NC04My45NzMgMC00Ni4zNzggMzcuNTk2LTgzLjk3NCA4My45NzQtODMuOTc0IDQ2LjM3NyAwIDgzLjk3MyAzNy41OTYgODMuOTczIDgzLjk3NCAwIDQ2LjM3Ny0zNy41OTYgODMuOTczLTgzLjk3MyA4My45NzNabTAtMjEzLjMzOGMtNzEuNDQ3IDAtMTI5LjM2NSA1Ny45MTgtMTI5LjM2NSAxMjkuMzY1IDAgNzEuNDQ2IDU3LjkxOCAxMjkuMzY0IDEyOS4zNjUgMTI5LjM2NCA3MS40NDYgMCAxMjkuMzY0LTU3LjkxOCAxMjkuMzY0LTEyOS4zNjQgMC03MS40NDctNTcuOTE4LTEyOS4zNjUtMTI5LjM2NC0xMjkuMzY1Wk00MTYuNjI3IDExNy42MDRjMCAxNi42OTYtMTMuNTM1IDMwLjIzLTMwLjIzMSAzMC4yMy0xNi42OTUgMC0zMC4yMy0xMy41MzQtMzAuMjMtMzAuMjMgMC0xNi42OTYgMTMuNTM1LTMwLjIzMSAzMC4yMy0zMC4yMzEgMTYuNjk2IDAgMzAuMjMxIDEzLjUzNSAzMC4yMzEgMzAuMjMxIiBmaWxsPSIjRkZGIi8+PC9nPjwvc3ZnPg==)}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder .ck-media__placeholder__url__text{color:#ffe0fe}.ck-media__wrapper[data-oembed-url*="instagram.com"] .ck-media__placeholder .ck-media__placeholder__url__text:hover{color:#fff}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder{background:linear-gradient(90deg,#71c6f4,#0d70a5)}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder .ck-media__placeholder__icon{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0MDAgNDAwIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA0MDAgNDAwIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJNNDAwIDIwMGMwIDExMC41LTg5LjUgMjAwLTIwMCAyMDBTMCAzMTAuNSAwIDIwMCA4OS41IDAgMjAwIDBzMjAwIDg5LjUgMjAwIDIwMHpNMTYzLjQgMzA1LjVjODguNyAwIDEzNy4yLTczLjUgMTM3LjItMTM3LjIgMC0yLjEgMC00LjItLjEtNi4yIDkuNC02LjggMTcuNi0xNS4zIDI0LjEtMjUtOC42IDMuOC0xNy45IDYuNC0yNy43IDcuNiAxMC02IDE3LjYtMTUuNCAyMS4yLTI2LjctOS4zIDUuNS0xOS42IDkuNS0zMC42IDExLjctOC44LTkuNC0yMS4zLTE1LjItMzUuMi0xNS4yLTI2LjYgMC00OC4yIDIxLjYtNDguMiA0OC4yIDAgMy44LjQgNy41IDEuMyAxMS00MC4xLTItNzUuNi0yMS4yLTk5LjQtNTAuNC00LjEgNy4xLTYuNSAxNS40LTYuNSAyNC4yIDAgMTYuNyA4LjUgMzEuNSAyMS41IDQwLjEtNy45LS4yLTE1LjMtMi40LTIxLjgtNnYuNmMwIDIzLjQgMTYuNiA0Mi44IDM4LjcgNDcuMy00IDEuMS04LjMgMS43LTEyLjcgMS43LTMuMSAwLTYuMS0uMy05LjEtLjkgNi4xIDE5LjIgMjMuOSAzMy4xIDQ1IDMzLjUtMTYuNSAxMi45LTM3LjMgMjAuNi01OS45IDIwLjYtMy45IDAtNy43LS4yLTExLjUtLjcgMjEuMSAxMy44IDQ2LjUgMjEuOCA3My43IDIxLjgiIHN0eWxlPSJmaWxsOiNmZmYiLz48L3N2Zz4=)}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder .ck-media__placeholder__url__text{color:#b8e6ff}.ck-media__wrapper[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder .ck-media__placeholder__url__text:hover{color:#fff}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-media-embed/theme/mediaembedediting.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-media-embed/mediaembedediting.css"],names:[],mappings:"AAMC,0CAGC,kBAAmB,CAFnB,YAAa,CACb,qBAcD,CAXC,sEAEC,cAAe,CAEf,iBAMD,CAJC,wGAEC,aAAc,CADd,eAED,CAWD,6kBACC,YACD,CAYF,2LACC,mBACD,CC1CA,MACC,0CAA2C,CAE3C,mDAA4D,CAC5D,2EACD,CAEA,mBACC,aA+FD,CA7FC,0CAEC,0CAA2C,CAD3C,0CA6BD,CA1BC,uEAIC,uBAA2B,CAC3B,qBAAsB,CAHtB,kDAAmD,CACnD,qCAAsC,CAFtC,qDAUD,CAJC,gFAEC,WAAY,CADZ,UAED,CAGD,4EACC,sDAAuD,CAGvD,iBAAkB,CADlB,iBAAkB,CAElB,sBAAuB,CAHvB,kBAUD,CALC,kFACC,4DAA6D,CAC7D,cAAe,CACf,yBACD,CAIF,wDAEC,gBAAiB,CADjB,eAED,CAEA,4UAIC,wvGACD,CAEA,2EACC,kBAaD,CAXC,wGACC,orBACD,CAEA,6GACC,UAKD,CAHC,mHACC,UACD,CAIF,4EACC,2DAcD,CAZC,yGACC,4jHACD,CAGA,8GACC,aAKD,CAHC,oHACC,UACD,CAIF,6EAEC,iDAaD,CAXC,0GACC,wiCACD,CAEA,+GACC,aAKD,CAHC,qHACC,UACD",sourcesContent:['/*\n * Copyright (c) 2003-2022, 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-media__wrapper {\n\t& .ck-media__placeholder {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\n\t\t& .ck-media__placeholder__url {\n\t\t\t/* Otherwise the URL will overflow when the content is very narrow. */\n\t\t\tmax-width: 100%;\n\n\t\t\tposition: relative;\n\n\t\t\t& .ck-media__placeholder__url__text {\n\t\t\t\toverflow: hidden;\n\t\t\t\tdisplay: block;\n\t\t\t}\n\t\t}\n\t}\n\n\t&[data-oembed-url*="twitter.com"],\n\t&[data-oembed-url*="google.com/maps"],\n\t&[data-oembed-url*="goo.gl/maps"],\n\t&[data-oembed-url*="maps.google.com"],\n\t&[data-oembed-url*="maps.app.goo.gl"],\n\t&[data-oembed-url*="facebook.com"],\n\t&[data-oembed-url*="instagram.com"] {\n\t\t& .ck-media__placeholder__icon * {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n\n/* Disable all mouse interaction as long as the editor is not read–only.\n https://github.com/ckeditor/ckeditor5-media-embed/issues/58 */\n.ck-editor__editable:not(.ck-read-only) .ck-media__wrapper > *:not(.ck-media__placeholder) {\n\tpointer-events: none;\n}\n\n/* Disable all mouse interaction when the widget is not selected (e.g. to avoid opening links by accident).\n https://github.com/ckeditor/ckeditor5-media-embed/issues/18 */\n.ck-editor__editable:not(.ck-read-only) .ck-widget:not(.ck-widget_selected) .ck-media__placeholder {\n\tpointer-events: none;\n}\n','/*\n * Copyright (c) 2003-2022, 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-media-embed-placeholder-icon-size: 3em;\n\n\t--ck-color-media-embed-placeholder-url-text: hsl(0, 0%, 46%);\n\t--ck-color-media-embed-placeholder-url-text-hover: var(--ck-color-base-text);\n}\n\n.ck-media__wrapper {\n\tmargin: 0 auto;\n\n\t& .ck-media__placeholder {\n\t\tpadding: calc( 3 * var(--ck-spacing-standard) );\n\t\tbackground: var(--ck-color-base-foreground);\n\n\t\t& .ck-media__placeholder__icon {\n\t\t\tmin-width: var(--ck-media-embed-placeholder-icon-size);\n\t\t\theight: var(--ck-media-embed-placeholder-icon-size);\n\t\t\tmargin-bottom: var(--ck-spacing-large);\n\t\t\tbackground-position: center;\n\t\t\tbackground-size: cover;\n\n\t\t\t& .ck-icon {\n\t\t\t\twidth: 100%;\n\t\t\t\theight: 100%;\n\t\t\t}\n\t\t}\n\n\t\t& .ck-media__placeholder__url__text {\n\t\t\tcolor: var(--ck-color-media-embed-placeholder-url-text);\n\t\t\twhite-space: nowrap;\n\t\t\ttext-align: center;\n\t\t\tfont-style: italic;\n\t\t\ttext-overflow: ellipsis;\n\n\t\t\t&:hover {\n\t\t\t\tcolor: var(--ck-color-media-embed-placeholder-url-text-hover);\n\t\t\t\tcursor: pointer;\n\t\t\t\ttext-decoration: underline;\n\t\t\t}\n\t\t}\n\t}\n\n\t&[data-oembed-url*="open.spotify.com"] {\n\t\tmax-width: 300px;\n\t\tmax-height: 380px;\n\t}\n\n\t&[data-oembed-url*="google.com/maps"] .ck-media__placeholder__icon,\n\t&[data-oembed-url*="goo.gl/maps"] .ck-media__placeholder__icon,\n\t&[data-oembed-url*="maps.google.com"] .ck-media__placeholder__icon,\n\t&[data-oembed-url*="maps.app.goo.gl"] .ck-media__placeholder__icon {\n\t\tbackground-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTAuMzc4IiBoZWlnaHQ9IjI1NC4xNjciIHZpZXdCb3g9IjAgMCA2Ni4yNDYgNjcuMjQ4Ij48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMTcyLjUzMSAtMjE4LjQ1NSkgc2NhbGUoLjk4MDEyKSI+PHJlY3Qgcnk9IjUuMjM4IiByeD0iNS4yMzgiIHk9IjIzMS4zOTkiIHg9IjE3Ni4wMzEiIGhlaWdodD0iNjAuMDk5IiB3aWR0aD0iNjAuMDk5IiBmaWxsPSIjMzRhNjY4IiBwYWludC1vcmRlcj0ibWFya2VycyBzdHJva2UgZmlsbCIvPjxwYXRoIGQ9Ik0yMDYuNDc3IDI2MC45bC0yOC45ODcgMjguOTg3YTUuMjE4IDUuMjE4IDAgMCAwIDMuNzggMS42MWg0OS42MjFjMS42OTQgMCAzLjE5LS43OTggNC4xNDYtMi4wMzd6IiBmaWxsPSIjNWM4OGM1Ii8+PHBhdGggZD0iTTIyNi43NDIgMjIyLjk4OGMtOS4yNjYgMC0xNi43NzcgNy4xNy0xNi43NzcgMTYuMDE0LjAwNyAyLjc2Mi42NjMgNS40NzQgMi4wOTMgNy44NzUuNDMuNzAzLjgzIDEuNDA4IDEuMTkgMi4xMDcuMzMzLjUwMi42NSAxLjAwNS45NSAxLjUwOC4zNDMuNDc3LjY3My45NTcuOTg4IDEuNDQgMS4zMSAxLjc2OSAyLjUgMy41MDIgMy42MzcgNS4xNjguNzkzIDEuMjc1IDEuNjgzIDIuNjQgMi40NjYgMy45OSAyLjM2MyA0LjA5NCA0LjAwNyA4LjA5MiA0LjYgMTMuOTE0di4wMTJjLjE4Mi40MTIuNTE2LjY2Ni44NzkuNjY3LjQwMy0uMDAxLjc2OC0uMzE0LjkzLS43OTkuNjAzLTUuNzU2IDIuMjM4LTkuNzI5IDQuNTg1LTEzLjc5NC43ODItMS4zNSAxLjY3My0yLjcxNSAyLjQ2NS0zLjk5IDEuMTM3LTEuNjY2IDIuMzI4LTMuNCAzLjYzOC01LjE2OS4zMTUtLjQ4Mi42NDUtLjk2Mi45ODgtMS40MzkuMy0uNTAzLjYxNy0xLjAwNi45NS0xLjUwOC4zNTktLjcuNzYtMS40MDQgMS4xOS0yLjEwNyAxLjQyNi0yLjQwMiAyLTUuMTE0IDIuMDA0LTcuODc1IDAtOC44NDQtNy41MTEtMTYuMDE0LTE2Ljc3Ni0xNi4wMTR6IiBmaWxsPSIjZGQ0YjNlIiBwYWludC1vcmRlcj0ibWFya2VycyBzdHJva2UgZmlsbCIvPjxlbGxpcHNlIHJ5PSI1LjU2NCIgcng9IjUuODI4IiBjeT0iMjM5LjAwMiIgY3g9IjIyNi43NDIiIGZpbGw9IiM4MDJkMjciIHBhaW50LW9yZGVyPSJtYXJrZXJzIHN0cm9rZSBmaWxsIi8+PHBhdGggZD0iTTE5MC4zMDEgMjM3LjI4M2MtNC42NyAwLTguNDU3IDMuODUzLTguNDU3IDguNjA2czMuNzg2IDguNjA3IDguNDU3IDguNjA3YzMuMDQzIDAgNC44MDYtLjk1OCA2LjMzNy0yLjUxNiAxLjUzLTEuNTU3IDIuMDg3LTMuOTEzIDIuMDg3LTYuMjkgMC0uMzYyLS4wMjMtLjcyMi0uMDY0LTEuMDc5aC04LjI1N3YzLjA0M2g0Ljg1Yy0uMTk3Ljc1OS0uNTMxIDEuNDUtMS4wNTggMS45ODYtLjk0Mi45NTgtMi4wMjggMS41NDgtMy45MDEgMS41NDgtMi44NzYgMC01LjIwOC0yLjM3Mi01LjIwOC01LjI5OSAwLTIuOTI2IDIuMzMyLTUuMjk5IDUuMjA4LTUuMjk5IDEuMzk5IDAgMi42MTguNDA3IDMuNTg0IDEuMjkzbDIuMzgxLTIuMzhjMC0uMDAyLS4wMDMtLjAwNC0uMDA0LS4wMDUtMS41ODgtMS41MjQtMy42Mi0yLjIxNS01Ljk1NS0yLjIxNXptNC40MyA1LjY2bC4wMDMuMDA2di0uMDAzeiIgZmlsbD0iI2ZmZiIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48cGF0aCBkPSJNMjE1LjE4NCAyNTEuOTI5bC03Ljk4IDcuOTc5IDI4LjQ3NyAyOC40NzVjLjI4Ny0uNjQ5LjQ0OS0xLjM2Ni40NDktMi4xMjN2LTMxLjE2NWMtLjQ2OS42NzUtLjkzNCAxLjM0OS0xLjM4MiAyLjAwNS0uNzkyIDEuMjc1LTEuNjgyIDIuNjQtMi40NjUgMy45OS0yLjM0NyA0LjA2NS0zLjk4MiA4LjAzOC00LjU4NSAxMy43OTQtLjE2Mi40ODUtLjUyNy43OTgtLjkzLjc5OS0uMzYzLS4wMDEtLjY5Ny0uMjU1LS44NzktLjY2N3YtLjAxMmMtLjU5My01LjgyMi0yLjIzNy05LjgyLTQuNi0xMy45MTQtLjc4My0xLjM1LTEuNjczLTIuNzE1LTIuNDY2LTMuOTktMS4xMzctMS42NjYtMi4zMjctMy40LTMuNjM3LTUuMTY5bC0uMDAyLS4wMDN6IiBmaWxsPSIjYzNjM2MzIi8+PHBhdGggZD0iTTIxMi45ODMgMjQ4LjQ5NWwtMzYuOTUyIDM2Ljk1M3YuODEyYTUuMjI3IDUuMjI3IDAgMCAwIDUuMjM4IDUuMjM4aDEuMDE1bDM1LjY2Ni0zNS42NjZhMTM2LjI3NSAxMzYuMjc1IDAgMCAwLTIuNzY0LTMuOSAzNy41NzUgMzcuNTc1IDAgMCAwLS45ODktMS40NGMtLjI5OS0uNTAzLS42MTYtMS4wMDYtLjk1LTEuNTA4LS4wODMtLjE2Mi0uMTc2LS4zMjYtLjI2NC0uNDg5eiIgZmlsbD0iI2ZkZGM0ZiIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48cGF0aCBkPSJNMjExLjk5OCAyNjEuMDgzbC02LjE1MiA2LjE1MSAyNC4yNjQgMjQuMjY0aC43ODFhNS4yMjcgNS4yMjcgMCAwIDAgNS4yMzktNS4yMzh2LTEuMDQ1eiIgZmlsbD0iI2ZmZiIgcGFpbnQtb3JkZXI9Im1hcmtlcnMgc3Ryb2tlIGZpbGwiLz48L2c+PC9zdmc+);\n\t}\n\n\t&[data-oembed-url*="facebook.com"] .ck-media__placeholder {\n\t\tbackground: hsl(220, 46%, 48%);\n\n\t\t& .ck-media__placeholder__icon {\n\t\t\tbackground-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIxMDI0cHgiIGhlaWdodD0iMTAyNHB4IiB2aWV3Qm94PSIwIDAgMTAyNCAxMDI0IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPiAgICAgICAgPHRpdGxlPkZpbGwgMTwvdGl0bGU+ICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPiAgICA8ZGVmcz48L2RlZnM+ICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPiAgICAgICAgPGcgaWQ9ImZMb2dvX1doaXRlIiBmaWxsPSIjRkZGRkZFIj4gICAgICAgICAgICA8cGF0aCBkPSJNOTY3LjQ4NCwwIEw1Ni41MTcsMCBDMjUuMzA0LDAgMCwyNS4zMDQgMCw1Ni41MTcgTDAsOTY3LjQ4MyBDMCw5OTguNjk0IDI1LjI5NywxMDI0IDU2LjUyMiwxMDI0IEw1NDcsMTAyNCBMNTQ3LDYyOCBMNDE0LDYyOCBMNDE0LDQ3MyBMNTQ3LDQ3MyBMNTQ3LDM1OS4wMjkgQzU0NywyMjYuNzY3IDYyNy43NzMsMTU0Ljc0NyA3NDUuNzU2LDE1NC43NDcgQzgwMi4yNjksMTU0Ljc0NyA4NTAuODQyLDE1OC45NTUgODY1LDE2MC44MzYgTDg2NSwyOTkgTDc4My4zODQsMjk5LjAzNyBDNzE5LjM5MSwyOTkuMDM3IDcwNywzMjkuNTI5IDcwNywzNzQuMjczIEw3MDcsNDczIEw4NjAuNDg3LDQ3MyBMODQwLjUwMSw2MjggTDcwNyw2MjggTDcwNywxMDI0IEw5NjcuNDg0LDEwMjQgQzk5OC42OTcsMTAyNCAxMDI0LDk5OC42OTcgMTAyNCw5NjcuNDg0IEwxMDI0LDU2LjUxNSBDMTAyNCwyNS4zMDMgOTk4LjY5NywwIDk2Ny40ODQsMCIgaWQ9IkZpbGwtMSI+PC9wYXRoPiAgICAgICAgPC9nPiAgICA8L2c+PC9zdmc+);\n\t\t}\n\n\t\t& .ck-media__placeholder__url__text {\n\t\t\tcolor: hsl(220, 100%, 90%);\n\n\t\t\t&:hover {\n\t\t\t\tcolor: hsl(0, 0%, 100%);\n\t\t\t}\n\t\t}\n\t}\n\n\t&[data-oembed-url*="instagram.com"] .ck-media__placeholder {\n\t\tbackground: linear-gradient(-135deg,hsl(246, 100%, 39%),hsl(302, 100%, 36%),hsl(0, 100%, 48%));\n\n\t\t& .ck-media__placeholder__icon {\n\t\t\tbackground-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSI1MDRweCIgaGVpZ2h0PSI1MDRweCIgdmlld0JveD0iMCAwIDUwNCA1MDQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+ICAgICAgICA8dGl0bGU+Z2x5cGgtbG9nb19NYXkyMDE2PC90aXRsZT4gICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+ICAgIDxkZWZzPiAgICAgICAgPHBvbHlnb24gaWQ9InBhdGgtMSIgcG9pbnRzPSIwIDAuMTU5IDUwMy44NDEgMC4xNTkgNTAzLjg0MSA1MDMuOTQgMCA1MDMuOTQiPjwvcG9seWdvbj4gICAgPC9kZWZzPiAgICA8ZyBpZD0iZ2x5cGgtbG9nb19NYXkyMDE2IiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4gICAgICAgIDxnIGlkPSJHcm91cC0zIj4gICAgICAgICAgICA8bWFzayBpZD0ibWFzay0yIiBmaWxsPSJ3aGl0ZSI+ICAgICAgICAgICAgICAgIDx1c2UgeGxpbms6aHJlZj0iI3BhdGgtMSI+PC91c2U+ICAgICAgICAgICAgPC9tYXNrPiAgICAgICAgICAgIDxnIGlkPSJDbGlwLTIiPjwvZz4gICAgICAgICAgICA8cGF0aCBkPSJNMjUxLjkyMSwwLjE1OSBDMTgzLjUwMywwLjE1OSAxNzQuOTI0LDAuNDQ5IDE0OC4wNTQsMS42NzUgQzEyMS4yNCwyLjg5OCAxMDIuOTI3LDcuMTU3IDg2LjkwMywxMy4zODUgQzcwLjMzNywxOS44MjIgNTYuMjg4LDI4LjQzNiA0Mi4yODIsNDIuNDQxIEMyOC4yNzcsNTYuNDQ3IDE5LjY2Myw3MC40OTYgMTMuMjI2LDg3LjA2MiBDNi45OTgsMTAzLjA4NiAyLjczOSwxMjEuMzk5IDEuNTE2LDE0OC4yMTMgQzAuMjksMTc1LjA4MyAwLDE4My42NjIgMCwyNTIuMDggQzAsMzIwLjQ5NyAwLjI5LDMyOS4wNzYgMS41MTYsMzU1Ljk0NiBDMi43MzksMzgyLjc2IDYuOTk4LDQwMS4wNzMgMTMuMjI2LDQxNy4wOTcgQzE5LjY2Myw0MzMuNjYzIDI4LjI3Nyw0NDcuNzEyIDQyLjI4Miw0NjEuNzE4IEM1Ni4yODgsNDc1LjcyMyA3MC4zMzcsNDg0LjMzNyA4Ni45MDMsNDkwLjc3NSBDMTAyLjkyNyw0OTcuMDAyIDEyMS4yNCw1MDEuMjYxIDE0OC4wNTQsNTAyLjQ4NCBDMTc0LjkyNCw1MDMuNzEgMTgzLjUwMyw1MDQgMjUxLjkyMSw1MDQgQzMyMC4zMzgsNTA0IDMyOC45MTcsNTAzLjcxIDM1NS43ODcsNTAyLjQ4NCBDMzgyLjYwMSw1MDEuMjYxIDQwMC45MTQsNDk3LjAwMiA0MTYuOTM4LDQ5MC43NzUgQzQzMy41MDQsNDg0LjMzNyA0NDcuNTUzLDQ3NS43MjMgNDYxLjU1OSw0NjEuNzE4IEM0NzUuNTY0LDQ0Ny43MTIgNDg0LjE3OCw0MzMuNjYzIDQ5MC42MTYsNDE3LjA5NyBDNDk2Ljg0Myw0MDEuMDczIDUwMS4xMDIsMzgyLjc2IDUwMi4zMjUsMzU1Ljk0NiBDNTAzLjU1MSwzMjkuMDc2IDUwMy44NDEsMzIwLjQ5NyA1MDMuODQxLDI1Mi4wOCBDNTAzLjg0MSwxODMuNjYyIDUwMy41NTEsMTc1LjA4MyA1MDIuMzI1LDE0OC4yMTMgQzUwMS4xMDIsMTIxLjM5OSA0OTYuODQzLDEwMy4wODYgNDkwLjYxNiw4Ny4wNjIgQzQ4NC4xNzgsNzAuNDk2IDQ3NS41NjQsNTYuNDQ3IDQ2MS41NTksNDIuNDQxIEM0NDcuNTUzLDI4LjQzNiA0MzMuNTA0LDE5LjgyMiA0MTYuOTM4LDEzLjM4NSBDNDAwLjkxNCw3LjE1NyAzODIuNjAxLDIuODk4IDM1NS43ODcsMS42NzUgQzMyOC45MTcsMC40NDkgMzIwLjMzOCwwLjE1OSAyNTEuOTIxLDAuMTU5IFogTTI1MS45MjEsNDUuNTUgQzMxOS4xODYsNDUuNTUgMzI3LjE1NCw0NS44MDcgMzUzLjcxOCw0Ny4wMTkgQzM3OC4yOCw0OC4xMzkgMzkxLjYxOSw1Mi4yNDMgNDAwLjQ5Niw1NS42OTMgQzQxMi4yNTUsNjAuMjYzIDQyMC42NDcsNjUuNzIyIDQyOS40NjIsNzQuNTM4IEM0MzguMjc4LDgzLjM1MyA0NDMuNzM3LDkxLjc0NSA0NDguMzA3LDEwMy41MDQgQzQ1MS43NTcsMTEyLjM4MSA0NTUuODYxLDEyNS43MiA0NTYuOTgxLDE1MC4yODIgQzQ1OC4xOTMsMTc2Ljg0NiA0NTguNDUsMTg0LjgxNCA0NTguNDUsMjUyLjA4IEM0NTguNDUsMzE5LjM0NSA0NTguMTkzLDMyNy4zMTMgNDU2Ljk4MSwzNTMuODc3IEM0NTUuODYxLDM3OC40MzkgNDUxLjc1NywzOTEuNzc4IDQ0OC4zMDcsNDAwLjY1NSBDNDQzLjczNyw0MTIuNDE0IDQzOC4yNzgsNDIwLjgwNiA0MjkuNDYyLDQyOS42MjEgQzQyMC42NDcsNDM4LjQzNyA0MTIuMjU1LDQ0My44OTYgNDAwLjQ5Niw0NDguNDY2IEMzOTEuNjE5LDQ1MS45MTYgMzc4LjI4LDQ1Ni4wMiAzNTMuNzE4LDQ1Ny4xNCBDMzI3LjE1OCw0NTguMzUyIDMxOS4xOTEsNDU4LjYwOSAyNTEuOTIxLDQ1OC42MDkgQzE4NC42NSw0NTguNjA5IDE3Ni42ODQsNDU4LjM1MiAxNTAuMTIzLDQ1Ny4xNCBDMTI1LjU2MSw0NTYuMDIgMTEyLjIyMiw0NTEuOTE2IDEwMy4zNDUsNDQ4LjQ2NiBDOTEuNTg2LDQ0My44OTYgODMuMTk0LDQzOC40MzcgNzQuMzc5LDQyOS42MjEgQzY1LjU2NCw0MjAuODA2IDYwLjEwNCw0MTIuNDE0IDU1LjUzNCw0MDAuNjU1IEM1Mi4wODQsMzkxLjc3OCA0Ny45OCwzNzguNDM5IDQ2Ljg2LDM1My44NzcgQzQ1LjY0OCwzMjcuMzEzIDQ1LjM5MSwzMTkuMzQ1IDQ1LjM5MSwyNTIuMDggQzQ1LjM5MSwxODQuODE0IDQ1LjY0OCwxNzYuODQ2IDQ2Ljg2LDE1MC4yODIgQzQ3Ljk4LDEyNS43MiA1Mi4wODQsMTEyLjM4MSA1NS41MzQsMTAzLjUwNCBDNjAuMTA0LDkxLjc0NSA2NS41NjMsODMuMzUzIDc0LjM3OSw3NC41MzggQzgzLjE5NCw2NS43MjIgOTEuNTg2LDYwLjI2MyAxMDMuMzQ1LDU1LjY5MyBDMTEyLjIyMiw1Mi4yNDMgMTI1LjU2MSw0OC4xMzkgMTUwLjEyMyw0Ny4wMTkgQzE3Ni42ODcsNDUuODA3IDE4NC42NTUsNDUuNTUgMjUxLjkyMSw0NS41NSBaIiBpZD0iRmlsbC0xIiBmaWxsPSIjRkZGRkZGIiBtYXNrPSJ1cmwoI21hc2stMikiPjwvcGF0aD4gICAgICAgIDwvZz4gICAgICAgIDxwYXRoIGQ9Ik0yNTEuOTIxLDMzNi4wNTMgQzIwNS41NDMsMzM2LjA1MyAxNjcuOTQ3LDI5OC40NTcgMTY3Ljk0NywyNTIuMDggQzE2Ny45NDcsMjA1LjcwMiAyMDUuNTQzLDE2OC4xMDYgMjUxLjkyMSwxNjguMTA2IEMyOTguMjk4LDE2OC4xMDYgMzM1Ljg5NCwyMDUuNzAyIDMzNS44OTQsMjUyLjA4IEMzMzUuODk0LDI5OC40NTcgMjk4LjI5OCwzMzYuMDUzIDI1MS45MjEsMzM2LjA1MyBaIE0yNTEuOTIxLDEyMi43MTUgQzE4MC40NzQsMTIyLjcxNSAxMjIuNTU2LDE4MC42MzMgMTIyLjU1NiwyNTIuMDggQzEyMi41NTYsMzIzLjUyNiAxODAuNDc0LDM4MS40NDQgMjUxLjkyMSwzODEuNDQ0IEMzMjMuMzY3LDM4MS40NDQgMzgxLjI4NSwzMjMuNTI2IDM4MS4yODUsMjUyLjA4IEMzODEuMjg1LDE4MC42MzMgMzIzLjM2NywxMjIuNzE1IDI1MS45MjEsMTIyLjcxNSBaIiBpZD0iRmlsbC00IiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+ICAgICAgICA8cGF0aCBkPSJNNDE2LjYyNywxMTcuNjA0IEM0MTYuNjI3LDEzNC4zIDQwMy4wOTIsMTQ3LjgzNCAzODYuMzk2LDE0Ny44MzQgQzM2OS43MDEsMTQ3LjgzNCAzNTYuMTY2LDEzNC4zIDM1Ni4xNjYsMTE3LjYwNCBDMzU2LjE2NiwxMDAuOTA4IDM2OS43MDEsODcuMzczIDM4Ni4zOTYsODcuMzczIEM0MDMuMDkyLDg3LjM3MyA0MTYuNjI3LDEwMC45MDggNDE2LjYyNywxMTcuNjA0IiBpZD0iRmlsbC01IiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+ICAgIDwvZz48L3N2Zz4=);\n\t\t}\n\n\t\t/* stylelint-disable-next-line no-descending-specificity */\n\t\t& .ck-media__placeholder__url__text {\n\t\t\tcolor: hsl(302, 100%, 94%);\n\n\t\t\t&:hover {\n\t\t\t\tcolor: hsl(0, 0%, 100%);\n\t\t\t}\n\t\t}\n\t}\n\n\t&[data-oembed-url*="twitter.com"] .ck.ck-media__placeholder {\n\t\t/* Use gradient to contrast with focused widget (ckeditor/ckeditor5-media-embed#22). */\n\t\tbackground: linear-gradient( to right, hsl(201, 85%, 70%), hsl(201, 85%, 35%) );\n\n\t\t& .ck-media__placeholder__icon {\n\t\t\tbackground-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IldoaXRlIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgdmlld0JveD0iMCAwIDQwMCA0MDAiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQwMCA0MDA7IiB4bWw6c3BhY2U9InByZXNlcnZlIj48c3R5bGUgdHlwZT0idGV4dC9jc3MiPi5zdDB7ZmlsbDojRkZGRkZGO308L3N0eWxlPjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik00MDAsMjAwYzAsMTEwLjUtODkuNSwyMDAtMjAwLDIwMFMwLDMxMC41LDAsMjAwUzg5LjUsMCwyMDAsMFM0MDAsODkuNSw0MDAsMjAweiBNMTYzLjQsMzA1LjVjODguNywwLDEzNy4yLTczLjUsMTM3LjItMTM3LjJjMC0yLjEsMC00LjItMC4xLTYuMmM5LjQtNi44LDE3LjYtMTUuMywyNC4xLTI1Yy04LjYsMy44LTE3LjksNi40LTI3LjcsNy42YzEwLTYsMTcuNi0xNS40LDIxLjItMjYuN2MtOS4zLDUuNS0xOS42LDkuNS0zMC42LDExLjdjLTguOC05LjQtMjEuMy0xNS4yLTM1LjItMTUuMmMtMjYuNiwwLTQ4LjIsMjEuNi00OC4yLDQ4LjJjMCwzLjgsMC40LDcuNSwxLjMsMTFjLTQwLjEtMi03NS42LTIxLjItOTkuNC01MC40Yy00LjEsNy4xLTYuNSwxNS40LTYuNSwyNC4yYzAsMTYuNyw4LjUsMzEuNSwyMS41LDQwLjFjLTcuOS0wLjItMTUuMy0yLjQtMjEuOC02YzAsMC4yLDAsMC40LDAsMC42YzAsMjMuNCwxNi42LDQyLjgsMzguNyw0Ny4zYy00LDEuMS04LjMsMS43LTEyLjcsMS43Yy0zLjEsMC02LjEtMC4zLTkuMS0wLjljNi4xLDE5LjIsMjMuOSwzMy4xLDQ1LDMzLjVjLTE2LjUsMTIuOS0zNy4zLDIwLjYtNTkuOSwyMC42Yy0zLjksMC03LjctMC4yLTExLjUtMC43QzExMC44LDI5Ny41LDEzNi4yLDMwNS41LDE2My40LDMwNS41Ii8+PC9zdmc+);\n\t\t}\n\n\t\t& .ck-media__placeholder__url__text {\n\t\t\tcolor: hsl(201, 100%, 86%);\n\n\t\t\t&:hover {\n\t\t\t\tcolor: hsl(0, 0%, 100%);\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},3525:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-media-form{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:nowrap}.ck.ck-media-form .ck-labeled-field-view{display:inline-block}.ck.ck-media-form .ck-label{display:none}@media screen and (max-width:600px){.ck.ck-media-form{flex-wrap:wrap}.ck.ck-media-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-media-form .ck-button{flex-basis:50%}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-media-embed/theme/mediaform.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAOA,kBAEC,sBAAuB,CADvB,YAAa,CAEb,kBAAmB,CACnB,gBAqBD,CAnBC,yCACC,oBACD,CAEA,4BACC,YACD,CCbA,oCDCD,kBAeE,cAUF,CARE,yCACC,eACD,CAEA,6BACC,cACD,CCtBD",sourcesContent:['/*\n * Copyright (c) 2003-2022, 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-media-form {\n\tdisplay: flex;\n\talign-items: flex-start;\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-2022, 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},7583:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/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-2022, 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},6391:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/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-2022, 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},6448:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,'.ck-content .page-break{align-items:center;clear:both;display:flex;justify-content:center;padding:5px 0;position:relative}.ck-content .page-break:after{border-bottom:2px dashed #c4c4c4;content:"";position:absolute;width:100%}.ck-content .page-break__label{background:#fff;border:1px solid #c4c4c4;border-radius:2px;box-shadow:2px 2px 1px rgba(0,0,0,.15);color:#333;display:block;font-family:Helvetica,Arial,Tahoma,Verdana,Sans-Serif;font-size:.75em;font-weight:700;padding:.3em .6em;position:relative;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1}@media print{.ck-content .page-break{padding:0}.ck-content .page-break:after{display:none}}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-page-break/theme/pagebreak.css"],names:[],mappings:"AAKA,wBAKC,kBAAmB,CAHnB,UAAW,CAEX,YAAa,CAEb,sBAAuB,CAHvB,aAAc,CAFd,iBAaD,CANC,8BAGC,gCAAyC,CAFzC,UAAW,CACX,iBAAkB,CAElB,UACD,CAGD,+BAYC,eAA4B,CAN5B,wBAAiC,CACjC,iBAAkB,CAMlB,sCAA6C,CAF7C,UAAsB,CAPtB,aAAc,CAId,qDAA0D,CAC1D,eAAiB,CACjB,eAAiB,CAPjB,iBAAkB,CAFlB,iBAAkB,CAIlB,wBAAyB,CAWzB,wBAAyB,CACzB,qBAAsB,CACtB,oBAAqB,CACrB,gBAAiB,CAjBjB,SAkBD,CAGA,aACC,wBACC,SAKD,CAHC,8BACC,YACD,CAEF",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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 .page-break {\n\tposition: relative;\n\tclear: both;\n\tpadding: 5px 0;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\t&::after {\n\t\tcontent: '';\n\t\tposition: absolute;\n\t\tborder-bottom: 2px dashed hsl(0, 0%, 77%);\n\t\twidth: 100%;\n\t}\n}\n\n.ck-content .page-break__label {\n\tposition: relative;\n\tz-index: 1;\n\tpadding: .3em .6em;\n\tdisplay: block;\n\ttext-transform: uppercase;\n\tborder: 1px solid hsl(0, 0%, 77%);\n\tborder-radius: 2px;\n\tfont-family: Helvetica, Arial, Tahoma, Verdana, Sans-Serif;\n\tfont-size: 0.75em;\n\tfont-weight: bold;\n\tcolor: hsl(0, 0%, 20%);\n\tbackground: hsl(0, 0%, 100%);\n\tbox-shadow: 2px 2px 1px hsla(0, 0%, 0%, 0.15);\n\n\t/* Disable the possibility to select the label text by the user. */\n\t-webkit-user-select: none;\n\t-moz-user-select: none;\n\t-ms-user-select: none;\n\tuser-select: none;\n}\n\n/* Do not show the page break element inside the print preview window. */\n@media print {\n\t.ck-content .page-break {\n\t\tpadding: 0;\n\n\t\t&::after {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},8805:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-pagination-view-line{border-top:1px dotted var(--ck-color-pagination-divider);height:0;pointer-events:none;position:absolute}.ck.ck-pagination-view-line:after{background:#c4c4c4;color:var(--ck-color-base-background);content:attr(data-page-number);display:inline-block;font-size:10px;min-width:18px;padding:var(--ck-spacing-tiny) var(--ck-spacing-medium);position:absolute;right:-1px;text-align:center;top:-1px;transform:translateX(100%)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-pagination/theme/line.css"],names:[],mappings:"AAKA,4BAGC,wDAAyD,CADzD,QAAS,CAET,mBAAoB,CAHpB,iBAmBD,CAdC,kCAGC,kBAA2B,CAC3B,qCAAsC,CAHtC,8BAA+B,CAI/B,oBAAqB,CAHrB,cAAe,CAOf,cAAe,CAGf,uDAAwD,CANxD,iBAAkB,CAClB,UAAW,CAGX,iBAAkB,CAClB,QAAS,CAHT,0BAKD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-pagination-view-line {\n\tposition: absolute;\n\theight: 0;\n\tborder-top: 1px dotted var(--ck-color-pagination-divider);\n\tpointer-events: none;\n\n\t&::after {\n\t\tcontent: attr(data-page-number);\n\t\tfont-size: 10px;\n\t\tbackground: hsl(0, 0%, 77%);\n\t\tcolor: var(--ck-color-base-background);\n\t\tdisplay: inline-block;\n\t\tposition: absolute;\n\t\tright: -1px;\n\t\ttransform: translateX(100%);\n\t\tmin-width: 18px;\n\t\ttext-align: center;\n\t\ttop: -1px;\n\t\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-medium);\n\t}\n}\n"],sourceRoot:""}]);const a=s},3898:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,'.ck.ck-page-navigator{line-height:1;padding:0 var(--ck-spacing-standard)}.ck.ck-page-navigator>.ck-input-number{-moz-appearance:textfield;background:transparent;min-width:var(--ck-ui-component-min-height);text-align:center;width:var(--ck-ui-component-min-height)}.ck.ck-page-navigator>.ck-input-number::-webkit-inner-spin-button,.ck.ck-page-navigator>.ck-input-number::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ck.ck-page-navigator>.ck-input-number:not(:focus){border:1px solid transparent;border-bottom:1px solid var(--ck-color-base-border)}.ck.ck-page-navigator>span:before{content:"/";margin:0 var(--ck-spacing-standard)}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-pagination/theme/pagenavigator.css"],names:[],mappings:"AAUA,sBAEC,aAAc,CADd,oCA8BD,CA3BC,uCAQC,yBAA0B,CAJ1B,sBAAuB,CAFvB,2CAA4C,CAG5C,iBAAkB,CAJlB,uCAoBD,CAVC,oIAEC,uBAAwB,CACxB,QACD,CAEA,mDACC,4BAA6B,CAC7B,mDACD,CAGD,kCACC,WAAY,CACZ,mCACD",sourcesContent:['/*\n * Copyright (c) 2003-2022, 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/_focus.css";\n@import "@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css";\n@import "@ckeditor/ckeditor5-theme-lark/theme/mixins/_disabled.css";\n\n.ck.ck-page-navigator {\n\tpadding: 0 var(--ck-spacing-standard);\n\tline-height: 1;\n\n\t& > .ck-input-number {\n\t\twidth: var(--ck-ui-component-min-height);\n\t\tmin-width: var(--ck-ui-component-min-height);\n\n\t\tbackground: transparent;\n\t\ttext-align: center;\n\n\t\t/* Disable native increment/decrement buttons (FF). */\n\t\t-moz-appearance: textfield;\n\n\t\t/* Disable native increment/decrement buttons (Webkit). */\n\t\t&::-webkit-inner-spin-button,\n\t\t&::-webkit-outer-spin-button {\n\t\t\t-webkit-appearance: none;\n\t\t\tmargin: 0;\n\t\t}\n\n\t\t&:not(:focus) {\n\t\t\tborder: 1px solid transparent;\n\t\t\tborder-bottom: 1px solid var(--ck-color-base-border);\n\t\t}\n\t}\n\n\t& > span::before {\n\t\tcontent: \'/\';\n\t\tmargin: 0 var(--ck-spacing-standard);\n\t}\n}\n'],sourceRoot:""}]);const a=s},3857:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-pagination-divider:#ababab}.ck.ck-content:not(.ck-pagination_disabled) .page-break:after,.ck.ck-editor__editable.ck-pagination-view .ck-widget__type-around{display:none}.ck.ck-editor__editable.ck-pagination-view .page-break{break-after:column;display:block;height:0;margin:0;padding:0}.ck.ck-editor__editable.ck-pagination-view .ck-table-column-resizer,.ck.ck-editor__editable.ck-pagination-view .page-break .page-break__label,.ck.ck-editor__editable.ck-pagination-view .page-break:after{display:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-pagination/theme/pagination.css"],names:[],mappings:"AAKA,MACC,qCACD,CAeC,iIACC,YACD,CAEA,uDAGC,kBAAmB,CACnB,aAAc,CACd,QAAS,CAHT,QAAS,CADT,SAcD,CAEA,2MACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-pagination-divider: hsl(0, 0%, 67%);\n}\n\n/*\n * Content styles.\n */\n\n.ck.ck-content:not(.ck-pagination_disabled) {\n\t& .page-break {\n\t\t&::after {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n\n.ck.ck-editor__editable.ck-pagination-view {\n\t& .ck-widget__type-around {\n\t\tdisplay: none;\n\t}\n\n\t& .page-break {\n\t\tpadding: 0;\n\t\tmargin: 0;\n\t\tbreak-after: column;\n\t\tdisplay: block;\n\t\theight: 0;\n\n\t\t& .page-break__label {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t&::after {\n\t\t\tdisplay: none;\n\t\t}\n\n\t}\n\n\t& .ck-table-column-resizer {\n\t\tdisplay: none;\n\t}\n}\n"],sourceRoot:""}]);const a=s},9597:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-balloon-panel.ck-tooltip{pointer-events:none;z-index:calc(var(--ck-z-modal) + 100)}:root{--ck-color-presence-list-dropdown-background:#fff;--ck-color-presence-list-dropdown-arrow-border:#ebebeb;--ck-presence-list-dropdown-list-max-width:250px;--ck-presence-list-dropdown-list-min-width:180px;--ck-presence-list-users-tooltip-max-width:120px;--ck-presence-list-users-tooltip-min-width:25px}.ck.ck-presence-list{align-items:center;display:flex;font-size:var(--ck-font-size-base);margin-right:var(--ck-spacing-standard);transition:margin-right .2s ease-in-out}.ck.ck-presence-list *{box-sizing:border-box}.ck.ck-presence-list__list{display:flex;justify-content:flex-end}.ck.ck-presence-list__counter{color:var(--ck-color-base-text)}.ck.ck-presence-list__counter--hidden{display:none}.ck.ck-presence-list__list-item{background:none;border:0;color:inherit;font:inherit;margin-left:var(--ck-spacing-standard);outline:none;padding:0;position:relative}.ck.ck-tooltip.ck-presence-list__list-item__tooltip>.ck-tooltip__text{display:inline-block;max-width:var(--ck-presence-list-users-tooltip-max-width);overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.ck.ck-presence-list__marker{display:block;height:3px;margin-top:3px;position:relative;width:100%}.ck.ck-presence-list--collapsed .ck-presence-list__list{margin-left:var(--ck-spacing-standard);min-width:calc(var(--ck-user-avatar-size)*1.5)}.ck.ck-presence-list--collapsed .ck-presence-list__list *{cursor:pointer;transition:all .4s ease-in-out}.ck.ck-presence-list--collapsed .ck.ck-presence-list__list-item{margin-left:calc(var(--ck-user-avatar-size)*-1 + 5px)}.ck.ck-presence-list--collapsed .ck.ck-presence-list__list-item:nth-last-child(5){opacity:.15}.ck.ck-presence-list--collapsed .ck.ck-presence-list__list-item:nth-last-child(4){opacity:.35}.ck.ck-presence-list--collapsed .ck.ck-presence-list__list-item:nth-last-child(3){opacity:.55}.ck.ck-presence-list--collapsed .ck.ck-presence-list__list-item:nth-last-child(2){opacity:.75}.ck.ck-presence-list__balloon{--ck-color-panel-border:var(--ck-color-presence-list-dropdown-arrow-border);--ck-color-panel-background:var(--ck-color-presence-list-dropdown-background);animation:fadeIn .3s ease-in-out;background-color:var(--ck-color-presence-list-dropdown-background);border:0;opacity:1}.ck.ck-presence-list__balloon .ck.ck-presence-list__dropdown-list-wrapper{border-radius:var(--ck-border-radius);max-height:80vh;max-width:var(--ck-presence-list-dropdown-list-max-width);min-width:var(--ck-presence-list-dropdown-list-min-width);overflow-x:hidden;overflow-y:auto}.ck.ck-presence-list__balloon .ck.ck-presence-list__dropdown-list-item{align-items:center;background:none;border:0;color:inherit;display:flex;font:inherit;outline:none;padding:0;padding:var(--ck-spacing-standard);position:relative}.ck.ck-presence-list__balloon .ck.ck-presence-list__dropdown-list-item:first-of-type .ck-presence-list__marker{border-top-left-radius:var(--ck-border-radius)}.ck.ck-presence-list__balloon .ck.ck-presence-list__dropdown-list-item:last-of-type .ck-presence-list__marker{border-bottom-left-radius:var(--ck-border-radius)}.ck.ck-presence-list__balloon .ck.ck-presence-list__dropdown-list .ck-user__full-name{color:var(--ck-color-base-text);margin-left:var(--ck-spacing-standard);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ck.ck-presence-list__balloon .ck.ck-presence-list__dropdown-list .ck.ck-presence-list__marker{height:100%;left:0;margin:0;position:absolute;width:3px}.ck-presence-list__balloon button.ck-presence-list__dropdown-list-item *,.ck-presence-list__list button.ck-presence-list__list-item *{cursor:pointer}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/tooltip/tooltip.css","webpack://./node_modules/@ckeditor/ckeditor5-real-time-collaboration/theme/presencelist.css"],names:[],mappings:"AAKA,gCAEC,mBAAoB,CAEpB,qCACD,CCAA,MACC,iDAA8D,CAC9D,sDAA+D,CAE/D,gDAAiD,CACjD,gDAAiD,CAEjD,gDAAiD,CACjD,+CACD,CAEA,qBAEC,kBAAmB,CADnB,YAAa,CAIb,kCAAmC,CAFnC,uCAAwC,CACxC,uCAMD,CAHC,uBACC,qBACD,CAGD,2BACC,YAAa,CAGb,wBACD,CAEA,8BACC,+BACD,CAEA,sCACC,YACD,CAEA,gCAUC,eAAgB,CAHhB,QAAS,CADT,aAAc,CADd,YAAa,CAQb,sCAAuC,CAJvC,YAAa,CADb,SAAU,CAIV,iBAED,CAGC,sEACC,oBAAqB,CACrB,yDAA0D,CAC1D,eAAgB,CAChB,iBAAkB,CAClB,sBAAuB,CACvB,kBACD,CAGD,6BAEC,aAAc,CAEd,UAAW,CACX,cAAe,CAJf,iBAAkB,CAElB,UAGD,CAGC,wDAIC,sCAAuC,CAFvC,8CAQD,CAJC,0DACC,cAAe,CACf,8BACD,CAGD,gEAEC,qDAiBD,CAfC,kFACC,WACD,CAEA,kFACC,WACD,CAEA,kFACC,WACD,CAEA,kFACC,WACD,CAIF,8BAEC,2EAA4E,CAC5E,6EAA8E,CAK9E,gCAAmC,CAHnC,kEAAmE,CACnE,QAAS,CACT,SA6DD,CA1DC,0EAQC,qCAAsC,CANtC,eAAgB,CAGhB,yDAA0D,CAD1D,yDAA0D,CAG1D,iBAAkB,CADlB,eAGD,CAEA,uEAaC,kBAAmB,CAHnB,eAAgB,CAFhB,QAAS,CAFT,aAAc,CAMd,YAAa,CAPb,YAAa,CAEb,YAAa,CAEb,SAAU,CAMV,kCAAmC,CADnC,iBAcD,CAVE,+GACC,8CACD,CAIA,8GACC,iDACD,CAKD,sFAIC,+BAAgC,CAChC,sCAAuC,CAHvC,eAAgB,CAChB,sBAAuB,CAFvB,kBAKD,CAEA,+FAIC,WAAY,CAFZ,MAAO,CACP,QAAS,CAFT,iBAAkB,CAIlB,SACD,CAQF,sIAEC,cACD,CAEA,kBACC,GACC,SACD,CAEA,GACC,SACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-panel.ck-tooltip {\n\t/* Keep tooltips transparent for any interactions. */\n\tpointer-events: none;\n\n\tz-index: calc( var(--ck-z-modal) + 100 );\n}\n","/*\n * What you're currently looking at is the source code of a legally protected, proprietary software.\n * CKEditor 5 Collaboration is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n * all CKEditor 5 Collaboration content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n *\n * Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n */\n\n@import '@ckeditor/ckeditor5-ui/theme/components/tooltip/tooltip.css';\n\n:root {\n\t--ck-color-presence-list-dropdown-background: hsl(0, 0%, 100%);\n\t--ck-color-presence-list-dropdown-arrow-border: hsl(0, 0%, 92%);\n\n\t--ck-presence-list-dropdown-list-max-width: 250px;\n\t--ck-presence-list-dropdown-list-min-width: 180px;\n\n\t--ck-presence-list-users-tooltip-max-width: 120px;\n\t--ck-presence-list-users-tooltip-min-width: 25px;\n}\n\n.ck.ck-presence-list {\n\tdisplay: flex;\n\talign-items: center;\n\tmargin-right: var(--ck-spacing-standard);\n\ttransition: margin-right 200ms ease-in-out;\n\tfont-size: var(--ck-font-size-base);\n\n\t& * {\n\t\tbox-sizing: border-box;\n\t}\n}\n\n.ck.ck-presence-list__list {\n\tdisplay: flex;\n\n\t/* Taking care about margin animation in collapsed mode. */\n\tjustify-content: flex-end;\n}\n\n.ck.ck-presence-list__counter {\n\tcolor: var(--ck-color-base-text);\n}\n\n.ck.ck-presence-list__counter--hidden {\n\tdisplay: none;\n}\n\n.ck.ck-presence-list__list-item {\n\t/**\n\t * Reset default CK5 button styles - `.ck-reset__all *`.\n\t * Reset default user agent button stylesheet too.\n\t */\n\tfont: inherit;\n\tcolor: inherit;\n\tborder: 0;\n\tpadding: 0;\n\toutline: none;\n\tbackground: none;\n\n\tposition: relative;\n\tmargin-left: var(--ck-spacing-standard);\n}\n\n.ck.ck-tooltip.ck-presence-list__list-item__tooltip {\n\t& > .ck-tooltip__text {\n\t\tdisplay: inline-block;\n\t\tmax-width: var(--ck-presence-list-users-tooltip-max-width);\n\t\toverflow: hidden;\n\t\ttext-align: center;\n\t\ttext-overflow: ellipsis;\n\t\twhite-space: nowrap;\n\t}\n}\n\n.ck.ck-presence-list__marker {\n\tposition: relative;\n\tdisplay: block;\n\twidth: 100%;\n\theight: 3px;\n\tmargin-top: 3px;\n}\n\n.ck.ck-presence-list--collapsed {\n\t& .ck-presence-list__list {\n\t\t/* Because of moving avatars to the right with margin-left we need to set min-width of container. */\n\t\tmin-width: calc( var(--ck-user-avatar-size) * 1.5 );\n\n\t\tmargin-left: var(--ck-spacing-standard);\n\n\t\t& * {\n\t\t\tcursor: pointer;\n\t\t\ttransition: all 400ms ease-in-out;\n\t\t}\n\t}\n\n\t& .ck.ck-presence-list__list-item {\n\t\t/* Adding extra px to create collapsed effect. */\n\t\tmargin-left: calc( var(--ck-user-avatar-size) * -1 + 5px);\n\n\t\t&:nth-last-child(5) {\n\t\t\topacity: .15;\n\t\t}\n\n\t\t&:nth-last-child(4) {\n\t\t\topacity: .35;\n\t\t}\n\n\t\t&:nth-last-child(3) {\n\t\t\topacity: .55;\n\t\t}\n\n\t\t&:nth-last-child(2) {\n\t\t\topacity: .75;\n\t\t}\n\t}\n}\n\n.ck.ck-presence-list__balloon {\n\t/* Overwrite arrows background of balloon */\n\t--ck-color-panel-border: var(--ck-color-presence-list-dropdown-arrow-border);\n\t--ck-color-panel-background: var(--ck-color-presence-list-dropdown-background);\n\n\tbackground-color: var(--ck-color-presence-list-dropdown-background);\n\tborder: 0;\n\topacity: 1;\n\tanimation: 300ms fadeIn ease-in-out;\n\n\t& .ck.ck-presence-list__dropdown-list-wrapper {\n\t\t/* Temporary fix, we should rethink max-height of dropdown. */\n\t\tmax-height: 80vh;\n\n\t\tmin-width: var(--ck-presence-list-dropdown-list-min-width);\n\t\tmax-width: var(--ck-presence-list-dropdown-list-max-width);\n\t\toverflow-y: auto;\n\t\toverflow-x: hidden;\n\t\tborder-radius: var(--ck-border-radius);\n\t}\n\n\t& .ck.ck-presence-list__dropdown-list-item {\n\t\t/**\n\t\t * Reset default CK5 button styles - `.ck-reset__all *`.\n\t\t * Reset default user agent button stylesheet too.\n\t\t */\n\t\tfont: inherit;\n\t\tcolor: inherit;\n\t\toutline: none;\n\t\tborder: 0;\n\t\tpadding: 0;\n\t\tbackground: none;\n\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tposition: relative;\n\t\tpadding: var(--ck-spacing-standard);\n\n\t\t&:first-of-type {\n\t\t\t& .ck-presence-list__marker {\n\t\t\t\tborder-top-left-radius: var(--ck-border-radius);\n\t\t\t}\n\t\t}\n\n\t\t&:last-of-type {\n\t\t\t& .ck-presence-list__marker {\n\t\t\t\tborder-bottom-left-radius: var(--ck-border-radius);\n\t\t\t}\n\t\t}\n\t}\n\n\t& .ck.ck-presence-list__dropdown-list {\n\t\t& .ck-user__full-name {\n\t\t\twhite-space: nowrap;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\tcolor: var(--ck-color-base-text);\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\n\t\t& .ck.ck-presence-list__marker {\n\t\t\tposition: absolute;\n\t\t\tleft: 0;\n\t\t\tmargin: 0;\n\t\t\theight: 100%;\n\t\t\twidth: 3px;\n\t\t}\n\t}\n}\n\n/**\n * Add better UX behavior of button to the `clickable` elements.\n * We need to create stronger specificity than `.ck.ck-reset__all *`.\n */\n.ck-presence-list__list button.ck-presence-list__list-item *,\n.ck-presence-list__balloon button.ck-presence-list__dropdown-list-item * {\n\tcursor: pointer;\n}\n\n@keyframes fadeIn {\n\tfrom {\n\t\topacity: 0;\n\t}\n\n\tto {\n\t\topacity: 1;\n\t}\n}\n"],sourceRoot:""}]);const a=s},8659:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck .ck-user__marker{cursor:default;display:inline;position:relative}.ck .ck-user__marker:after{color:#fff;content:attr(data-name);display:none;font-family:Georgia,sans-serif;font-size:var(--ck-font-size-base);font-style:normal;font-weight:400;left:0;line-height:1;opacity:0;padding:var(--ck-spacing-small);position:absolute;top:-20px;transition:opacity .2s linear,transform .3s ease-in-out;white-space:nowrap;z-index:99999}.ck .ck-user__marker:hover .ck-user__marker-dot{width:0}.ck .ck-user__marker:hover:after{animation:fadeInLeft .3s ease-in-out;display:block;opacity:1}.ck .ck-user__marker-line{bottom:0;height:100%;position:absolute;width:0}.ck .ck-user__marker-dot{border-radius:50%;cursor:default;display:block;height:var(--ck-user-dot-size);left:50%;position:absolute;top:calc((var(--ck-user-dot-size)/2)*-1);transform:translate(-50%,-50%);width:var(--ck-user-dot-size)}.ck .ck-placeholder .ck-user__marker{display:none}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-real-time-collaboration/theme/usermarkers.css"],names:[],mappings:"AAQA,qBAGC,cAAe,CAFf,cAAe,CACf,iBA2CD,CAxCC,2BAuBC,UAAY,CAtBZ,uBAA0B,CAC1B,YAAa,CAIb,8BAAgC,CAGhC,kCAAmC,CAInC,iBAAmB,CACnB,eAAoB,CAEpB,MAAO,CAJP,aAAc,CAKd,SAAU,CAKV,+BAAgC,CAnBhC,iBAAkB,CAiBlB,SAAU,CAKV,uDAA6D,CAD7D,kBAAmB,CAEnB,aACD,CAGC,gDACC,OACD,CAEA,iCAGC,oCAAuC,CAFvC,aAAc,CACd,SAED,CAIF,0BAGC,QAAS,CACT,WAAY,CAFZ,iBAAkB,CAGlB,OACD,CAEA,yBAWC,iBAAkB,CAElB,cAAe,CAXf,aAAc,CAQd,8BAA+B,CAN/B,QAAS,CADT,iBAAkB,CAIlB,wCAAiD,CAKjD,8BAAkC,CAHlC,6BAKD,CAGC,qCACC,YACD,CAGD,sBACC,GACC,SAAU,CACV,2BACD,CACA,GACC,SAAU,CACV,uBACD,CACD",sourcesContent:["/*\n * What you're currently looking at is the source code of a legally protected, proprietary software.\n * CKEditor 5 Collaboration is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n * all CKEditor 5 Collaboration content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n *\n * Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n */\n\n.ck .ck-user__marker {\n\tdisplay: inline;\n\tposition: relative;\n\tcursor: default;\n\n\t&::after {\n\t\tcontent: attr( data-name );\n\t\tdisplay: none;\n\t\tposition: absolute;\n\n\t\t/* It should be one font in case of inheriting (example: headers sans-serif and content serif type). */\n\t\tfont-family: Georgia, sans-serif;\n\n\t\t/* It should be px value in case of inheriting (like headers example). */\n\t\tfont-size: var(--ck-font-size-base);\n\n\t\t/* In case of inheriting from various components. */\n\t\tline-height: 1;\n\t\tfont-style: initial;\n\t\tfont-weight: initial;\n\n\t\tleft: 0;\n\t\topacity: 0;\n\n\t\t/* Moving up this element with 100% of its height. */\n\t\ttop: -20px;\n\n\t\tpadding: var(--ck-spacing-small);\n\t\tcolor: white;\n\t\twhite-space: nowrap;\n\t\ttransition: opacity 200ms linear, transform 300ms ease-in-out;\n\t\tz-index: 99999;\n\t}\n\n\t&:hover {\n\t\t& .ck-user__marker-dot {\n\t\t\twidth: 0;\n\t\t}\n\n\t\t&::after {\n\t\t\tdisplay: block;\n\t\t\topacity: 1;\n\t\t\tanimation: fadeInLeft 300ms ease-in-out;\n\t\t}\n\t}\n}\n\n.ck .ck-user__marker-line {\n\t/* If you are looking for handling line color, see `usercolors.css` in the `ckeditor5-collaboration-core`. */\n\tposition: absolute;\n\tbottom: 0;\n\theight: 100%;\n\twidth: 0;\n}\n\n.ck .ck-user__marker-dot {\n\t/* If you are looking for handling dot color, see `usercolors.css` in the `ckeditor5-collaboration-core`. */\n\tdisplay: block;\n\tposition: absolute;\n\tleft: 50%;\n\n\t/* #124 */\n\ttop: calc( ( var(--ck-user-dot-size) / 2 ) * -1 );\n\n\twidth: var(--ck-user-dot-size);\n\theight: var(--ck-user-dot-size);\n\tborder-radius: 50%;\n\ttransform: translate( -50%, -50% );\n\tcursor: default;\n}\n\n.ck .ck-placeholder {\n\t& .ck-user__marker {\n\t\tdisplay: none;\n\t}\n}\n\n@keyframes fadeInLeft {\n\tfrom {\n\t\topacity: 0;\n\t\ttransform: translateX( -10px );\n\t}\n\tto {\n\t\topacity: 1;\n\t\ttransform: translateX( 0 );\n\t}\n}\n"],sourceRoot:""}]);const a=s},2353:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-restricted-editing-exception-background:rgba(255,169,77,.2);--ck-color-restricted-editing-exception-hover-background:rgba(255,169,77,.35);--ck-color-restricted-editing-exception-brackets:rgba(204,105,0,.4);--ck-color-restricted-editing-selected-exception-background:rgba(255,169,77,.5);--ck-color-restricted-editing-selected-exception-brackets:rgba(204,105,0,.6)}.ck-editor__editable .restricted-editing-exception{background-color:var(--ck-color-restricted-editing-exception-background);border:1px solid;border-image:linear-gradient(to right,var(--ck-color-restricted-editing-exception-brackets) 0,var(--ck-color-restricted-editing-exception-brackets) 5px,transparent 6px,transparent calc(100% - 6px),var(--ck-color-restricted-editing-exception-brackets) calc(100% - 5px),var(--ck-color-restricted-editing-exception-brackets) 100%) 1;transition:background .2s ease-in-out}.ck-editor__editable .restricted-editing-exception.restricted-editing-exception_selected{background-color:var(--ck-color-restricted-editing-selected-exception-background);border-image:linear-gradient(to right,var(--ck-color-restricted-editing-selected-exception-brackets) 0,var(--ck-color-restricted-editing-selected-exception-brackets) 5px,var(--ck-color-restricted-editing-selected-exception-brackets) calc(100% - 5px),var(--ck-color-restricted-editing-selected-exception-brackets) 100%) 1}.ck-editor__editable .restricted-editing-exception.restricted-editing-exception_collapsed{padding-left:1ch}.ck-restricted-editing_mode_restricted,.ck-restricted-editing_mode_restricted *{cursor:default}.ck-restricted-editing_mode_restricted .restricted-editing-exception,.ck-restricted-editing_mode_restricted .restricted-editing-exception *{cursor:text}.ck-restricted-editing_mode_restricted .restricted-editing-exception:hover{background:var(--ck-color-restricted-editing-exception-hover-background)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-restricted-editing/restrictedediting.css"],names:[],mappings:"AAKA,MACC,sEAA2E,CAC3E,6EAAkF,CAClF,mEAAyE,CACzE,+EAAoF,CACpF,4EACD,CAEA,mDAEC,wEAAyE,CACzE,gBAAiB,CACjB,yUAQG,CAXH,qCA4BD,CAfC,yFACC,iFAAkF,CAClF,gUAOD,CAEA,0FAEC,gBACD,CAQA,gFACC,cACD,CAKC,4IACC,WACD,CAEA,2EACC,wEACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-restricted-editing-exception-background: hsla(31, 100%, 65%, .2);\n\t--ck-color-restricted-editing-exception-hover-background: hsla(31, 100%, 65%, .35);\n\t--ck-color-restricted-editing-exception-brackets: hsla(31, 100%, 40%, .4);\n\t--ck-color-restricted-editing-selected-exception-background: hsla(31, 100%, 65%, .5);\n\t--ck-color-restricted-editing-selected-exception-brackets: hsla(31, 100%, 40%, .6);\n}\n\n.ck-editor__editable .restricted-editing-exception {\n\ttransition: .2s ease-in-out background;\n\tbackground-color: var(--ck-color-restricted-editing-exception-background);\n\tborder: 1px solid;\n\tborder-image: linear-gradient(\n\t\tto right,\n\t\tvar(--ck-color-restricted-editing-exception-brackets) 0%,\n\t\tvar(--ck-color-restricted-editing-exception-brackets) 5px,\n\t\thsla(0, 0%, 0%, 0) 6px,\n\t\thsla(0, 0%, 0%, 0) calc(100% - 6px),\n\t\tvar(--ck-color-restricted-editing-exception-brackets) calc(100% - 5px),\n\t\tvar(--ck-color-restricted-editing-exception-brackets) 100%\n\t) 1;\n\n\t&.restricted-editing-exception_selected {\n\t\tbackground-color: var(--ck-color-restricted-editing-selected-exception-background);\n\t\tborder-image: linear-gradient(\n\t\t\tto right,\n\t\t\tvar(--ck-color-restricted-editing-selected-exception-brackets) 0%,\n\t\t\tvar(--ck-color-restricted-editing-selected-exception-brackets) 5px,\n\t\t\tvar(--ck-color-restricted-editing-selected-exception-brackets) calc(100% - 5px),\n\t\t\tvar(--ck-color-restricted-editing-selected-exception-brackets) 100%\n\t\t) 1;\n\t}\n\n\t&.restricted-editing-exception_collapsed {\n\t\t/* Empty exception should have the same width as exception with at least 1 char */\n\t\tpadding-left: 1ch;\n\t}\n}\n\n.ck-restricted-editing_mode_restricted {\n\tcursor: default;\n\n\t/* We also have to override all elements inside the restricted editable to prevent cursor switching between default and text\n\tduring the pointer movement. */\n\t& * {\n\t\tcursor: default;\n\t}\n\n\t& .restricted-editing-exception {\n\t\tcursor: text;\n\n\t\t& * {\n\t\t\tcursor: text;\n\t\t}\n\n\t\t&:hover {\n\t\t\tbackground: var(--ck-color-restricted-editing-exception-hover-background);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},3884:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-revision-history-ui.ck-revision-history-ui__changes-navigation{align-items:center;display:flex;margin-left:auto}.ck.ck-revision-history-ui.ck-revision-history-ui__changes-navigation .ck-revision-history-ui__changes-navigation__wrapper{display:flex;margin-right:var(--ck-spacing-standard)}.ck.ck-revision-history-ui.ck-revision-history-ui__changes-navigation .ck-revision-history-ui__changes-navigation__label{font-weight:700;white-space:pre}.ck.ck-revision-history-ui.ck-revision-history-ui__changes-navigation .ck-revision-history-ui__changes-navigation__navigation{margin-left:var(--ck-spacing-small)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-revision-history/theme/changesnavigation.css"],names:[],mappings:"AAAA,sEAEC,kBAAmB,CADnB,YAAa,CAEb,gBAeD,CAbC,2HACC,YAAa,CACb,uCACD,CAEA,yHACC,eAAiB,CACjB,eACD,CAEA,8HACC,mCACD",sourcesContent:[".ck.ck-revision-history-ui.ck-revision-history-ui__changes-navigation {\n\tdisplay: flex;\n\talign-items: center;\n\tmargin-left: auto;\n\n\t& .ck-revision-history-ui__changes-navigation__wrapper {\n\t\tdisplay: flex;\n\t\tmargin-right: var(--ck-spacing-standard);\n\t}\n\n\t& .ck-revision-history-ui__changes-navigation__label {\n\t\tfont-weight: bold;\n\t\twhite-space: pre;\n\t}\n\n\t& .ck-revision-history-ui__changes-navigation__navigation {\n\t\tmargin-left: var(--ck-spacing-small);\n\t}\n}\n"],sourceRoot:""}]);const a=s},1845:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck{--ck-revision-history-revision-background-color:var(--ck-color-base-background);--ck-revision-history-revision-border-color:#47576b;--ck-revision-history-revision-box-shadow:0 1px 1px 1px #e6e6e6;--ck-revision-history-revision-author-icon-offset:20px;--ck-revision-history-revision-transitions:background 100ms ease-in,border 100ms ease-in;--ck-revision-history-revision-selected-text-color:var(--ck-color-base-background);--ck-revision-history-revision-selected-input-text-color-empty:var(--ck-color-base-background);--ck-revision-history-revision-selected-background-color:var(--ck-color-base-active);--ck-revision-history-revision-highlighted-background-color:#e0f1ff;--ck-revision-history-revision-highlighted-background-color-hover:#cce7ff;--ck-revision-history-revision-delete-confirmation-background:#fcc;--ck-revision-history-revision-delete-confirmation-active-button-background:#ffb3b3}.ck.ck-revision-history-sidebar__revision-wrapper .ck-revision-history-sidebar__revision{background:var(--ck-revision-history-revision-background-color);border-left:3px solid var(--ck-revision-history-revision-border-color);border-radius:var(--ck-border-radius);box-shadow:var(--ck-revision-history-revision-box-shadow);display:block;padding:var(--ck-spacing-large) calc(var(--ck-spacing-standard)*2);position:relative;transition:transform .3s ease;width:100%}.ck.ck-revision-history-sidebar__revision-wrapper .ck-revision-history-sidebar__revision:last-child{margin-bottom:0}.ck.ck-revision-history-sidebar__revision-wrapper .ck-revision-history-sidebar__revision .ck-revision-history-sidebar__revision__date{display:block;font-size:var(--ck-font-size-small);font-weight:700;opacity:.8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.ck.ck-revision-history-sidebar__revision-wrapper .ck-revision-history-sidebar__revision .ck-revision-history-sidebar__revision__controls-wrapper{align-items:flex-start;display:flex;flex-direction:row;margin:var(--ck-spacing-standard) 0 0}.ck.ck-revision-history-sidebar__revision-wrapper .ck-revision-history-sidebar__revision .ck-revision-history-sidebar__revision-authors{flex:0 1 auto;margin:0 0 0 var(--ck-revision-history-revision-author-icon-offset);min-width:0;padding:0}.ck.ck-revision-history-sidebar__revision-wrapper .ck-revision-history-sidebar__revision.ck-revision-history-sidebar__revision_highlighted,.ck.ck-revision-history-sidebar__revision-wrapper .ck-revision-history-sidebar__revision.ck-revision-history-sidebar__revision_selected{border-bottom-left-radius:0;border-left-color:transparent;border-top-left-radius:0;transform:translateX(calc(var(--ck-revision-history-sidebar-timeline-padding)*-1))}.ck.ck-revision-history-sidebar__revision-wrapper .ck-revision-history-sidebar__revision.ck-revision-history-sidebar__revision_selected{background:var(--ck-revision-history-revision-selected-background-color);color:var(--ck-revision-history-revision-selected-text-color)}.ck.ck-revision-history-sidebar__revision-wrapper .ck-revision-history-sidebar__revision.ck-revision-history-sidebar__revision_selected .ck-revision-history-sidebar__revision-name .ck-input{color:var(--ck-revision-history-revision-selected-text-color)}.ck.ck-revision-history-sidebar__revision-wrapper .ck-revision-history-sidebar__revision.ck-revision-history-sidebar__revision_selected .ck-revision-history-sidebar__revision-name .ck-input.ck-input-text_empty::placeholder{opacity:.7}.ck.ck-revision-history-sidebar__revision-wrapper .ck-revision-history-sidebar__revision.ck-revision-history-sidebar__revision_highlighted{background:var(--ck-revision-history-revision-highlighted-background-color)}.ck.ck-revision-history-sidebar__revision-wrapper .ck-revision-history-sidebar__revision.ck-revision-history-sidebar__actions_dropdown_open{z-index:var(--ck-z-default)}.ck.ck-revision-history-sidebar__revision-wrapper.ck-revision-history-sidebar__revision-wrapper_confirmation_visible .ck-revision-history-sidebar__revision{box-shadow:none;position:relative;transform:translate3d(-100%,0,0)}.ck.ck-revision-history-sidebar__revision-wrapper.ck-revision-history-sidebar__revision-wrapper_confirmation_visible .ck-revision-history-sidebar__revision,.ck.ck-revision-history-sidebar__revision-wrapper.ck-revision-history-sidebar__revision-wrapper_confirmation_visible .ck-revision-history-sidebar__revision *{--ck-revision-history-revision-background-color:transparent;--ck-revision-history-revision-selected-background-color:transparent;--ck-revision-history-revision-highlighted-background-color:transparent}.ck.ck-revision-history-sidebar__revision-wrapper .ck-thread__remove-confirm{align-items:center;background:var(--ck-revision-history-revision-delete-confirmation-background);border-radius:var(--ck-border-radius);box-shadow:var(--ck-revision-history-revision-box-shadow);display:flex;flex-direction:row;height:100%;justify-content:space-around;left:100%;position:absolute;top:0;user-select:none;width:100%}.ck.ck-revision-history-sidebar__revision-wrapper .ck-thread__remove-confirm .ck-thread__remove-confirm-inner{margin-top:var(--ck-spacing-small);text-align:center}.ck.ck-revision-history-sidebar__revision-wrapper .ck-thread__remove-confirm .ck-thread__remove-confirm-inner p{color:var(--ck-color-text);font-weight:700;margin:0}.ck.ck-revision-history-sidebar__revision-wrapper .ck-thread__remove-confirm .ck-thread__remove-confirm-inner .ck-thread__remove-confirm-actions{display:flex;flex-direction:row;justify-content:space-evenly}.ck.ck-revision-history-sidebar__revision-wrapper .ck-thread__remove-confirm .ck-thread__remove-confirm-inner .ck-thread__remove-confirm-actions .ck.ck-button:active,.ck.ck-revision-history-sidebar__revision-wrapper .ck-thread__remove-confirm .ck-thread__remove-confirm-inner .ck-thread__remove-confirm-actions .ck.ck-button:focus,.ck.ck-revision-history-sidebar__revision-wrapper .ck-thread__remove-confirm .ck-thread__remove-confirm-inner .ck-thread__remove-confirm-actions .ck.ck-button:hover{background:var(--ck-revision-history-revision-delete-confirmation-active-button-background)}.ck.ck-revision-history-sidebar__revision-wrapper .ck-thread__remove-confirm .ck-thread__remove-confirm-inner .ck-thread__remove-confirm-actions .ck.ck-button.ck-thread__remove-confirm-submit{color:var(--ck-color-button-save)}.ck.ck-revision-history-sidebar__revision-wrapper .ck-thread__remove-confirm .ck-thread__remove-confirm-inner .ck-thread__remove-confirm-actions .ck.ck-button.ck-thread__remove-confirm-cancel{color:var(--ck-color-button-cancel)}.ck.ck-revision-history-sidebar__revision-wrapper .ck-revision-history-sidebar__subrevisions{margin-left:var(--ck-spacing-large)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-revision-history/theme/revision/revision.css"],names:[],mappings:"AAAA,IACC,+EAAgF,CAChF,mDAAgE,CAChE,+DAAyE,CACzE,sDAAuD,CACvD,wFAA0F,CAC1F,kFAAmF,CACnF,8FAA+F,CAC/F,oFAAqF,CACrF,mEAAiF,CACjF,yEAAuF,CACvF,kEAAiF,CACjF,mFACD,CAGC,yFAGC,+DAAgE,CAIhE,sEAAuE,CADvE,qCAAsC,CAEtC,yDAA0D,CAN1D,aAAc,CAGd,kEAAqE,CAJrE,iBAAkB,CAUlB,6BAA8B,CAF9B,UAgED,CA5DC,oGACC,eACD,CAEA,sIACC,aAAc,CACd,mCAAoC,CACpC,eAAiB,CACjB,UAAW,CACX,eAAgB,CAChB,sBAAuB,CAEvB,kBAAmB,CADnB,UAGD,CAEA,kJAGC,sBAAuB,CAFvB,YAAa,CACb,kBAAmB,CAEnB,qCACD,CAEA,wIAGC,aAAc,CADd,mEAAoE,CAEpE,WAAY,CAHZ,SAID,CAEA,mRAKC,2BAA4B,CAH5B,6BAA8B,CAE9B,wBAAyB,CADzB,kFAGD,CAEA,wIACC,wEAAyE,CACzE,6DAWD,CATC,8LACC,6DAOD,CAHC,+NACC,UACD,CAIF,2IACC,2EACD,CAEA,4IACC,2BACD,CAKA,4JACC,eAAgB,CAChB,iBAAkB,CAClB,gCAOD,CALC,0TACC,2DAA4D,CAC5D,oEAAqE,CACrE,uEACD,CAKF,6EAIC,kBAAmB,CAUnB,6EAA8E,CAF9E,qCAAsC,CACtC,yDAA0D,CAZ1D,YAAa,CACb,kBAAmB,CAQnB,WAAY,CAPZ,4BAA6B,CAK7B,SAAU,CAFV,iBAAkB,CAClB,KAAM,CAQN,gBAAiB,CANjB,UAwCD,CAhCC,8GAEC,kCAAmC,CADnC,iBA8BD,CA1BC,gHAGC,0BAA2B,CAD3B,eAAiB,CADjB,QAGD,CAGA,iJACC,YAAa,CACb,kBAAmB,CACnB,4BAeD,CAZE,gfACC,2FACD,CAEA,gMACC,iCACD,CAEA,gMACC,mCACD,CAMJ,6FACC,mCACD",sourcesContent:[".ck {\n\t--ck-revision-history-revision-background-color: var(--ck-color-base-background);\n\t--ck-revision-history-revision-border-color: hsl(213deg 20% 35%);\n\t--ck-revision-history-revision-box-shadow: 0 1px 1px 1px hsl(0deg 0% 90%);\n\t--ck-revision-history-revision-author-icon-offset: 20px;\n\t--ck-revision-history-revision-transitions: background 100ms ease-in, border 100ms ease-in;\n\t--ck-revision-history-revision-selected-text-color: var(--ck-color-base-background);\n\t--ck-revision-history-revision-selected-input-text-color-empty: var(--ck-color-base-background);\n\t--ck-revision-history-revision-selected-background-color: var(--ck-color-base-active);\n\t--ck-revision-history-revision-highlighted-background-color: hsl(208deg 100% 94%);\n\t--ck-revision-history-revision-highlighted-background-color-hover: hsl(208deg 100% 90%);\n\t--ck-revision-history-revision-delete-confirmation-background: hsl(0deg 100% 90%);\n\t--ck-revision-history-revision-delete-confirmation-active-button-background: hsl(0deg 100% 85%);\n}\n\n.ck.ck-revision-history-sidebar__revision-wrapper {\n\t& .ck-revision-history-sidebar__revision {\n\t\tposition: relative;\n\t\tdisplay: block;\n\t\tbackground: var(--ck-revision-history-revision-background-color);\n\n\t\tpadding: var(--ck-spacing-large) calc(2 * var(--ck-spacing-standard));\n\t\tborder-radius: var(--ck-border-radius);\n\t\tborder-left: 3px solid var(--ck-revision-history-revision-border-color);\n\t\tbox-shadow: var(--ck-revision-history-revision-box-shadow);\n\t\twidth: 100%;\n\t\t/*transition: var(--ck-revision-history-revision-transitions), transform .3s ease-in-out;*/\n\t\ttransition: transform .3s ease;\n\n\t\t&:last-child {\n\t\t\tmargin-bottom: 0;\n\t\t}\n\n\t\t& .ck-revision-history-sidebar__revision__date {\n\t\t\tdisplay: block;\n\t\t\tfont-size: var(--ck-font-size-small);\n\t\t\tfont-weight: bold;\n\t\t\topacity: .8;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\twidth: 100%;\n\t\t\twhite-space: nowrap;\n\t\t\t/*transition: var(--ck-revision-history-revision-transitions);*/\n\t\t}\n\n\t\t& .ck-revision-history-sidebar__revision__controls-wrapper {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\talign-items: flex-start;\n\t\t\tmargin: var(--ck-spacing-standard) 0 0;\n\t\t}\n\n\t\t& .ck-revision-history-sidebar__revision-authors {\n\t\t\tpadding: 0;\n\t\t\tmargin: 0 0 0 var(--ck-revision-history-revision-author-icon-offset);\n\t\t\tflex: 0 1 auto;\n\t\t\tmin-width: 0;\n\t\t}\n\n\t\t&.ck-revision-history-sidebar__revision_selected,\n\t\t&.ck-revision-history-sidebar__revision_highlighted {\n\t\t\tborder-left-color: transparent;\n\t\t\ttransform: translateX(calc(-1 * var(--ck-revision-history-sidebar-timeline-padding)));\n\t\t\tborder-top-left-radius: 0;\n\t\t\tborder-bottom-left-radius: 0;\n\t\t}\n\n\t\t&.ck-revision-history-sidebar__revision_selected {\n\t\t\tbackground: var(--ck-revision-history-revision-selected-background-color);\n\t\t\tcolor: var(--ck-revision-history-revision-selected-text-color);\n\n\t\t\t& .ck-revision-history-sidebar__revision-name .ck-input {\n\t\t\t\tcolor: var(--ck-revision-history-revision-selected-text-color);\n\n\t\t\t\t/* The placeholder displays the date but without a different opacity it would not be unclear\n\t\t\t\twhether this is an actual input value or not */\n\t\t\t\t&.ck-input-text_empty::placeholder {\n\t\t\t\t\topacity: .7;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&.ck-revision-history-sidebar__revision_highlighted {\n\t\t\tbackground: var(--ck-revision-history-revision-highlighted-background-color);\n\t\t}\n\n\t\t&.ck-revision-history-sidebar__actions_dropdown_open {\n\t\t\tz-index: var(--ck-z-default);\n\t\t}\n\t}\n\n\t/* Slide the revision to the left when the delete confirmation prompt shows up. */\n\t&.ck-revision-history-sidebar__revision-wrapper_confirmation_visible {\n\t\t& .ck-revision-history-sidebar__revision {\n\t\t\tbox-shadow: none;\n\t\t\tposition: relative;\n\t\t\ttransform: translate3d( -100%, 0, 0 );\n\n\t\t\t&, & * {\n\t\t\t\t--ck-revision-history-revision-background-color: transparent;\n\t\t\t\t--ck-revision-history-revision-selected-background-color: transparent;\n\t\t\t\t--ck-revision-history-revision-highlighted-background-color: transparent;\n\t\t\t}\n\t\t}\n\t}\n\n\t/* A confirmation that shows up when attempting to delete a revision */\n\t& .ck-thread__remove-confirm {\n\t\tdisplay: flex;\n\t\tflex-direction: row;\n\t\tjustify-content: space-around;\n\t\talign-items: center;\n\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 100%;\n\t\twidth: 100%;\n\t\theight: 100%;\n\n\t\tborder-radius: var(--ck-border-radius);\n\t\tbox-shadow: var(--ck-revision-history-revision-box-shadow);\n\t\tbackground: var(--ck-revision-history-revision-delete-confirmation-background);\n\t\tuser-select: none;\n\n\t\t& .ck-thread__remove-confirm-inner {\n\t\t\ttext-align: center;\n\t\t\tmargin-top: var(--ck-spacing-small);\n\n\t\t\t/* Confirmation message */\n\t\t\t& p {\n\t\t\t\tmargin: 0;\n\t\t\t\tfont-weight: bold;\n\t\t\t\tcolor: var(--ck-color-text);\n\t\t\t}\n\n\t\t\t/* Confirmation buttons */\n\t\t\t& .ck-thread__remove-confirm-actions {\n\t\t\t\tdisplay: flex;\n\t\t\t\tflex-direction: row;\n\t\t\t\tjustify-content: space-evenly;\n\n\t\t\t\t& .ck.ck-button {\n\t\t\t\t\t&:hover, &:focus, &:active {\n\t\t\t\t\t\tbackground: var(--ck-revision-history-revision-delete-confirmation-active-button-background);\n\t\t\t\t\t}\n\n\t\t\t\t\t&.ck-thread__remove-confirm-submit {\n\t\t\t\t\t\tcolor: var(--ck-color-button-save);\n\t\t\t\t\t}\n\n\t\t\t\t\t&.ck-thread__remove-confirm-cancel {\n\t\t\t\t\t\tcolor: var(--ck-color-button-cancel);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t& .ck-revision-history-sidebar__subrevisions {\n\t\tmargin-left: var(--ck-spacing-large);\n\t}\n}\n"],sourceRoot:""}]);const a=s},9536:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-revision-history-sidebar__revision .ck-revision-history-sidebar__revision__actions{display:none;position:absolute;right:var(--ck-spacing-small);top:var(--ck-spacing-small)}.ck.ck-revision-history-sidebar__revision .ck-revision-history-sidebar__revision__actions .ck-dropdown__button{min-height:unset;min-width:unset}.ck.ck-revision-history-sidebar__revision .ck-revision-history-sidebar__revision__actions .ck-dropdown__button .ck-button__icon{transform:scale(.7)}.ck.ck-revision-history-sidebar__revision .ck-revision-history-sidebar__revision__actions .ck-dropdown__arrow{display:none}.ck.ck-revision-history-sidebar__revision .ck-revision-history-sidebar__revision__actions .ck-list__item__danger{color:var(--ck-color-button-cancel)}.ck.ck-revision-history-sidebar__revision.ck-revision-history-sidebar__revision_selected .ck-revision-history-sidebar__revision__actions .ck-dropdown__button{color:var(--ck-color-base-background)}.ck.ck-revision-history-sidebar__revision.ck-revision-history-sidebar__revision_selected .ck-revision-history-sidebar__revision__actions .ck-dropdown__button.ck-on,.ck.ck-revision-history-sidebar__revision.ck-revision-history-sidebar__revision_selected .ck-revision-history-sidebar__revision__actions .ck-dropdown__button:hover{background:var(--ck-color-base-active-focus)}.ck.ck-revision-history-sidebar__revision.ck-revision-history-sidebar__revision_selected .ck-revision-history-sidebar__revision__actions .ck-dropdown__button.ck-on:hover,.ck.ck-revision-history-sidebar__revision.ck-revision-history-sidebar__revision_selected .ck-revision-history-sidebar__revision__actions .ck-dropdown__button:hover:hover{filter:brightness(95%)}.ck.ck-revision-history-sidebar__revision.ck-revision-history-sidebar__revision_highlighted .ck-revision-history-sidebar__revision__actions .ck-dropdown__button.ck-on,.ck.ck-revision-history-sidebar__revision.ck-revision-history-sidebar__revision_highlighted .ck-revision-history-sidebar__revision__actions .ck-dropdown__button:hover{background:var(--ck-revision-history-revision-highlighted-background-color-hover)}.ck.ck-revision-history-sidebar__revision.ck-revision-history-sidebar__revision_highlighted .ck-revision-history-sidebar__revision__actions .ck-dropdown__button.ck-on:hover,.ck.ck-revision-history-sidebar__revision.ck-revision-history-sidebar__revision_highlighted .ck-revision-history-sidebar__revision__actions .ck-dropdown__button:hover:hover{filter:brightness(95%)}.ck.ck-revision-history-sidebar__revision:hover:not(.ck-disabled) .ck-revision-history-sidebar__revision__actions,.ck.ck-revision-history-sidebar__revision:not(.ck-disabled) .ck-revision-history-sidebar__revision__actions.ck-on{display:block}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-revision-history/theme/revision/revisionactions.css"],names:[],mappings:"AAEE,0FACC,YAAa,CACb,iBAAkB,CAElB,6BAA8B,CAD9B,2BAmBD,CAhBC,+GAEC,gBAAiB,CADjB,eAMD,CAHC,gIACC,mBACD,CAGD,8GACC,YACD,CAEA,iHACC,mCACD,CAKC,8JACC,qCAUD,CARC,wUAEC,4CAKD,CAHC,oVACC,sBACD,CASD,8UAEC,iFAKD,CAHC,0VACC,sBACD,CAMJ,oOAEC,aACD",sourcesContent:[".ck {\n\t&.ck-revision-history-sidebar__revision {\n\t\t& .ck-revision-history-sidebar__revision__actions {\n\t\t\tdisplay: none;\n\t\t\tposition: absolute;\n\t\t\ttop: var(--ck-spacing-small);\n\t\t\tright: var(--ck-spacing-small);\n\n\t\t\t& .ck-dropdown__button {\n\t\t\t\tmin-width: unset;\n\t\t\t\tmin-height: unset;\n\n\t\t\t\t& .ck-button__icon {\n\t\t\t\t\ttransform: scale( .7 );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t& .ck-dropdown__arrow {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\n\t\t\t& .ck-list__item__danger {\n\t\t\t\tcolor: var(--ck-color-button-cancel);\n\t\t\t}\n\t\t}\n\n\t\t&.ck-revision-history-sidebar__revision_selected {\n\t\t\t& .ck-revision-history-sidebar__revision__actions {\n\t\t\t\t& .ck-dropdown__button {\n\t\t\t\t\tcolor: var(--ck-color-base-background);\n\n\t\t\t\t\t&:hover,\n\t\t\t\t\t&.ck-on {\n\t\t\t\t\t\tbackground: var(--ck-color-base-active-focus);\n\n\t\t\t\t\t\t&:hover {\n\t\t\t\t\t\t\tfilter: brightness(95%);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&.ck-revision-history-sidebar__revision_highlighted {\n\t\t\t& .ck-revision-history-sidebar__revision__actions {\n\t\t\t\t& .ck-dropdown__button {\n\t\t\t\t\t&:hover,\n\t\t\t\t\t&.ck-on {\n\t\t\t\t\t\tbackground: var(--ck-revision-history-revision-highlighted-background-color-hover);\n\n\t\t\t\t\t\t&:hover {\n\t\t\t\t\t\t\tfilter: brightness(95%);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&:hover:not(.ck-disabled) .ck-revision-history-sidebar__revision__actions,\n\t\t&:not(.ck-disabled) .ck-revision-history-sidebar__revision__actions.ck-on {\n\t\t\tdisplay: block;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},8152:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-revision-history-sidebar__revision-author{display:block;position:relative;transition:var(--ck-revision-history-revision-transitions)}.ck.ck-revision-history-sidebar__revision-author .ck-revision-history-sidebar__revision-author__name{display:block;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.ck.ck-revision-history-sidebar__revision-author .ck-icon{height:10px;left:calc(var(--ck-revision-history-revision-author-icon-offset)*-1);position:absolute;top:3px;width:11px}.ck.ck-revision-history-sidebar__revision-author:not(:first-of-type) .ck-icon{display:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-revision-history/theme/revision/revisionauthor.css"],names:[],mappings:"AAAA,iDACC,aAAc,CACd,iBAAkB,CAClB,0DAuBD,CArBC,qGAKC,aAAc,CACd,eAAiB,CALjB,eAAgB,CAChB,sBAAuB,CAEvB,kBAAmB,CADnB,UAID,CAEA,0DAMC,WAAY,CAJZ,oEAAuE,CADvE,iBAAkB,CAElB,OAAQ,CAER,UAED,CAEA,8EACC,YACD",sourcesContent:[".ck.ck-revision-history-sidebar__revision-author {\n\tdisplay: block;\n\tposition: relative;\n\ttransition: var(--ck-revision-history-revision-transitions);\n\n\t& .ck-revision-history-sidebar__revision-author__name {\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t\twidth: 100%;\n\t\twhite-space: nowrap;\n\t\tdisplay: block;\n\t\tfont-weight: bold;\n\t}\n\n\t& .ck-icon {\n\t\tposition: absolute;\n\t\tleft: calc(-1 * var(--ck-revision-history-revision-author-icon-offset));\n\t\ttop: 3px;\n\n\t\twidth: 11px;\n\t\theight: 10px;\n\t}\n\n\t&:not(:first-of-type) .ck-icon {\n\t\tdisplay: none;\n\t}\n}\n"],sourceRoot:""}]);const a=s},8856:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-revision-history-sidebar__revision-name{display:block;font-size:1.2em;font-weight:700;left:calc(var(--ck-spacing-small)*-1);margin-right:30px;position:relative}.ck.ck-revision-history-sidebar__revision-name>.ck-labeled-field-view__input-wrapper>.ck-label{display:none}.ck.ck-revision-history-sidebar__revision-name>.ck-labeled-field-view__input-wrapper>.ck-input{background:transparent;border-radius:var(--ck-border-radius);color:inherit;font-family:inherit;font-size:var(--ck-font-size-normal);font-weight:700;min-height:auto;min-width:auto;padding:var(--ck-spacing-tiny) var(--ck-spacing-small);transition:var(--ck-revision-history-revision-transitions);width:100%}.ck.ck-revision-history-sidebar__revision-name>.ck-labeled-field-view__input-wrapper>.ck-input,.ck.ck-revision-history-sidebar__revision-name>.ck-labeled-field-view__input-wrapper>.ck-input:focus,.ck.ck-revision-history-sidebar__revision-name>.ck-labeled-field-view__input-wrapper>.ck-input[readonly]{background:transparent}.ck.ck-revision-history-sidebar__revision-name>.ck-labeled-field-view__input-wrapper>.ck-input:not(.ck-input_focused){border-color:transparent}.ck.ck-revision-history-sidebar__revision-name>.ck-labeled-field-view__input-wrapper>.ck-input::placeholder{color:inherit}.ck.ck-revision-history-sidebar__revision-name>.ck-labeled-field-view__input-wrapper>.ck-input[readonly]{pointer-events:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-revision-history/theme/revision/revisionname.css"],names:[],mappings:"AAAA,+CACC,aAAc,CACd,eAAgB,CAChB,eAAiB,CAEjB,qCAAwC,CACxC,iBAAkB,CAFlB,iBA4CD,CAvCE,+FACC,YACD,CAEA,+FAWC,sBAAuB,CAFvB,qCAAsC,CANtC,aAAc,CACd,mBAAoB,CAEpB,oCAAqC,CADrC,eAAiB,CAHjB,eAAgB,CAKhB,cAAe,CANf,sDAAuD,CASvD,0DAA2D,CAF3D,UAyBD,CApBC,6SACC,sBACD,CAEA,sHAGC,wBACD,CAEA,4GAGC,aACD,CAGA,yGACC,mBACD",sourcesContent:[".ck.ck-revision-history-sidebar__revision-name {\n\tdisplay: block;\n\tfont-size: 1.2em;\n\tfont-weight: bold;\n\tposition: relative;\n\tleft: calc(-1 * var(--ck-spacing-small));\n\tmargin-right: 30px;\n\n\t& > .ck-labeled-field-view__input-wrapper {\n\t\t& > .ck-label {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t& > .ck-input {\n\t\t\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-small);\n\t\t\tmin-height: auto;\n\t\t\tcolor: inherit;\n\t\t\tfont-family: inherit;\n\t\t\tfont-weight: bold;\n\t\t\tfont-size: var(--ck-font-size-normal);\n\t\t\tmin-width: auto;\n\t\t\twidth: 100%;\n\t\t\tborder-radius: var(--ck-border-radius);\n\t\t\ttransition: var(--ck-revision-history-revision-transitions);\n\t\t\tbackground: transparent;\n\n\t\t\t&, &:focus, &[readonly] {\n\t\t\t\tbackground: transparent;\n\t\t\t}\n\n\t\t\t&:not(.ck-input_focused) {\n\t\t\t\t/* Only when the input is focused, it should look like an input. By default, it should not be obvious\n\t\t\t\tthat revision names are inputs. */\n\t\t\t\tborder-color: transparent;\n\t\t\t}\n\n\t\t\t&::placeholder {\n\t\t\t\t/* The placeholder should be transparent to the users. When there is no name (whis is not mandatory),\n\t\t\t\tthe date is displayed instead of a name and it should look like this is normal. */\n\t\t\t\tcolor: inherit;\n\t\t\t}\n\n\t\t\t/* Don't put the selection in the revision name when clicking an unselected revision. This is annoying. */\n\t\t\t&[readonly] {\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},2148:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-revision-history-save-revision-form{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:nowrap}.ck.ck-revision-history-save-revision-form .ck-labeled-field-view{display:inline-block}.ck.ck-revision-history-save-revision-form .ck-label{display:none}@media screen and (max-width:600px){.ck.ck-revision-history-save-revision-form{flex-wrap:wrap}.ck.ck-revision-history-save-revision-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-revision-history-save-revision-form .ck-button{flex-basis:50%}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-revision-history/theme/revisionhistorysaverevisionform.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAOA,2CAEC,sBAAuB,CADvB,YAAa,CAEb,kBAAmB,CACnB,gBAqBD,CAnBC,kEACC,oBACD,CAEA,qDACC,YACD,CCbA,oCDCD,2CAeE,cAUF,CARE,kEACC,eACD,CAEA,sDACC,cACD,CCtBD",sourcesContent:['/*\n * Copyright (c) 2003-2020, 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-revision-history-save-revision-form {\n\tdisplay: flex;\n\talign-items: flex-start;\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-2022, 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},4708:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck{--ck-revision-history-sidebar-period-background:#ff5724;--ck-revision-history-sidebar-timeline-padding:var(--ck-spacing-large)}.ck.ck-revision-history-sidebar{display:flex;flex-direction:column}.ck.ck-revision-history-sidebar .ck-revision-history-sidebar__timeline{align-items:start;display:flex;flex-direction:column;font-size:var(--ck-font-size-base);height:100%;overflow-x:hidden;overflow-y:auto;padding:var(--ck-revision-history-sidebar-timeline-padding)}.ck.ck-revision-history-sidebar .ck-revision-history-sidebar__timeline.ck-disabled{filter:grayscale(1) opacity(var(--ck-disabled-opacity))}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-revision-history/theme/revisionssidebar/revisionssidebar.css"],names:[],mappings:"AAAA,IACC,uDAAoE,CACpE,sEACD,CAEA,gCACC,YAAa,CACb,qBAqBD,CAnBC,uEAGC,iBAAkB,CAFlB,YAAa,CACb,qBAAsB,CAGtB,kCAAmC,CAEnC,WAAY,CAMZ,iBAAkB,CAPlB,eAAgB,CAFhB,2DAcD,CAHC,mFACC,uDACD",sourcesContent:[".ck {\n\t--ck-revision-history-sidebar-period-background: hsl(14deg 100% 57%);\n\t--ck-revision-history-sidebar-timeline-padding: var(--ck-spacing-large);\n}\n\n.ck.ck-revision-history-sidebar {\n\tdisplay: flex;\n\tflex-direction: column;\n\n\t& .ck-revision-history-sidebar__timeline {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: start;\n\t\tpadding: var(--ck-revision-history-sidebar-timeline-padding);\n\t\tfont-size: var(--ck-font-size-base);\n\t\toverflow-y: auto;\n\t\theight: 100%;\n\n\t\t/*\n\t\t * Required for the revision delete confirmation slide-to-the-left effect.\n\t\t * Without it, a h-scroll shows up for a while\n\t\t */\n\t\toverflow-x: hidden;\n\n\t\t&.ck-disabled {\n\t\t\tfilter: grayscale(1) opacity(var(--ck-disabled-opacity));\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},8769:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-revision-history-sidebar__header{--header-height:calc(var(--ck-ui-component-min-height) + var(--ck-spacing-small)*2 + 1px);align-items:center;border-bottom:1px solid var(--ck-color-toolbar-border);color:inherit;display:flex;flex-direction:row;font-family:inherit;font-weight:700;height:var(--header-height);line-height:var(--header-height);min-height:var(--header-height);overflow:hidden;padding:0 var(--ck-revision-history-sidebar-timeline-padding)}.ck.ck-revision-history-sidebar__header .ck-revision-history-sidebar__header__label{color:inherit;font-family:inherit;font-size:1.2em;font-weight:700}.ck.ck-revision-history-sidebar__header .ck-icon{margin-right:var(--ck-spacing-large)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-revision-history/theme/revisionssidebar/revisionssidebarheader.css"],names:[],mappings:"AAAA,wCACC,yFAA4F,CAa5F,kBAAmB,CARnB,sDAAuD,CAIvD,aAAc,CAEd,YAAa,CACb,kBAAmB,CALnB,mBAAoB,CACpB,eAAiB,CANjB,2BAA4B,CAE5B,gCAAiC,CADjC,+BAAgC,CAGhC,eAAgB,CAIhB,6DAeD,CAVC,oFAGC,aAAc,CAFd,mBAAoB,CAGpB,eAAgB,CAFhB,eAGD,CAEA,iDACC,oCACD",sourcesContent:[".ck.ck-revision-history-sidebar__header {\n\t--header-height: calc(var(--ck-ui-component-min-height) + 2 * var(--ck-spacing-small) + 1px);\n\n\theight: var(--header-height);\n\tmin-height: var(--header-height);\n\tline-height: var(--header-height);\n\tborder-bottom: 1px solid var(--ck-color-toolbar-border);\n\toverflow: hidden;\n\tfont-family: inherit;\n\tfont-weight: bold;\n\tcolor: inherit;\n\tpadding: 0 var(--ck-revision-history-sidebar-timeline-padding);\n\tdisplay: flex;\n\tflex-direction: row;\n\talign-items: center;\n\n\t& .ck-revision-history-sidebar__header__label {\n\t\tfont-family: inherit;\n\t\tfont-weight: bold;\n\t\tcolor: inherit;\n\t\tfont-size: 1.2em;\n\t}\n\n\t& .ck-icon {\n\t\tmargin-right: var(--ck-spacing-large);\n\t}\n}\n"],sourceRoot:""}]);const a=s},2387:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck{--ck-revision-history-sidebar-revision-vertical-spacing:calc(var(--ck-spacing-standard)*2)}.ck.ck-revision-history-sidebar__time-period{width:100%}.ck.ck-revision-history-sidebar__time-period .ck-revision-history-sidebar__time-period__label{background:var(--ck-revision-history-sidebar-period-background);border-radius:var(--ck-border-radius);color:var(--ck-color-base-background);font-size:9px;font-weight:700;padding:var(--ck-spacing-tiny) var(--ck-spacing-standard);text-transform:uppercase}.ck.ck-revision-history-sidebar__time-period .ck-revision-history-sidebar__time-period__label:first-child{margin-top:var(--ck-spacing-standard)}.ck.ck-revision-history-sidebar__time-period .ck-revision-history-sidebar__time-period__revisions{display:flex;flex-direction:column}.ck.ck-revision-history-sidebar__time-period .ck-revision-history-sidebar__time-period__revisions .ck-revision-history-sidebar__revision-wrapper,.ck.ck-revision-history-sidebar__time-period:not(.ck-hidden)+.ck-revision-history-sidebar__time-period{margin-top:var(--ck-revision-history-sidebar-revision-vertical-spacing)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-revision-history/theme/revisionssidebar/revisionssidebartimeperiod.css"],names:[],mappings:"AAAA,IACC,0FACD,CAEA,6CACC,UA4BD,CA1BC,8FACC,+DAAgE,CAIhE,qCAAsC,CACtC,qCAAsC,CAJtC,aAAc,CACd,eAAiB,CACjB,yDAA0D,CAG1D,wBAKD,CAHC,0GACC,qCACD,CAGD,kGACC,YAAa,CACb,qBAKD,CAEA,wPACC,uEACD",sourcesContent:[".ck {\n\t--ck-revision-history-sidebar-revision-vertical-spacing: calc(2 * var(--ck-spacing-standard));\n}\n\n.ck.ck-revision-history-sidebar__time-period {\n\twidth: 100%;\n\n\t& .ck-revision-history-sidebar__time-period__label {\n\t\tbackground: var(--ck-revision-history-sidebar-period-background);\n\t\tfont-size: 9px;\n\t\tfont-weight: bold;\n\t\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-standard);\n\t\tborder-radius: var(--ck-border-radius);\n\t\tcolor: var(--ck-color-base-background);\n\t\ttext-transform: uppercase;\n\n\t\t&:first-child {\n\t\t\tmargin-top: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t& .ck-revision-history-sidebar__time-period__revisions {\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\n\t\t& .ck-revision-history-sidebar__revision-wrapper {\n\t\t\tmargin-top: var(--ck-revision-history-sidebar-revision-vertical-spacing);\n\t\t}\n\t}\n\n\t&:not(.ck-hidden) + .ck-revision-history-sidebar__time-period {\n\t\tmargin-top: var(--ck-revision-history-sidebar-revision-vertical-spacing);\n\t}\n}\n"],sourceRoot:""}]);const a=s},6447:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,'.ck .ck-revision-change{border-top-left-radius:var(--ck-border-radius);outline:0;padding:var(--ck-spacing-small) var(--ck-spacing-large)}.ck .ck-revision-change>*{font-size:var(--ck-font-size-standard);vertical-align:bottom}.ck .ck-revision-change.ck-revision-change__add{border-left-color:var(--ck-color-suggestion-box-insertion-border)}.ck .ck-revision-change.ck-revision-change__remove{border-left-color:var(--ck-color-suggestion-box-deletion-border)}.ck .ck-revision-change .ck-revision-change__label{font-size:inherit;font-weight:700;vertical-align:inherit}.ck.ck-button.ck-revision-history-ui__back-to-editing{background:var(--ck-color-base-active);color:var(--ck-color-base-background)}.ck.ck-button.ck-revision-history-ui__back-to-editing:hover:not(.ck-disabled){background:var(--ck-color-base-active-focus)}.ck-content .ck-suggestion-preview-marker,.ck-content .ck-suggestion-preview-marker-split{opacity:.75}.ck-content .ck-suggestion-preview-marker-split:after{content:"¶"}.ck-content .ck-suggestion-preview-marker-merge{opacity:.75;text-decoration:line-through}.ck-content .ck-suggestion-preview-marker-merge:after{content:"¶"}.ck-content .ck-suggestion-preview-marker-deletion{text-decoration:line-through}.ck-content .ck-suggestion-marker-deletion-new:not(.ck-widget),.ck-content .ck-suggestion-marker-merge-new{--ck-color-suggestion-marker-deletion-border:none;--ck-color-suggestion-marker-deletion-border-active:none;--ck-color-suggestion-marker-deletion-background:none;--ck-color-suggestion-marker-deletion-background-active:none;--ck-color-suggestion-marker-deletion-stroke:rgba(122,31,54,.8);--ck-color-suggestion-widget-deletion-background:rgba(229,102,134,.03);--ck-color-suggestion-widget-deletion-background-active:rgba(196,33,74,.05)}.ck-content .ck-suggestion-marker-merge-new:after{color:inherit}.ck-content .ck-suggestion-marker-insertion-new,.ck-content .ck-suggestion-marker-split-new{opacity:.75}.ck-content .ck-suggestion-marker-deletion-new.ck-suggestion-marker--active:not(.table),.ck-content .ck-suggestion-marker-merge-new.ck-suggestion-marker--active{--ck-color-suggestion-marker-deletion-background-active:rgba(218,37,82,.08);--ck-color-suggestion-marker-deletion-stroke:#7a1f36;opacity:1}.ck-content .ck-suggestion-marker-insertion-new.ck-suggestion-marker--active,.ck-content .ck-suggestion-marker-split-new.ck-suggestion-marker--active{opacity:1}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-revision-history/theme/revisionviewer.css"],names:[],mappings:"AAAA,wBAEC,8CAA+C,CAC/C,SAAU,CAFV,uDAsBD,CAlBC,0BAEC,sCAAuC,CADvC,qBAED,CAEA,gDACC,iEACD,CAEA,mDACC,gEACD,CAEA,mDAEC,iBAAkB,CADlB,eAAiB,CAEjB,sBACD,CAIA,sDACC,sCAAuC,CACvC,qCAKD,CAHC,8EACC,4CACD,CAMD,0FAAwC,WAAe,CACvD,sDAA+C,WAAc,CAC7D,gDAAwC,WAAa,CAAE,4BAA+B,CACtF,sDAA+C,WAAc,CAC7D,mDAA2C,4BAA+B,CAE1E,2GAEC,iDAAkD,CAClD,wDAAyD,CACzD,qDAAsD,CACtD,4DAA6D,CAC7D,+DAAqE,CAErE,sEAA0E,CAC1E,2EACD,CAEA,kDACC,aACD,CAEA,4FAEC,WACD,CAEA,iKAEC,2EAAiF,CACjF,oDAAoE,CAEpE,SACD,CAEA,sJAEC,SACD",sourcesContent:[".ck .ck-revision-change {\n\tpadding: var(--ck-spacing-small) var(--ck-spacing-large);\n\tborder-top-left-radius: var(--ck-border-radius);\n\toutline: 0;\n\n\t& > * {\n\t\tvertical-align: bottom;\n\t\tfont-size: var(--ck-font-size-standard);\n\t}\n\n\t&.ck-revision-change__add {\n\t\tborder-left-color: var(--ck-color-suggestion-box-insertion-border);\n\t}\n\n\t&.ck-revision-change__remove {\n\t\tborder-left-color: var(--ck-color-suggestion-box-deletion-border);\n\t}\n\n\t& .ck-revision-change__label {\n\t\tfont-weight: bold;\n\t\tfont-size: inherit;\n\t\tvertical-align: inherit;\n\t}\n}\n\n.ck.ck-button {\n\t&.ck-revision-history-ui__back-to-editing {\n\t\tbackground: var(--ck-color-base-active);\n\t\tcolor: var(--ck-color-base-background);\n\n\t\t&:hover:not(.ck-disabled) {\n\t\t\tbackground: var(--ck-color-base-active-focus);\n\t\t}\n\t}\n}\n\n.ck-content {\n\t& .ck-suggestion-preview-marker { opacity: 0.75; }\n\t& .ck-suggestion-preview-marker-split { opacity: 0.75; }\n\t& .ck-suggestion-preview-marker-split::after { content: '¶'; }\n\t& .ck-suggestion-preview-marker-merge { opacity: 0.75; text-decoration: line-through; }\n\t& .ck-suggestion-preview-marker-merge::after { content: '¶'; }\n\t& .ck-suggestion-preview-marker-deletion { text-decoration: line-through; }\n\n\t& .ck-suggestion-marker-deletion-new:not(.ck-widget),\n\t& .ck-suggestion-marker-merge-new {\n\t\t--ck-color-suggestion-marker-deletion-border: none;\n\t\t--ck-color-suggestion-marker-deletion-border-active: none;\n\t\t--ck-color-suggestion-marker-deletion-background: none;\n\t\t--ck-color-suggestion-marker-deletion-background-active: none;\n\t\t--ck-color-suggestion-marker-deletion-stroke: hsla(345, 60%, 30%, .8);\n\n\t\t--ck-color-suggestion-widget-deletion-background: hsla(345, 71%, 65%, .03);\n\t\t--ck-color-suggestion-widget-deletion-background-active: hsla(345, 71%, 45%, .05);\n\t}\n\n\t& .ck-suggestion-marker-merge-new::after {\n\t\tcolor: inherit;\n\t}\n\n\t& .ck-suggestion-marker-insertion-new,\n\t& .ck-suggestion-marker-split-new {\n\t\topacity: 0.75;\n\t}\n\n\t& .ck-suggestion-marker-deletion-new.ck-suggestion-marker--active:not(.table),\n\t& .ck-suggestion-marker-merge-new.ck-suggestion-marker--active {\n\t\t--ck-color-suggestion-marker-deletion-background-active: hsla(345, 71%, 50%, .08);\n\t\t--ck-color-suggestion-marker-deletion-stroke: hsla(345, 60%, 30%, 1);\n\n\t\topacity: 1;\n\t}\n\n\t& .ck-suggestion-marker-insertion-new.ck-suggestion-marker--active,\n\t& .ck-suggestion-marker-split-new.ck-suggestion-marker--active {\n\t\topacity: 1;\n\t}\n}\n"],sourceRoot:""}]);const a=s},2986:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,'.ck{--ck-revision-history-loading-overlay-transition-duration:.2s;--ck-revision-history-loading-overlay-transition-delay:0s;--ck-revision-history-loading-overlay-spinner-rotation-duration:1s;--ck-revision-history-loading-overlay-spinner-size:60px;--ck-revision-history-loading-overlay-visible-background:#fff}.ck.ck-editor__editable:after,.ck.ck-editor__editable:before{content:"";opacity:0;position:absolute;transition:opacity var(--ck-revision-history-loading-overlay-transition-duration) ease;transition-delay:0;visibility:hidden}.ck.ck-editor__editable:before{background:var(--ck-revision-history-loading-overlay-visible-background);height:100%;left:0;top:0;width:100%;z-index:var(--ck-z-default)}.ck.ck-editor__editable:after{animation:ck-revision-history-spinner-animation var(--ck-revision-history-loading-overlay-spinner-rotation-duration) linear infinite;border-radius:50%;border-right:3px solid transparent;border-top:3px solid var(--ck-color-base-text);box-sizing:border-box;height:var(--ck-revision-history-loading-overlay-spinner-size);left:50%;top:50%;transform:translate(-50%,-50%);width:var(--ck-revision-history-loading-overlay-spinner-size);z-index:var(--ck-z-default)}.ck.ck-editor__editable.ck-editor__editable__loading-overlay,.ck.ck-editor__editable.ck-editor__editable__overlay{min-height:calc(var(--ck-revision-history-loading-overlay-spinner-size) + var(--ck-spacing-large)*2);position:relative}.ck.ck-editor__editable.ck-editor__editable__loading-overlay:after,.ck.ck-editor__editable.ck-editor__editable__loading-overlay:before,.ck.ck-editor__editable.ck-editor__editable__overlay:after,.ck.ck-editor__editable.ck-editor__editable__overlay:before{opacity:.8;transition-delay:var(--ck-revision-history-loading-overlay-transition-delay);visibility:visible}.ck.ck-editor__editable.ck-editor__editable__overlay:after{visibility:hidden}@keyframes ck-revision-history-spinner-animation{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(1turn)}}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-revision-history/theme/revisionviewerloadingoverlay.css"],names:[],mappings:"AAAA,IACC,6DAA8D,CAC9D,yDAA0D,CAC1D,kEAAmE,CACnE,uDAAwD,CACxD,6DACD,CAGC,6DAIC,UAAW,CADX,SAAU,CAEV,iBAAkB,CAHlB,sFAAuF,CAIvF,kBAAmB,CALnB,iBAMD,CAEA,+BAKC,wEAAyE,CADzE,WAAY,CAFZ,MAAO,CADP,KAAM,CAEN,UAAW,CAGX,2BACD,CAEA,8BAUC,oIAAqI,CAHrI,iBAAkB,CAElB,kCAAmC,CADnC,8CAA+C,CAP/C,qBAAsB,CAItB,8DAA+D,CAF/D,QAAS,CADT,OAAQ,CAIR,8BAAgC,CAFhC,6DAA8D,CAO9D,2BACD,CAEA,kHAEC,oGAAuG,CADvG,iBAQD,CALC,8PAEC,UAAW,CACX,4EAA6E,CAF7E,kBAGD,CAIA,2DACC,iBACD,CAIF,iDAEC,GACC,2CACD,CAEA,GACC,4CACD,CACD",sourcesContent:[".ck {\n\t--ck-revision-history-loading-overlay-transition-duration: .2s;\n\t--ck-revision-history-loading-overlay-transition-delay: 0s;\n\t--ck-revision-history-loading-overlay-spinner-rotation-duration: 1s;\n\t--ck-revision-history-loading-overlay-spinner-size: 60px;\n\t--ck-revision-history-loading-overlay-visible-background: hsla(0, 0%, 100%, 1);\n}\n\n.ck.ck-editor__editable {\n\t&::before, &::after {\n\t\tvisibility: hidden;\n\t\ttransition: opacity var(--ck-revision-history-loading-overlay-transition-duration) ease;\n\t\topacity: 0;\n\t\tcontent: '';\n\t\tposition: absolute;\n\t\ttransition-delay: 0;\n\t}\n\n\t&::before {\n\t\ttop: 0;\n\t\tleft: 0;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tbackground: var(--ck-revision-history-loading-overlay-visible-background);\n\t\tz-index: var(--ck-z-default);\n\t}\n\n\t&::after {\n\t\tbox-sizing: border-box;\n\t\ttop: 50%;\n\t\tleft: 50%;\n\t\twidth: var(--ck-revision-history-loading-overlay-spinner-size);\n\t\theight: var(--ck-revision-history-loading-overlay-spinner-size);\n\t\ttransform: translate(-50%, -50%);\n\t\tborder-radius: 50%;\n\t\tborder-top: 3px solid var(--ck-color-base-text);\n\t\tborder-right: 3px solid transparent;\n\t\tanimation: ck-revision-history-spinner-animation var(--ck-revision-history-loading-overlay-spinner-rotation-duration) linear infinite;\n\t\tz-index: var(--ck-z-default);\n\t}\n\n\t&.ck-editor__editable__loading-overlay, &.ck-editor__editable__overlay {\n\t\tposition: relative;\n\t\tmin-height: calc(var(--ck-revision-history-loading-overlay-spinner-size) + 2 * var(--ck-spacing-large));\n\n\t\t&::before, &::after {\n\t\t\tvisibility: visible;\n\t\t\topacity: .8;\n\t\t\ttransition-delay: var(--ck-revision-history-loading-overlay-transition-delay);\n\t\t}\n\t}\n\n\t&.ck-editor__editable__overlay {\n\t\t&::after {\n\t\t\tvisibility: hidden;\n\t\t}\n\t}\n}\n\n@keyframes ck-revision-history-spinner-animation {\n\t/* Safari needs this 0deg step. */\n\tfrom {\n\t\ttransform: translate(-50%, -50%) rotate(0deg);\n\t}\n\n\tto {\n\t\ttransform: translate(-50%, -50%) rotate(360deg);\n\t}\n}\n"],sourceRoot:""}]);const a=s},671:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,'.ck-source-editing-area{overflow:hidden;position:relative}.ck-source-editing-area textarea,.ck-source-editing-area:after{border:1px solid transparent;font-family:monospace;font-size:var(--ck-font-size-normal);line-height:var(--ck-line-height-base);margin:0;padding:var(--ck-spacing-large);white-space:pre-wrap}.ck-source-editing-area:after{content:attr(data-value) " ";display:block;visibility:hidden}.ck-source-editing-area textarea{border-color:var(--ck-color-base-border);border-radius:0;box-sizing:border-box;height:100%;outline:none;overflow:hidden;position:absolute;resize:none;width:100%}.ck-rounded-corners .ck-source-editing-area textarea,.ck-source-editing-area textarea.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0;border-top-right-radius:0}.ck-source-editing-area textarea:not([readonly]):focus{border:var(--ck-focus-ring);box-shadow:var(--ck-inner-shadow),0 0;outline:none}',"",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-source-editing/theme/sourceediting.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AASA,wBAEC,eAAgB,CADhB,iBAED,CAEA,+DAIC,4BAA6B,CAG7B,qBAAsB,CADtB,oCAAqC,CADrC,sCAAuC,CAFvC,QAAS,CADT,+BAAgC,CAMhC,oBACD,CAEA,8BACC,4BAA6B,CAE7B,aAAc,CADd,iBAED,CAEA,iCASC,wCAAyC,CC7BzC,eAAgB,CD2BhB,qBAAsB,CAJtB,WAAY,CAEZ,YAAa,CACb,eAAgB,CALhB,iBAAkB,CAGlB,WAAY,CAFZ,UAkBD,CApBA,yGChBE,qCAAsC,CD4BtC,wBAAyB,CACzB,yBAOF,CAJC,uDEpCA,2BAA2B,CCF3B,qCAA8B,CDC9B,YFwCA",sourcesContent:['/*\n * Copyright (c) 2003-2022, 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/_focus.css";\n@import "@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css";\n\n.ck-source-editing-area {\n\tposition: relative;\n\toverflow: hidden;\n}\n\n.ck-source-editing-area::after,\n.ck-source-editing-area textarea {\n\tpadding: var(--ck-spacing-large);\n\tmargin: 0;\n\tborder: 1px solid transparent;\n\tline-height: var(--ck-line-height-base);\n\tfont-size: var(--ck-font-size-normal);\n\tfont-family: monospace;\n\twhite-space: pre-wrap;\n}\n\n.ck-source-editing-area::after {\n\tcontent: attr(data-value) " ";\n\tvisibility: hidden;\n\tdisplay: block;\n}\n\n.ck-source-editing-area textarea {\n\tposition: absolute;\n\twidth: 100%;\n\theight: 100%;\n\tresize: none;\n\toutline: none;\n\toverflow: hidden;\n\tbox-sizing: border-box;\n\n\tborder-color: var(--ck-color-base-border);\n\n\t@mixin ck-rounded-corners {\n\t\tborder-top-left-radius: 0;\n\t\tborder-top-right-radius: 0;\n\t}\n\n\t&:not([readonly]):focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-inner-shadow);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2022, 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-2022, 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-2022, 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},4046:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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-gap:var(--ck-spacing-standard);grid-template-columns:repeat(10,1fr);margin:var(--ck-spacing-standard) var(--ck-spacing-large)}@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)}.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://./node_modules/@ckeditor/ckeditor5-special-characters/theme/charactergrid.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-special-characters/charactergrid.css","webpack://./node_modules/@ckeditor/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,WAyCD,CClDC,oCDMD,sBAOE,WAqCF,CChDC,CDcA,gDAGC,mCAAoC,CAFpC,oCAAsC,CACtC,yDAMD,CCxBA,oCDgBA,gDAME,mCAEF,CCtBA,CDwBA,+CAQC,QAAS,CAHT,eAAgB,CAHhB,yCAA0C,CAE1C,6CAA8C,CAD9C,4CAA6C,CAG7C,SAAU,CACV,8BAA+B,CAN/B,wCAsBD,CAbC,8IAGC,QAAS,CACT,iGACD,CAGA,iEACC,8CAA+C,CAE/C,iBAAkB,CADlB,UAED",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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\t\n\t& .ck-character-grid__tiles {\n\t\tdisplay: grid;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2022, 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&: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-2022, 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},4779:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-special-characters/theme/characterinfo.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-special-characters/characterinfo.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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-2022, 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},8170:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-special-characters/specialcharacters.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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},2844:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-dropdown.ck-style-dropdown.ck-style-dropdown_multiple-active>.ck-button>.ck-button__label{font-style:italic}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-style/style.css"],names:[],mappings:"AAKA,iGACC,iBACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-dropdown.ck-style-dropdown.ck-style-dropdown_multiple-active > .ck-button > .ck-button__label {\n\tfont-style: italic;\n}\n"],sourceRoot:""}]);const a=s},3875:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-style-panel-columns:3}.ck.ck-style-panel .ck-style-grid{display:grid;grid-template-columns:repeat(var(--ck-style-panel-columns),auto);justify-content:start}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button{display:flex;flex-direction:column;justify-content:space-between}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button .ck-style-grid__button__preview{align-content:center;align-items:center;display:flex;flex-basis:100%;flex-grow:1;justify-content:flex-start}:root{--ck-style-panel-button-width:120px;--ck-style-panel-button-height:80px;--ck-style-panel-button-label-background:#f0f0f0;--ck-style-panel-button-hover-label-background:#ebebeb;--ck-style-panel-button-hover-border-color:#b3b3b3}.ck.ck-style-panel .ck-style-grid{column-gap:var(--ck-spacing-large);row-gap:var(--ck-spacing-large)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button{--ck-color-button-default-hover-background:var(--ck-color-base-background);--ck-color-button-default-active-background:var(--ck-color-base-background);height:var(--ck-style-panel-button-height);padding:0;width:var(--ck-style-panel-button-width)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button:not(:focus){border:1px solid var(--ck-color-base-border)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button .ck-button__label{flex-shrink:0;height:22px;line-height:22px;overflow:hidden;padding:0 var(--ck-spacing-medium);text-overflow:ellipsis;width:100%}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button .ck-style-grid__button__preview{background:var(--ck-color-base-background);border:2px solid var(--ck-color-base-background);opacity:.9;overflow:hidden;padding:var(--ck-spacing-medium);width:100%}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-disabled{--ck-color-button-default-disabled-background:var(--ck-color-base-foreground)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-disabled:not(:focus){border-color:var(--ck-style-panel-button-label-background)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-disabled .ck-style-grid__button__preview{border-color:var(--ck-color-base-foreground);filter:saturate(.3);opacity:.4}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-on{border-color:var(--ck-color-base-active)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-on .ck-button__label{box-shadow:0 -1px 0 var(--ck-color-base-active);z-index:1}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button.ck-on:hover{border-color:var(--ck-color-base-active-focus)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button:not(.ck-on) .ck-button__label{background:var(--ck-style-panel-button-label-background)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button:not(.ck-on):hover .ck-button__label{background:var(--ck-style-panel-button-hover-label-background)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button:hover:not(.ck-disabled):not(.ck-on){border-color:var(--ck-style-panel-button-hover-border-color)}.ck.ck-style-panel .ck-style-grid .ck-style-grid__button:hover:not(.ck-disabled):not(.ck-on) .ck-style-grid__button__preview{opacity:1}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-style/theme/stylegrid.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-style/stylegrid.css"],names:[],mappings:"AAKA,MACC,0BACD,CAEA,kCACC,YAAa,CACb,gEAAiE,CACjE,qBAgBD,CAdC,yDACC,YAAa,CAEb,qBAAsB,CADtB,6BAWD,CARC,yFAEC,oBAAqB,CAErB,kBAAmB,CAHnB,YAAa,CAKb,eAAgB,CADhB,WAAY,CAFZ,0BAID,CCrBF,MACC,mCAAoC,CACpC,mCAAoC,CACpC,gDAA2D,CAC3D,sDAAiE,CACjE,kDACD,CAEA,kCAEC,kCAAmC,CADnC,+BAmFD,CAhFC,yDACC,0EAA2E,CAC3E,2EAA4E,CAI5E,0CAA2C,CAF3C,SAAU,CACV,wCA0ED,CAtEC,qEACC,4CACD,CAEA,2EAOC,aAAc,CANd,WAAY,CACZ,gBAAiB,CAGjB,eAAgB,CADhB,kCAAmC,CAEnC,sBAAuB,CAHvB,UAKD,CAEA,yFAMC,0CAA2C,CAC3C,gDAAiD,CAJjD,UAAW,CADX,eAAgB,CAGhB,gCAAiC,CAJjC,UAOD,CAEA,qEACC,6EAaD,CAVC,iFACC,0DACD,CAEA,qGAGC,4CAA6C,CAC7C,mBAAoB,CAHpB,UAID,CAGD,+DACC,wCAUD,CARC,iFACC,+CAAgD,CAChD,SACD,CAEA,qEACC,8CACD,CAIA,uFACC,wDACD,CAEA,6FACC,8DACD,CAGD,6FACC,4DAKD,CAHC,6HACC,SACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-style-panel-columns: 3;\n}\n\n.ck.ck-style-panel .ck-style-grid {\n\tdisplay: grid;\n\tgrid-template-columns: repeat(var(--ck-style-panel-columns),auto);\n\tjustify-content: start;\n\n\t& .ck-style-grid__button {\n\t\tdisplay: flex;\n\t\tjustify-content: space-between;\n\t\tflex-direction: column;\n\n\t\t& .ck-style-grid__button__preview {\n\t\t\tdisplay: flex;\n\t\t\talign-content: center;\n\t\t\tjustify-content: flex-start;\n\t\t\talign-items: center;\n\t\t\tflex-grow: 1;\n\t\t\tflex-basis: 100%;\n\t\t}\n\t}\n}\n","/*\n * Copyright (c) 2003-2022, 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-style-panel-button-width: 120px;\n\t--ck-style-panel-button-height: 80px;\n\t--ck-style-panel-button-label-background: hsl(0, 0%, 94.1%);\n\t--ck-style-panel-button-hover-label-background: hsl(0, 0%, 92.1%);\n\t--ck-style-panel-button-hover-border-color: hsl(0, 0%, 70%);\n}\n\n.ck.ck-style-panel .ck-style-grid {\n\trow-gap: var(--ck-spacing-large);\n\tcolumn-gap: var(--ck-spacing-large);\n\n\t& .ck-style-grid__button {\n\t\t--ck-color-button-default-hover-background: var(--ck-color-base-background);\n\t\t--ck-color-button-default-active-background: var(--ck-color-base-background);\n\n\t\tpadding: 0;\n\t\twidth: var(--ck-style-panel-button-width);\n\t\theight: var(--ck-style-panel-button-height);\n\n\t\t/* Let default .ck-button :focus styles apply */\n\t\t&:not(:focus) {\n\t\t\tborder: 1px solid var(--ck-color-base-border);\n\t\t}\n\n\t\t& .ck-button__label {\n\t\t\theight: 22px;\n\t\t\tline-height: 22px;\n\t\t\twidth: 100%;\n\t\t\tpadding: 0 var(--ck-spacing-medium);\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t\tflex-shrink: 0;\n\t\t}\n\n\t\t& .ck-style-grid__button__preview {\n\t\t\twidth: 100%;\n\t\t\toverflow: hidden;\n\t\t\topacity: .9;\n\n\t\t\tpadding: var(--ck-spacing-medium);\n\t\t\tbackground: var(--ck-color-base-background);\n\t\t\tborder: 2px solid var(--ck-color-base-background);\n\t\t}\n\n\t\t&.ck-disabled {\n\t\t\t--ck-color-button-default-disabled-background: var(--ck-color-base-foreground);\n\n\t\t\t/* Let default .ck-button :focus styles apply */\n\t\t\t&:not(:focus) {\n\t\t\t\tborder-color: var(--ck-style-panel-button-label-background);\n\t\t\t}\n\n\t\t\t& .ck-style-grid__button__preview {\n\t\t\t\topacity: .4;\n\n\t\t\t\tborder-color: var(--ck-color-base-foreground);\n\t\t\t\tfilter: saturate(.3);\n\t\t\t}\n\t\t}\n\n\t\t&.ck-on {\n\t\t\tborder-color: var(--ck-color-base-active);\n\n\t\t\t& .ck-button__label {\n\t\t\t\tbox-shadow: 0 -1px 0 var(--ck-color-base-active);\n\t\t\t\tz-index: 1; /* Stay on top of the preview with the shadow. */\n\t\t\t}\n\n\t\t\t&:hover {\n\t\t\t\tborder-color: var(--ck-color-base-active-focus);\n\t\t\t}\n\t\t}\n\n\t\t&:not(.ck-on) {\n\t\t\t& .ck-button__label {\n\t\t\t\tbackground: var(--ck-style-panel-button-label-background);\n\t\t\t}\n\n\t\t\t&:hover .ck-button__label {\n\t\t\t\tbackground: var(--ck-style-panel-button-hover-label-background);\n\t\t\t}\n\t\t}\n\n\t\t&:hover:not(.ck-disabled):not(.ck-on) {\n\t\t\tborder-color: var(--ck-style-panel-button-hover-border-color);\n\n\t\t\t& .ck-style-grid__button__preview {\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},9545:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-style-panel .ck-style-panel__style-group>.ck-label{margin:var(--ck-spacing-large) 0}.ck.ck-style-panel .ck-style-panel__style-group:first-child>.ck-label{margin-top:0}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-style/stylegroup.css"],names:[],mappings:"AAMC,0DACC,gCACD,CAGC,sEACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-style-panel .ck-style-panel__style-group {\n\t& > .ck-label {\n\t\tmargin: var(--ck-spacing-large) 0;\n\t}\n\n\t&:first-child {\n\t\t& > .ck-label {\n\t\t\tmargin-top: 0;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},6746:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-style-panel-max-height:470px}.ck.ck-style-panel{max-height:var(--ck-style-panel-max-height);overflow-y:auto;padding:var(--ck-spacing-large)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-style/stylepanel.css"],names:[],mappings:"AAKA,MACC,iCACD,CAEA,mBAGC,2CAA4C,CAD5C,eAAgB,CADhB,+BAGD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-style-panel-max-height: 470px;\n}\n\n.ck.ck-style-panel {\n\tpadding: var(--ck-spacing-large);\n\toverflow-y: auto;\n\tmax-height: var(--ck-style-panel-max-height);\n}\n"],sourceRoot:""}]);const a=s},4082:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-table/theme/colorinput.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/colorinput.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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-2022, 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},8027:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/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-2022, 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},9865:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-table/theme/formrow.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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},8085:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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{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}.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://./node_modules/@ckeditor/ckeditor5-table/theme/inserttable.css","webpack://./node_modules/@ckeditor/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,qCACC,iBACD,CAEA,uCAIC,4CAA6C,CAC7C,iBAAkB,CAFlB,iDAAkD,CADlD,qDAAsD,CADtD,mDAAoD,CAKpD,YAAa,CACb,eAUD,CARC,6CACC,eACD,CAEA,6CAEC,6CAA8C,CAD9C,yCAED",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-2022, 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\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&: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},4104:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/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-2022, 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},9888:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-table-caption-background:#f7f7f7;--ck-color-table-caption-text:#333;--ck-color-table-caption-highlighted-background:#fd0}.ck-content .table>figcaption{background-color:var(--ck-color-table-caption-background);caption-side:top;color:var(--ck-color-table-caption-text);display:table-caption;font-size:.75em;outline-offset:-1px;padding:.6em;text-align:center;word-break:break-word}.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-table-caption-highlighted-background)}to{background-color:var(--ck-color-table-caption-background)}}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-table/theme/tablecaption.css"],names:[],mappings:"AAKA,MACC,2CAAoD,CACpD,kCAA8C,CAC9C,oDACD,CAGA,8BAMC,yDAA0D,CAJ1D,gBAAiB,CAGjB,wCAAyC,CAJzC,qBAAsB,CAOtB,eAAgB,CAChB,mBAAoB,CAFpB,YAAa,CAHb,iBAAkB,CADlB,qBAOD,CAIC,qEACC,iDACD,CAEA,gEASC,eAAgB,CARhB,oBAAqB,CACrB,qBAAsB,CAQtB,sBAAuB,CAFvB,kBAGD,CAGD,sCACC,GACC,qEACD,CAEA,GACC,yDACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-table-caption-background: hsl(0, 0%, 97%);\n\t--ck-color-table-caption-text: hsl(0, 0%, 20%);\n\t--ck-color-table-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-table-caption-text);\n\tbackground-color: var(--ck-color-table-caption-background);\n\tpadding: .6em;\n\tfont-size: .75em;\n\toutline-offset: -1px;\n}\n\n/* Editing styles */\n.ck.ck-editor__editable .table > figcaption {\n\t&.table__caption_highlighted {\n\t\tanimation: ck-table-caption-highlight .6s ease-out;\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-table-caption-highlighted-background);\n\t}\n\n\t100% {\n\t\tbackground-color: var(--ck-color-table-caption-background);\n\t}\n}\n"],sourceRoot:""}]);const a=s},5737:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-table/theme/tablecellproperties.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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},728:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-table-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{position:relative}.ck.ck-editor__editable .table .ck-table-column-resizer{bottom:-999999px;cursor:col-resize;position:absolute;right:var(--ck-table-column-resizer-position-offset);top:-999999px;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-table-column-resizer-hover);opacity:.25}.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://./node_modules/@ckeditor/ckeditor5-table/theme/tablecolumnresize.css"],names:[],mappings:"AAKA,MACC,iEAAkE,CAClE,mCAAoC,CAIpC,iGACD,CAEA,qCACC,kBACD,CAEA,yBACC,eACD,CAEA,4CAEC,iBACD,CAEA,wDAOC,gBAAiB,CAGjB,iBAAkB,CATlB,iBAAkB,CAOlB,oDAAqD,CAFrD,aAAc,CAKd,gBAAiB,CAFjB,0CAA2C,CAG3C,2BACD,CAQA,qJACC,YACD,CAEA,8HAEC,2DAA4D,CAC5D,WACD,CAEA,iEACC,mDAAoD,CACpD,WACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-table-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\tposition: relative;\n}\n\n.ck.ck-editor__editable .table .ck-table-column-resizer {\n\tposition: absolute;\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\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-table-column-resizer-hover);\n\topacity: 0.25;\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},4777:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-table-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-table-focused-cell-background);border-style:none;outline:1px solid var(--ck-color-focus-border);outline-offset:-1px}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tableediting.css"],names:[],mappings:"AAKA,MACC,6DACD,CAKE,8QAGC,wDAAyD,CAKzD,iBAAkB,CAClB,8CAA+C,CAC/C,mBACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-table-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-table-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},198:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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}.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://./node_modules/@ckeditor/ckeditor5-table/theme/tableform.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tableform.css","webpack://./node_modules/@ckeditor/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,sCAyBD,CAvBC,8ECxCD,eDyDC,CAjBA,mMCpCA,qCDqDA,CAjBA,8EAGC,qCAAsC,CACtC,qCAAsC,CAEtC,oDAAqD,CADrD,wDAAyD,CAEzD,iBAUD,CAPC,oFACC,2EAA4E,CAE5E,kBAAmB,CADnB,kJAED,CAdD,8EAgBC,iEACD,CAGA,6GACC,YACD,CAIF,oDACC,GACC,SACD,CAEA,GACC,SACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2022, 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-2022, 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\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-2022, 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},9221:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-table/theme/tableproperties.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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},5593:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/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-2022, 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},4499:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-button,a.ck.ck-button{align-items:center;display:inline-flex;justify-content:left;position:relative;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.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}.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{font-weight:700;opacity:.7}.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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/button/button.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/button/button.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/mixins/_button.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_disabled.css"],names:[],mappings:"AAOA,6BAMC,kBAAmB,CADnB,mBAAoB,CAEpB,oBAAqB,CAHrB,iBAAkB,CCFlB,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBDkBD,CAdC,iEACC,YACD,CAGC,yGACC,oBACD,CAID,iFACC,sBACD,CEjBD,6BCAC,oDD4ID,CCzIE,6EACC,0DACD,CAEA,+EACC,2DACD,CAID,qDACC,6DACD,CDfD,6BEDC,eF6ID,CA5IA,wIEGE,qCFyIF,CA5IA,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,kBAuID,CA7GC,oFGhCA,2BAA2B,CCF3B,2CAA8B,CDC9B,YHqCA,CAIC,kJAEC,aACD,CAGD,iEAIC,aAAc,CACd,cAAe,CAHf,iBAAkB,CAClB,mBAAoB,CAMpB,qBASD,CAlBA,qFAYE,eAMF,CAlBA,qFAgBE,gBAEF,CAEA,yEACC,aAYD,CAbA,6FAIE,mCASF,CAbA,6FAQE,oCAKF,CAbA,yEAWC,eAAiB,CACjB,UACD,CAIC,oIIrFD,oDJyFC,CAOA,gLKhGD,kCLkGC,CAEA,iGACC,UACD,CAGD,qEACC,yDAcD,CAXC,2HAEE,4CAA+C,CAC/C,oCAOF,CAVA,2HAQE,mCAAoC,CADpC,6CAGF,CAKA,mHACC,WACD,CAID,yCC/HA,+CDmIA,CChIC,yFACC,qDACD,CAEA,2FACC,sDACD,CAID,iEACC,wDACD,CDgHA,yCAGC,qCACD,CAEA,2DACC,iCACD,CAEA,+DACC,mCACD,CAID,2CC/IC,mDDoJD,CCjJE,2FACC,yDACD,CAEA,6FACC,0DACD,CAID,mEACC,4DACD,CDgID,2CAIC,wCACD,CAEA,uCAEC,eACD",sourcesContent:['/*\n * Copyright (c) 2003-2022, 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-button,\na.ck.ck-button {\n\t@mixin ck-unselectable;\n\n\tposition: relative;\n\tdisplay: inline-flex;\n\talign-items: center;\n\tjustify-content: left;\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-2022, 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-2022, 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&: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\tfont-weight: bold;\n\t\topacity: .7;\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-2022, 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-2022, 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-2022, 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-2022, 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-2022, 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},9681:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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)}.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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/button/switchbutton.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/button/switchbutton.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/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,eD4EA,CAxCA,yIChCC,qCDwED,CAxCA,2DAKE,gBAmCF,CAxCA,2DAUE,iBA8BF,CAxCA,iDAkBC,uDAAwD,CAFxD,4BAA6B,CAD7B,iFAAsF,CAEtF,0CAuBD,CApBC,2ECxDD,eDmEC,CAXA,6LCpDA,qCAAsC,CDsDpC,8CASF,CAXA,2EAOC,yDAA0D,CAD1D,gDAAiD,CAIjD,uBAA0B,CAL1B,+CAMD,CAEA,uDACC,6DAKD,CAHC,iFACC,qDACD,CAIF,6DEhFA,kCFkFA,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-2022, 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-2022, 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\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-2022, 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-2022, 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},4923:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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{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;transition:box-shadow .2s ease;width:var(--ck-color-grid-tile-size)}.ck.ck-color-grid__tile.ck-disabled{cursor:unset;transition:unset}.ck.ck-color-grid__tile.ck-color-table__color-tile_bordered{box-shadow:0 0 0 1px var(--ck-color-base-border)}.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{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.ck-on .ck.ck-icon{display:block}.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: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)}.ck.ck-color-grid__label{padding:0 var(--ck-spacing-standard)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/colorgrid/colorgrid.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/colorgrid/colorgrid.css"],names:[],mappings:"AAKA,kBACC,YACD,CCAA,MACC,8BAA+B,CAK/B,wCACD,CAEA,kBACC,YAAa,CACb,WACD,CAEA,wBAOC,QAAS,CALT,qCAAsC,CAEtC,yCAA0C,CAD1C,wCAAyC,CAEzC,SAAU,CACV,8BAA+B,CAL/B,oCAyCD,CAjCC,oCACC,YAAa,CACb,gBACD,CAEA,4DACC,gDACD,CAEA,oCAEC,2CAA4C,CAD5C,YAED,CAEA,8BACC,8FAKD,CAHC,0CACC,aACD,CAGD,8HAIC,QACD,CAEA,gGAEC,iGACD,CAGD,yBACC,oCACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-2022, 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-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\twidth: var(--ck-color-grid-tile-size);\n\theight: var(--ck-color-grid-tile-size);\n\tmin-width: var(--ck-color-grid-tile-size);\n\tmin-height: var(--ck-color-grid-tile-size);\n\tpadding: 0;\n\ttransition: .2s ease box-shadow;\n\tborder: 0;\n\n\t&.ck-disabled {\n\t\tcursor: unset;\n\t\ttransition: unset;\n\t}\n\n\t&.ck-color-table__color-tile_bordered {\n\t\tbox-shadow: 0 0 0 1px var(--ck-color-base-border);\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\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-base-text);\n\n\t\t& .ck.ck-icon {\n\t\t\tdisplay: block;\n\t\t}\n\t}\n\n\t&.ck-on,\n\t&:focus:not( .ck-disabled ),\n\t&:hover:not( .ck-disabled ) {\n\t\t/* Disable the default .ck-button\'s border ring. */\n\t\tborder: 0;\n\t}\n\n\t&:focus:not( .ck-disabled ),\n\t&:hover:not( .ck-disabled ) {\n\t\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-focus-border);\n\t}\n}\n\n.ck.ck-color-grid__label {\n\tpadding: 0 var(--ck-spacing-standard);\n}\n'],sourceRoot:""}]);const a=s},3488:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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-modal)}.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-modal) + 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}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/dropdown/dropdown.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/dropdown.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_disabled.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css","webpack://./node_modules/@ckeditor/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,eH8GD,CA5BA,qFG9EE,qCH0GF,CA5BA,uBAIC,oDAAqD,CACrD,sDAAuD,CACvD,QAAS,CE1FT,oCAA8B,CF6F9B,cAmBD,CAfC,6CACC,wBACD,CAEA,6CACC,yBACD,CAEA,6CACC,2BACD,CAEA,6CACC,4BACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-modal);\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-modal) + 1 );\n}\n",'/*\n * Copyright (c) 2003-2022, 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\t\t\t\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',"/*\n * Copyright (c) 2003-2022, 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-2022, 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-2022, 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},6875:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/listdropdown.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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},66:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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_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}[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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/dropdown/splitbutton.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/splitbutton.css","webpack://./node_modules/@ckeditor/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,CASA,0KACC,wDACD,CAIA,8JAKC,0DAA2D,CAJ3D,UAAW,CAGX,WAAY,CAFZ,iBAAkB,CAClB,SAGD,CAGC,kLACC,SACD,CAIA,kLACC,UACD,CAMF,uCC7EA,eDuFA,CAVA,qHCzEC,qCDmFD,CARE,qKACC,2BACD,CAEA,mKACC,4BACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-2022, 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/* 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@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-2022, 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},5075:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/dropdown/toolbardropdown.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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},4547:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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-base-foreground)}.ck.ck-balloon-panel.ck-toolbar-container[class*=arrow_s]:after{border-top-color:var(--ck-color-base-foreground)}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/editorui/editorui.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./node_modules/@ckeditor/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,mDACD,CAIA,gEACC,gDACD",sourcesContent:['/*\n * Copyright (c) 2003-2022, 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-base-foreground);\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-base-foreground);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2022, 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-2022, 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-2022, 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},5523:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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}:root{--ck-form-header-height:38px}.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)}.ck.ck-form__header .ck-form__header__label{font-weight:700}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/formheader/formheader.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/formheader/formheader.css"],names:[],mappings:"AAKA,oBAIC,kBAAmB,CAHnB,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CAEjB,6BACD,CCNA,MACC,4BACD,CAEA,oBAIC,mDAAoD,CAFpD,mCAAoC,CACpC,wCAAyC,CAFzC,uDAQD,CAHC,4CACC,eACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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","/*\n * Copyright (c) 2003-2022, 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-form-header-height: 38px;\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-form__header__label {\n\t\tfont-weight: bold;\n\t}\n}\n"],sourceRoot:""}]);const a=s},1174:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/icon/icon.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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},6985:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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}.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)}.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://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/input/input.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AASA,MACC,qBAAsB,CAGtB,2CACD,CAEA,aCLC,eD2CD,CAtCA,iECDE,qCDuCF,CAtCA,aAGC,2CAA4C,CAC5C,6CAA8C,CAK9C,4CAA6C,CAH7C,+BAAgC,CADhC,6DAA8D,CAO9D,4DA0BD,CAxBC,mBEnBA,2BAA2B,CCF3B,2CAA8B,CDC9B,YFuBA,CAEA,uBAEC,oDAAqD,CADrD,sDAAuD,CAEvD,yCAMD,CAJC,6BG/BD,oDHkCC,CAGD,sBAEC,sCAAuC,CADvC,+CAMD,CAHC,4BGzCD,iDH2CC,CAIF,0BACC,IACC,0BACD,CAEA,IACC,yBACD,CAEA,IACC,0BACD,CAEA,IACC,yBACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2022, 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&: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&: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-2022, 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-2022, 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-2022, 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},2751:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/label/label.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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},8111:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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}[dir=rtl] .ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{right: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;transform:translate(var(--ck-spacing-medium),-6px) scale(.75);transform-origin:0 0;transition:transform var(--ck-labeled-field-view-transition),padding var(--ck-labeled-field-view-transition),background var(--ck-labeled-field-view-transition)}.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>.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)>.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>.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)>.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>.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)>.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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/labeledfield/labeledfieldview.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/labeledfield/labeledfieldview.css","webpack://./node_modules/@ckeditor/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,eD8GD,CAzGA,2FCDE,qCD0GF,CAtGC,mEACC,UAmCD,CAjCC,gFACC,KA+BD,CAhCA,0FAIE,MA4BF,CAhCA,0FAQE,OAwBF,CAhCA,gFAiBC,yDAA0D,CAG1D,eAAmB,CADnB,kBAAoB,CAOpB,cAAe,CAFf,eAAgB,CANhB,2CAA8C,CAP9C,mBAAoB,CAYpB,sBAAuB,CARvB,6DAA+D,CAH/D,oBAAqB,CAgBrB,+JAID,CAQA,mKACC,gCACD,CAGD,yDACC,mCAAoC,CACpC,kCAAmC,CAInC,kBAKD,CAHC,6FACC,gCACD,CAID,4OAEC,yCACD,CAIA,oUAGE,+HAYF,CAfA,oUAOE,wIAQF,CAfA,gTAaC,sBAAuB,CAFvB,iEAAkE,CAGlE,SACD,CAKA,8FACC,sBACD,CAGA,yIACC,SACD,CAGA,kMACC,8HACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-2022, 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}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tright: 0px;\n\t\t\t}\n\n\t\t\tpointer-events: none;\n\t\t\ttransform-origin: 0 0;\n\n\t\t\t/* By default, display the label scaled down above the field. */\n\t\t\ttransform: translate(var(--ck-spacing-medium), -6px) scale(.75);\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\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 > .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) > .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-2022, 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},1162:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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)}.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;padding:calc(var(--ck-line-height-base)*.2*var(--ck-font-size-base)) calc(var(--ck-line-height-base)*.4*var(--ck-font-size-base));text-align:left;width:100%}.ck.ck-list__item .ck-button .ck-button__label{line-height:calc(var(--ck-line-height-base)*1.2*var(--ck-font-size-base))}.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.ck-list__separator{background:var(--ck-color-base-border);height:1px;width:100%}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/list/list.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/list/list.css","webpack://./node_modules/@ckeditor/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,CEfD,YCEC,eDGD,CALA,+DCME,qCDDF,CALA,YAIC,0CAA2C,CAD3C,oBAED,CAEA,kBACC,cAAe,CACf,cA2DD,CAzDC,6BAIC,eAAgB,CAHhB,gBAAiB,CAQjB,iIAEiE,CARjE,eAAgB,CADhB,UAwCD,CA7BC,+CAEC,yEACD,CAEA,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,uBAGC,sCAAuC,CAFvC,UAAW,CACX,UAED",sourcesContent:['/*\n * Copyright (c) 2003-2022, 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-2022, 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-2022, 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\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\ttext-align: left;\n\t\tborder-radius: 0;\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:\n\t\t\tcalc(.2 * var(--ck-line-height-base) * var(--ck-font-size-base))\n\t\t\tcalc(.4 * var(--ck-line-height-base) * var(--ck-font-size-base));\n\n\t\t& .ck-button__label {\n\t\t\t/* https://github.com/ckeditor/ckeditor5-heading/issues/63 */\n\t\t\tline-height: calc(1.2 * var(--ck-line-height-base) * var(--ck-font-size-base));\n\t\t}\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.ck-list__separator {\n\theight: 1px;\n\twidth: 100%;\n\tbackground: var(--ck-color-base-border);\n}\n',"/*\n * Copyright (c) 2003-2022, 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},8245:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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-modal)}.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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/balloonpanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/balloonpanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./node_modules/@ckeditor/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-2022, 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-modal);\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-2022, 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-2022, 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-2022, 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},1757:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/balloonrotator.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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},3553:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck .ck-fake-panel{position:absolute;z-index:calc(var(--ck-z-modal) - 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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/fakepanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/fakepanel.css","webpack://./node_modules/@ckeditor/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-2022, 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-modal) - 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-2022, 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-2022, 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},3609:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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-modal)}.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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/stickypanel.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/stickypanel.css","webpack://./node_modules/@ckeditor/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-2022, 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-modal); /* #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-2022, 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-2022, 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},1590:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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-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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/responsive-form/responsiveform.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css","webpack://./node_modules/@ckeditor/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,+BAmED,CAjEC,6BAEC,YACD,CASC,uGACC,sCACD,CDvBD,oCCMD,uBAqBE,SAAU,CACV,oCA8CF,CA5CE,8CACC,wDAWD,CATC,6DACC,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,CDpEH",sourcesContent:['/*\n * Copyright (c) 2003-2022, 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-2022, 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-2022, 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\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},6706:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/toolbar/blocktoolbar.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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},5571:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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-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://./node_modules/@ckeditor/ckeditor5-ui/theme/components/toolbar/toolbar.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/toolbar/toolbar.css","webpack://./node_modules/@ckeditor/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,eDoGD,CAvGA,qECOE,qCDgGF,CAvGA,eAGC,6CAA8C,CAE9C,+CAAgD,CADhD,iCAmGD,CAhGC,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,CAjGF,qCAqGE,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-2022, 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-2022, 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-2022, 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@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-2022, 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},9948:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-balloon-panel.ck-tooltip{--ck-balloon-border-width:0px;--ck-balloon-arrow-offset:0px;--ck-balloon-arrow-half-width:4px;--ck-balloon-arrow-height:4px;--ck-color-panel-background:var(--ck-color-tooltip-background);padding:0 var(--ck-spacing-medium);pointer-events:none;z-index:calc(var(--ck-z-modal) + 100)}.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{box-shadow:none}.ck.ck-balloon-panel.ck-tooltip:before{display:none}","",{version:3,sources:["webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/tooltip/tooltip.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/tooltip/tooltip.css"],names:[],mappings:"AAKA,gCCGC,6BAA8B,CAC9B,6BAA8B,CAC9B,iCAAkC,CAClC,6BAA8B,CAC9B,8DAA+D,CAE/D,kCAAmC,CDPnC,mBAAoB,CAEpB,qCACD,CCMC,kDAGC,kCAAmC,CAFnC,cAAe,CACf,eAED,CAbD,gCAgBC,eAMD,CAHC,uCACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-panel.ck-tooltip {\n\t/* Keep tooltips transparent for any interactions. */\n\tpointer-events: none;\n\n\tz-index: calc( var(--ck-z-modal) + 100 );\n}\n",'/*\n * Copyright (c) 2003-2022, 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-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/* 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},6150:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck-hidden{display:none!important}.ck-reset_all :not(.ck-reset_all-excluded *),.ck.ck-reset,.ck.ck-reset_all{box-sizing:border-box;height:auto;position:static;width:auto}:root{--ck-z-default:1;--ck-z-modal:calc(var(--ck-z-default) + 999)}.ck-transitions-disabled,.ck-transitions-disabled *{transition:none!important}: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-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-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{word-wrap:break-word;background:transparent;border:0;margin:0;padding:0;text-decoration:none;transition:none;vertical-align:middle}.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://./node_modules/@ckeditor/ckeditor5-ui/theme/globals/_hidden.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/globals/_reset.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/globals/_zindex.css","webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/globals/_transition.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_colors.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_disabled.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_fonts.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_reset.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_rounded.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_shadow.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_spacing.css"],names:[],mappings:"AAQA,WAGC,sBACD,CCPA,2EAGC,qBAAsB,CAEtB,WAAY,CACZ,eAAgB,CAFhB,UAGD,CCPA,MACC,gBAAiB,CACjB,4CACD,CCAA,oDAEC,yBACD,CCNA,MACC,kCAAmD,CACnD,+BAAoD,CACpD,8BAAkD,CAClD,8BAAuD,CACvD,6BAAmD,CACnD,yBAA+C,CAC/C,8BAAsD,CACtD,oCAA4D,CAC5D,6BAAkD,CAIlD,mDAA4D,CAC5D,qEAA+E,CAC/E,qCAA4D,CAC5D,qDAA8D,CAC9D,gDAAyD,CACzD,yCAAqD,CACrD,sCAAsD,CACtD,4CAA0D,CAC1D,sCAAsD,CAItD,gDAAuD,CACvD,kDAAiE,CACjE,mDAAkE,CAClE,yDAA8D,CAE9D,uCAA6D,CAC7D,6CAAoE,CACpE,8CAAoE,CACpE,gDAAiE,CACjE,kCAAyD,CAGzD,+DAAsE,CACtE,iDAAsE,CACtE,kDAAsE,CACtE,oDAAoE,CACpE,6DAAsE,CAEtE,8BAAoD,CACpD,gCAAqD,CAErD,+CAA8D,CAC9D,qDAAiE,CACjE,+EAAqF,CACrF,oDAAuE,CACvE,yEAA8E,CAC9E,oDAAgE,CAIhE,oEAA2E,CAC3E,4DAAoE,CAIpE,2DAAoE,CACpE,mDAA6D,CAC7D,wDAAgE,CAChE,+CAA0D,CAC1D,4CAA2D,CAC3D,4DAAoE,CACpE,sCAAsD,CAItD,0DAAmE,CACnE,uFAA6F,CAC7F,oEAA2E,CAC3E,0EAA+E,CAC/E,8DAAsE,CAItE,2DAAoE,CACpE,mDAA6D,CAI7D,6DAAsE,CACtE,qDAA+D,CAI/D,uDAAgE,CAChE,uDAAiE,CAIjE,0CAAyD,CAIzD,wCAA2D,CAI3D,+BAAoD,CACpD,uDAAmE,CACnE,kDAAgE,CAIhE,oCAAwD,CCvGxD,wBAAyB,CCAzB,0CAA2C,CAK3C,gGAAiG,CAKjG,4GAA6G,CAK7G,sGAAuG,CAKvG,sDAAuD,CCvBvD,wBAAyB,CACzB,6BAA8B,CAC9B,wDAA6D,CAE7D,yBAA0B,CAC1B,2BAA4B,CAC5B,yBAA0B,CAC1B,wBAAyB,CACzB,0BAA2B,CCJ3B,kCJuGD,CIjGA,2EAaC,oBAAqB,CANrB,sBAAuB,CADvB,QAAS,CAFT,QAAS,CACT,SAAU,CAGV,oBAAqB,CAErB,eAAgB,CADhB,qBAKD,CAKA,8DAGC,wBAAyB,CAEzB,0BAA2B,CAG3B,WAAY,CACZ,UAAW,CALX,iGAAkG,CAElG,eAAgB,CAChB,kBAGD,CAGC,qDACC,gBACD,CAEA,mDAEC,sBACD,CAEA,qDACC,oBACD,CAEA,mLAGC,WACD,CAEA,iNAGC,cACD,CAEA,qDAEC,yBAAoC,CADpC,YAED,CAEA,qEAGC,QAAQ,CADR,SAED,CAMD,8BAEC,gBACD,CCnFA,MACC,sBAAuB,CCAvB,gEAAiE,CAKjE,0DAA2D,CAK3D,wEAAyE,CCbzE,uBAA8B,CAC9B,mDAA2D,CAC3D,4CAAkD,CAClD,oDAA4D,CAC5D,mDAA2D,CAC3D,kDAA2D,CAC3D,yDFFD",sourcesContent:["/*\n * Copyright (c) 2003-2022, 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-2022, 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-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","/*\n * Copyright (c) 2003-2022, 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-modal: calc( var(--ck-z-default) + 999 );\n}\n","/*\n * Copyright (c) 2003-2022, 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-2022, 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/* -- 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","/*\n * Copyright (c) 2003-2022, 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-2022, 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-2022, 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-2022, 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\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-2022, 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-2022, 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-2022, 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},6507:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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)}.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{background-color:var(--ck-color-widget-editable-focus-background);border:var(--ck-focus-ring);box-shadow:var(--ck-inner-shadow),0 0;outline:none}.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)}.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)}.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://./node_modules/@ckeditor/ckeditor5-widget/theme/widget.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-widget/widget.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.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,CCjFD,MACC,iCAAkC,CAClC,kCAAmC,CACnC,4CAA6C,CAC7C,wCAAyC,CAEzC,wCAAiD,CACjD,sCAAkD,CAClD,2EAA4E,CAC5E,yEACD,CAEA,eAGC,yBAA0B,CAD1B,mBAAoB,CADpB,gDAAiD,CAGjD,6GAUD,CARC,0EAEC,6EACD,CAEA,qBACC,iDACD,CAGD,gCACC,4BAWD,CAPC,yGAKC,iEAAkE,CCnCnE,2BAA2B,CCF3B,qCAA8B,CDC9B,YDqCA,CAIA,4EAKC,4BAA6B,CAa7B,iEAAkE,CAhBlE,qBAAsB,CAoBtB,mDAAoD,CAhBpD,SAAU,CALV,WAAY,CAsBZ,KAAM,CAFN,2BAA4B,CAT5B,6SAgCD,CAnBC,qFAIC,oDAAqD,CADrD,yCAA0C,CAD1C,wCAWD,CANC,kHACC,SAAU,CAGV,+DACD,CAID,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-2022, 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-2022, 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-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&.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\n\t\tbackground-color: var(--ck-color-widget-editable-focus-background);\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& .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\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-2022, 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-2022, 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},2263:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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://./node_modules/@ckeditor/ckeditor5-widget/theme/widgetresize.css","webpack://./node_modules/@ckeditor/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-2022, 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-2022, 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},5137:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),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)}.ck .ck-widget .ck-widget__type-around__button svg{height:8px;margin-top:1px;transform:translate(-50%,-50%);transition:transform .5s ease;width:10px}.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}.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://./node_modules/@ckeditor/ckeditor5-widget/theme/widgettypearound.css","webpack://./node_modules/@ckeditor/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,8CAkDD,CA1CC,mDAEC,UAAW,CAGX,cAAe,CAFf,8BAA+B,CAC/B,6BAA8B,CAH9B,UAoBD,CAdC,qDACC,mBAAoB,CACpB,mBAAoB,CAEpB,SAAU,CACV,qDAAsD,CACtD,kBAAmB,CACnB,oBAAqB,CACrB,qBACD,CAEA,wDACC,kBACD,CAGD,qDAIC,6DAcD,CARE,kEACC,oDACD,CAEA,8DACC,wDACD,CAUF,uKAvED,SAAU,CACV,mBAwEC,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,uOAlJD,SAAU,CACV,mBAmJC,CAoBA,6yBACC,SACD,CASF,uHACC,aAAc,CACd,iBACD,CAYG,iRAlMF,SAAU,CACV,mBAmME,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-2022, 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-2022, 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& 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& * {\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\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},6616:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".ck.ck-dropdown.ck-wproofreader-empty .ck-dropdown__panel{display:none!important}","",{version:3,sources:["webpack://./node_modules/@webspellchecker/wproofreader-ckeditor5/theme/wproofreader.css"],names:[],mappings:"AAAA,0DACC,sBACD",sourcesContent:[".ck.ck-dropdown.ck-wproofreader-empty .ck-dropdown__panel {\n\tdisplay: none !important;\n}\n"],sourceRoot:""}]);const a=s},7546:(t,e,n)=>{"use strict";n.d(e,{Z:()=>a});var i=n(4015),o=n.n(i),r=n(3645),s=n.n(r)()(o());s.push([t.id,".wrs_modal_overlay{background:rgba(0,0,0,.8);bottom:0;font-family:arial,sans-serif;left:0;opacity:.65;pointer-events:auto;position:fixed;right:0;top:0;z-index:999998}.wrs_modal_overlay.wrs_modal_android,.wrs_modal_overlay.wrs_modal_ios{display:none;visibility:hidden}.wrs_modal_overlay.wrs_modal_ios.moodle{position:fixed}.wrs_modal_overlay.wrs_modal_desktop.wrs_stack{background:transparent;display:none}.wrs_modal_overlay.wrs_modal_desktop.wrs_maximized{background:rgba(0,0,0,.8)}.wrs_modal_overlay.wrs_modal_desktop.wrs_closed,.wrs_modal_overlay.wrs_modal_desktop.wrs_minimized{background:transparent;display:none}.wrs_modal_title{color:#fff;padding:5px 0 5px 10px;text-align:left;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.wrs_modal_close_button{background-repeat:no-repeat}.wrs_modal_close_button,.wrs_modal_minimize_button{color:#fff;cursor:pointer;float:right;margin:10px 7px 0 0;padding:5px 10px 5px 0}.wrs_modal_minimize_button{top:inherit}.wrs_modal_stack_button{color:#fff;cursor:pointer;float:right;margin:10px 7px 0 0;padding:5px 10px 5px 0;top:inherit}.wrs_modal_stack_button.wrs_minimized,.wrs_modal_stack_button.wrs_stack{margin:0;padding:0;visibility:hidden}.wrs_modal_maximize_button{color:#fff;cursor:pointer;float:right;margin:10px 7px 0 0;padding:5px 10px 5px 0;top:inherit}.wrs_modal_maximize_button.wrs_maximized{margin:0;padding:0;visibility:hidden}.wrs_modal_title_bar{background-color:#778e9a;display:block}.wrs_modal_dialogContainer{background:#fafafa;border:none;z-index:999999}.wrs_modal_dialogContainer.wrs_modal_desktop{font-size:14px}.wrs_modal_dialogContainer.wrs_modal_desktop.wrs_maximized{position:fixed}.wrs_modal_dialogContainer.wrs_modal_desktop.wrs_minimized{margin:0 10px 0 0;position:fixed;top:inherit}.wrs_modal_dialogContainer.wrs_closed{display:none;opacity:0;visibility:hidden}.wrs_modal_dialogContainer.wrs_modal_desktop.wrs_stack{bottom:0;box-shadow:0 2px 8px rgba(0,0,0,.5);position:fixed;right:0}.wrs_modal_dialogContainer.wrs_drag,.wrs_modal_dialogContainer.wrs_modal_desktop.wrs_drag{box-shadow:0 2px 8px rgba(0,0,0,.5)}.wrs_modal_dialogContainer.wrs_modal_android{height:99%;width:99%}.wrs_modal_dialogContainer.wrs_modal_android,.wrs_modal_dialogContainer.wrs_modal_ios{margin:auto;overflow:hidden;position:fixed;right:50%!important;top:50%;transform:translate(50%,-50%)}.wrs_modal_dialogContainer.wrs_modal_ios{height:100%;width:100%}.wrs_content_container.wrs_minimized{display:none}.wrs_content_container.wrs_modal_android{display:flex;flex-direction:column;flex-grow:1;height:0;width:100%}.wrs_content_container.wrs_modal_android>div:first-child,.wrs_content_container.wrs_modal_desktop>div:first-child,.wrs_content_container.wrs_modal_ios>div:first-child{flex-grow:1}.wrs_modal_wrapper.wrs_modal_android{display:flex;flex-direction:column;height:100%;margin:auto;width:100%}.wrs_content_container.wrs_modal_desktop,.wrs_content_container.wrs_modal_ios{display:flex;flex-direction:column;flex-grow:1;width:100%}.wrs_content_container.wrs_modal_ios{height:0}.wrs_modal_wrapper.wrs_modal_ios{display:flex;flex-direction:column;height:100%;margin:auto;width:100%}.wrs_virtual_keyboard{height:100%;left:50%;top:0;transform:translate(-50%);width:100%}@media (orientation:portrait){.wrs_modal_dialogContainer.wrs_modal_mobile{border-width:0;height:100vmin;margin:auto;width:100vmin}.wrs_modal_wrapper.wrs_modal_mobile{height:100vmin;margin:auto;width:100vmin}}@media (orientation:landscape){.wrs_modal_dialogContainer.wrs_modal_mobile{border-width:0;height:100vmin;margin:auto;width:100vmin}.wrs_modal_wrapper.wrs_modal_mobile{height:100vmin;margin:auto;width:100vmin}}.wrs_modal_dialogContainer.wrs_modal_badStock,.wrs_modal_wrapper.wrs_modal_badStock{border-width:0;height:280px;margin:0 auto;width:100%}.wrs_noselect{-moz-user-select:none;-khtml-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.wrs_bottom_right_resizer{bottom:8px;color:#778e9a;cursor:se-resize;height:10px;position:absolute;right:4px;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;width:10px}.wrs_bottom_left_resizer{color:#778e9a;cursor:se-resize;height:15px;left:0;position:absolute;top:0;width:15px}.wrs_modal_controls{height:42px;line-height:normal;margin:3px 0;overflow:hidden}.wrs_modal_links{display:inline;float:right;font-family:arial,sans-serif;margin:10px auto 0;padding:6px;text-align:right}.wrs_modal_links>a{color:#778e9a;font-size:16px;text-decoration:none}.wrs_modal_button_cancel,.wrs_modal_button_cancel:active,.wrs_modal_button_cancel:focus,.wrs_modal_button_cancel:hover,.wrs_modal_button_cancel:visited{background-color:#ddd;border:1px solid #778e9a;border-radius:3px;cursor:pointer;font-family:arial,sans-serif;font-size:14px;height:32px;margin:10px auto 0 5px;min-width:80px;padding:6px 8px}.wrs_modal_button_accept,.wrs_modal_button_accept:active,.wrs_modal_button_accept:focus,.wrs_modal_button_accept:hover,.wrs_modal_button_accept:visited{background:#778e9a;border:1px solid #778e9a;border-radius:3px;color:#fff;cursor:pointer;font-family:arial,sans-serif;font-size:14px;height:32px;margin:10px 5px 0 auto;min-width:80px;padding:6px 8px}.wrs_editor_vertical_bar{background:none;cursor:pointer;float:right;height:20px;width:20px}.wrs_modal_buttons_container{display:inline;float:left}.wrs_modal_buttons_container.wrs_modalAndroid{padding-left:6px}.wrs_modal_buttons_container.wrs_modalDesktop{padding-left:0}.wrs_modal_buttons_container>button{background-image:none;line-height:normal}.wrs_modal_wrapper{display:flex;flex-direction:column;margin:6px}.wrs_modal_wrapper.wrs_modal_desktop.wrs_minimized{display:none}@media only screen and (max-device-width:480px) and (orientation:portrait){#wrs_modal_wrapper{width:140%}}.wrs_popupmessage_overlay_envolture{display:none;width:100%}.wrs_popupmessage_overlay{background-color:rgba(0,0,0,.5);bottom:0;cursor:pointer;height:100%;left:0;position:absolute;right:0;top:0;width:100%;z-index:4}.wrs_popupmessage_panel{background:#fff;border-radius:2px;color:#2e2e2e;font-family:sans-serif;font-size:15px;left:50%;max-height:75%;max-width:500px;overflow:auto;padding:20px;position:absolute;text-align:left;top:50%;transform:translate(-50%,-50%);width:75%;z-index:5}.wrs_popupmessage_button_area{margin:10px 0 0}.wrs_panelContainer *{border:0}.wrs_button_cancel,.wrs_button_cancel:active,.wrs_button_cancel:focus,.wrs_button_cancel:hover,.wrs_button_cancel:visited{background-color:#ddd;background-image:none;border:1px solid #778e9a;border-radius:3px;cursor:pointer;font-family:arial,sans-serif;font-size:14px;height:32px;margin:10px auto 0 5px;min-width:80px;padding:6px 8px}.wrs_button_accept,.wrs_button_accept:active,.wrs_button_accept:focus,.wrs_button_accept:hover,.wrs_button_accept:visited{background:#778e9a;border:1px solid #778e9a;border-radius:3px;color:#fff;cursor:pointer;font-family:arial,sans-serif;font-size:14px;height:32px;margin:10px 5px 0 auto;min-width:80px;padding:6px 8px}.wrs_editor button{box-shadow:none}.wrs_editor .wrs_header button{border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.wrs_modal_overlay.wrs_modal_desktop.wrs_stack.wrs_overlay_active{display:block}.wrs_toolbar tr:focus,.wrs_toolbar tr:hover{background:none}.wrs_modal_rtl .wrs_modal_button_cancel{margin-left:0;margin-right:5px}.wrs_modal_rtl .wrs_modal_button_accept{margin-left:5px;margin-right:0}.wrs_modal_rtl .wrs_button_cancel{margin-left:0;margin-right:5px}.wrs_modal_rtl .wrs_button_accept{margin-left:5px;margin-right:0}","",{version:3,sources:["webpack://./node_modules/@wiris/mathtype-html-integration-devkit/styles/styles.css"],names:[],mappings:"AAAA,mBAOE,yBAA8B,CAD9B,QAAS,CAJT,4BAA8B,CAG9B,MAAO,CAIP,WAAa,CACb,mBAAoB,CATpB,cAAe,CAGf,OAAQ,CADR,KAAM,CAKN,cAGF,CAOA,sEAEE,YAAa,CADb,iBAEF,CAEA,wCACE,cACF,CAEA,+CACE,sBAA4B,CAC5B,YACF,CAEA,mDACE,yBACF,CAOA,mGACE,sBAA4B,CAC5B,YACF,CAEA,iBACE,UAAW,CACX,sBAAuB,CAKvB,eAAgB,CAJhB,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBAEF,CAEA,wBAME,2BACF,CAEA,mDANE,UAAW,CADX,cAAe,CADf,WAAY,CAIZ,mBAAoB,CADpB,sBAYF,CAPA,2BAKE,WAEF,CAEA,wBAGE,UAAW,CADX,cAAe,CADf,WAAY,CAGZ,mBAAoB,CACpB,sBAAuB,CACvB,WACF,CAQA,wEAEE,QAAS,CACT,SAAU,CAFV,iBAGF,CAEA,2BAGE,UAAW,CADX,cAAe,CADf,WAAY,CAGZ,mBAAoB,CACpB,sBAAuB,CACvB,WACF,CAEA,yCAEE,QAAS,CACT,SAAU,CAFV,iBAGF,CAEA,qBAEE,wBAAyB,CADzB,aAEF,CAEA,2BAEE,kBAAmB,CADnB,WAAY,CAEZ,cACF,CAEA,6CACE,cACF,CAEA,2DACE,cACF,CAEA,2DAIE,iBAAkB,CAHlB,cAAe,CACf,WAGF,CAEA,sCAEE,YAAa,CACb,SAAU,CAFV,iBAGF,CAKA,uDAEE,QAAS,CAET,mCAAwC,CAHxC,cAAe,CAEf,OAEF,CAMA,0FACE,mCACF,CAEA,6CAIE,UAAW,CADX,SAMF,CAEA,sFAVE,WAAY,CAIZ,eAAgB,CAHhB,cAAe,CAMf,mBAAqB,CADrB,OAAQ,CADR,6BAcF,CATA,yCAIE,WAAY,CADZ,UAMF,CAKA,qCACE,YACF,CAMA,yCAIE,YAAa,CACb,qBAAsB,CAFtB,WAAY,CADZ,QAAU,CADV,UAKF,CAUA,uKACE,WACF,CAEA,qCAEE,YAAa,CACb,qBAAsB,CACtB,WAAY,CAHZ,WAAY,CAIZ,UACF,CASA,8EAJE,YAAa,CACb,qBAAsB,CAFtB,WAAY,CADZ,UAYF,CANA,qCAEE,QAIF,CAEA,iCAEE,YAAa,CACb,qBAAsB,CACtB,WAAY,CAHZ,WAAY,CAIZ,UACF,CAEA,sBACE,WAAY,CAGZ,QAAS,CADT,KAAM,CAEN,yBAA8B,CAH9B,UAIF,CAEA,8BACE,4CAIE,cAAe,CAFf,cAAe,CACf,WAAY,CAFZ,aAIF,CAEA,oCAEE,cAAe,CACf,WAAY,CAFZ,aAGF,CACF,CAEA,+BACE,4CAIE,cAAe,CAFf,cAAe,CACf,WAAY,CAFZ,aAIF,CAEA,oCAEE,cAAe,CACf,WAAY,CAFZ,aAGF,CACF,CASA,oFAIE,cAAe,CAFf,YAAa,CACb,aAAc,CAFd,UAIF,CAEA,cACE,qBAAsB,CACtB,uBAAwB,CACxB,wBAAyB,CACzB,oBAAqB,CACrB,gBACF,CAEA,0BAME,UAAW,CAHX,aAAc,CAId,gBAAiB,CALjB,WAAY,CAEZ,iBAAkB,CAClB,SAAU,CAGV,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBAAiB,CAVjB,UAWF,CAEA,yBAGE,aAAc,CAId,gBAAiB,CALjB,WAAY,CAGZ,MAAO,CADP,iBAAkB,CAElB,KAAM,CALN,UAOF,CAEA,oBACE,WAAY,CAGZ,kBAAmB,CAFnB,YAAa,CACb,eAEF,CAEA,iBAKE,cAAe,CACf,WAAY,CAHZ,4BAA8B,CAD9B,kBAAgB,CAEhB,WAAY,CAGZ,gBACF,CAEA,mBAEE,aAAc,CACd,cAAe,CAFf,oBAGF,CAEA,wJAeE,qBAAsB,CAPtB,wBAAyB,CADzB,iBAAkB,CAMlB,cAAe,CACf,4BAA8B,CAR9B,cAAe,CAUf,WAAY,CAJZ,sBAAgB,CAPhB,cAAe,CAIf,eAQF,CAEA,wJAcE,kBAAmB,CANnB,wBAAyB,CADzB,iBAAkB,CAMlB,UAAW,CAEX,cAAe,CACf,4BAA8B,CAV9B,cAAe,CAWf,WAAY,CALZ,sBAAgB,CAPhB,cAAe,CAIf,eASF,CAEA,yBAGE,eAAgB,CAEhB,cAAe,CAHf,WAAY,CADZ,WAAY,CAGZ,UAEF,CAEA,6BACE,cAAe,CACf,UACF,CAEA,8CACE,gBACF,CAEA,8CACE,cACF,CAEA,oCAEE,qBAAsB,CADtB,kBAEF,CAEA,mBAEE,YAAa,CACb,qBAAsB,CAFtB,UAGF,CAEA,mDACE,YACF,CAEA,2EACE,mBACE,UACF,CACF,CAEA,oCACE,YAAa,CACb,UACF,CAEA,0BAQE,+BAAoC,CADpC,QAAS,CAGT,cAAe,CAPf,WAAY,CAEZ,MAAO,CAJP,iBAAkB,CAKlB,OAAQ,CAFR,KAAM,CAFN,UAAW,CAOX,SAEF,CAEA,wBAKE,eAAiB,CAGjB,iBAAkB,CAKlB,aAAc,CAHd,sBAAuB,CACvB,cAAe,CATf,QAAS,CAaT,cAAe,CATf,eAAgB,CAUhB,aAAc,CAPd,YAAa,CALb,iBAAkB,CAQlB,eAAgB,CAXhB,OAAQ,CAER,8BAAgC,CAIhC,SAAU,CAOV,SAGF,CAEA,8BACE,eACF,CAEA,sBACE,QACF,CAEA,0HAeE,qBAAsB,CACtB,qBAAsB,CARtB,wBAAyB,CADzB,iBAAkB,CAMlB,cAAe,CACf,4BAA8B,CAR9B,cAAe,CAWf,WAAY,CALZ,sBAAgB,CAPhB,cAAe,CAIf,eASF,CAEA,0HAcE,kBAAmB,CANnB,wBAAyB,CADzB,iBAAkB,CAMlB,UAAW,CAEX,cAAe,CACf,4BAA8B,CAV9B,cAAe,CAWf,WAAY,CALZ,sBAAgB,CAPhB,cAAe,CAIf,eASF,CAEA,mBACE,eACF,CAEA,+BACE,kBAAmB,CACnB,2BAA4B,CAC5B,4BACF,CAEA,kEACE,aACF,CAOA,4CACE,eACF,CAGA,wCAEE,aAAc,CADd,gBAEF,CAEA,wCAEE,eAAgB,CADhB,cAEF,CAEA,kCAEE,aAAc,CADd,gBAEF,CAEA,kCAEE,eAAgB,CADhB,cAEF",sourcesContent:[".wrs_modal_overlay {\n position: fixed;\n font-family: arial, sans-serif;\n top: 0;\n right: 0;\n left: 0;\n bottom: 0;\n background: rgba(0, 0, 0, 0.8);\n z-index: 999998;\n opacity: 0.65;\n pointer-events: auto;\n}\n\n.wrs_modal_overlay.wrs_modal_ios {\n visibility: hidden;\n display: none;\n}\n\n.wrs_modal_overlay.wrs_modal_android {\n visibility: hidden;\n display: none;\n}\n\n.wrs_modal_overlay.wrs_modal_ios.moodle {\n position: fixed;\n}\n\n.wrs_modal_overlay.wrs_modal_desktop.wrs_stack {\n background: rgba(0, 0, 0, 0);\n display: none;\n}\n\n.wrs_modal_overlay.wrs_modal_desktop.wrs_maximized {\n background: rgba(0, 0, 0, 0.8);\n}\n\n.wrs_modal_overlay.wrs_modal_desktop.wrs_minimized {\n background: rgba(0, 0, 0, 0);\n display: none;\n}\n\n.wrs_modal_overlay.wrs_modal_desktop.wrs_closed {\n background: rgba(0, 0, 0, 0);\n display: none;\n}\n\n.wrs_modal_title {\n color: #fff;\n padding: 5px 0 5px 10px;\n -moz-user-select: none;\n -webkit-user-select: none;\n -ms-user-select: none;\n user-select: none;\n text-align: left;\n}\n\n.wrs_modal_close_button {\n float: right;\n cursor: pointer;\n color: #fff;\n padding: 5px 10px 5px 0;\n margin: 10px 7px 0 0;\n background-repeat: no-repeat;\n}\n\n.wrs_modal_minimize_button {\n float: right;\n cursor: pointer;\n color: #fff;\n padding: 5px 10px 5px 0;\n top: inherit;\n margin: 10px 7px 0 0;\n}\n\n.wrs_modal_stack_button {\n float: right;\n cursor: pointer;\n color: #fff;\n margin: 10px 7px 0 0;\n padding: 5px 10px 5px 0;\n top: inherit;\n}\n\n.wrs_modal_stack_button.wrs_stack {\n visibility: hidden;\n margin: 0;\n padding: 0;\n}\n\n.wrs_modal_stack_button.wrs_minimized {\n visibility: hidden;\n margin: 0;\n padding: 0;\n}\n\n.wrs_modal_maximize_button {\n float: right;\n cursor: pointer;\n color: #fff;\n margin: 10px 7px 0 0;\n padding: 5px 10px 5px 0;\n top: inherit;\n}\n\n.wrs_modal_maximize_button.wrs_maximized {\n visibility: hidden;\n margin: 0;\n padding: 0;\n}\n\n.wrs_modal_title_bar {\n display: block;\n background-color: #778e9a;\n}\n\n.wrs_modal_dialogContainer {\n border: none;\n background: #fafafa;\n z-index: 999999;\n}\n\n.wrs_modal_dialogContainer.wrs_modal_desktop {\n font-size: 14px;\n}\n\n.wrs_modal_dialogContainer.wrs_modal_desktop.wrs_maximized {\n position: fixed;\n}\n\n.wrs_modal_dialogContainer.wrs_modal_desktop.wrs_minimized {\n position: fixed;\n top: inherit;\n margin: 0;\n margin-right: 10px;\n}\n\n.wrs_modal_dialogContainer.wrs_closed {\n visibility: hidden;\n display: none;\n opacity: 0;\n}\n\n/* Class that exists but hasn't got css properties defined\n.wrs_modal_dialogContainer.wrs_modal_desktop.wrs_minimized.wrs_drag {} */\n\n.wrs_modal_dialogContainer.wrs_modal_desktop.wrs_stack {\n position: fixed;\n bottom: 0;\n right: 0;\n box-shadow: rgba(0, 0, 0, 0.5) 0 2px 8px;\n}\n\n.wrs_modal_dialogContainer.wrs_drag {\n box-shadow: rgba(0, 0, 0, 0.5) 0 2px 8px;\n}\n\n.wrs_modal_dialogContainer.wrs_modal_desktop.wrs_drag {\n box-shadow: rgba(0, 0, 0, 0.5) 0 2px 8px;\n}\n\n.wrs_modal_dialogContainer.wrs_modal_android {\n margin: auto;\n position: fixed;\n width: 99%;\n height: 99%;\n overflow: hidden;\n transform: translate(50%, -50%);\n top: 50%;\n right: 50% !important;\n}\n\n.wrs_modal_dialogContainer.wrs_modal_ios {\n margin: auto;\n position: fixed;\n width: 100%;\n height: 100%;\n overflow: hidden;\n transform: translate(50%, -50%);\n top: 50%;\n right: 50% !important;\n}\n\n/* Class that exists but hasn't got css properties defined\n.wrs_content_container.wrs_maximized {} */\n\n.wrs_content_container.wrs_minimized {\n display: none;\n}\n\n/* .wrs_editor {\n flex-grow: 1;\n} */\n\n.wrs_content_container.wrs_modal_android {\n width: 100%;\n height: 0%;\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n}\n\n.wrs_content_container.wrs_modal_android > div:first-child {\n flex-grow: 1;\n}\n\n.wrs_content_container.wrs_modal_ios > div:first-child {\n flex-grow: 1;\n}\n\n.wrs_content_container.wrs_modal_desktop > div:first-child {\n flex-grow: 1;\n}\n\n.wrs_modal_wrapper.wrs_modal_android {\n margin: auto;\n display: flex;\n flex-direction: column;\n height: 100%;\n width: 100%;\n}\n\n.wrs_content_container.wrs_modal_desktop {\n width: 100%;\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n}\n\n.wrs_content_container.wrs_modal_ios {\n width: 100%;\n height: 0%;\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n}\n\n.wrs_modal_wrapper.wrs_modal_ios {\n margin: auto;\n display: flex;\n flex-direction: column;\n height: 100%;\n width: 100%;\n}\n\n.wrs_virtual_keyboard {\n height: 100%;\n width: 100%;\n top: 0;\n left: 50%;\n transform: translate(-50%, 0%);\n}\n\n@media all and (orientation: portrait) {\n .wrs_modal_dialogContainer.wrs_modal_mobile {\n width: 100vmin;\n height: 100vmin;\n margin: auto;\n border-width: 0;\n }\n\n .wrs_modal_wrapper.wrs_modal_mobile {\n width: 100vmin;\n height: 100vmin;\n margin: auto;\n }\n}\n\n@media all and (orientation: landscape) {\n .wrs_modal_dialogContainer.wrs_modal_mobile {\n width: 100vmin;\n height: 100vmin;\n margin: auto;\n border-width: 0;\n }\n\n .wrs_modal_wrapper.wrs_modal_mobile {\n width: 100vmin;\n height: 100vmin;\n margin: auto;\n }\n}\n\n.wrs_modal_dialogContainer.wrs_modal_badStock {\n width: 100%;\n height: 280px;\n margin: 0 auto;\n border-width: 0;\n}\n\n.wrs_modal_wrapper.wrs_modal_badStock {\n width: 100%;\n height: 280px;\n margin: 0 auto;\n border-width: 0;\n}\n\n.wrs_noselect {\n -moz-user-select: none;\n -khtml-user-select: none;\n -webkit-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n\n.wrs_bottom_right_resizer {\n width: 10px;\n height: 10px;\n color: #778e9a;\n position: absolute;\n right: 4px;\n bottom: 8px;\n cursor: se-resize;\n -moz-user-select: none;\n -webkit-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n\n.wrs_bottom_left_resizer {\n width: 15px;\n height: 15px;\n color: #778e9a;\n position: absolute;\n left: 0;\n top: 0;\n cursor: se-resize;\n}\n\n.wrs_modal_controls {\n height: 42px;\n margin: 3px 0;\n overflow: hidden;\n line-height: normal;\n}\n\n.wrs_modal_links {\n margin: 10px auto;\n margin-bottom: 0;\n font-family: arial, sans-serif;\n padding: 6px;\n display: inline;\n float: right;\n text-align: right;\n}\n\n.wrs_modal_links > a {\n text-decoration: none;\n color: #778e9a;\n font-size: 16px;\n}\n\n.wrs_modal_button_cancel,\n.wrs_modal_button_cancel:hover,\n.wrs_modal_button_cancel:visited,\n.wrs_modal_button_cancel:active,\n.wrs_modal_button_cancel:focus {\n min-width: 80px;\n font-size: 14px;\n border-radius: 3px;\n border: 1px solid #778e9a;\n padding: 6px 8px;\n margin: 10px auto;\n margin-left: 5px;\n margin-bottom: 0;\n cursor: pointer;\n font-family: arial, sans-serif;\n background-color: #ddd;\n height: 32px;\n}\n\n.wrs_modal_button_accept,\n.wrs_modal_button_accept:hover,\n.wrs_modal_button_accept:visited,\n.wrs_modal_button_accept:active,\n.wrs_modal_button_accept:focus {\n min-width: 80px;\n font-size: 14px;\n border-radius: 3px;\n border: 1px solid #778e9a;\n padding: 6px 8px;\n margin: 10px auto;\n margin-right: 5px;\n margin-bottom: 0;\n color: #fff;\n background: #778e9a;\n cursor: pointer;\n font-family: arial, sans-serif;\n height: 32px;\n}\n\n.wrs_editor_vertical_bar {\n height: 20px;\n float: right;\n background: none;\n width: 20px;\n cursor: pointer;\n}\n\n.wrs_modal_buttons_container {\n display: inline;\n float: left;\n}\n\n.wrs_modal_buttons_container.wrs_modalAndroid {\n padding-left: 6px;\n}\n\n.wrs_modal_buttons_container.wrs_modalDesktop {\n padding-left: 0;\n}\n\n.wrs_modal_buttons_container > button {\n line-height: normal;\n background-image: none;\n}\n\n.wrs_modal_wrapper {\n margin: 6px;\n display: flex;\n flex-direction: column;\n}\n\n.wrs_modal_wrapper.wrs_modal_desktop.wrs_minimized {\n display: none;\n}\n\n@media only screen and (max-device-width: 480px) and (orientation: portrait) {\n #wrs_modal_wrapper {\n width: 140%;\n }\n}\n\n.wrs_popupmessage_overlay_envolture {\n display: none;\n width: 100%;\n}\n\n.wrs_popupmessage_overlay {\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n background-color: rgba(0, 0, 0, 0.5);\n z-index: 4;\n cursor: pointer;\n}\n\n.wrs_popupmessage_panel {\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n position: absolute;\n background: white;\n max-width: 500px;\n width: 75%;\n border-radius: 2px;\n padding: 20px;\n font-family: sans-serif;\n font-size: 15px;\n text-align: left;\n color: #2e2e2e;\n z-index: 5;\n max-height: 75%;\n overflow: auto;\n}\n\n.wrs_popupmessage_button_area {\n margin: 10px 0 0 0;\n}\n\n.wrs_panelContainer * {\n border: 0;\n}\n\n.wrs_button_cancel,\n.wrs_button_cancel:hover,\n.wrs_button_cancel:visited,\n.wrs_button_cancel:active,\n.wrs_button_cancel:focus {\n min-width: 80px;\n font-size: 14px;\n border-radius: 3px;\n border: 1px solid #778e9a;\n padding: 6px 8px;\n margin: 10px auto;\n margin-left: 5px;\n margin-bottom: 0;\n cursor: pointer;\n font-family: arial, sans-serif;\n background-color: #ddd;\n background-image: none;\n height: 32px;\n}\n\n.wrs_button_accept,\n.wrs_button_accept:hover,\n.wrs_button_accept:visited,\n.wrs_button_accept:active,\n.wrs_button_accept:focus {\n min-width: 80px;\n font-size: 14px;\n border-radius: 3px;\n border: 1px solid #778e9a;\n padding: 6px 8px;\n margin: 10px auto;\n margin-right: 5px;\n margin-bottom: 0;\n color: #fff;\n background: #778e9a;\n cursor: pointer;\n font-family: arial, sans-serif;\n height: 32px;\n}\n\n.wrs_editor button {\n box-shadow: none;\n}\n\n.wrs_editor .wrs_header button {\n border-bottom: none;\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.wrs_modal_overlay.wrs_modal_desktop.wrs_stack.wrs_overlay_active {\n display: block;\n}\n\n/* Fix selection in drupal style */\n.wrs_toolbar tr:focus {\n background: none;\n}\n\n.wrs_toolbar tr:hover {\n background: none;\n}\n\n/* End of fix drupal */\n.wrs_modal_rtl .wrs_modal_button_cancel {\n margin-right: 5px;\n margin-left: 0;\n}\n\n.wrs_modal_rtl .wrs_modal_button_accept {\n margin-right: 0;\n margin-left: 5px;\n}\n\n.wrs_modal_rtl .wrs_button_cancel {\n margin-right: 5px;\n margin-left: 0;\n}\n\n.wrs_modal_rtl .wrs_button_accept {\n margin-right: 0;\n margin-left: 5px;\n}\n"],sourceRoot:""}]);const a=s},3645: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{e.formatArgs=function(e){if(e[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+e[0]+(this.useColors?"%c ":" ")+"+"+t.exports.humanize(this.diff),!this.useColors)return;const n="color: "+this.color;e.splice(1,0,n,"color: inherit");let i=0,o=0;e[0].replace(/%[a-zA-Z%]/g,(t=>{"%%"!==t&&(i++,"%c"===t&&(o=i))})),e.splice(o,0,n)},e.save=function(t){try{t?e.storage.setItem("debug",t):e.storage.removeItem("debug")}catch(t){}},e.load=function(){let t;try{t=e.storage.getItem("debug")}catch(t){}!t&&"undefined"!=typeof process&&"env"in process&&(t=process.env.DEBUG);return t},e.useColors=function(){if("undefined"!=typeof window&&window.process&&("renderer"===window.process.type||window.process.__nwjs))return!0;if("undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))return!1;return"undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)},e.storage=function(){try{return localStorage}catch(t){}}(),e.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),e.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],e.log=console.debug||console.log||(()=>{}),t.exports=n(2447)(e);const{formatters:i}=t.exports;i.j=function(t){try{return JSON.stringify(t)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}}},2447:(t,e,n)=>{t.exports=function(t){function e(t){let n,o,r,s=null;function a(...t){if(!a.enabled)return;const i=a,o=Number(new Date),r=o-(n||o);i.diff=r,i.prev=n,i.curr=o,n=o,t[0]=e.coerce(t[0]),"string"!=typeof t[0]&&t.unshift("%O");let s=0;t[0]=t[0].replace(/%([a-zA-Z%])/g,((n,o)=>{if("%%"===n)return"%";s++;const r=e.formatters[o];if("function"==typeof r){const e=t[s];n=r.call(i,e),t.splice(s,1),s--}return n})),e.formatArgs.call(i,t);(i.log||e.log).apply(i,t)}return a.namespace=t,a.useColors=e.useColors(),a.color=e.selectColor(t),a.extend=i,a.destroy=e.destroy,Object.defineProperty(a,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==s?s:(o!==e.namespaces&&(o=e.namespaces,r=e.enabled(t)),r),set:t=>{s=t}}),"function"==typeof e.init&&e.init(a),a}function i(t,n){const i=e(this.namespace+(void 0===n?":":n)+t);return i.log=this.log,i}function o(t){return t.toString().substring(2,t.toString().length-2).replace(/\.\*\?$/,"*")}return e.debug=e,e.default=e,e.coerce=function(t){if(t instanceof Error)return t.stack||t.message;return t},e.disable=function(){const t=[...e.names.map(o),...e.skips.map(o).map((t=>"-"+t))].join(",");return e.enable(""),t},e.enable=function(t){let n;e.save(t),e.namespaces=t,e.names=[],e.skips=[];const i=("string"==typeof t?t:"").split(/[\s,]+/),o=i.length;for(n=0;n{e[n]=t[n]})),e.names=[],e.skips=[],e.formatters={},e.selectColor=function(t){let n=0;for(let e=0;e{try{t.exports="undefined"!=typeof XMLHttpRequest&&"withCredentials"in new XMLHttpRequest}catch(e){t.exports=!1}},9490:(t,e)=>{"use strict";function n(t,e){for(var n=0;nt.length)&&(e=t.length);for(var n=0,i=new Array(e);n=t.length?{done:!0}:{done:!1,value:t[e++]}};throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(e=t[Symbol.iterator]()).next.bind(e)}var h=function(t){function e(){return t.apply(this,arguments)||this}return o(e,t),e}(l(Error)),m=function(t){function e(e){return t.call(this,"Invalid DateTime: "+e.toMessage())||this}return o(e,t),e}(h),g=function(t){function e(e){return t.call(this,"Invalid Interval: "+e.toMessage())||this}return o(e,t),e}(h),p=function(t){function e(e){return t.call(this,"Invalid Duration: "+e.toMessage())||this}return o(e,t),e}(h),f=function(t){function e(){return t.apply(this,arguments)||this}return o(e,t),e}(h),b=function(t){function e(e){return t.call(this,"Invalid unit "+e)||this}return o(e,t),e}(h),k=function(t){function e(){return t.apply(this,arguments)||this}return o(e,t),e}(h),x=function(t){function e(){return t.call(this,"Zone is an abstract class")||this}return o(e,t),e}(h),w="numeric",_="short",A="long",v={year:w,month:w,day:w},C={year:w,month:_,day:w},y={year:w,month:_,day:w,weekday:_},E={year:w,month:A,day:w},T={year:w,month:A,day:w,weekday:A},D={hour:w,minute:w},S={hour:w,minute:w,second:w},I={hour:w,minute:w,second:w,timeZoneName:_},B={hour:w,minute:w,second:w,timeZoneName:A},M={hour:w,minute:w,hour12:!1},N={hour:w,minute:w,second:w,hour12:!1},O={hour:w,minute:w,second:w,hour12:!1,timeZoneName:_},P={hour:w,minute:w,second:w,hour12:!1,timeZoneName:A},R={year:w,month:w,day:w,hour:w,minute:w},L={year:w,month:w,day:w,hour:w,minute:w,second:w},z={year:w,month:_,day:w,hour:w,minute:w},j={year:w,month:_,day:w,hour:w,minute:w,second:w},F={year:w,month:_,day:w,weekday:_,hour:w,minute:w},V={year:w,month:A,day:w,hour:w,minute:w,timeZoneName:_},H={year:w,month:A,day:w,hour:w,minute:w,second:w,timeZoneName:_},U={year:w,month:A,day:w,weekday:A,hour:w,minute:w,timeZoneName:A},q={year:w,month:A,day:w,weekday:A,hour:w,minute:w,second:w,timeZoneName:A};function W(t){return void 0===t}function Z(t){return"number"==typeof t}function G(t){return"number"==typeof t&&t%1==0}function K(){try{return"undefined"!=typeof Intl&&Intl.DateTimeFormat}catch(t){return!1}}function $(){return!W(Intl.DateTimeFormat.prototype.formatToParts)}function Y(){try{return"undefined"!=typeof Intl&&!!Intl.RelativeTimeFormat}catch(t){return!1}}function J(t,e,n){if(0!==t.length)return t.reduce((function(t,i){var o=[e(i),i];return t&&n(t[0],o[0])===t[0]?t:o}),null)[1]}function Q(t,e){return e.reduce((function(e,n){return e[n]=t[n],e}),{})}function X(t,e){return Object.prototype.hasOwnProperty.call(t,e)}function tt(t,e,n){return G(t)&&t>=e&&t<=n}function et(t,e){void 0===e&&(e=2);var n=t<0?"-":"",i=n?-1*t:t;return""+n+(i.toString().length=0&&(e=new Date(e)).setUTCFullYear(e.getUTCFullYear()-1900),+e}function lt(t){var e=(t+Math.floor(t/4)-Math.floor(t/100)+Math.floor(t/400))%7,n=t-1,i=(n+Math.floor(n/4)-Math.floor(n/100)+Math.floor(n/400))%7;return 4===e||3===i?53:52}function dt(t){return t>99?t:t>60?1900+t:2e3+t}function ut(t,e,n,i){void 0===i&&(i=null);var o=new Date(t),r={hour12:!1,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};i&&(r.timeZone=i);var s=Object.assign({timeZoneName:e},r),a=K();if(a&&$()){var c=new Intl.DateTimeFormat(n,s).formatToParts(o).find((function(t){return"timezonename"===t.type.toLowerCase()}));return c?c.value:null}if(a){var l=new Intl.DateTimeFormat(n,r).format(o);return new Intl.DateTimeFormat(n,s).format(o).substring(l.length).replace(/^[, \u200e]+/,"")}return null}function ht(t,e){var n=parseInt(t,10);Number.isNaN(n)&&(n=0);var i=parseInt(e,10)||0;return 60*n+(n<0||Object.is(n,-0)?-i:i)}function mt(t){var e=Number(t);if("boolean"==typeof t||""===t||Number.isNaN(e))throw new k("Invalid unit value "+t);return e}function gt(t,e,n){var i={};for(var o in t)if(X(t,o)){if(n.indexOf(o)>=0)continue;var r=t[o];if(null==r)continue;i[e(o)]=mt(r)}return i}function pt(t,e){var n=Math.trunc(Math.abs(t/60)),i=Math.trunc(Math.abs(t%60)),o=t>=0?"+":"-";switch(e){case"short":return""+o+et(n,2)+":"+et(i,2);case"narrow":return""+o+n+(i>0?":"+i:"");case"techie":return""+o+et(n,2)+et(i,2);default:throw new RangeError("Value format "+e+" is out of range for property format")}}function ft(t){return Q(t,["hour","minute","second","millisecond"])}var bt=/[A-Za-z_+-]{1,256}(:?\/[A-Za-z_+-]{1,256}(\/[A-Za-z_+-]{1,256})?)?/;function kt(t){return JSON.stringify(t,Object.keys(t).sort())}var xt=["January","February","March","April","May","June","July","August","September","October","November","December"],wt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],_t=["J","F","M","A","M","J","J","A","S","O","N","D"];function At(t){switch(t){case"narrow":return[].concat(_t);case"short":return[].concat(wt);case"long":return[].concat(xt);case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}var vt=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],Ct=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],yt=["M","T","W","T","F","S","S"];function Et(t){switch(t){case"narrow":return[].concat(yt);case"short":return[].concat(Ct);case"long":return[].concat(vt);case"numeric":return["1","2","3","4","5","6","7"];default:return null}}var Tt=["AM","PM"],Dt=["Before Christ","Anno Domini"],St=["BC","AD"],It=["B","A"];function Bt(t){switch(t){case"narrow":return[].concat(It);case"short":return[].concat(St);case"long":return[].concat(Dt);default:return null}}function Mt(t,e){for(var n,i="",o=u(t);!(n=o()).done;){var r=n.value;r.literal?i+=r.val:i+=e(r.val)}return i}var Nt={D:v,DD:C,DDD:E,DDDD:T,t:D,tt:S,ttt:I,tttt:B,T:M,TT:N,TTT:O,TTTT:P,f:R,ff:z,fff:V,ffff:U,F:L,FF:j,FFF:H,FFFF:q},Ot=function(){function t(t,e){this.opts=e,this.loc=t,this.systemLoc=null}t.create=function(e,n){return void 0===n&&(n={}),new t(e,n)},t.parseFormat=function(t){for(var e=null,n="",i=!1,o=[],r=0;r0&&o.push({literal:i,val:n}),e=null,n="",i=!i):i||s===e?n+=s:(n.length>0&&o.push({literal:!1,val:n}),n=s,e=s)}return n.length>0&&o.push({literal:i,val:n}),o},t.macroTokenToFormatOpts=function(t){return Nt[t]};var e=t.prototype;return e.formatWithSystemDefault=function(t,e){return null===this.systemLoc&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(t,Object.assign({},this.opts,e)).format()},e.formatDateTime=function(t,e){return void 0===e&&(e={}),this.loc.dtFormatter(t,Object.assign({},this.opts,e)).format()},e.formatDateTimeParts=function(t,e){return void 0===e&&(e={}),this.loc.dtFormatter(t,Object.assign({},this.opts,e)).formatToParts()},e.resolvedOptions=function(t,e){return void 0===e&&(e={}),this.loc.dtFormatter(t,Object.assign({},this.opts,e)).resolvedOptions()},e.num=function(t,e){if(void 0===e&&(e=0),this.opts.forceSimple)return et(t,e);var n=Object.assign({},this.opts);return e>0&&(n.padTo=e),this.loc.numberFormatter(n).format(t)},e.formatDateTimeFromString=function(e,n){var i=this,o="en"===this.loc.listingMode(),r=this.loc.outputCalendar&&"gregory"!==this.loc.outputCalendar&&$(),s=function(t,n){return i.loc.extract(e,t,n)},a=function(t){return e.isOffsetFixed&&0===e.offset&&t.allowZ?"Z":e.isValid?e.zone.formatOffset(e.ts,t.format):""},c=function(){return o?function(t){return Tt[t.hour<12?0:1]}(e):s({hour:"numeric",hour12:!0},"dayperiod")},l=function(t,n){return o?function(t,e){return At(e)[t.month-1]}(e,t):s(n?{month:t}:{month:t,day:"numeric"},"month")},d=function(t,n){return o?function(t,e){return Et(e)[t.weekday-1]}(e,t):s(n?{weekday:t}:{weekday:t,month:"long",day:"numeric"},"weekday")},u=function(t){return o?function(t,e){return Bt(e)[t.year<0?0:1]}(e,t):s({era:t},"era")};return Mt(t.parseFormat(n),(function(n){switch(n){case"S":return i.num(e.millisecond);case"u":case"SSS":return i.num(e.millisecond,3);case"s":return i.num(e.second);case"ss":return i.num(e.second,2);case"m":return i.num(e.minute);case"mm":return i.num(e.minute,2);case"h":return i.num(e.hour%12==0?12:e.hour%12);case"hh":return i.num(e.hour%12==0?12:e.hour%12,2);case"H":return i.num(e.hour);case"HH":return i.num(e.hour,2);case"Z":return a({format:"narrow",allowZ:i.opts.allowZ});case"ZZ":return a({format:"short",allowZ:i.opts.allowZ});case"ZZZ":return a({format:"techie",allowZ:i.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:i.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:i.loc.locale});case"z":return e.zoneName;case"a":return c();case"d":return r?s({day:"numeric"},"day"):i.num(e.day);case"dd":return r?s({day:"2-digit"},"day"):i.num(e.day,2);case"c":case"E":return i.num(e.weekday);case"ccc":return d("short",!0);case"cccc":return d("long",!0);case"ccccc":return d("narrow",!0);case"EEE":return d("short",!1);case"EEEE":return d("long",!1);case"EEEEE":return d("narrow",!1);case"L":return r?s({month:"numeric",day:"numeric"},"month"):i.num(e.month);case"LL":return r?s({month:"2-digit",day:"numeric"},"month"):i.num(e.month,2);case"LLL":return l("short",!0);case"LLLL":return l("long",!0);case"LLLLL":return l("narrow",!0);case"M":return r?s({month:"numeric"},"month"):i.num(e.month);case"MM":return r?s({month:"2-digit"},"month"):i.num(e.month,2);case"MMM":return l("short",!1);case"MMMM":return l("long",!1);case"MMMMM":return l("narrow",!1);case"y":return r?s({year:"numeric"},"year"):i.num(e.year);case"yy":return r?s({year:"2-digit"},"year"):i.num(e.year.toString().slice(-2),2);case"yyyy":return r?s({year:"numeric"},"year"):i.num(e.year,4);case"yyyyyy":return r?s({year:"numeric"},"year"):i.num(e.year,6);case"G":return u("short");case"GG":return u("long");case"GGGGG":return u("narrow");case"kk":return i.num(e.weekYear.toString().slice(-2),2);case"kkkk":return i.num(e.weekYear,4);case"W":return i.num(e.weekNumber);case"WW":return i.num(e.weekNumber,2);case"o":return i.num(e.ordinal);case"ooo":return i.num(e.ordinal,3);case"q":return i.num(e.quarter);case"qq":return i.num(e.quarter,2);case"X":return i.num(Math.floor(e.ts/1e3));case"x":return i.num(e.ts);default:return function(n){var o=t.macroTokenToFormatOpts(n);return o?i.formatWithSystemDefault(e,o):n}(n)}}))},e.formatDurationFromString=function(e,n){var i,o=this,r=function(t){switch(t[0]){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":return"hour";case"d":return"day";case"M":return"month";case"y":return"year";default:return null}},s=t.parseFormat(n),a=s.reduce((function(t,e){var n=e.literal,i=e.val;return n?t:t.concat(i)}),[]),c=e.shiftTo.apply(e,a.map(r).filter((function(t){return t})));return Mt(s,(i=c,function(t){var e=r(t);return e?o.num(i.get(e),t.length):t}))},t}(),Pt=function(){function t(t,e){this.reason=t,this.explanation=e}return t.prototype.toMessage=function(){return this.explanation?this.reason+": "+this.explanation:this.reason},t}(),Rt=function(){function t(){}var e=t.prototype;return e.offsetName=function(t,e){throw new x},e.formatOffset=function(t,e){throw new x},e.offset=function(t){throw new x},e.equals=function(t){throw new x},i(t,[{key:"type",get:function(){throw new x}},{key:"name",get:function(){throw new x}},{key:"universal",get:function(){throw new x}},{key:"isValid",get:function(){throw new x}}]),t}(),Lt=null,zt=function(t){function e(){return t.apply(this,arguments)||this}o(e,t);var n=e.prototype;return n.offsetName=function(t,e){return ut(t,e.format,e.locale)},n.formatOffset=function(t,e){return pt(this.offset(t),e)},n.offset=function(t){return-new Date(t).getTimezoneOffset()},n.equals=function(t){return"local"===t.type},i(e,[{key:"type",get:function(){return"local"}},{key:"name",get:function(){return K()?(new Intl.DateTimeFormat).resolvedOptions().timeZone:"local"}},{key:"universal",get:function(){return!1}},{key:"isValid",get:function(){return!0}}],[{key:"instance",get:function(){return null===Lt&&(Lt=new e),Lt}}]),e}(Rt),jt=RegExp("^"+bt.source+"$"),Ft={};var Vt={year:0,month:1,day:2,hour:3,minute:4,second:5};var Ht={},Ut=function(t){function e(n){var i;return(i=t.call(this)||this).zoneName=n,i.valid=e.isValidZone(n),i}o(e,t),e.create=function(t){return Ht[t]||(Ht[t]=new e(t)),Ht[t]},e.resetCache=function(){Ht={},Ft={}},e.isValidSpecifier=function(t){return!(!t||!t.match(jt))},e.isValidZone=function(t){try{return new Intl.DateTimeFormat("en-US",{timeZone:t}).format(),!0}catch(t){return!1}},e.parseGMTOffset=function(t){if(t){var e=t.match(/^Etc\/GMT(0|[+-]\d{1,2})$/i);if(e)return-60*parseInt(e[1])}return null};var n=e.prototype;return n.offsetName=function(t,e){return ut(t,e.format,e.locale,this.name)},n.formatOffset=function(t,e){return pt(this.offset(t),e)},n.offset=function(t){var e=new Date(t);if(isNaN(e))return NaN;var n,i=(n=this.name,Ft[n]||(Ft[n]=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:n,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"})),Ft[n]),o=i.formatToParts?function(t,e){for(var n=t.formatToParts(e),i=[],o=0;o=0?d:1e3+d))/6e4},n.equals=function(t){return"iana"===t.type&&t.name===this.name},i(e,[{key:"type",get:function(){return"iana"}},{key:"name",get:function(){return this.zoneName}},{key:"universal",get:function(){return!1}},{key:"isValid",get:function(){return this.valid}}]),e}(Rt),qt=null,Wt=function(t){function e(e){var n;return(n=t.call(this)||this).fixed=e,n}o(e,t),e.instance=function(t){return 0===t?e.utcInstance:new e(t)},e.parseSpecifier=function(t){if(t){var n=t.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(n)return new e(ht(n[1],n[2]))}return null},i(e,null,[{key:"utcInstance",get:function(){return null===qt&&(qt=new e(0)),qt}}]);var n=e.prototype;return n.offsetName=function(){return this.name},n.formatOffset=function(t,e){return pt(this.fixed,e)},n.offset=function(){return this.fixed},n.equals=function(t){return"fixed"===t.type&&t.fixed===this.fixed},i(e,[{key:"type",get:function(){return"fixed"}},{key:"name",get:function(){return 0===this.fixed?"UTC":"UTC"+pt(this.fixed,"narrow")}},{key:"universal",get:function(){return!0}},{key:"isValid",get:function(){return!0}}]),e}(Rt),Zt=function(t){function e(e){var n;return(n=t.call(this)||this).zoneName=e,n}o(e,t);var n=e.prototype;return n.offsetName=function(){return null},n.formatOffset=function(){return""},n.offset=function(){return NaN},n.equals=function(){return!1},i(e,[{key:"type",get:function(){return"invalid"}},{key:"name",get:function(){return this.zoneName}},{key:"universal",get:function(){return!1}},{key:"isValid",get:function(){return!1}}]),e}(Rt);function Gt(t,e){var n;if(W(t)||null===t)return e;if(t instanceof Rt)return t;if("string"==typeof t){var i=t.toLowerCase();return"local"===i?e:"utc"===i||"gmt"===i?Wt.utcInstance:null!=(n=Ut.parseGMTOffset(t))?Wt.instance(n):Ut.isValidSpecifier(i)?Ut.create(t):Wt.parseSpecifier(i)||new Zt(t)}return Z(t)?Wt.instance(t):"object"==typeof t&&t.offset&&"number"==typeof t.offset?t:new Zt(t)}var Kt=function(){return Date.now()},$t=null,Yt=null,Jt=null,Qt=null,Xt=!1,te=function(){function t(){}return t.resetCaches=function(){ue.resetCache(),Ut.resetCache()},i(t,null,[{key:"now",get:function(){return Kt},set:function(t){Kt=t}},{key:"defaultZoneName",get:function(){return t.defaultZone.name},set:function(t){$t=t?Gt(t):null}},{key:"defaultZone",get:function(){return $t||zt.instance}},{key:"defaultLocale",get:function(){return Yt},set:function(t){Yt=t}},{key:"defaultNumberingSystem",get:function(){return Jt},set:function(t){Jt=t}},{key:"defaultOutputCalendar",get:function(){return Qt},set:function(t){Qt=t}},{key:"throwOnInvalid",get:function(){return Xt},set:function(t){Xt=t}}]),t}(),ee={};function ne(t,e){void 0===e&&(e={});var n=JSON.stringify([t,e]),i=ee[n];return i||(i=new Intl.DateTimeFormat(t,e),ee[n]=i),i}var ie={};var oe={};function re(t,e){void 0===e&&(e={});var n=e,i=(n.base,function(t,e){if(null==t)return{};var n,i,o={},r=Object.keys(t);for(i=0;i=0||(o[n]=t[n]);return o}(n,["base"])),o=JSON.stringify([t,i]),r=oe[o];return r||(r=new Intl.RelativeTimeFormat(t,e),oe[o]=r),r}var se=null;function ae(t,e,n,i,o){var r=t.listingMode(n);return"error"===r?null:"en"===r?i(e):o(e)}var ce=function(){function t(t,e,n){if(this.padTo=n.padTo||0,this.floor=n.floor||!1,!e&&K()){var i={useGrouping:!1};n.padTo>0&&(i.minimumIntegerDigits=n.padTo),this.inf=function(t,e){void 0===e&&(e={});var n=JSON.stringify([t,e]),i=ie[n];return i||(i=new Intl.NumberFormat(t,e),ie[n]=i),i}(t,i)}}return t.prototype.format=function(t){if(this.inf){var e=this.floor?Math.floor(t):t;return this.inf.format(e)}return et(this.floor?Math.floor(t):ot(t,3),this.padTo)},t}(),le=function(){function t(t,e,n){var i;if(this.opts=n,this.hasIntl=K(),t.zone.universal&&this.hasIntl){var o=t.offset/60*-1,r=o>=0?"Etc/GMT+"+o:"Etc/GMT"+o,s=Ut.isValidZone(r);0!==t.offset&&s?(i=r,this.dt=t):(i="UTC",n.timeZoneName?this.dt=t:this.dt=0===t.offset?t:mi.fromMillis(t.ts+60*t.offset*1e3))}else"local"===t.zone.type?this.dt=t:(this.dt=t,i=t.zone.name);if(this.hasIntl){var a=Object.assign({},this.opts);i&&(a.timeZone=i),this.dtf=ne(e,a)}}var e=t.prototype;return e.format=function(){if(this.hasIntl)return this.dtf.format(this.dt.toJSDate());var t=function(t){var e="EEEE, LLLL d, yyyy, h:mm a";switch(kt(Q(t,["weekday","era","year","month","day","hour","minute","second","timeZoneName","hour12"]))){case kt(v):return"M/d/yyyy";case kt(C):return"LLL d, yyyy";case kt(y):return"EEE, LLL d, yyyy";case kt(E):return"LLLL d, yyyy";case kt(T):return"EEEE, LLLL d, yyyy";case kt(D):return"h:mm a";case kt(S):return"h:mm:ss a";case kt(I):case kt(B):return"h:mm a";case kt(M):return"HH:mm";case kt(N):return"HH:mm:ss";case kt(O):case kt(P):return"HH:mm";case kt(R):return"M/d/yyyy, h:mm a";case kt(z):return"LLL d, yyyy, h:mm a";case kt(V):return"LLLL d, yyyy, h:mm a";case kt(U):return e;case kt(L):return"M/d/yyyy, h:mm:ss a";case kt(j):return"LLL d, yyyy, h:mm:ss a";case kt(F):return"EEE, d LLL yyyy, h:mm a";case kt(H):return"LLLL d, yyyy, h:mm:ss a";case kt(q):return"EEEE, LLLL d, yyyy, h:mm:ss a";default:return e}}(this.opts),e=ue.create("en-US");return Ot.create(e).formatDateTimeFromString(this.dt,t)},e.formatToParts=function(){return this.hasIntl&&$()?this.dtf.formatToParts(this.dt.toJSDate()):[]},e.resolvedOptions=function(){return this.hasIntl?this.dtf.resolvedOptions():{locale:"en-US",numberingSystem:"latn",outputCalendar:"gregory"}},t}(),de=function(){function t(t,e,n){this.opts=Object.assign({style:"long"},n),!e&&Y()&&(this.rtf=re(t,n))}var e=t.prototype;return e.format=function(t,e){return this.rtf?this.rtf.format(t,e):function(t,e,n,i){void 0===n&&(n="always"),void 0===i&&(i=!1);var o={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},r=-1===["hours","minutes","seconds"].indexOf(t);if("auto"===n&&r){var s="days"===t;switch(e){case 1:return s?"tomorrow":"next "+o[t][0];case-1:return s?"yesterday":"last "+o[t][0];case 0:return s?"today":"this "+o[t][0]}}var a=Object.is(e,-0)||e<0,c=Math.abs(e),l=1===c,d=o[t],u=i?l?d[1]:d[2]||d[1]:l?o[t][0]:t;return a?c+" "+u+" ago":"in "+c+" "+u}(e,t,this.opts.numeric,"long"!==this.opts.style)},e.formatToParts=function(t,e){return this.rtf?this.rtf.formatToParts(t,e):[]},t}(),ue=function(){function t(t,e,n,i){var o=function(t){var e=t.indexOf("-u-");if(-1===e)return[t];var n,i=t.substring(0,e);try{n=ne(t).resolvedOptions()}catch(t){n=ne(i).resolvedOptions()}var o=n;return[i,o.numberingSystem,o.calendar]}(t),r=o[0],s=o[1],a=o[2];this.locale=r,this.numberingSystem=e||s||null,this.outputCalendar=n||a||null,this.intl=function(t,e,n){return K()?n||e?(t+="-u",n&&(t+="-ca-"+n),e&&(t+="-nu-"+e),t):t:[]}(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=i,this.fastNumbersCached=null}t.fromOpts=function(e){return t.create(e.locale,e.numberingSystem,e.outputCalendar,e.defaultToEN)},t.create=function(e,n,i,o){void 0===o&&(o=!1);var r=e||te.defaultLocale;return new t(r||(o?"en-US":function(){if(se)return se;if(K()){var t=(new Intl.DateTimeFormat).resolvedOptions().locale;return se=t&&"und"!==t?t:"en-US"}return se="en-US"}()),n||te.defaultNumberingSystem,i||te.defaultOutputCalendar,r)},t.resetCache=function(){se=null,ee={},ie={},oe={}},t.fromObject=function(e){var n=void 0===e?{}:e,i=n.locale,o=n.numberingSystem,r=n.outputCalendar;return t.create(i,o,r)};var e=t.prototype;return e.listingMode=function(t){void 0===t&&(t=!0);var e=K()&&$(),n=this.isEnglish(),i=!(null!==this.numberingSystem&&"latn"!==this.numberingSystem||null!==this.outputCalendar&&"gregory"!==this.outputCalendar);return e||n&&i||t?!e||n&&i?"en":"intl":"error"},e.clone=function(e){return e&&0!==Object.getOwnPropertyNames(e).length?t.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,e.defaultToEN||!1):this},e.redefaultToEN=function(t){return void 0===t&&(t={}),this.clone(Object.assign({},t,{defaultToEN:!0}))},e.redefaultToSystem=function(t){return void 0===t&&(t={}),this.clone(Object.assign({},t,{defaultToEN:!1}))},e.months=function(t,e,n){var i=this;return void 0===e&&(e=!1),void 0===n&&(n=!0),ae(this,t,n,At,(function(){var n=e?{month:t,day:"numeric"}:{month:t},o=e?"format":"standalone";return i.monthsCache[o][t]||(i.monthsCache[o][t]=function(t){for(var e=[],n=1;n<=12;n++){var i=mi.utc(2016,n,1);e.push(t(i))}return e}((function(t){return i.extract(t,n,"month")}))),i.monthsCache[o][t]}))},e.weekdays=function(t,e,n){var i=this;return void 0===e&&(e=!1),void 0===n&&(n=!0),ae(this,t,n,Et,(function(){var n=e?{weekday:t,year:"numeric",month:"long",day:"numeric"}:{weekday:t},o=e?"format":"standalone";return i.weekdaysCache[o][t]||(i.weekdaysCache[o][t]=function(t){for(var e=[],n=1;n<=7;n++){var i=mi.utc(2016,11,13+n);e.push(t(i))}return e}((function(t){return i.extract(t,n,"weekday")}))),i.weekdaysCache[o][t]}))},e.meridiems=function(t){var e=this;return void 0===t&&(t=!0),ae(this,void 0,t,(function(){return Tt}),(function(){if(!e.meridiemCache){var t={hour:"numeric",hour12:!0};e.meridiemCache=[mi.utc(2016,11,13,9),mi.utc(2016,11,13,19)].map((function(n){return e.extract(n,t,"dayperiod")}))}return e.meridiemCache}))},e.eras=function(t,e){var n=this;return void 0===e&&(e=!0),ae(this,t,e,Bt,(function(){var e={era:t};return n.eraCache[t]||(n.eraCache[t]=[mi.utc(-40,1,1),mi.utc(2017,1,1)].map((function(t){return n.extract(t,e,"era")}))),n.eraCache[t]}))},e.extract=function(t,e,n){var i=this.dtFormatter(t,e).formatToParts().find((function(t){return t.type.toLowerCase()===n}));return i?i.value:null},e.numberFormatter=function(t){return void 0===t&&(t={}),new ce(this.intl,t.forceSimple||this.fastNumbers,t)},e.dtFormatter=function(t,e){return void 0===e&&(e={}),new le(t,this.intl,e)},e.relFormatter=function(t){return void 0===t&&(t={}),new de(this.intl,this.isEnglish(),t)},e.isEnglish=function(){return"en"===this.locale||"en-us"===this.locale.toLowerCase()||K()&&new Intl.DateTimeFormat(this.intl).resolvedOptions().locale.startsWith("en-us")},e.equals=function(t){return this.locale===t.locale&&this.numberingSystem===t.numberingSystem&&this.outputCalendar===t.outputCalendar},i(t,[{key:"fastNumbers",get:function(){var t;return null==this.fastNumbersCached&&(this.fastNumbersCached=(!(t=this).numberingSystem||"latn"===t.numberingSystem)&&("latn"===t.numberingSystem||!t.locale||t.locale.startsWith("en")||K()&&"latn"===new Intl.DateTimeFormat(t.intl).resolvedOptions().numberingSystem)),this.fastNumbersCached}}]),t}();function he(){for(var t=arguments.length,e=new Array(t),n=0;n1?e-1:0),i=1;i3?vt.indexOf(t)+1:Ct.indexOf(t)+1),a}var Oe=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function Pe(t){var e,n=t[1],i=t[2],o=t[3],r=t[4],s=t[5],a=t[6],c=t[7],l=t[8],d=t[9],u=t[10],h=t[11],m=Ne(n,r,o,i,s,a,c);return e=l?Me[l]:d?0:ht(u,h),[m,new Wt(e)]}var Re=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,Le=/^(Monday|Tuesday|Wedsday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,ze=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function je(t){var e=t[1],n=t[2],i=t[3];return[Ne(e,t[4],i,n,t[5],t[6],t[7]),Wt.utcInstance]}function Fe(t){var e=t[1],n=t[2],i=t[3],o=t[4],r=t[5],s=t[6];return[Ne(e,t[7],n,i,o,r,s),Wt.utcInstance]}var Ve=he(/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/,xe),He=he(/(\d{4})-?W(\d\d)(?:-?(\d))?/,xe),Ue=he(/(\d{4})-?(\d{3})/,xe),qe=he(ke),We=me(ye,Ee,Te),Ze=me(we,Ee,Te),Ge=me(_e,Ee,Te),Ke=me(Ee,Te);var $e=me(Ee);var Ye=he(/(\d{4})-(\d\d)-(\d\d)/,ve),Je=he(Ae),Qe=me(ye,Ee,Te,De),Xe=me(Ee,Te,De);var tn={weeks:{days:7,hours:168,minutes:10080,seconds:604800,milliseconds:6048e5},days:{hours:24,minutes:1440,seconds:86400,milliseconds:864e5},hours:{minutes:60,seconds:3600,milliseconds:36e5},minutes:{seconds:60,milliseconds:6e4},seconds:{milliseconds:1e3}},en=Object.assign({years:{quarters:4,months:12,weeks:52,days:365,hours:8760,minutes:525600,seconds:31536e3,milliseconds:31536e6},quarters:{months:3,weeks:13,days:91,hours:2184,minutes:131040,seconds:7862400,milliseconds:78624e5},months:{weeks:4,days:30,hours:720,minutes:43200,seconds:2592e3,milliseconds:2592e6}},tn),nn=365.2425,on=30.436875,rn=Object.assign({years:{quarters:4,months:12,weeks:52.1775,days:nn,hours:8765.82,minutes:525949.2,seconds:525949.2*60,milliseconds:525949.2*60*1e3},quarters:{months:3,weeks:13.044375,days:91.310625,hours:2191.455,minutes:131487.3,seconds:525949.2*60/4,milliseconds:7889237999.999999},months:{weeks:4.3481250000000005,days:on,hours:730.485,minutes:43829.1,seconds:2629746,milliseconds:2629746e3}},tn),sn=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],an=sn.slice(0).reverse();function cn(t,e,n){void 0===n&&(n=!1);var i={values:n?e.values:Object.assign({},t.values,e.values||{}),loc:t.loc.clone(e.loc),conversionAccuracy:e.conversionAccuracy||t.conversionAccuracy};return new dn(i)}function ln(t,e,n,i,o){var r=t[o][n],s=e[n]/r,a=!(Math.sign(s)===Math.sign(i[o]))&&0!==i[o]&&Math.abs(s)<=1?function(t){return t<0?Math.floor(t):Math.ceil(t)}(s):Math.trunc(s);i[o]+=a,e[n]-=a*r}var dn=function(){function t(t){var e="longterm"===t.conversionAccuracy||!1;this.values=t.values,this.loc=t.loc||ue.create(),this.conversionAccuracy=e?"longterm":"casual",this.invalid=t.invalid||null,this.matrix=e?rn:en,this.isLuxonDuration=!0}t.fromMillis=function(e,n){return t.fromObject(Object.assign({milliseconds:e},n))},t.fromObject=function(e){if(null==e||"object"!=typeof e)throw new k("Duration.fromObject: argument expected to be an object, got "+(null===e?"null":typeof e));return new t({values:gt(e,t.normalizeUnit,["locale","numberingSystem","conversionAccuracy","zone"]),loc:ue.fromObject(e),conversionAccuracy:e.conversionAccuracy})},t.fromISO=function(e,n){var i=function(t){return ge(t,[Ie,Be])}(e),o=i[0];if(o){var r=Object.assign(o,n);return t.fromObject(r)}return t.invalid("unparsable",'the input "'+e+"\" can't be parsed as ISO 8601")},t.fromISOTime=function(e,n){var i=function(t){return ge(t,[Se,$e])}(e),o=i[0];if(o){var r=Object.assign(o,n);return t.fromObject(r)}return t.invalid("unparsable",'the input "'+e+"\" can't be parsed as ISO 8601")},t.invalid=function(e,n){if(void 0===n&&(n=null),!e)throw new k("need to specify a reason the Duration is invalid");var i=e instanceof Pt?e:new Pt(e,n);if(te.throwOnInvalid)throw new p(i);return new t({invalid:i})},t.normalizeUnit=function(t){var e={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[t?t.toLowerCase():t];if(!e)throw new b(t);return e},t.isDuration=function(t){return t&&t.isLuxonDuration||!1};var e=t.prototype;return e.toFormat=function(t,e){void 0===e&&(e={});var n=Object.assign({},e,{floor:!1!==e.round&&!1!==e.floor});return this.isValid?Ot.create(this.loc,n).formatDurationFromString(this,t):"Invalid Duration"},e.toObject=function(t){if(void 0===t&&(t={}),!this.isValid)return{};var e=Object.assign({},this.values);return t.includeConfig&&(e.conversionAccuracy=this.conversionAccuracy,e.numberingSystem=this.loc.numberingSystem,e.locale=this.loc.locale),e},e.toISO=function(){if(!this.isValid)return null;var t="P";return 0!==this.years&&(t+=this.years+"Y"),0===this.months&&0===this.quarters||(t+=this.months+3*this.quarters+"M"),0!==this.weeks&&(t+=this.weeks+"W"),0!==this.days&&(t+=this.days+"D"),0===this.hours&&0===this.minutes&&0===this.seconds&&0===this.milliseconds||(t+="T"),0!==this.hours&&(t+=this.hours+"H"),0!==this.minutes&&(t+=this.minutes+"M"),0===this.seconds&&0===this.milliseconds||(t+=ot(this.seconds+this.milliseconds/1e3,3)+"S"),"P"===t&&(t+="T0S"),t},e.toISOTime=function(t){if(void 0===t&&(t={}),!this.isValid)return null;var e=this.toMillis();if(e<0||e>=864e5)return null;t=Object.assign({suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended"},t);var n=this.shiftTo("hours","minutes","seconds","milliseconds"),i="basic"===t.format?"hhmm":"hh:mm";t.suppressSeconds&&0===n.seconds&&0===n.milliseconds||(i+="basic"===t.format?"ss":":ss",t.suppressMilliseconds&&0===n.milliseconds||(i+=".SSS"));var o=n.toFormat(i);return t.includePrefix&&(o="T"+o),o},e.toJSON=function(){return this.toISO()},e.toString=function(){return this.toISO()},e.toMillis=function(){return this.as("milliseconds")},e.valueOf=function(){return this.toMillis()},e.plus=function(t){if(!this.isValid)return this;for(var e,n=un(t),i={},o=u(sn);!(e=o()).done;){var r=e.value;(X(n.values,r)||X(this.values,r))&&(i[r]=n.get(r)+this.get(r))}return cn(this,{values:i},!0)},e.minus=function(t){if(!this.isValid)return this;var e=un(t);return this.plus(e.negate())},e.mapUnits=function(t){if(!this.isValid)return this;for(var e={},n=0,i=Object.keys(this.values);n=0){o=d;var h=0;for(var m in a)h+=this.matrix[m][d]*a[m],a[m]=0;Z(c[d])&&(h+=c[d]);var g=Math.trunc(h);for(var p in s[d]=g,a[d]=h-g,c)sn.indexOf(p)>sn.indexOf(d)&&ln(this.matrix,c,p,s,d)}else Z(c[d])&&(a[d]=c[d])}for(var f in a)0!==a[f]&&(s[o]+=f===o?a[f]:a[f]/this.matrix[o][f]);return cn(this,{values:s},!0).normalize()},e.negate=function(){if(!this.isValid)return this;for(var t={},e=0,n=Object.keys(this.values);et},e.isBefore=function(t){return!!this.isValid&&this.e<=t},e.contains=function(t){return!!this.isValid&&(this.s<=t&&this.e>t)},e.set=function(e){var n=void 0===e?{}:e,i=n.start,o=n.end;return this.isValid?t.fromDateTimes(i||this.s,o||this.e):this},e.splitAt=function(){var e=this;if(!this.isValid)return[];for(var n=arguments.length,i=new Array(n),o=0;o+this.e?this.e:l;s.push(t.fromDateTimes(a,d)),a=d,c+=1}return s},e.splitBy=function(e){var n=un(e);if(!this.isValid||!n.isValid||0===n.as("milliseconds"))return[];for(var i,o=this.s,r=1,s=[];o+this.e?this.e:a,s.push(t.fromDateTimes(o,i)),o=i,r+=1}return s},e.divideEqually=function(t){return this.isValid?this.splitBy(this.length()/t).slice(0,t):[]},e.overlaps=function(t){return this.e>t.s&&this.s=t.e)},e.equals=function(t){return!(!this.isValid||!t.isValid)&&(this.s.equals(t.s)&&this.e.equals(t.e))},e.intersection=function(e){if(!this.isValid)return this;var n=this.s>e.s?this.s:e.s,i=this.e=i?null:t.fromDateTimes(n,i)},e.union=function(e){if(!this.isValid)return this;var n=this.se.e?this.e:e.e;return t.fromDateTimes(n,i)},t.merge=function(t){var e=t.sort((function(t,e){return t.s-e.s})).reduce((function(t,e){var n=t[0],i=t[1];return i?i.overlaps(e)||i.abutsStart(e)?[n,i.union(e)]:[n.concat([i]),e]:[n,e]}),[[],null]),n=e[0],i=e[1];return i&&n.push(i),n},t.xor=function(e){for(var n,i,o=null,r=0,s=[],a=e.map((function(t){return[{time:t.s,type:"s"},{time:t.e,type:"e"}]})),c=u((n=Array.prototype).concat.apply(n,a).sort((function(t,e){return t.time-e.time})));!(i=c()).done;){var l=i.value;1===(r+="s"===l.type?1:-1)?o=l.time:(o&&+o!=+l.time&&s.push(t.fromDateTimes(o,l.time)),o=null)}return t.merge(s)},e.difference=function(){for(var e=this,n=arguments.length,i=new Array(n),o=0;o=0){var u;i=l;var h,m=d(t,e);(o=t.plus(((u={})[l]=m,u)))>e?(t=t.plus(((h={})[l]=m-1,h)),m-=1):t=o,r[l]=m}}return[t,r,o,i]}(t,e,n),r=o[0],s=o[1],a=o[2],c=o[3],l=e-r,d=n.filter((function(t){return["hours","minutes","seconds","milliseconds"].indexOf(t)>=0}));if(0===d.length){var u;if(a0?(h=dn.fromMillis(l,i)).shiftTo.apply(h,d).plus(m):m}var kn={arab:"[٠-٩]",arabext:"[۰-۹]",bali:"[᭐-᭙]",beng:"[০-৯]",deva:"[०-९]",fullwide:"[0-9]",gujr:"[૦-૯]",hanidec:"[〇|一|二|三|四|五|六|七|八|九]",khmr:"[០-៩]",knda:"[೦-೯]",laoo:"[໐-໙]",limb:"[᥆-᥏]",mlym:"[൦-൯]",mong:"[᠐-᠙]",mymr:"[၀-၉]",orya:"[୦-୯]",tamldec:"[௦-௯]",telu:"[౦-౯]",thai:"[๐-๙]",tibt:"[༠-༩]",latn:"\\d"},xn={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},wn=kn.hanidec.replace(/[\[|\]]/g,"").split("");function _n(t,e){var n=t.numberingSystem;return void 0===e&&(e=""),new RegExp(""+kn[n||"latn"]+e)}function An(t,e){return void 0===e&&(e=function(t){return t}),{regex:t,deser:function(t){var n=t[0];return e(function(t){var e=parseInt(t,10);if(isNaN(e)){e="";for(var n=0;n=s&&i<=a&&(e+=i-s)}}return parseInt(e,10)}return e}(n))}}}var vn="( |"+String.fromCharCode(160)+")",Cn=new RegExp(vn,"g");function yn(t){return t.replace(/\./g,"\\.?").replace(Cn,vn)}function En(t){return t.replace(/\./g,"").replace(Cn," ").toLowerCase()}function Tn(t,e){return null===t?null:{regex:RegExp(t.map(yn).join("|")),deser:function(n){var i=n[0];return t.findIndex((function(t){return En(i)===En(t)}))+e}}}function Dn(t,e){return{regex:t,deser:function(t){return ht(t[1],t[2])},groups:e}}function Sn(t){return{regex:t,deser:function(t){return t[0]}}}var In={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour:{numeric:"h","2-digit":"hh"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"}};var Bn=null;function Mn(t,e){if(t.literal)return t;var n=Ot.macroTokenToFormatOpts(t.val);if(!n)return t;var i=Ot.create(e,n).formatDateTimeParts((Bn||(Bn=mi.fromMillis(1555555555555)),Bn)).map((function(t){return function(t,e,n){var i=t.type,o=t.value;if("literal"===i)return{literal:!0,val:o};var r=n[i],s=In[i];return"object"==typeof s&&(s=s[r]),s?{literal:!1,val:s}:void 0}(t,0,n)}));return i.includes(void 0)?t:i}function Nn(t,e,n){var i=function(t,e){var n;return(n=Array.prototype).concat.apply(n,t.map((function(t){return Mn(t,e)})))}(Ot.parseFormat(n),t),o=i.map((function(e){return n=e,o=_n(i=t),r=_n(i,"{2}"),s=_n(i,"{3}"),a=_n(i,"{4}"),c=_n(i,"{6}"),l=_n(i,"{1,2}"),d=_n(i,"{1,3}"),u=_n(i,"{1,6}"),h=_n(i,"{1,9}"),m=_n(i,"{2,4}"),g=_n(i,"{4,6}"),p=function(t){return{regex:RegExp((e=t.val,e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&"))),deser:function(t){return t[0]},literal:!0};var e},f=function(t){if(n.literal)return p(t);switch(t.val){case"G":return Tn(i.eras("short",!1),0);case"GG":return Tn(i.eras("long",!1),0);case"y":return An(u);case"yy":case"kk":return An(m,dt);case"yyyy":case"kkkk":return An(a);case"yyyyy":return An(g);case"yyyyyy":return An(c);case"M":case"L":case"d":case"H":case"h":case"m":case"q":case"s":case"W":return An(l);case"MM":case"LL":case"dd":case"HH":case"hh":case"mm":case"qq":case"ss":case"WW":return An(r);case"MMM":return Tn(i.months("short",!0,!1),1);case"MMMM":return Tn(i.months("long",!0,!1),1);case"LLL":return Tn(i.months("short",!1,!1),1);case"LLLL":return Tn(i.months("long",!1,!1),1);case"o":case"S":return An(d);case"ooo":case"SSS":return An(s);case"u":return Sn(h);case"a":return Tn(i.meridiems(),0);case"E":case"c":return An(o);case"EEE":return Tn(i.weekdays("short",!1,!1),1);case"EEEE":return Tn(i.weekdays("long",!1,!1),1);case"ccc":return Tn(i.weekdays("short",!0,!1),1);case"cccc":return Tn(i.weekdays("long",!0,!1),1);case"Z":case"ZZ":return Dn(new RegExp("([+-]"+l.source+")(?::("+r.source+"))?"),2);case"ZZZ":return Dn(new RegExp("([+-]"+l.source+")("+r.source+")?"),2);case"z":return Sn(/[a-z_+-/]{1,256}?/i);default:return p(t)}}(n)||{invalidReason:"missing Intl.DateTimeFormat.formatToParts support"},f.token=n,f;var n,i,o,r,s,a,c,l,d,u,h,m,g,p,f})),r=o.find((function(t){return t.invalidReason}));if(r)return{input:e,tokens:i,invalidReason:r.invalidReason};var s=function(t){return["^"+t.map((function(t){return t.regex})).reduce((function(t,e){return t+"("+e.source+")"}),"")+"$",t]}(o),a=s[0],c=s[1],l=RegExp(a,"i"),d=function(t,e,n){var i=t.match(e);if(i){var o={},r=1;for(var s in n)if(X(n,s)){var a=n[s],c=a.groups?a.groups+1:1;!a.literal&&a.token&&(o[a.token.val[0]]=a.deser(i.slice(r,r+c))),r+=c}return[i,o]}return[i,{}]}(e,l,c),u=d[0],h=d[1],m=h?function(t){var e;return e=W(t.Z)?W(t.z)?null:Ut.create(t.z):new Wt(t.Z),W(t.q)||(t.M=3*(t.q-1)+1),W(t.h)||(t.h<12&&1===t.a?t.h+=12:12===t.h&&0===t.a&&(t.h=0)),0===t.G&&t.y&&(t.y=-t.y),W(t.u)||(t.S=it(t.u)),[Object.keys(t).reduce((function(e,n){var i=function(t){switch(t){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}}(n);return i&&(e[i]=t[n]),e}),{}),e]}(h):[null,null],g=m[0],p=m[1];if(X(h,"a")&&X(h,"H"))throw new f("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:i,regex:l,rawMatches:u,matches:h,result:g,zone:p}}var On=[0,31,59,90,120,151,181,212,243,273,304,334],Pn=[0,31,60,91,121,152,182,213,244,274,305,335];function Rn(t,e){return new Pt("unit out of range","you specified "+e+" (of type "+typeof e+") as a "+t+", which is invalid")}function Ln(t,e,n){var i=new Date(Date.UTC(t,e-1,n)).getUTCDay();return 0===i?7:i}function zn(t,e,n){return n+(rt(t)?Pn:On)[e-1]}function jn(t,e){var n=rt(t)?Pn:On,i=n.findIndex((function(t){return tlt(n)?(e=n+1,a=1):e=n,Object.assign({weekYear:e,weekNumber:a,weekday:s},ft(t))}function Vn(t){var e,n=t.weekYear,i=t.weekNumber,o=t.weekday,r=Ln(n,1,4),s=st(n),a=7*i+o-r-3;a<1?a+=st(e=n-1):a>s?(e=n+1,a-=st(n)):e=n;var c=jn(e,a),l=c.month,d=c.day;return Object.assign({year:e,month:l,day:d},ft(t))}function Hn(t){var e=t.year,n=zn(e,t.month,t.day);return Object.assign({year:e,ordinal:n},ft(t))}function Un(t){var e=t.year,n=jn(e,t.ordinal),i=n.month,o=n.day;return Object.assign({year:e,month:i,day:o},ft(t))}function qn(t){var e=G(t.year),n=tt(t.month,1,12),i=tt(t.day,1,at(t.year,t.month));return e?n?!i&&Rn("day",t.day):Rn("month",t.month):Rn("year",t.year)}function Wn(t){var e=t.hour,n=t.minute,i=t.second,o=t.millisecond,r=tt(e,0,23)||24===e&&0===n&&0===i&&0===o,s=tt(n,0,59),a=tt(i,0,59),c=tt(o,0,999);return r?s?a?!c&&Rn("millisecond",o):Rn("second",i):Rn("minute",n):Rn("hour",e)}var Zn="Invalid DateTime",Gn=864e13;function Kn(t){return new Pt("unsupported zone",'the zone "'+t.name+'" is not supported')}function $n(t){return null===t.weekData&&(t.weekData=Fn(t.c)),t.weekData}function Yn(t,e){var n={ts:t.ts,zone:t.zone,c:t.c,o:t.o,loc:t.loc,invalid:t.invalid};return new mi(Object.assign({},n,e,{old:n}))}function Jn(t,e,n){var i=t-60*e*1e3,o=n.offset(i);if(e===o)return[i,e];i-=60*(o-e)*1e3;var r=n.offset(i);return o===r?[i,o]:[t-60*Math.min(o,r)*1e3,Math.max(o,r)]}function Qn(t,e){var n=new Date(t+=60*e*1e3);return{year:n.getUTCFullYear(),month:n.getUTCMonth()+1,day:n.getUTCDate(),hour:n.getUTCHours(),minute:n.getUTCMinutes(),second:n.getUTCSeconds(),millisecond:n.getUTCMilliseconds()}}function Xn(t,e,n){return Jn(ct(t),e,n)}function ti(t,e){var n=t.o,i=t.c.year+Math.trunc(e.years),o=t.c.month+Math.trunc(e.months)+3*Math.trunc(e.quarters),r=Object.assign({},t.c,{year:i,month:o,day:Math.min(t.c.day,at(i,o))+Math.trunc(e.days)+7*Math.trunc(e.weeks)}),s=dn.fromObject({years:e.years-Math.trunc(e.years),quarters:e.quarters-Math.trunc(e.quarters),months:e.months-Math.trunc(e.months),weeks:e.weeks-Math.trunc(e.weeks),days:e.days-Math.trunc(e.days),hours:e.hours,minutes:e.minutes,seconds:e.seconds,milliseconds:e.milliseconds}).as("milliseconds"),a=Jn(ct(r),n,t.zone),c=a[0],l=a[1];return 0!==s&&(c+=s,l=t.zone.offset(c)),{ts:c,o:l}}function ei(t,e,n,i,o){var r=n.setZone,s=n.zone;if(t&&0!==Object.keys(t).length){var a=e||s,c=mi.fromObject(Object.assign(t,n,{zone:a,setZone:void 0}));return r?c:c.setZone(s)}return mi.invalid(new Pt("unparsable",'the input "'+o+"\" can't be parsed as "+i))}function ni(t,e,n){return void 0===n&&(n=!0),t.isValid?Ot.create(ue.create("en-US"),{allowZ:n,forceSimple:!0}).formatDateTimeFromString(t,e):null}function ii(t,e){var n=e.suppressSeconds,i=void 0!==n&&n,o=e.suppressMilliseconds,r=void 0!==o&&o,s=e.includeOffset,a=e.includePrefix,c=void 0!==a&&a,l=e.includeZone,d=void 0!==l&&l,u=e.spaceZone,h=void 0!==u&&u,m=e.format,g=void 0===m?"extended":m,p="basic"===g?"HHmm":"HH:mm";i&&0===t.second&&0===t.millisecond||(p+="basic"===g?"ss":":ss",r&&0===t.millisecond||(p+=".SSS")),(d||s)&&h&&(p+=" "),d?p+="z":s&&(p+="basic"===g?"ZZZ":"ZZ");var f=ni(t,p);return c&&(f="T"+f),f}var oi={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},ri={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},si={ordinal:1,hour:0,minute:0,second:0,millisecond:0},ai=["year","month","day","hour","minute","second","millisecond"],ci=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],li=["year","ordinal","hour","minute","second","millisecond"];function di(t){var e={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[t.toLowerCase()];if(!e)throw new b(t);return e}function ui(t,e){for(var n,i=u(ai);!(n=i()).done;){var o=n.value;W(t[o])&&(t[o]=oi[o])}var r=qn(t)||Wn(t);if(r)return mi.invalid(r);var s=te.now(),a=Xn(t,e.offset(s),e),c=a[0],l=a[1];return new mi({ts:c,zone:e,o:l})}function hi(t,e,n){var i=!!W(n.round)||n.round,o=function(t,o){return t=ot(t,i||n.calendary?0:2,!0),e.loc.clone(n).relFormatter(n).format(t,o)},r=function(i){return n.calendary?e.hasSame(t,i)?0:e.startOf(i).diff(t.startOf(i),i).get(i):e.diff(t,i).get(i)};if(n.unit)return o(r(n.unit),n.unit);for(var s,a=u(n.units);!(s=a()).done;){var c=s.value,l=r(c);if(Math.abs(l)>=1)return o(l,c)}return o(t>e?-0:0,n.units[n.units.length-1])}var mi=function(){function t(t){var e=t.zone||te.defaultZone,n=t.invalid||(Number.isNaN(t.ts)?new Pt("invalid input"):null)||(e.isValid?null:Kn(e));this.ts=W(t.ts)?te.now():t.ts;var i=null,o=null;if(!n)if(t.old&&t.old.ts===this.ts&&t.old.zone.equals(e)){var r=[t.old.c,t.old.o];i=r[0],o=r[1]}else{var s=e.offset(this.ts);i=Qn(this.ts,s),i=(n=Number.isNaN(i.year)?new Pt("invalid input"):null)?null:i,o=n?null:s}this._zone=e,this.loc=t.loc||ue.create(),this.invalid=n,this.weekData=null,this.c=i,this.o=o,this.isLuxonDateTime=!0}t.now=function(){return new t({})},t.local=function(e,n,i,o,r,s,a){return W(e)?t.now():ui({year:e,month:n,day:i,hour:o,minute:r,second:s,millisecond:a},te.defaultZone)},t.utc=function(e,n,i,o,r,s,a){return W(e)?new t({ts:te.now(),zone:Wt.utcInstance}):ui({year:e,month:n,day:i,hour:o,minute:r,second:s,millisecond:a},Wt.utcInstance)},t.fromJSDate=function(e,n){void 0===n&&(n={});var i,o=(i=e,"[object Date]"===Object.prototype.toString.call(i)?e.valueOf():NaN);if(Number.isNaN(o))return t.invalid("invalid input");var r=Gt(n.zone,te.defaultZone);return r.isValid?new t({ts:o,zone:r,loc:ue.fromObject(n)}):t.invalid(Kn(r))},t.fromMillis=function(e,n){if(void 0===n&&(n={}),Z(e))return e<-Gn||e>Gn?t.invalid("Timestamp out of range"):new t({ts:e,zone:Gt(n.zone,te.defaultZone),loc:ue.fromObject(n)});throw new k("fromMillis requires a numerical input, but received a "+typeof e+" with value "+e)},t.fromSeconds=function(e,n){if(void 0===n&&(n={}),Z(e))return new t({ts:1e3*e,zone:Gt(n.zone,te.defaultZone),loc:ue.fromObject(n)});throw new k("fromSeconds requires a numerical input")},t.fromObject=function(e){var n=Gt(e.zone,te.defaultZone);if(!n.isValid)return t.invalid(Kn(n));var i=te.now(),o=n.offset(i),r=gt(e,di,["zone","locale","outputCalendar","numberingSystem"]),s=!W(r.ordinal),a=!W(r.year),c=!W(r.month)||!W(r.day),l=a||c,d=r.weekYear||r.weekNumber,h=ue.fromObject(e);if((l||s)&&d)throw new f("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(c&&s)throw new f("Can't mix ordinal dates with month/day");var m,g,p=d||r.weekday&&!l,b=Qn(i,o);p?(m=ci,g=ri,b=Fn(b)):s?(m=li,g=si,b=Hn(b)):(m=ai,g=oi);for(var k,x=!1,w=u(m);!(k=w()).done;){var _=k.value;W(r[_])?r[_]=x?g[_]:b[_]:x=!0}var A=p?function(t){var e=G(t.weekYear),n=tt(t.weekNumber,1,lt(t.weekYear)),i=tt(t.weekday,1,7);return e?n?!i&&Rn("weekday",t.weekday):Rn("week",t.week):Rn("weekYear",t.weekYear)}(r):s?function(t){var e=G(t.year),n=tt(t.ordinal,1,st(t.year));return e?!n&&Rn("ordinal",t.ordinal):Rn("year",t.year)}(r):qn(r),v=A||Wn(r);if(v)return t.invalid(v);var C=Xn(p?Vn(r):s?Un(r):r,o,n),y=new t({ts:C[0],zone:n,o:C[1],loc:h});return r.weekday&&l&&e.weekday!==y.weekday?t.invalid("mismatched weekday","you can't specify both a weekday of "+r.weekday+" and a date of "+y.toISO()):y},t.fromISO=function(t,e){void 0===e&&(e={});var n=function(t){return ge(t,[Ve,We],[He,Ze],[Ue,Ge],[qe,Ke])}(t);return ei(n[0],n[1],e,"ISO 8601",t)},t.fromRFC2822=function(t,e){void 0===e&&(e={});var n=function(t){return ge(function(t){return t.replace(/\([^)]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}(t),[Oe,Pe])}(t);return ei(n[0],n[1],e,"RFC 2822",t)},t.fromHTTP=function(t,e){void 0===e&&(e={});var n=function(t){return ge(t,[Re,je],[Le,je],[ze,Fe])}(t);return ei(n[0],n[1],e,"HTTP",e)},t.fromFormat=function(e,n,i){if(void 0===i&&(i={}),W(e)||W(n))throw new k("fromFormat requires an input string and a format");var o=i,r=o.locale,s=void 0===r?null:r,a=o.numberingSystem,c=void 0===a?null:a,l=function(t,e,n){var i=Nn(t,e,n);return[i.result,i.zone,i.invalidReason]}(ue.fromOpts({locale:s,numberingSystem:c,defaultToEN:!0}),e,n),d=l[0],u=l[1],h=l[2];return h?t.invalid(h):ei(d,u,i,"format "+n,e)},t.fromString=function(e,n,i){return void 0===i&&(i={}),t.fromFormat(e,n,i)},t.fromSQL=function(t,e){void 0===e&&(e={});var n=function(t){return ge(t,[Ye,Qe],[Je,Xe])}(t);return ei(n[0],n[1],e,"SQL",t)},t.invalid=function(e,n){if(void 0===n&&(n=null),!e)throw new k("need to specify a reason the DateTime is invalid");var i=e instanceof Pt?e:new Pt(e,n);if(te.throwOnInvalid)throw new m(i);return new t({invalid:i})},t.isDateTime=function(t){return t&&t.isLuxonDateTime||!1};var e=t.prototype;return e.get=function(t){return this[t]},e.resolvedLocaleOpts=function(t){void 0===t&&(t={});var e=Ot.create(this.loc.clone(t),t).resolvedOptions(this);return{locale:e.locale,numberingSystem:e.numberingSystem,outputCalendar:e.calendar}},e.toUTC=function(t,e){return void 0===t&&(t=0),void 0===e&&(e={}),this.setZone(Wt.instance(t),e)},e.toLocal=function(){return this.setZone(te.defaultZone)},e.setZone=function(e,n){var i=void 0===n?{}:n,o=i.keepLocalTime,r=void 0!==o&&o,s=i.keepCalendarTime,a=void 0!==s&&s;if((e=Gt(e,te.defaultZone)).equals(this.zone))return this;if(e.isValid){var c=this.ts;if(r||a){var l=e.offset(this.ts);c=Xn(this.toObject(),l,e)[0]}return Yn(this,{ts:c,zone:e})}return t.invalid(Kn(e))},e.reconfigure=function(t){var e=void 0===t?{}:t,n=e.locale,i=e.numberingSystem,o=e.outputCalendar;return Yn(this,{loc:this.loc.clone({locale:n,numberingSystem:i,outputCalendar:o})})},e.setLocale=function(t){return this.reconfigure({locale:t})},e.set=function(t){if(!this.isValid)return this;var e,n=gt(t,di,[]),i=!W(n.weekYear)||!W(n.weekNumber)||!W(n.weekday),o=!W(n.ordinal),r=!W(n.year),s=!W(n.month)||!W(n.day),a=r||s,c=n.weekYear||n.weekNumber;if((a||o)&&c)throw new f("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(s&&o)throw new f("Can't mix ordinal dates with month/day");i?e=Vn(Object.assign(Fn(this.c),n)):W(n.ordinal)?(e=Object.assign(this.toObject(),n),W(n.day)&&(e.day=Math.min(at(e.year,e.month),e.day))):e=Un(Object.assign(Hn(this.c),n));var l=Xn(e,this.o,this.zone);return Yn(this,{ts:l[0],o:l[1]})},e.plus=function(t){return this.isValid?Yn(this,ti(this,un(t))):this},e.minus=function(t){return this.isValid?Yn(this,ti(this,un(t).negate())):this},e.startOf=function(t){if(!this.isValid)return this;var e={},n=dn.normalizeUnit(t);switch(n){case"years":e.month=1;case"quarters":case"months":e.day=1;case"weeks":case"days":e.hour=0;case"hours":e.minute=0;case"minutes":e.second=0;case"seconds":e.millisecond=0}if("weeks"===n&&(e.weekday=1),"quarters"===n){var i=Math.ceil(this.month/3);e.month=3*(i-1)+1}return this.set(e)},e.endOf=function(t){var e;return this.isValid?this.plus((e={},e[t]=1,e)).startOf(t).minus(1):this},e.toFormat=function(t,e){return void 0===e&&(e={}),this.isValid?Ot.create(this.loc.redefaultToEN(e)).formatDateTimeFromString(this,t):Zn},e.toLocaleString=function(t){return void 0===t&&(t=v),this.isValid?Ot.create(this.loc.clone(t),t).formatDateTime(this):Zn},e.toLocaleParts=function(t){return void 0===t&&(t={}),this.isValid?Ot.create(this.loc.clone(t),t).formatDateTimeParts(this):[]},e.toISO=function(t){return void 0===t&&(t={}),this.isValid?this.toISODate(t)+"T"+this.toISOTime(t):null},e.toISODate=function(t){var e=(void 0===t?{}:t).format,n="basic"===(void 0===e?"extended":e)?"yyyyMMdd":"yyyy-MM-dd";return this.year>9999&&(n="+"+n),ni(this,n)},e.toISOWeekDate=function(){return ni(this,"kkkk-'W'WW-c")},e.toISOTime=function(t){var e=void 0===t?{}:t,n=e.suppressMilliseconds,i=void 0!==n&&n,o=e.suppressSeconds,r=void 0!==o&&o,s=e.includeOffset,a=void 0===s||s,c=e.includePrefix,l=void 0!==c&&c,d=e.format;return ii(this,{suppressSeconds:r,suppressMilliseconds:i,includeOffset:a,includePrefix:l,format:void 0===d?"extended":d})},e.toRFC2822=function(){return ni(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)},e.toHTTP=function(){return ni(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")},e.toSQLDate=function(){return ni(this,"yyyy-MM-dd")},e.toSQLTime=function(t){var e=void 0===t?{}:t,n=e.includeOffset,i=void 0===n||n,o=e.includeZone;return ii(this,{includeOffset:i,includeZone:void 0!==o&&o,spaceZone:!0})},e.toSQL=function(t){return void 0===t&&(t={}),this.isValid?this.toSQLDate()+" "+this.toSQLTime(t):null},e.toString=function(){return this.isValid?this.toISO():Zn},e.valueOf=function(){return this.toMillis()},e.toMillis=function(){return this.isValid?this.ts:NaN},e.toSeconds=function(){return this.isValid?this.ts/1e3:NaN},e.toJSON=function(){return this.toISO()},e.toBSON=function(){return this.toJSDate()},e.toObject=function(t){if(void 0===t&&(t={}),!this.isValid)return{};var e=Object.assign({},this.c);return t.includeConfig&&(e.outputCalendar=this.outputCalendar,e.numberingSystem=this.loc.numberingSystem,e.locale=this.loc.locale),e},e.toJSDate=function(){return new Date(this.isValid?this.ts:NaN)},e.diff=function(t,e,n){if(void 0===e&&(e="milliseconds"),void 0===n&&(n={}),!this.isValid||!t.isValid)return dn.invalid(this.invalid||t.invalid,"created by diffing an invalid DateTime");var i,o=Object.assign({locale:this.locale,numberingSystem:this.numberingSystem},n),r=(i=e,Array.isArray(i)?i:[i]).map(dn.normalizeUnit),s=t.valueOf()>this.valueOf(),a=bn(s?this:t,s?t:this,r,o);return s?a.negate():a},e.diffNow=function(e,n){return void 0===e&&(e="milliseconds"),void 0===n&&(n={}),this.diff(t.now(),e,n)},e.until=function(t){return this.isValid?gn.fromDateTimes(this,t):this},e.hasSame=function(t,e){if(!this.isValid)return!1;var n=t.valueOf(),i=this.setZone(t.zone,{keepLocalTime:!0});return i.startOf(e)<=n&&n<=i.endOf(e)},e.equals=function(t){return this.isValid&&t.isValid&&this.valueOf()===t.valueOf()&&this.zone.equals(t.zone)&&this.loc.equals(t.loc)},e.toRelative=function(e){if(void 0===e&&(e={}),!this.isValid)return null;var n=e.base||t.fromObject({zone:this.zone}),i=e.padding?thisthis.set({month:1}).offset||this.offset>this.set({month:5}).offset)}},{key:"isInLeapYear",get:function(){return rt(this.year)}},{key:"daysInMonth",get:function(){return at(this.year,this.month)}},{key:"daysInYear",get:function(){return this.isValid?st(this.year):NaN}},{key:"weeksInWeekYear",get:function(){return this.isValid?lt(this.weekYear):NaN}}],[{key:"DATE_SHORT",get:function(){return v}},{key:"DATE_MED",get:function(){return C}},{key:"DATE_MED_WITH_WEEKDAY",get:function(){return y}},{key:"DATE_FULL",get:function(){return E}},{key:"DATE_HUGE",get:function(){return T}},{key:"TIME_SIMPLE",get:function(){return D}},{key:"TIME_WITH_SECONDS",get:function(){return S}},{key:"TIME_WITH_SHORT_OFFSET",get:function(){return I}},{key:"TIME_WITH_LONG_OFFSET",get:function(){return B}},{key:"TIME_24_SIMPLE",get:function(){return M}},{key:"TIME_24_WITH_SECONDS",get:function(){return N}},{key:"TIME_24_WITH_SHORT_OFFSET",get:function(){return O}},{key:"TIME_24_WITH_LONG_OFFSET",get:function(){return P}},{key:"DATETIME_SHORT",get:function(){return R}},{key:"DATETIME_SHORT_WITH_SECONDS",get:function(){return L}},{key:"DATETIME_MED",get:function(){return z}},{key:"DATETIME_MED_WITH_SECONDS",get:function(){return j}},{key:"DATETIME_MED_WITH_WEEKDAY",get:function(){return F}},{key:"DATETIME_FULL",get:function(){return V}},{key:"DATETIME_FULL_WITH_SECONDS",get:function(){return H}},{key:"DATETIME_HUGE",get:function(){return U}},{key:"DATETIME_HUGE_WITH_SECONDS",get:function(){return q}}]),t}();function gi(t){if(mi.isDateTime(t))return t;if(t&&t.valueOf&&Z(t.valueOf()))return mi.fromJSDate(t);if(t&&"object"==typeof t)return mi.fromObject(t);throw new k("Unknown datetime argument: "+t+", of type "+typeof t)}e.ou=mi},7824:t=>{var e=1e3,n=60*e,i=60*n,o=24*i,r=7*o,s=365.25*o;function a(t,e,n,i){var o=e>=1.5*n;return Math.round(t/n)+" "+i+(o?"s":"")}t.exports=function(t,c){c=c||{};var l=typeof t;if("string"===l&&t.length>0)return function(t){if((t=String(t)).length>100)return;var a=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(!a)return;var c=parseFloat(a[1]);switch((a[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return c*s;case"weeks":case"week":case"w":return c*r;case"days":case"day":case"d":return c*o;case"hours":case"hour":case"hrs":case"hr":case"h":return c*i;case"minutes":case"minute":case"mins":case"min":case"m":return c*n;case"seconds":case"second":case"secs":case"sec":case"s":return c*e;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return c;default:return}}(t);if("number"===l&&isFinite(t))return c.long?function(t){var r=Math.abs(t);if(r>=o)return a(t,r,o,"day");if(r>=i)return a(t,r,i,"hour");if(r>=n)return a(t,r,n,"minute");if(r>=e)return a(t,r,e,"second");return t+" ms"}(t):function(t){var r=Math.abs(t);if(r>=o)return Math.round(t/o)+"d";if(r>=i)return Math.round(t/i)+"h";if(r>=n)return Math.round(t/n)+"m";if(r>=e)return Math.round(t/e)+"s";return t+"ms"}(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))}},1830:(t,e)=>{e.encode=function(t){var e="";for(var n in t)t.hasOwnProperty(n)&&(e.length&&(e+="&"),e+=encodeURIComponent(n)+"="+encodeURIComponent(t[n]));return e},e.decode=function(t){for(var e={},n=t.split("&"),i=0,o=n.length;i{var e=/^(?:(?![^:@]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,n=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];t.exports=function(t){var i=t,o=t.indexOf("["),r=t.indexOf("]");-1!=o&&-1!=r&&(t=t.substring(0,o)+t.substring(o,r).replace(/:/g,";")+t.substring(r,t.length));for(var s,a,c=e.exec(t||""),l={},d=14;d--;)l[n[d]]=c[d]||"";return-1!=o&&-1!=r&&(l.source=i,l.host=l.host.substring(1,l.host.length-1).replace(/;/g,":"),l.authority=l.authority.replace("[","").replace("]","").replace(/;/g,":"),l.ipv6uri=!0),l.pathNames=function(t,e){var n=/\/{2,9}/g,i=e.replace(n,"/").split("/");"/"!=e.substr(0,1)&&0!==e.length||i.splice(0,1);"/"==e.substr(e.length-1,1)&&i.splice(i.length-1,1);return i}(0,l.path),l.queryKey=(s=l.query,a={},s.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,(function(t,e,n){e&&(a[e]=n)})),a),l}},4492:(t,e,n)=>{"use strict";t.exports=n(8836)},3996:(t,e,n)=>{"use strict";var i=e,o=n(7025),r=n(9935);function s(t,e,n,i){if(e.resolvedType)if(e.resolvedType instanceof o){t("switch(d%s){",i);for(var r=e.resolvedType.values,s=Object.keys(r),a=0;a>>0",i,i);break;case"int32":case"sint32":case"sfixed32":t("m%s=d%s|0",i,i);break;case"uint64":c=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":t("if(util.Long)")("(m%s=util.Long.fromValue(d%s)).unsigned=%j",i,i,c)('else if(typeof d%s==="string")',i)("m%s=parseInt(d%s,10)",i,i)('else if(typeof d%s==="number")',i)("m%s=d%s",i,i)('else if(typeof d%s==="object")',i)("m%s=new util.LongBits(d%s.low>>>0,d%s.high>>>0).toNumber(%s)",i,i,i,c?"true":"");break;case"bytes":t('if(typeof d%s==="string")',i)("util.base64.decode(d%s,m%s=util.newBuffer(util.base64.length(d%s)),0)",i,i,i)("else if(d%s.length >= 0)",i)("m%s=d%s",i,i);break;case"string":t("m%s=String(d%s)",i,i);break;case"bool":t("m%s=Boolean(d%s)",i,i)}}return t}function a(t,e,n,i){if(e.resolvedType)e.resolvedType instanceof o?t("d%s=o.enums===String?types[%i].values[m%s]:m%s",i,n,i,i):t("d%s=types[%i].toObject(m%s,o)",i,n,i);else{var r=!1;switch(e.type){case"double":case"float":t("d%s=o.json&&!isFinite(m%s)?String(m%s):m%s",i,i,i,i);break;case"uint64":r=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":t('if(typeof m%s==="number")',i)("d%s=o.longs===String?String(m%s):m%s",i,i,i)("else")("d%s=o.longs===String?util.Long.prototype.toString.call(m%s):o.longs===Number?new util.LongBits(m%s.low>>>0,m%s.high>>>0).toNumber(%s):m%s",i,i,i,i,r?"true":"",i);break;case"bytes":t("d%s=o.bytes===String?util.base64.encode(m%s,0,m%s.length):o.bytes===Array?Array.prototype.slice.call(m%s):m%s",i,i,i,i,i);break;default:t("d%s=m%s",i,i)}}return t}i.fromObject=function(t){var e=t.fieldsArray,n=r.codegen(["d"],t.name+"$fromObject")("if(d instanceof this.ctor)")("return d");if(!e.length)return n("return new this.ctor");n("var m=new this.ctor");for(var i=0;i{"use strict";t.exports=function(t){var e=r.codegen(["r","l"],t.name+"$decode")("if(!(r instanceof Reader))")("r=Reader.create(r)")("var c=l===undefined?r.len:r.pos+l,m=new this.ctor"+(t.fieldsArray.filter((function(t){return t.map})).length?",k,value":""))("while(r.pos>>3){");for(var n=0;n>>3){")("case 1: k=r.%s(); break",a.keyType)("case 2:"),void 0===o.basic[c]?e("value=types[%i].decode(r,r.uint32())",n):e("value=r.%s()",c),e("break")("default:")("r.skipType(tag2&7)")("break")("}")("}"),void 0!==o.long[a.keyType]?e('%s[typeof k==="object"?util.longToHash(k):k]=value',l):e("%s[k]=value",l)):a.repeated?(e("if(!(%s&&%s.length))",l,l)("%s=[]",l),void 0!==o.packed[c]&&e("if((t&7)===2){")("var c2=r.uint32()+r.pos")("while(r.pos{"use strict";t.exports=function(t){for(var e,n=r.codegen(["m","w"],t.name+"$encode")("if(!w)")("w=Writer.create()"),a=t.fieldsArray.slice().sort(r.compareFieldsById),c=0;c>>0,8|o.mapKey[l.keyType],l.keyType),void 0===h?n("types[%i].encode(%s[ks[i]],w.uint32(18).fork()).ldelim().ldelim()",d,e):n(".uint32(%i).%s(%s[ks[i]]).ldelim()",16|h,u,e),n("}")("}")):l.repeated?(n("if(%s!=null&&%s.length){",e,e),l.packed&&void 0!==o.packed[u]?n("w.uint32(%i).fork()",(l.id<<3|2)>>>0)("for(var i=0;i<%s.length;++i)",e)("w.%s(%s[i])",u,e)("w.ldelim()"):(n("for(var i=0;i<%s.length;++i)",e),void 0===h?s(n,l,d,e+"[i]"):n("w.uint32(%i).%s(%s[i])",(l.id<<3|h)>>>0,u,e)),n("}")):(l.optional&&n("if(%s!=null&&Object.hasOwnProperty.call(m,%j))",e,l.name),void 0===h?s(n,l,d,e):n("w.uint32(%i).%s(%s)",(l.id<<3|h)>>>0,u,e))}return n("return w")};var i=n(7025),o=n(7063),r=n(9935);function s(t,e,n,i){return e.resolvedType.group?t("types[%i].encode(%s,w.uint32(%i)).uint32(%i)",n,i,(e.id<<3|3)>>>0,(e.id<<3|4)>>>0):t("types[%i].encode(%s,w.uint32(%i).fork()).ldelim()",n,i,(e.id<<3|2)>>>0)}},7025:(t,e,n)=>{"use strict";t.exports=s;var i=n(9117);((s.prototype=Object.create(i.prototype)).constructor=s).className="Enum";var o=n(9313),r=n(9935);function s(t,e,n,o,r){if(i.call(this,t,n),e&&"object"!=typeof e)throw TypeError("values must be an object");if(this.valuesById={},this.values=Object.create(this.valuesById),this.comment=o,this.comments=r||{},this.reserved=void 0,e)for(var s=Object.keys(e),a=0;a{"use strict";t.exports=l;var i=n(9117);((l.prototype=Object.create(i.prototype)).constructor=l).className="Field";var o,r=n(7025),s=n(7063),a=n(9935),c=/^required|optional|repeated$/;function l(t,e,n,o,r,l,d){if(a.isObject(o)?(d=r,l=o,o=r=void 0):a.isObject(r)&&(d=l,l=r,r=void 0),i.call(this,t,l),!a.isInteger(e)||e<0)throw TypeError("id must be a non-negative integer");if(!a.isString(n))throw TypeError("type must be a string");if(void 0!==o&&!c.test(o=o.toString().toLowerCase()))throw TypeError("rule must be a string rule");if(void 0!==r&&!a.isString(r))throw TypeError("extend must be a string");"proto3_optional"===o&&(o="optional"),this.rule=o&&"optional"!==o?o:void 0,this.type=n,this.id=e,this.extend=r||void 0,this.required="required"===o,this.optional=!this.required,this.repeated="repeated"===o,this.map=!1,this.message=null,this.partOf=null,this.typeDefault=null,this.defaultValue=null,this.long=!!a.Long&&void 0!==s.long[n],this.bytes="bytes"===n,this.resolvedType=null,this.extensionField=null,this.declaringField=null,this._packed=null,this.comment=d}l.fromJSON=function(t,e){return new l(t,e.id,e.type,e.rule,e.extend,e.options,e.comment)},Object.defineProperty(l.prototype,"packed",{get:function(){return null===this._packed&&(this._packed=!1!==this.getOption("packed")),this._packed}}),l.prototype.setOption=function(t,e,n){return"packed"===t&&(this._packed=null),i.prototype.setOption.call(this,t,e,n)},l.prototype.toJSON=function(t){var e=!!t&&Boolean(t.keepComments);return a.toObject(["rule","optional"!==this.rule&&this.rule||void 0,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",e?this.comment:void 0])},l.prototype.resolve=function(){if(this.resolved)return this;if(void 0===(this.typeDefault=s.defaults[this.type])?(this.resolvedType=(this.declaringField?this.declaringField.parent:this.parent).lookupTypeOrEnum(this.type),this.resolvedType instanceof o?this.typeDefault=null:this.typeDefault=this.resolvedType.values[Object.keys(this.resolvedType.values)[0]]):this.options&&this.options.proto3_optional&&(this.typeDefault=null),this.options&&null!=this.options.default&&(this.typeDefault=this.options.default,this.resolvedType instanceof r&&"string"==typeof this.typeDefault&&(this.typeDefault=this.resolvedType.values[this.typeDefault])),this.options&&(!0!==this.options.packed&&(void 0===this.options.packed||!this.resolvedType||this.resolvedType instanceof r)||delete this.options.packed,Object.keys(this.options).length||(this.options=void 0)),this.long)this.typeDefault=a.Long.fromNumber(this.typeDefault,"u"===this.type.charAt(0)),Object.freeze&&Object.freeze(this.typeDefault);else if(this.bytes&&"string"==typeof this.typeDefault){var t;a.base64.test(this.typeDefault)?a.base64.decode(this.typeDefault,t=a.newBuffer(a.base64.length(this.typeDefault)),0):a.utf8.write(this.typeDefault,t=a.newBuffer(a.utf8.length(this.typeDefault)),0),this.typeDefault=t}return this.map?this.defaultValue=a.emptyObject:this.repeated?this.defaultValue=a.emptyArray:this.defaultValue=this.typeDefault,this.parent instanceof o&&(this.parent.ctor.prototype[this.name]=this.defaultValue),i.prototype.resolve.call(this)},l.d=function(t,e,n,i){return"function"==typeof e?e=a.decorateType(e).name:e&&"object"==typeof e&&(e=a.decorateEnum(e).name),function(o,r){a.decorateType(o.constructor).add(new l(r,t,e,n,{default:i}))}},l._configure=function(t){o=t}},8836:(t,e,n)=>{"use strict";var i=t.exports=n(9482);i.build="light",i.load=function(t,e,n){return"function"==typeof e?(n=e,e=new i.Root):e||(e=new i.Root),e.load(t,n)},i.loadSync=function(t,e){return e||(e=new i.Root),e.loadSync(t)},i.encoder=n(4928),i.decoder=n(5305),i.verifier=n(4497),i.converter=n(3996),i.ReflectionObject=n(9117),i.Namespace=n(9313),i.Root=n(9424),i.Enum=n(7025),i.Type=n(7645),i.Field=n(3548),i.OneOf=n(7598),i.MapField=n(6039),i.Service=n(7513),i.Method=n(4429),i.Message=n(8368),i.wrappers=n(1667),i.types=n(7063),i.util=n(9935),i.ReflectionObject._configure(i.Root),i.Namespace._configure(i.Type,i.Service,i.Enum),i.Root._configure(i.Type),i.Field._configure(i.Type)},9482:(t,e,n)=>{"use strict";var i=e;function o(){i.util._configure(),i.Writer._configure(i.BufferWriter),i.Reader._configure(i.BufferReader)}i.build="minimal",i.Writer=n(1173),i.BufferWriter=n(1439),i.Reader=n(1408),i.BufferReader=n(593),i.util=n(9693),i.rpc=n(5994),i.roots=n(5054),i.configure=o,o()},6039:(t,e,n)=>{"use strict";t.exports=s;var i=n(3548);((s.prototype=Object.create(i.prototype)).constructor=s).className="MapField";var o=n(7063),r=n(9935);function s(t,e,n,o,s,a){if(i.call(this,t,e,o,void 0,void 0,s,a),!r.isString(n))throw TypeError("keyType must be a string");this.keyType=n,this.resolvedKeyType=null,this.map=!0}s.fromJSON=function(t,e){return new s(t,e.id,e.keyType,e.type,e.options,e.comment)},s.prototype.toJSON=function(t){var e=!!t&&Boolean(t.keepComments);return r.toObject(["keyType",this.keyType,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",e?this.comment:void 0])},s.prototype.resolve=function(){if(this.resolved)return this;if(void 0===o.mapKey[this.keyType])throw Error("invalid key type: "+this.keyType);return i.prototype.resolve.call(this)},s.d=function(t,e,n){return"function"==typeof n?n=r.decorateType(n).name:n&&"object"==typeof n&&(n=r.decorateEnum(n).name),function(i,o){r.decorateType(i.constructor).add(new s(o,t,e,n))}}},8368:(t,e,n)=>{"use strict";t.exports=o;var i=n(9693);function o(t){if(t)for(var e=Object.keys(t),n=0;n{"use strict";t.exports=r;var i=n(9117);((r.prototype=Object.create(i.prototype)).constructor=r).className="Method";var o=n(9935);function r(t,e,n,r,s,a,c,l,d){if(o.isObject(s)?(c=s,s=a=void 0):o.isObject(a)&&(c=a,a=void 0),void 0!==e&&!o.isString(e))throw TypeError("type must be a string");if(!o.isString(n))throw TypeError("requestType must be a string");if(!o.isString(r))throw TypeError("responseType must be a string");i.call(this,t,c),this.type=e||"rpc",this.requestType=n,this.requestStream=!!s||void 0,this.responseType=r,this.responseStream=!!a||void 0,this.resolvedRequestType=null,this.resolvedResponseType=null,this.comment=l,this.parsedOptions=d}r.fromJSON=function(t,e){return new r(t,e.type,e.requestType,e.responseType,e.requestStream,e.responseStream,e.options,e.comment,e.parsedOptions)},r.prototype.toJSON=function(t){var e=!!t&&Boolean(t.keepComments);return o.toObject(["type","rpc"!==this.type&&this.type||void 0,"requestType",this.requestType,"requestStream",this.requestStream,"responseType",this.responseType,"responseStream",this.responseStream,"options",this.options,"comment",e?this.comment:void 0,"parsedOptions",this.parsedOptions])},r.prototype.resolve=function(){return this.resolved?this:(this.resolvedRequestType=this.parent.lookupType(this.requestType),this.resolvedResponseType=this.parent.lookupType(this.responseType),i.prototype.resolve.call(this))}},9313:(t,e,n)=>{"use strict";t.exports=d;var i=n(9117);((d.prototype=Object.create(i.prototype)).constructor=d).className="Namespace";var o,r,s,a=n(3548),c=n(9935);function l(t,e){if(t&&t.length){for(var n={},i=0;ie)return!0;return!1},d.isReservedName=function(t,e){if(t)for(var n=0;n0;){var i=t.shift();if(n.nested&&n.nested[i]){if(!((n=n.nested[i])instanceof d))throw Error("path conflicts with non-namespace objects")}else n.add(n=new d(i))}return e&&n.addJSON(e),n},d.prototype.resolveAll=function(){for(var t=this.nestedArray,e=0;e-1)return i}else if(i instanceof d&&(i=i.lookup(t.slice(1),e,!0)))return i}else for(var o=0;o{"use strict";t.exports=r,r.className="ReflectionObject";var i,o=n(9935);function r(t,e){if(!o.isString(t))throw TypeError("name must be a string");if(e&&!o.isObject(e))throw TypeError("options must be an object");this.options=e,this.parsedOptions=null,this.name=t,this.parent=null,this.resolved=!1,this.comment=null,this.filename=null}Object.defineProperties(r.prototype,{root:{get:function(){for(var t=this;null!==t.parent;)t=t.parent;return t}},fullName:{get:function(){for(var t=[this.name],e=this.parent;e;)t.unshift(e.name),e=e.parent;return t.join(".")}}}),r.prototype.toJSON=function(){throw Error()},r.prototype.onAdd=function(t){this.parent&&this.parent!==t&&this.parent.remove(this),this.parent=t,this.resolved=!1;var e=t.root;e instanceof i&&e._handleAdd(this)},r.prototype.onRemove=function(t){var e=t.root;e instanceof i&&e._handleRemove(this),this.parent=null,this.resolved=!1},r.prototype.resolve=function(){return this.resolved||this.root instanceof i&&(this.resolved=!0),this},r.prototype.getOption=function(t){if(this.options)return this.options[t]},r.prototype.setOption=function(t,e,n){return n&&this.options&&void 0!==this.options[t]||((this.options||(this.options={}))[t]=e),this},r.prototype.setParsedOption=function(t,e,n){this.parsedOptions||(this.parsedOptions=[]);var i=this.parsedOptions;if(n){var r=i.find((function(e){return Object.prototype.hasOwnProperty.call(e,t)}));if(r){var s=r[t];o.setProperty(s,n,e)}else(r={})[t]=o.setProperty({},n,e),i.push(r)}else{var a={};a[t]=e,i.push(a)}return this},r.prototype.setOptions=function(t,e){if(t)for(var n=Object.keys(t),i=0;i{"use strict";t.exports=s;var i=n(9117);((s.prototype=Object.create(i.prototype)).constructor=s).className="OneOf";var o=n(3548),r=n(9935);function s(t,e,n,o){if(Array.isArray(e)||(n=e,e=void 0),i.call(this,t,n),void 0!==e&&!Array.isArray(e))throw TypeError("fieldNames must be an Array");this.oneof=e||[],this.fieldsArray=[],this.comment=o}function a(t){if(t.parent)for(var e=0;e-1&&this.oneof.splice(e,1),t.partOf=null,this},s.prototype.onAdd=function(t){i.prototype.onAdd.call(this,t);for(var e=0;e{"use strict";t.exports=c;var i,o=n(9693),r=o.LongBits,s=o.utf8;function a(t,e){return RangeError("index out of range: "+t.pos+" + "+(e||1)+" > "+t.len)}function c(t){this.buf=t,this.pos=0,this.len=t.length}var l,d="undefined"!=typeof Uint8Array?function(t){if(t instanceof Uint8Array||Array.isArray(t))return new c(t);throw Error("illegal buffer")}:function(t){if(Array.isArray(t))return new c(t);throw Error("illegal buffer")},u=function(){return o.Buffer?function(t){return(c.create=function(t){return o.Buffer.isBuffer(t)?new i(t):d(t)})(t)}:d};function h(){var t=new r(0,0),e=0;if(!(this.len-this.pos>4)){for(;e<3;++e){if(this.pos>=this.len)throw a(this);if(t.lo=(t.lo|(127&this.buf[this.pos])<<7*e)>>>0,this.buf[this.pos++]<128)return t}return t.lo=(t.lo|(127&this.buf[this.pos++])<<7*e)>>>0,t}for(;e<4;++e)if(t.lo=(t.lo|(127&this.buf[this.pos])<<7*e)>>>0,this.buf[this.pos++]<128)return t;if(t.lo=(t.lo|(127&this.buf[this.pos])<<28)>>>0,t.hi=(t.hi|(127&this.buf[this.pos])>>4)>>>0,this.buf[this.pos++]<128)return t;if(e=0,this.len-this.pos>4){for(;e<5;++e)if(t.hi=(t.hi|(127&this.buf[this.pos])<<7*e+3)>>>0,this.buf[this.pos++]<128)return t}else for(;e<5;++e){if(this.pos>=this.len)throw a(this);if(t.hi=(t.hi|(127&this.buf[this.pos])<<7*e+3)>>>0,this.buf[this.pos++]<128)return t}throw Error("invalid varint encoding")}function m(t,e){return(t[e-4]|t[e-3]<<8|t[e-2]<<16|t[e-1]<<24)>>>0}function g(){if(this.pos+8>this.len)throw a(this,8);return new r(m(this.buf,this.pos+=4),m(this.buf,this.pos+=4))}c.create=u(),c.prototype._slice=o.Array.prototype.subarray||o.Array.prototype.slice,c.prototype.uint32=(l=4294967295,function(){if(l=(127&this.buf[this.pos])>>>0,this.buf[this.pos++]<128)return l;if(l=(l|(127&this.buf[this.pos])<<7)>>>0,this.buf[this.pos++]<128)return l;if(l=(l|(127&this.buf[this.pos])<<14)>>>0,this.buf[this.pos++]<128)return l;if(l=(l|(127&this.buf[this.pos])<<21)>>>0,this.buf[this.pos++]<128)return l;if(l=(l|(15&this.buf[this.pos])<<28)>>>0,this.buf[this.pos++]<128)return l;if((this.pos+=5)>this.len)throw this.pos=this.len,a(this,10);return l}),c.prototype.int32=function(){return 0|this.uint32()},c.prototype.sint32=function(){var t=this.uint32();return t>>>1^-(1&t)|0},c.prototype.bool=function(){return 0!==this.uint32()},c.prototype.fixed32=function(){if(this.pos+4>this.len)throw a(this,4);return m(this.buf,this.pos+=4)},c.prototype.sfixed32=function(){if(this.pos+4>this.len)throw a(this,4);return 0|m(this.buf,this.pos+=4)},c.prototype.float=function(){if(this.pos+4>this.len)throw a(this,4);var t=o.float.readFloatLE(this.buf,this.pos);return this.pos+=4,t},c.prototype.double=function(){if(this.pos+8>this.len)throw a(this,4);var t=o.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,t},c.prototype.bytes=function(){var t=this.uint32(),e=this.pos,n=this.pos+t;if(n>this.len)throw a(this,t);return this.pos+=t,Array.isArray(this.buf)?this.buf.slice(e,n):e===n?new this.buf.constructor(0):this._slice.call(this.buf,e,n)},c.prototype.string=function(){var t=this.bytes();return s.read(t,0,t.length)},c.prototype.skip=function(t){if("number"==typeof t){if(this.pos+t>this.len)throw a(this,t);this.pos+=t}else do{if(this.pos>=this.len)throw a(this)}while(128&this.buf[this.pos++]);return this},c.prototype.skipType=function(t){switch(t){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;4!=(t=7&this.uint32());)this.skipType(t);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+t+" at offset "+this.pos)}return this},c._configure=function(t){i=t,c.create=u(),i._configure();var e=o.Long?"toLong":"toNumber";o.merge(c.prototype,{int64:function(){return h.call(this)[e](!1)},uint64:function(){return h.call(this)[e](!0)},sint64:function(){return h.call(this).zzDecode()[e](!1)},fixed64:function(){return g.call(this)[e](!0)},sfixed64:function(){return g.call(this)[e](!1)}})}},593:(t,e,n)=>{"use strict";t.exports=r;var i=n(1408);(r.prototype=Object.create(i.prototype)).constructor=r;var o=n(9693);function r(t){i.call(this,t)}r._configure=function(){o.Buffer&&(r.prototype._slice=o.Buffer.prototype.slice)},r.prototype.string=function(){var t=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+t,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+t,this.len))},r._configure()},9424:(t,e,n)=>{"use strict";t.exports=u;var i=n(9313);((u.prototype=Object.create(i.prototype)).constructor=u).className="Root";var o,r,s,a=n(3548),c=n(7025),l=n(7598),d=n(9935);function u(t){i.call(this,"",t),this.deferred=[],this.files=[]}function h(){}u.fromJSON=function(t,e){return e||(e=new u),t.options&&e.setOptions(t.options),e.addJSON(t.nested)},u.prototype.resolvePath=d.path.resolve,u.prototype.fetch=d.fetch,u.prototype.load=function t(e,n,i){"function"==typeof n&&(i=n,n=void 0);var o=this;if(!i)return d.asPromise(t,o,e,n);var a=i===h;function c(t,e){if(i){var n=i;if(i=null,a)throw t;n(t,e)}}function l(t){var e=t.lastIndexOf("google/protobuf/");if(e>-1){var n=t.substring(e);if(n in s)return n}return null}function u(t,e){try{if(d.isString(e)&&"{"===e.charAt(0)&&(e=JSON.parse(e)),d.isString(e)){r.filename=t;var i,s=r(e,o,n),u=0;if(s.imports)for(;u-1))if(o.files.push(t),t in s)a?u(t,s[t]):(++g,setTimeout((function(){--g,u(t,s[t])})));else if(a){var n;try{n=d.fs.readFileSync(t).toString("utf8")}catch(t){return void(e||c(t))}u(t,n)}else++g,o.fetch(t,(function(n,r){--g,i&&(n?e?g||c(null,o):c(n):u(t,r))}))}var g=0;d.isString(e)&&(e=[e]);for(var p,f=0;f-1&&this.deferred.splice(e,1)}}else if(t instanceof c)m.test(t.name)&&delete t.parent[t.name];else if(t instanceof i){for(var n=0;n{"use strict";t.exports={}},5994:(t,e,n)=>{"use strict";e.Service=n(7948)},7948:(t,e,n)=>{"use strict";t.exports=o;var i=n(9693);function o(t,e,n){if("function"!=typeof t)throw TypeError("rpcImpl must be a function");i.EventEmitter.call(this),this.rpcImpl=t,this.requestDelimited=Boolean(e),this.responseDelimited=Boolean(n)}(o.prototype=Object.create(i.EventEmitter.prototype)).constructor=o,o.prototype.rpcCall=function t(e,n,o,r,s){if(!r)throw TypeError("request must be specified");var a=this;if(!s)return i.asPromise(t,a,e,n,o,r);if(a.rpcImpl)try{return a.rpcImpl(e,n[a.requestDelimited?"encodeDelimited":"encode"](r).finish(),(function(t,n){if(t)return a.emit("error",t,e),s(t);if(null!==n){if(!(n instanceof o))try{n=o[a.responseDelimited?"decodeDelimited":"decode"](n)}catch(t){return a.emit("error",t,e),s(t)}return a.emit("data",n,e),s(null,n)}a.end(!0)}))}catch(t){return a.emit("error",t,e),void setTimeout((function(){s(t)}),0)}else setTimeout((function(){s(Error("already ended"))}),0)},o.prototype.end=function(t){return this.rpcImpl&&(t||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this}},7513:(t,e,n)=>{"use strict";t.exports=a;var i=n(9313);((a.prototype=Object.create(i.prototype)).constructor=a).className="Service";var o=n(4429),r=n(9935),s=n(5994);function a(t,e){i.call(this,t,e),this.methods={},this._methodsArray=null}function c(t){return t._methodsArray=null,t}a.fromJSON=function(t,e){var n=new a(t,e.options);if(e.methods)for(var i=Object.keys(e.methods),r=0;r{"use strict";t.exports=k;var i=n(9313);((k.prototype=Object.create(i.prototype)).constructor=k).className="Type";var o=n(7025),r=n(7598),s=n(3548),a=n(6039),c=n(7513),l=n(8368),d=n(1408),u=n(1173),h=n(9935),m=n(4928),g=n(5305),p=n(4497),f=n(3996),b=n(1667);function k(t,e){i.call(this,t,e),this.fields={},this.oneofs=void 0,this.extensions=void 0,this.reserved=void 0,this.group=void 0,this._fieldsById=null,this._fieldsArray=null,this._oneofsArray=null,this._ctor=null}function x(t){return t._fieldsById=t._fieldsArray=t._oneofsArray=null,delete t.encode,delete t.decode,delete t.verify,t}Object.defineProperties(k.prototype,{fieldsById:{get:function(){if(this._fieldsById)return this._fieldsById;this._fieldsById={};for(var t=Object.keys(this.fields),e=0;e{"use strict";var i=e,o=n(9935),r=["double","float","int32","uint32","sint32","fixed32","sfixed32","int64","uint64","sint64","fixed64","sfixed64","bool","string","bytes"];function s(t,e){var n=0,i={};for(e|=0;n{"use strict";var i,o,r=t.exports=n(9693),s=n(5054);r.codegen=n(5124),r.fetch=n(9054),r.path=n(8626),r.fs=r.inquire("fs"),r.toArray=function(t){if(t){for(var e=Object.keys(t),n=new Array(e.length),i=0;i0)e[o]=t(e[o]||{},n,i);else{var r=e[o];r&&(i=[].concat(r).concat(i)),e[o]=i}return e}(t,e=e.split("."),n)},Object.defineProperty(r,"decorateRoot",{get:function(){return s.decorated||(s.decorated=new(n(9424)))}})},1945:(t,e,n)=>{"use strict";t.exports=o;var i=n(9693);function o(t,e){this.lo=t>>>0,this.hi=e>>>0}var r=o.zero=new o(0,0);r.toNumber=function(){return 0},r.zzEncode=r.zzDecode=function(){return this},r.length=function(){return 1};var s=o.zeroHash="\0\0\0\0\0\0\0\0";o.fromNumber=function(t){if(0===t)return r;var e=t<0;e&&(t=-t);var n=t>>>0,i=(t-n)/4294967296>>>0;return e&&(i=~i>>>0,n=~n>>>0,++n>4294967295&&(n=0,++i>4294967295&&(i=0))),new o(n,i)},o.from=function(t){if("number"==typeof t)return o.fromNumber(t);if(i.isString(t)){if(!i.Long)return o.fromNumber(parseInt(t,10));t=i.Long.fromString(t)}return t.low||t.high?new o(t.low>>>0,t.high>>>0):r},o.prototype.toNumber=function(t){if(!t&&this.hi>>>31){var e=1+~this.lo>>>0,n=~this.hi>>>0;return e||(n=n+1>>>0),-(e+4294967296*n)}return this.lo+4294967296*this.hi},o.prototype.toLong=function(t){return i.Long?new i.Long(0|this.lo,0|this.hi,Boolean(t)):{low:0|this.lo,high:0|this.hi,unsigned:Boolean(t)}};var a=String.prototype.charCodeAt;o.fromHash=function(t){return t===s?r:new o((a.call(t,0)|a.call(t,1)<<8|a.call(t,2)<<16|a.call(t,3)<<24)>>>0,(a.call(t,4)|a.call(t,5)<<8|a.call(t,6)<<16|a.call(t,7)<<24)>>>0)},o.prototype.toHash=function(){return String.fromCharCode(255&this.lo,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,255&this.hi,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},o.prototype.zzEncode=function(){var t=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^t)>>>0,this.lo=(this.lo<<1^t)>>>0,this},o.prototype.zzDecode=function(){var t=-(1&this.lo);return this.lo=((this.lo>>>1|this.hi<<31)^t)>>>0,this.hi=(this.hi>>>1^t)>>>0,this},o.prototype.length=function(){var t=this.lo,e=(this.lo>>>28|this.hi<<4)>>>0,n=this.hi>>>24;return 0===n?0===e?t<16384?t<128?1:2:t<2097152?3:4:e<16384?e<128?5:6:e<2097152?7:8:n<128?9:10}},9693:function(t,e,n){"use strict";var i=e;function o(t,e,n){for(var i=Object.keys(e),o=0;ot,set:void 0,enumerable:!1,configurable:!0},toString:{value(){return this.name+": "+this.message},writable:!0,enumerable:!1,configurable:!0}}),e}i.asPromise=n(4537),i.base64=n(7419),i.EventEmitter=n(9211),i.float=n(945),i.inquire=n(7199),i.utf8=n(4997),i.pool=n(6662),i.LongBits=n(1945),i.isNode=Boolean(void 0!==n.g&&n.g&&n.g.process&&n.g.process.versions&&n.g.process.versions.node),i.global=i.isNode&&n.g||"undefined"!=typeof window&&window||"undefined"!=typeof self&&self||this,i.emptyArray=Object.freeze?Object.freeze([]):[],i.emptyObject=Object.freeze?Object.freeze({}):{},i.isInteger=Number.isInteger||function(t){return"number"==typeof t&&isFinite(t)&&Math.floor(t)===t},i.isString=function(t){return"string"==typeof t||t instanceof String},i.isObject=function(t){return t&&"object"==typeof t},i.isset=i.isSet=function(t,e){var n=t[e];return!(null==n||!t.hasOwnProperty(e))&&("object"!=typeof n||(Array.isArray(n)?n.length:Object.keys(n).length)>0)},i.Buffer=function(){try{var t=i.inquire("buffer").Buffer;return t.prototype.utf8Write?t:null}catch(t){return null}}(),i._Buffer_from=null,i._Buffer_allocUnsafe=null,i.newBuffer=function(t){return"number"==typeof t?i.Buffer?i._Buffer_allocUnsafe(t):new i.Array(t):i.Buffer?i._Buffer_from(t):"undefined"==typeof Uint8Array?t:new Uint8Array(t)},i.Array="undefined"!=typeof Uint8Array?Uint8Array:Array,i.Long=i.global.dcodeIO&&i.global.dcodeIO.Long||i.global.Long||i.inquire("long"),i.key2Re=/^true|false|0|1$/,i.key32Re=/^-?(?:0|[1-9][0-9]*)$/,i.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,i.longToHash=function(t){return t?i.LongBits.from(t).toHash():i.LongBits.zeroHash},i.longFromHash=function(t,e){var n=i.LongBits.fromHash(t);return i.Long?i.Long.fromBits(n.lo,n.hi,e):n.toNumber(Boolean(e))},i.merge=o,i.lcFirst=function(t){return t.charAt(0).toLowerCase()+t.substring(1)},i.newError=r,i.ProtocolError=r("ProtocolError"),i.oneOfGetter=function(t){for(var e={},n=0;n-1;--n)if(1===e[t[n]]&&void 0!==this[t[n]]&&null!==this[t[n]])return t[n]}},i.oneOfSetter=function(t){return function(e){for(var n=0;n{"use strict";t.exports=function(t){var e=o.codegen(["m"],t.name+"$verify")('if(typeof m!=="object"||m===null)')("return%j","object expected"),n=t.oneofsArray,i={};n.length&&e("var p={}");for(var c=0;c{"use strict";var i=e,o=n(8368);i[".google.protobuf.Any"]={fromObject:function(t){if(t&&t["@type"]){var e=t["@type"].substring(t["@type"].lastIndexOf("/")+1),n=this.lookup(e);if(n){var i="."===t["@type"].charAt(0)?t["@type"].slice(1):t["@type"];return-1===i.indexOf("/")&&(i="/"+i),this.create({type_url:i,value:n.encode(n.fromObject(t)).finish()})}}return this.fromObject(t)},toObject:function(t,e){var n="",i="";if(e&&e.json&&t.type_url&&t.value){i=t.type_url.substring(t.type_url.lastIndexOf("/")+1),n=t.type_url.substring(0,t.type_url.lastIndexOf("/")+1);var r=this.lookup(i);r&&(t=r.decode(t.value))}if(!(t instanceof this.ctor)&&t instanceof o){var s=t.$type.toObject(t,e);return""===n&&(n="type.googleapis.com/"),i=n+("."===t.$type.fullName[0]?t.$type.fullName.slice(1):t.$type.fullName),s["@type"]=i,s}return this.toObject(t,e)}}},1173:(t,e,n)=>{"use strict";t.exports=u;var i,o=n(9693),r=o.LongBits,s=o.base64,a=o.utf8;function c(t,e,n){this.fn=t,this.len=e,this.next=void 0,this.val=n}function l(){}function d(t){this.head=t.head,this.tail=t.tail,this.len=t.len,this.next=t.states}function u(){this.len=0,this.head=new c(l,0,0),this.tail=this.head,this.states=null}var h=function(){return o.Buffer?function(){return(u.create=function(){return new i})()}:function(){return new u}};function m(t,e,n){e[n]=255&t}function g(t,e){this.len=t,this.next=void 0,this.val=e}function p(t,e,n){for(;t.hi;)e[n++]=127&t.lo|128,t.lo=(t.lo>>>7|t.hi<<25)>>>0,t.hi>>>=7;for(;t.lo>127;)e[n++]=127&t.lo|128,t.lo=t.lo>>>7;e[n++]=t.lo}function f(t,e,n){e[n]=255&t,e[n+1]=t>>>8&255,e[n+2]=t>>>16&255,e[n+3]=t>>>24}u.create=h(),u.alloc=function(t){return new o.Array(t)},o.Array!==Array&&(u.alloc=o.pool(u.alloc,o.Array.prototype.subarray)),u.prototype._push=function(t,e,n){return this.tail=this.tail.next=new c(t,e,n),this.len+=e,this},g.prototype=Object.create(c.prototype),g.prototype.fn=function(t,e,n){for(;t>127;)e[n++]=127&t|128,t>>>=7;e[n]=t},u.prototype.uint32=function(t){return this.len+=(this.tail=this.tail.next=new g((t>>>=0)<128?1:t<16384?2:t<2097152?3:t<268435456?4:5,t)).len,this},u.prototype.int32=function(t){return t<0?this._push(p,10,r.fromNumber(t)):this.uint32(t)},u.prototype.sint32=function(t){return this.uint32((t<<1^t>>31)>>>0)},u.prototype.uint64=function(t){var e=r.from(t);return this._push(p,e.length(),e)},u.prototype.int64=u.prototype.uint64,u.prototype.sint64=function(t){var e=r.from(t).zzEncode();return this._push(p,e.length(),e)},u.prototype.bool=function(t){return this._push(m,1,t?1:0)},u.prototype.fixed32=function(t){return this._push(f,4,t>>>0)},u.prototype.sfixed32=u.prototype.fixed32,u.prototype.fixed64=function(t){var e=r.from(t);return this._push(f,4,e.lo)._push(f,4,e.hi)},u.prototype.sfixed64=u.prototype.fixed64,u.prototype.float=function(t){return this._push(o.float.writeFloatLE,4,t)},u.prototype.double=function(t){return this._push(o.float.writeDoubleLE,8,t)};var b=o.Array.prototype.set?function(t,e,n){e.set(t,n)}:function(t,e,n){for(var i=0;i>>0;if(!e)return this._push(m,1,0);if(o.isString(t)){var n=u.alloc(e=s.length(t));s.decode(t,n,0),t=n}return this.uint32(e)._push(b,e,t)},u.prototype.string=function(t){var e=a.length(t);return e?this.uint32(e)._push(a.write,e,t):this._push(m,1,0)},u.prototype.fork=function(){return this.states=new d(this),this.head=this.tail=new c(l,0,0),this.len=0,this},u.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new c(l,0,0),this.len=0),this},u.prototype.ldelim=function(){var t=this.head,e=this.tail,n=this.len;return this.reset().uint32(n),n&&(this.tail.next=t.next,this.tail=e,this.len+=n),this},u.prototype.finish=function(){for(var t=this.head.next,e=this.constructor.alloc(this.len),n=0;t;)t.fn(t.val,e,n),n+=t.len,t=t.next;return e},u._configure=function(t){i=t,u.create=h(),i._configure()}},1439:(t,e,n)=>{"use strict";t.exports=r;var i=n(1173);(r.prototype=Object.create(i.prototype)).constructor=r;var o=n(9693);function r(){i.call(this)}function s(t,e,n){t.length<40?o.utf8.write(t,e,n):e.utf8Write?e.utf8Write(t,n):e.write(t,n)}r._configure=function(){r.alloc=o._Buffer_allocUnsafe,r.writeBytesBuffer=o.Buffer&&o.Buffer.prototype instanceof Uint8Array&&"set"===o.Buffer.prototype.set.name?function(t,e,n){e.set(t,n)}:function(t,e,n){if(t.copy)t.copy(e,n,0,t.length);else for(var i=0;i>>0;return this.uint32(e),e&&this._push(r.writeBytesBuffer,e,t),this},r.prototype.string=function(t){var e=o.Buffer.byteLength(t);return this.uint32(e),e&&this._push(s,e,t),this},r._configure()},7129:(t,e)=>{"use strict";var n=Object.prototype.hasOwnProperty;function i(t){try{return decodeURIComponent(t.replace(/\+/g," "))}catch(t){return null}}function o(t){try{return encodeURIComponent(t)}catch(t){return null}}e.stringify=function(t,e){e=e||"";var i,r,s=[];for(r in"string"!=typeof e&&(e="?"),t)if(n.call(t,r)){if((i=t[r])||null!=i&&!isNaN(i)||(i=""),r=o(r),i=o(i),null===r||null===i)continue;s.push(r+"="+i)}return s.length?e+s.join("&"):""},e.parse=function(t){for(var e,n=/([^=?#&]+)=?([^&]*)/g,o={};e=n.exec(t);){var r=i(e[1]),s=i(e[2]);null===r||null===s||r in o||(o[r]=s)}return o}},7418:t=>{"use strict";t.exports=function(t,e){if(e=e.split(":")[0],!(t=+t))return!1;switch(e){case"http":case"ws":return 80!==t;case"https":case"wss":return 443!==t;case"ftp":return 21!==t;case"gopher":return 70!==t;case"file":return!1}return 0!==t}},3379:(t,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{"use strict";var i=n(7418),o=n(7129),r=/^[\x00-\x20\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+/,s=/[\n\r\t]/g,a=/^[A-Za-z][A-Za-z0-9+-.]*:\/\//,c=/:\d+$/,l=/^([a-z][a-z0-9.+-]*:)?(\/\/)?([\\/]+)?([\S\s]*)/i,d=/^[a-zA-Z]:/;function u(t){return(t||"").toString().replace(r,"")}var h=[["#","hash"],["?","query"],function(t,e){return p(e.protocol)?t.replace(/\\/g,"/"):t},["/","pathname"],["@","auth",1],[NaN,"host",void 0,1,1],[/:(\d*)$/,"port",void 0,1],[NaN,"hostname",void 0,1,1]],m={hash:1,query:1};function g(t){var e,i=("undefined"!=typeof window?window:void 0!==n.g?n.g:"undefined"!=typeof self?self:{}).location||{},o={},r=typeof(t=t||i);if("blob:"===t.protocol)o=new b(unescape(t.pathname),{});else if("string"===r)for(e in o=new b(t,{}),m)delete o[e];else if("object"===r){for(e in t)e in m||(o[e]=t[e]);void 0===o.slashes&&(o.slashes=a.test(t.href))}return o}function p(t){return"file:"===t||"ftp:"===t||"http:"===t||"https:"===t||"ws:"===t||"wss:"===t}function f(t,e){t=(t=u(t)).replace(s,""),e=e||{};var n,i=l.exec(t),o=i[1]?i[1].toLowerCase():"",r=!!i[2],a=!!i[3],c=0;return r?a?(n=i[2]+i[3]+i[4],c=i[2].length+i[3].length):(n=i[2]+i[4],c=i[2].length):a?(n=i[3]+i[4],c=i[3].length):n=i[4],"file:"===o?c>=2&&(n=n.slice(2)):p(o)?n=i[4]:o?r&&(n=n.slice(2)):c>=2&&p(e.protocol)&&(n=i[4]),{protocol:o,slashes:r||p(o),slashesCount:c,rest:n}}function b(t,e,n){if(t=(t=u(t)).replace(s,""),!(this instanceof b))return new b(t,e,n);var r,a,c,l,m,k,x=h.slice(),w=typeof e,_=this,A=0;for("object"!==w&&"string"!==w&&(n=e,e=null),n&&"function"!=typeof n&&(n=o.parse),r=!(a=f(t||"",e=g(e))).protocol&&!a.slashes,_.slashes=a.slashes||r&&e.slashes,_.protocol=a.protocol||e.protocol||"",t=a.rest,("file:"===a.protocol&&(2!==a.slashesCount||d.test(t))||!a.slashes&&(a.protocol||a.slashesCount<2||!p(_.protocol)))&&(x[3]=[/(.*)/,"pathname"]);A{"use strict";n.r(e),n.d(e,{NIL:()=>y,parse:()=>u,stringify:()=>s.Z,v1:()=>l,v3:()=>w,v4:()=>_.Z,v5:()=>C,validate:()=>d.Z,version:()=>E});var i,o,r=n(3653),s=n(3958),a=0,c=0;const l=function(t,e,n){var l=e&&n||0,d=e||new Array(16),u=(t=t||{}).node||i,h=void 0!==t.clockseq?t.clockseq:o;if(null==u||null==h){var m=t.random||(t.rng||r.Z)();null==u&&(u=i=[1|m[0],m[1],m[2],m[3],m[4],m[5]]),null==h&&(h=o=16383&(m[6]<<8|m[7]))}var g=void 0!==t.msecs?t.msecs:Date.now(),p=void 0!==t.nsecs?t.nsecs:c+1,f=g-a+(p-c)/1e4;if(f<0&&void 0===t.clockseq&&(h=h+1&16383),(f<0||g>a)&&void 0===t.nsecs&&(p=0),p>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");a=g,c=p,o=h;var b=(1e4*(268435455&(g+=122192928e5))+p)%4294967296;d[l++]=b>>>24&255,d[l++]=b>>>16&255,d[l++]=b>>>8&255,d[l++]=255&b;var k=g/4294967296*1e4&268435455;d[l++]=k>>>8&255,d[l++]=255&k,d[l++]=k>>>24&15|16,d[l++]=k>>>16&255,d[l++]=h>>>8|128,d[l++]=255&h;for(var x=0;x<6;++x)d[l+x]=u[x];return e||(0,s.Z)(d)};var d=n(7738);const u=function(t){if(!(0,d.Z)(t))throw TypeError("Invalid UUID");var e,n=new Uint8Array(16);return n[0]=(e=parseInt(t.slice(0,8),16))>>>24,n[1]=e>>>16&255,n[2]=e>>>8&255,n[3]=255&e,n[4]=(e=parseInt(t.slice(9,13),16))>>>8,n[5]=255&e,n[6]=(e=parseInt(t.slice(14,18),16))>>>8,n[7]=255&e,n[8]=(e=parseInt(t.slice(19,23),16))>>>8,n[9]=255&e,n[10]=(e=parseInt(t.slice(24,36),16))/1099511627776&255,n[11]=e/4294967296&255,n[12]=e>>>24&255,n[13]=e>>>16&255,n[14]=e>>>8&255,n[15]=255&e,n};function h(t,e,n){function i(t,i,o,r){if("string"==typeof t&&(t=function(t){t=unescape(encodeURIComponent(t));for(var e=[],n=0;n>>9<<4)+1}function g(t,e){var n=(65535&t)+(65535&e);return(t>>16)+(e>>16)+(n>>16)<<16|65535&n}function p(t,e,n,i,o,r){return g((s=g(g(e,t),g(i,r)))<<(a=o)|s>>>32-a,n);var s,a}function f(t,e,n,i,o,r,s){return p(e&n|~e&i,t,e,o,r,s)}function b(t,e,n,i,o,r,s){return p(e&i|n&~i,t,e,o,r,s)}function k(t,e,n,i,o,r,s){return p(e^n^i,t,e,o,r,s)}function x(t,e,n,i,o,r,s){return p(n^(e|~i),t,e,o,r,s)}const w=h("v3",48,(function(t){if("string"==typeof t){var e=unescape(encodeURIComponent(t));t=new Uint8Array(e.length);for(var n=0;n>5]>>>o%32&255,s=parseInt(i.charAt(r>>>4&15)+i.charAt(15&r),16);e.push(s)}return e}(function(t,e){t[e>>5]|=128<>5]|=(255&t[i/8])<>>32-e}const C=h("v5",80,(function(t){var e=[1518500249,1859775393,2400959708,3395469782],n=[1732584193,4023233417,2562383102,271733878,3285377520];if("string"==typeof t){var i=unescape(encodeURIComponent(t));t=[];for(var o=0;o>>0;x=k,k=b,b=v(f,30)>>>0,f=p,p=C}n[0]=n[0]+p>>>0,n[1]=n[1]+f>>>0,n[2]=n[2]+b>>>0,n[3]=n[3]+k>>>0,n[4]=n[4]+x>>>0}return[n[0]>>24&255,n[0]>>16&255,n[0]>>8&255,255&n[0],n[1]>>24&255,n[1]>>16&255,n[1]>>8&255,255&n[1],n[2]>>24&255,n[2]>>16&255,n[2]>>8&255,255&n[2],n[3]>>24&255,n[3]>>16&255,n[3]>>8&255,255&n[3],n[4]>>24&255,n[4]>>16&255,n[4]>>8&255,255&n[4]]})),y="00000000-0000-0000-0000-000000000000";const E=function(t){if(!(0,d.Z)(t))throw TypeError("Invalid UUID");return parseInt(t.substr(14,1),16)}},3653:(t,e,n)=>{"use strict";var i;n.d(e,{Z:()=>r});var o=new Uint8Array(16);function r(){if(!i&&!(i="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto)))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return i(o)}},3958:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});for(var i=n(7738),o=[],r=0;r<256;++r)o.push((r+256).toString(16).substr(1));const s=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=(o[t[e+0]]+o[t[e+1]]+o[t[e+2]]+o[t[e+3]]+"-"+o[t[e+4]]+o[t[e+5]]+"-"+o[t[e+6]]+o[t[e+7]]+"-"+o[t[e+8]]+o[t[e+9]]+"-"+o[t[e+10]]+o[t[e+11]]+o[t[e+12]]+o[t[e+13]]+o[t[e+14]]+o[t[e+15]]).toLowerCase();if(!(0,i.Z)(n))throw TypeError("Stringified UUID is invalid");return n}},2045:(t,e,n)=>{"use strict";n.d(e,{Z:()=>r});var i=n(3653),o=n(3958);const r=function(t,e,n){var r=(t=t||{}).random||(t.rng||i.Z)();if(r[6]=15&r[6]|64,r[8]=63&r[8]|128,e){n=n||0;for(var s=0;s<16;++s)e[n+s]=r[s];return e}return(0,o.Z)(r)}},7738:(t,e,n)=>{"use strict";n.d(e,{Z:()=>o});const i=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;const o=function(t){return"string"==typeof t&&i.test(t)}},2281:t=>{"use strict";var e,n="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".split(""),i={},o=0,r=0;function s(t){var e="";do{e=n[t%64]+e,t=Math.floor(t/64)}while(t>0);return e}function a(){var t=s(+new Date);return t!==e?(o=0,e=t):t+"."+s(o++)}for(;r<64;r++)i[n[r]]=r;a.encode=s,a.decode=function(t){var e=0;for(r=0;r{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default="undefined"!=typeof self?self:"undefined"!=typeof window?window:Function("return this")()},4679:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.installTimerFunctions=e.transports=e.Transport=e.protocol=e.Socket=void 0;const i=n(3481);Object.defineProperty(e,"Socket",{enumerable:!0,get:function(){return i.Socket}}),e.protocol=i.Socket.protocol;var o=n(9870);Object.defineProperty(e,"Transport",{enumerable:!0,get:function(){return o.Transport}});var r=n(7385);Object.defineProperty(e,"transports",{enumerable:!0,get:function(){return r.transports}});var s=n(9622);Object.defineProperty(e,"installTimerFunctions",{enumerable:!0,get:function(){return s.installTimerFunctions}})},3481:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.Socket=void 0;const o=n(7385),r=n(9622),s=i(n(1830)),a=i(n(4187)),c=i(n(1227)),l=n(3063),d=n(1373),u=(0,c.default)("engine.io-client:socket");class h extends l.Emitter{constructor(t,e={}){super(),t&&"object"==typeof t&&(e=t,t=null),t?(t=(0,a.default)(t),e.hostname=t.host,e.secure="https"===t.protocol||"wss"===t.protocol,e.port=t.port,t.query&&(e.query=t.query)):e.host&&(e.hostname=(0,a.default)(e.host).host),(0,r.installTimerFunctions)(this,e),this.secure=null!=e.secure?e.secure:"undefined"!=typeof location&&"https:"===location.protocol,e.hostname&&!e.port&&(e.port=this.secure?"443":"80"),this.hostname=e.hostname||("undefined"!=typeof location?location.hostname:"localhost"),this.port=e.port||("undefined"!=typeof location&&location.port?location.port:this.secure?"443":"80"),this.transports=e.transports||["polling","websocket"],this.readyState="",this.writeBuffer=[],this.prevBufferLen=0,this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!0},e),this.opts.path=this.opts.path.replace(/\/$/,"")+"/","string"==typeof this.opts.query&&(this.opts.query=s.default.decode(this.opts.query)),this.id=null,this.upgrades=null,this.pingInterval=null,this.pingTimeout=null,this.pingTimeoutTimer=null,"function"==typeof addEventListener&&(this.opts.closeOnBeforeunload&&addEventListener("beforeunload",(()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())}),!1),"localhost"!==this.hostname&&(this.offlineEventListener=()=>{this.onClose("transport close")},addEventListener("offline",this.offlineEventListener,!1))),this.open()}createTransport(t){u('creating transport "%s"',t);const e=function(t){const e={};for(let n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}(this.opts.query);e.EIO=d.protocol,e.transport=t,this.id&&(e.sid=this.id);const n=Object.assign({},this.opts.transportOptions[t],this.opts,{query:e,socket:this,hostname:this.hostname,secure:this.secure,port:this.port});return u("options: %j",n),new o.transports[t](n)}open(){let t;if(this.opts.rememberUpgrade&&h.priorWebsocketSuccess&&-1!==this.transports.indexOf("websocket"))t="websocket";else{if(0===this.transports.length)return void this.setTimeoutFn((()=>{this.emitReserved("error","No transports available")}),0);t=this.transports[0]}this.readyState="opening";try{t=this.createTransport(t)}catch(t){return u("error while creating transport: %s",t),this.transports.shift(),void this.open()}t.open(),this.setTransport(t)}setTransport(t){u("setting transport %s",t.name),this.transport&&(u("clearing existing transport %s",this.transport.name),this.transport.removeAllListeners()),this.transport=t,t.on("drain",this.onDrain.bind(this)).on("packet",this.onPacket.bind(this)).on("error",this.onError.bind(this)).on("close",(()=>{this.onClose("transport close")}))}probe(t){u('probing transport "%s"',t);let e=this.createTransport(t),n=!1;h.priorWebsocketSuccess=!1;const i=()=>{n||(u('probe transport "%s" opened',t),e.send([{type:"ping",data:"probe"}]),e.once("packet",(i=>{if(!n)if("pong"===i.type&&"probe"===i.data){if(u('probe transport "%s" pong',t),this.upgrading=!0,this.emitReserved("upgrading",e),!e)return;h.priorWebsocketSuccess="websocket"===e.name,u('pausing current transport "%s"',this.transport.name),this.transport.pause((()=>{n||"closed"!==this.readyState&&(u("changing transport and sending upgrade packet"),l(),this.setTransport(e),e.send([{type:"upgrade"}]),this.emitReserved("upgrade",e),e=null,this.upgrading=!1,this.flush())}))}else{u('probe transport "%s" failed',t);const n=new Error("probe error");n.transport=e.name,this.emitReserved("upgradeError",n)}})))};function o(){n||(n=!0,l(),e.close(),e=null)}const r=n=>{const i=new Error("probe error: "+n);i.transport=e.name,o(),u('probe transport "%s" failed because of error: %s',t,n),this.emitReserved("upgradeError",i)};function s(){r("transport closed")}function a(){r("socket closed")}function c(t){e&&t.name!==e.name&&(u('"%s" works - aborting "%s"',t.name,e.name),o())}const l=()=>{e.removeListener("open",i),e.removeListener("error",r),e.removeListener("close",s),this.off("close",a),this.off("upgrading",c)};e.once("open",i),e.once("error",r),e.once("close",s),this.once("close",a),this.once("upgrading",c),e.open()}onOpen(){if(u("socket open"),this.readyState="open",h.priorWebsocketSuccess="websocket"===this.transport.name,this.emitReserved("open"),this.flush(),"open"===this.readyState&&this.opts.upgrade&&this.transport.pause){u("starting upgrade probes");let t=0;const e=this.upgrades.length;for(;t{this.onClose("ping timeout")}),this.pingInterval+this.pingTimeout),this.opts.autoUnref&&this.pingTimeoutTimer.unref()}onDrain(){this.writeBuffer.splice(0,this.prevBufferLen),this.prevBufferLen=0,0===this.writeBuffer.length?this.emitReserved("drain"):this.flush()}flush(){"closed"!==this.readyState&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length&&(u("flushing %d packets in socket",this.writeBuffer.length),this.transport.send(this.writeBuffer),this.prevBufferLen=this.writeBuffer.length,this.emitReserved("flush"))}write(t,e,n){return this.sendPacket("message",t,e,n),this}send(t,e,n){return this.sendPacket("message",t,e,n),this}sendPacket(t,e,n,i){if("function"==typeof e&&(i=e,e=void 0),"function"==typeof n&&(i=n,n=null),"closing"===this.readyState||"closed"===this.readyState)return;(n=n||{}).compress=!1!==n.compress;const o={type:t,data:e,options:n};this.emitReserved("packetCreate",o),this.writeBuffer.push(o),i&&this.once("flush",i),this.flush()}close(){const t=()=>{this.onClose("forced close"),u("socket closing - telling transport to close"),this.transport.close()},e=()=>{this.off("upgrade",e),this.off("upgradeError",e),t()},n=()=>{this.once("upgrade",e),this.once("upgradeError",e)};return"opening"!==this.readyState&&"open"!==this.readyState||(this.readyState="closing",this.writeBuffer.length?this.once("drain",(()=>{this.upgrading?n():t()})):this.upgrading?n():t()),this}onError(t){u("socket error %j",t),h.priorWebsocketSuccess=!1,this.emitReserved("error",t),this.onClose("transport error",t)}onClose(t,e){"opening"!==this.readyState&&"open"!==this.readyState&&"closing"!==this.readyState||(u('socket close with reason: "%s"',t),this.clearTimeoutFn(this.pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),"function"==typeof removeEventListener&&removeEventListener("offline",this.offlineEventListener,!1),this.readyState="closed",this.id=null,this.emitReserved("close",t,e),this.writeBuffer=[],this.prevBufferLen=0)}filterUpgrades(t){const e=[];let n=0;const i=t.length;for(;n{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.transports=void 0;const i=n(715),o=n(1308);e.transports={websocket:o.WS,polling:i.XHR}},715:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.Request=e.XHR=void 0;const o=i(n(6666)),r=i(n(1227)),s=i(n(6242)),a=n(9622),c=n(3063),l=n(484),d=(0,r.default)("engine.io-client:polling-xhr");function u(){}const h=null!=new o.default({xdomain:!1}).responseType;class m extends l.Polling{constructor(t){if(super(t),"undefined"!=typeof location){const e="https:"===location.protocol;let n=location.port;n||(n=e?"443":"80"),this.xd="undefined"!=typeof location&&t.hostname!==location.hostname||n!==t.port,this.xs=t.secure!==e}const e=t&&t.forceBase64;this.supportsBinary=h&&!e}request(t={}){return Object.assign(t,{xd:this.xd,xs:this.xs},this.opts),new g(this.uri(),t)}doWrite(t,e){const n=this.request({method:"POST",data:t});n.on("success",e),n.on("error",(t=>{this.onError("xhr post error",t)}))}doPoll(){d("xhr poll");const t=this.request();t.on("data",this.onData.bind(this)),t.on("error",(t=>{this.onError("xhr poll error",t)})),this.pollXhr=t}}e.XHR=m;class g extends c.Emitter{constructor(t,e){super(),(0,a.installTimerFunctions)(this,e),this.opts=e,this.method=e.method||"GET",this.uri=t,this.async=!1!==e.async,this.data=void 0!==e.data?e.data:null,this.create()}create(){const t=(0,a.pick)(this.opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");t.xdomain=!!this.opts.xd,t.xscheme=!!this.opts.xs;const e=this.xhr=new o.default(t);try{d("xhr open %s: %s",this.method,this.uri),e.open(this.method,this.uri,this.async);try{if(this.opts.extraHeaders){e.setDisableHeaderCheck&&e.setDisableHeaderCheck(!0);for(let t in this.opts.extraHeaders)this.opts.extraHeaders.hasOwnProperty(t)&&e.setRequestHeader(t,this.opts.extraHeaders[t])}}catch(t){}if("POST"===this.method)try{e.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch(t){}try{e.setRequestHeader("Accept","*/*")}catch(t){}"withCredentials"in e&&(e.withCredentials=this.opts.withCredentials),this.opts.requestTimeout&&(e.timeout=this.opts.requestTimeout),e.onreadystatechange=()=>{4===e.readyState&&(200===e.status||1223===e.status?this.onLoad():this.setTimeoutFn((()=>{this.onError("number"==typeof e.status?e.status:0)}),0))},d("xhr data %s",this.data),e.send(this.data)}catch(t){return void this.setTimeoutFn((()=>{this.onError(t)}),0)}"undefined"!=typeof document&&(this.index=g.requestsCount++,g.requests[this.index]=this)}onSuccess(){this.emit("success"),this.cleanup()}onData(t){this.emit("data",t),this.onSuccess()}onError(t){this.emit("error",t),this.cleanup(!0)}cleanup(t){if(void 0!==this.xhr&&null!==this.xhr){if(this.xhr.onreadystatechange=u,t)try{this.xhr.abort()}catch(t){}"undefined"!=typeof document&&delete g.requests[this.index],this.xhr=null}}onLoad(){const t=this.xhr.responseText;null!==t&&this.onData(t)}abort(){this.cleanup()}}if(e.Request=g,g.requestsCount=0,g.requests={},"undefined"!=typeof document)if("function"==typeof attachEvent)attachEvent("onunload",p);else if("function"==typeof addEventListener){const t="onpagehide"in s.default?"pagehide":"unload";addEventListener(t,p,!1)}function p(){for(let t in g.requests)g.requests.hasOwnProperty(t)&&g.requests[t].abort()}},484:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.Polling=void 0;const o=n(9870),r=i(n(1227)),s=i(n(2281)),a=i(n(1830)),c=n(1373),l=(0,r.default)("engine.io-client:polling");class d extends o.Transport{constructor(){super(...arguments),this.polling=!1}get name(){return"polling"}doOpen(){this.poll()}pause(t){this.readyState="pausing";const e=()=>{l("paused"),this.readyState="paused",t()};if(this.polling||!this.writable){let t=0;this.polling&&(l("we are currently polling - waiting to pause"),t++,this.once("pollComplete",(function(){l("pre-pause polling complete"),--t||e()}))),this.writable||(l("we are currently writing - waiting to pause"),t++,this.once("drain",(function(){l("pre-pause writing complete"),--t||e()})))}else e()}poll(){l("polling"),this.polling=!0,this.doPoll(),this.emit("poll")}onData(t){l("polling got data %s",t);(0,c.decodePayload)(t,this.socket.binaryType).forEach((t=>{if("opening"===this.readyState&&"open"===t.type&&this.onOpen(),"close"===t.type)return this.onClose(),!1;this.onPacket(t)})),"closed"!==this.readyState&&(this.polling=!1,this.emit("pollComplete"),"open"===this.readyState?this.poll():l('ignoring poll - transport state "%s"',this.readyState))}doClose(){const t=()=>{l("writing close packet"),this.write([{type:"close"}])};"open"===this.readyState?(l("transport open - closing"),t()):(l("transport not open - deferring close"),this.once("open",t))}write(t){this.writable=!1,(0,c.encodePayload)(t,(t=>{this.doWrite(t,(()=>{this.writable=!0,this.emit("drain")}))}))}uri(){let t=this.query||{};const e=this.opts.secure?"https":"http";let n="";!1!==this.opts.timestampRequests&&(t[this.opts.timestampParam]=(0,s.default)()),this.supportsBinary||t.sid||(t.b64=1),this.opts.port&&("https"===e&&443!==Number(this.opts.port)||"http"===e&&80!==Number(this.opts.port))&&(n=":"+this.opts.port);const i=a.default.encode(t);return e+"://"+(-1!==this.opts.hostname.indexOf(":")?"["+this.opts.hostname+"]":this.opts.hostname)+n+this.opts.path+(i.length?"?"+i:"")}}e.Polling=d},5552:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.defaultBinaryType=e.usingBrowserWebSocket=e.WebSocket=e.nextTick=void 0;const o=i(n(6242));e.nextTick="function"==typeof Promise&&"function"==typeof Promise.resolve?t=>Promise.resolve().then(t):(t,e)=>e(t,0),e.WebSocket=o.default.WebSocket||o.default.MozWebSocket,e.usingBrowserWebSocket=!0,e.defaultBinaryType="arraybuffer"},1308:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.WS=void 0;const o=n(9870),r=i(n(1830)),s=i(n(2281)),a=n(9622),c=n(5552),l=i(n(1227)),d=n(1373),u=(0,l.default)("engine.io-client:websocket"),h="undefined"!=typeof navigator&&"string"==typeof navigator.product&&"reactnative"===navigator.product.toLowerCase();class m extends o.Transport{constructor(t){super(t),this.supportsBinary=!t.forceBase64}get name(){return"websocket"}doOpen(){if(!this.check())return;const t=this.uri(),e=this.opts.protocols,n=h?{}:(0,a.pick)(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(n.headers=this.opts.extraHeaders);try{this.ws=c.usingBrowserWebSocket&&!h?e?new c.WebSocket(t,e):new c.WebSocket(t):new c.WebSocket(t,e,n)}catch(t){return this.emit("error",t)}this.ws.binaryType=this.socket.binaryType||c.defaultBinaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=this.onClose.bind(this),this.ws.onmessage=t=>this.onData(t.data),this.ws.onerror=t=>this.onError("websocket error",t)}write(t){this.writable=!1;for(let e=0;e{const e={};if(!c.usingBrowserWebSocket&&(n.options&&(e.compress=n.options.compress),this.opts.perMessageDeflate)){("string"==typeof t?Buffer.byteLength(t):t.length){this.writable=!0,this.emit("drain")}),this.setTimeoutFn)}))}}doClose(){void 0!==this.ws&&(this.ws.close(),this.ws=null)}uri(){let t=this.query||{};const e=this.opts.secure?"wss":"ws";let n="";this.opts.port&&("wss"===e&&443!==Number(this.opts.port)||"ws"===e&&80!==Number(this.opts.port))&&(n=":"+this.opts.port),this.opts.timestampRequests&&(t[this.opts.timestampParam]=(0,s.default)()),this.supportsBinary||(t.b64=1);const i=r.default.encode(t);return e+"://"+(-1!==this.opts.hostname.indexOf(":")?"["+this.opts.hostname+"]":this.opts.hostname)+n+this.opts.path+(i.length?"?"+i:"")}check(){return!(!c.WebSocket||"__initialize"in c.WebSocket&&this.name===m.prototype.name)}}e.WS=m},6666:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0});const o=i(n(8058)),r=i(n(6242));e.default=function(t){const e=t.xdomain;try{if("undefined"!=typeof XMLHttpRequest&&(!e||o.default))return new XMLHttpRequest}catch(t){}if(!e)try{return new(r.default[["Active"].concat("Object").join("X")])("Microsoft.XMLHTTP")}catch(t){}}},9622:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.installTimerFunctions=e.pick=void 0;const o=i(n(6242));e.pick=function(t,...e){return e.reduce(((e,n)=>(t.hasOwnProperty(n)&&(e[n]=t[n]),e)),{})};const r=setTimeout,s=clearTimeout;e.installTimerFunctions=function(t,e){e.useNativeTimers?(t.setTimeoutFn=r.bind(o.default),t.clearTimeoutFn=s.bind(o.default)):(t.setTimeoutFn=setTimeout.bind(o.default),t.clearTimeoutFn=clearTimeout.bind(o.default))}},3087:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.ERROR_PACKET=e.PACKET_TYPES_REVERSE=e.PACKET_TYPES=void 0;const n=Object.create(null);e.PACKET_TYPES=n,n.open="0",n.close="1",n.ping="2",n.pong="3",n.message="4",n.upgrade="5",n.noop="6";const i=Object.create(null);e.PACKET_TYPES_REVERSE=i,Object.keys(n).forEach((t=>{i[n[t]]=t}));e.ERROR_PACKET={type:"error",data:"parser error"}},2469:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.decode=e.encode=void 0;const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i="undefined"==typeof Uint8Array?[]:new Uint8Array(256);for(let t=0;t{let e,i=new Uint8Array(t),o=i.length,r="";for(e=0;e>2],r+=n[(3&i[e])<<4|i[e+1]>>4],r+=n[(15&i[e+1])<<2|i[e+2]>>6],r+=n[63&i[e+2]];return o%3==2?r=r.substring(0,r.length-1)+"=":o%3==1&&(r=r.substring(0,r.length-2)+"=="),r};e.decode=t=>{let e,n,o,r,s,a=.75*t.length,c=t.length,l=0;"="===t[t.length-1]&&(a--,"="===t[t.length-2]&&a--);const d=new ArrayBuffer(a),u=new Uint8Array(d);for(e=0;e>4,u[l++]=(15&o)<<4|r>>2,u[l++]=(3&r)<<6|63&s;return d}},7572:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const i=n(3087),o=n(2469),r="function"==typeof ArrayBuffer,s=(t,e)=>{if(r){const n=(0,o.decode)(t);return a(n,e)}return{base64:!0,data:t}},a=(t,e)=>"blob"===e&&t instanceof ArrayBuffer?new Blob([t]):t;e.default=(t,e)=>{if("string"!=typeof t)return{type:"message",data:a(t,e)};const n=t.charAt(0);if("b"===n)return{type:"message",data:s(t.substring(1),e)};return i.PACKET_TYPES_REVERSE[n]?t.length>1?{type:i.PACKET_TYPES_REVERSE[n],data:t.substring(1)}:{type:i.PACKET_TYPES_REVERSE[n]}:i.ERROR_PACKET}},3908:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0});const i=n(3087),o="function"==typeof Blob||"undefined"!=typeof Blob&&"[object BlobConstructor]"===Object.prototype.toString.call(Blob),r="function"==typeof ArrayBuffer,s=(t,e)=>{const n=new FileReader;return n.onload=function(){const t=n.result.split(",")[1];e("b"+t)},n.readAsDataURL(t)};e.default=({type:t,data:e},n,a)=>{return o&&e instanceof Blob?n?a(e):s(e,a):r&&(e instanceof ArrayBuffer||(c=e,"function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(c):c&&c.buffer instanceof ArrayBuffer))?n?a(e):s(new Blob([e]),a):a(i.PACKET_TYPES[t]+(e||""));var c}},1373:(t,e,n)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.decodePayload=e.decodePacket=e.encodePayload=e.encodePacket=e.protocol=void 0;const i=n(3908);e.encodePacket=i.default;const o=n(7572);e.decodePacket=o.default;const r=String.fromCharCode(30);e.encodePayload=(t,e)=>{const n=t.length,o=new Array(n);let s=0;t.forEach(((t,a)=>{(0,i.default)(t,!1,(t=>{o[a]=t,++s===n&&e(o.join(r))}))}))};e.decodePayload=(t,e)=>{const n=t.split(r),i=[];for(let t=0;t{m("error"),n.cleanup(),n._readyState="closed",this.emitReserved("error",e),t?t(e):n.maybeReconnectOnOpen()}));if(!1!==this._timeout){const t=this._timeout;m("connect attempt will timeout after %d",t),0===t&&i();const n=this.setTimeoutFn((()=>{m("connect attempt timed out after %d",t),i(),e.close(),e.emit("error",new Error("timeout"))}),t);this.opts.autoUnref&&n.unref(),this.subs.push((function(){clearTimeout(n)}))}return this.subs.push(i),this.subs.push(o),this}connect(t){return this.open(t)}onopen(){m("open"),this.cleanup(),this._readyState="open",this.emitReserved("open");const t=this.engine;this.subs.push(d.on(t,"ping",this.onping.bind(this)),d.on(t,"data",this.ondata.bind(this)),d.on(t,"error",this.onerror.bind(this)),d.on(t,"close",this.onclose.bind(this)),d.on(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(t){this.decoder.add(t)}ondecoded(t){this.emitReserved("packet",t)}onerror(t){m("error",t),this.emitReserved("error",t)}socket(t,e){let n=this.nsps[t];return n||(n=new c.Socket(this,t,e),this.nsps[t]=n),n}_destroy(t){const e=Object.keys(this.nsps);for(const t of e){if(this.nsps[t].active)return void m("socket %s is still active, skipping close",t)}this._close()}_packet(t){m("writing packet %j",t);const e=this.encoder.encode(t);for(let n=0;nt())),this.subs.length=0,this.decoder.destroy()}_close(){m("disconnect"),this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close"),this.engine&&this.engine.close()}disconnect(){return this._close()}onclose(t){m("closed due to %s",t),this.cleanup(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const t=this;if(this.backoff.attempts>=this._reconnectionAttempts)m("reconnect failed"),this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const e=this.backoff.duration();m("will wait %dms before reconnect attempt",e),this._reconnecting=!0;const n=this.setTimeoutFn((()=>{t.skipReconnect||(m("attempting reconnect"),this.emitReserved("reconnect_attempt",t.backoff.attempts),t.skipReconnect||t.open((e=>{e?(m("reconnect attempt error"),t._reconnecting=!1,t.reconnect(),this.emitReserved("reconnect_error",e)):(m("reconnect success"),t.onreconnect())})))}),e);this.opts.autoUnref&&n.unref(),this.subs.push((function(){clearTimeout(n)}))}}onreconnect(){const t=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",t)}}e.Manager=g},7149:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.on=void 0,e.on=function(t,e,n){return t.on(e,n),function(){t.off(e,n)}}},8312:function(t,e,n){"use strict";var i=this&&this.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(e,"__esModule",{value:!0}),e.Socket=void 0;const o=n(7116),r=n(7149),s=n(3063),a=i(n(1227)).default("socket.io-client:socket"),c=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1});class l extends s.Emitter{constructor(t,e,n){super(),this.connected=!1,this.disconnected=!0,this.receiveBuffer=[],this.sendBuffer=[],this.ids=0,this.acks={},this.flags={},this.io=t,this.nsp=e,n&&n.auth&&(this.auth=n.auth),this.io._autoConnect&&this.open()}subEvents(){if(this.subs)return;const t=this.io;this.subs=[r.on(t,"open",this.onopen.bind(this)),r.on(t,"packet",this.onpacket.bind(this)),r.on(t,"error",this.onerror.bind(this)),r.on(t,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected||(this.subEvents(),this.io._reconnecting||this.io.open(),"open"===this.io._readyState&&this.onopen()),this}open(){return this.connect()}send(...t){return t.unshift("message"),this.emit.apply(this,t),this}emit(t,...e){if(c.hasOwnProperty(t))throw new Error('"'+t+'" is a reserved event name');e.unshift(t);const n={type:o.PacketType.EVENT,data:e,options:{}};if(n.options.compress=!1!==this.flags.compress,"function"==typeof e[e.length-1]){const t=this.ids++;a("emitting packet with ack id %d",t);const i=e.pop();this._registerAckCallback(t,i),n.id=t}const i=this.io.engine&&this.io.engine.transport&&this.io.engine.transport.writable;return this.flags.volatile&&(!i||!this.connected)?a("discard packet as the transport is not currently writable"):this.connected?this.packet(n):this.sendBuffer.push(n),this.flags={},this}_registerAckCallback(t,e){const n=this.flags.timeout;if(void 0===n)return void(this.acks[t]=e);const i=this.io.setTimeoutFn((()=>{delete this.acks[t];for(let e=0;e{this.io.clearTimeoutFn(i),e.apply(this,[null,...t])}}packet(t){t.nsp=this.nsp,this.io._packet(t)}onopen(){a("transport is open - connecting"),"function"==typeof this.auth?this.auth((t=>{this.packet({type:o.PacketType.CONNECT,data:t})})):this.packet({type:o.PacketType.CONNECT,data:this.auth})}onerror(t){this.connected||this.emitReserved("connect_error",t)}onclose(t){a("close (%s)",t),this.connected=!1,this.disconnected=!0,delete this.id,this.emitReserved("disconnect",t)}onpacket(t){if(t.nsp===this.nsp)switch(t.type){case o.PacketType.CONNECT:if(t.data&&t.data.sid){const e=t.data.sid;this.onconnect(e)}else this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case o.PacketType.EVENT:case o.PacketType.BINARY_EVENT:this.onevent(t);break;case o.PacketType.ACK:case o.PacketType.BINARY_ACK:this.onack(t);break;case o.PacketType.DISCONNECT:this.ondisconnect();break;case o.PacketType.CONNECT_ERROR:this.destroy();const e=new Error(t.data.message);e.data=t.data.data,this.emitReserved("connect_error",e)}}onevent(t){const e=t.data||[];a("emitting event %j",e),null!=t.id&&(a("attaching ack callback to event"),e.push(this.ack(t.id))),this.connected?this.emitEvent(e):this.receiveBuffer.push(Object.freeze(e))}emitEvent(t){if(this._anyListeners&&this._anyListeners.length){const e=this._anyListeners.slice();for(const n of e)n.apply(this,t)}super.emit.apply(this,t)}ack(t){const e=this;let n=!1;return function(...i){n||(n=!0,a("sending ack %j",i),e.packet({type:o.PacketType.ACK,id:t,data:i}))}}onack(t){const e=this.acks[t.id];"function"==typeof e?(a("calling ack %s with %j",t.id,t.data),e.apply(this,t.data),delete this.acks[t.id]):a("bad ack %s",t.id)}onconnect(t){a("socket connected with id %s",t),this.id=t,this.connected=!0,this.disconnected=!1,this.emitBuffered(),this.emitReserved("connect")}emitBuffered(){this.receiveBuffer.forEach((t=>this.emitEvent(t))),this.receiveBuffer=[],this.sendBuffer.forEach((t=>this.packet(t))),this.sendBuffer=[]}ondisconnect(){a("server disconnect (%s)",this.nsp),this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach((t=>t())),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&(a("performing disconnect (%s)",this.nsp),this.packet({type:o.PacketType.DISCONNECT})),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(t){return this.flags.compress=t,this}get volatile(){return this.flags.volatile=!0,this}timeout(t){return this.flags.timeout=t,this}onAny(t){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(t),this}prependAny(t){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(t),this}offAny(t){if(!this._anyListeners)return this;if(t){const e=this._anyListeners;for(let n=0;n{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.reconstructPacket=e.deconstructPacket=void 0;const i=n(790);function o(t,e){if(!t)return t;if(i.isBinary(t)){const n={_placeholder:!0,num:e.length};return e.push(t),n}if(Array.isArray(t)){const n=new Array(t.length);for(let i=0;i{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Decoder=e.Encoder=e.PacketType=e.protocol=void 0;const i=n(3063),o=n(3155),r=n(790),s=n(1227).default("socket.io-parser");var a;e.protocol=5,function(t){t[t.CONNECT=0]="CONNECT",t[t.DISCONNECT=1]="DISCONNECT",t[t.EVENT=2]="EVENT",t[t.ACK=3]="ACK",t[t.CONNECT_ERROR=4]="CONNECT_ERROR",t[t.BINARY_EVENT=5]="BINARY_EVENT",t[t.BINARY_ACK=6]="BINARY_ACK"}(a=e.PacketType||(e.PacketType={}));e.Encoder=class{encode(t){return s("encoding packet %j",t),t.type!==a.EVENT&&t.type!==a.ACK||!r.hasBinary(t)?[this.encodeAsString(t)]:(t.type=t.type===a.EVENT?a.BINARY_EVENT:a.BINARY_ACK,this.encodeAsBinary(t))}encodeAsString(t){let e=""+t.type;return t.type!==a.BINARY_EVENT&&t.type!==a.BINARY_ACK||(e+=t.attachments+"-"),t.nsp&&"/"!==t.nsp&&(e+=t.nsp+","),null!=t.id&&(e+=t.id),null!=t.data&&(e+=JSON.stringify(t.data)),s("encoded %j as %s",t,e),e}encodeAsBinary(t){const e=o.deconstructPacket(t),n=this.encodeAsString(e.packet),i=e.buffers;return i.unshift(n),i}};class c extends i.Emitter{constructor(){super()}add(t){let e;if("string"==typeof t)e=this.decodeString(t),e.type===a.BINARY_EVENT||e.type===a.BINARY_ACK?(this.reconstructor=new l(e),0===e.attachments&&super.emitReserved("decoded",e)):super.emitReserved("decoded",e);else{if(!r.isBinary(t)&&!t.base64)throw new Error("Unknown type: "+t);if(!this.reconstructor)throw new Error("got binary data when not reconstructing a packet");e=this.reconstructor.takeBinaryData(t),e&&(this.reconstructor=null,super.emitReserved("decoded",e))}}decodeString(t){let e=0;const n={type:Number(t.charAt(0))};if(void 0===a[n.type])throw new Error("unknown packet type "+n.type);if(n.type===a.BINARY_EVENT||n.type===a.BINARY_ACK){const i=e+1;for(;"-"!==t.charAt(++e)&&e!=t.length;);const o=t.substring(i,e);if(o!=Number(o)||"-"!==t.charAt(e))throw new Error("Illegal attachments");n.attachments=Number(o)}if("/"===t.charAt(e+1)){const i=e+1;for(;++e;){if(","===t.charAt(e))break;if(e===t.length)break}n.nsp=t.substring(i,e)}else n.nsp="/";const i=t.charAt(e+1);if(""!==i&&Number(i)==i){const i=e+1;for(;++e;){const n=t.charAt(e);if(null==n||Number(n)!=n){--e;break}if(e===t.length)break}n.id=Number(t.substring(i,e+1))}if(t.charAt(++e)){const i=function(t){try{return JSON.parse(t)}catch(t){return!1}}(t.substr(e));if(!c.isPayloadValid(n.type,i))throw new Error("invalid payload");n.data=i}return s("decoded %s as %j",t,n),n}static isPayloadValid(t,e){switch(t){case a.CONNECT:return"object"==typeof e;case a.DISCONNECT:return void 0===e;case a.CONNECT_ERROR:return"string"==typeof e||"object"==typeof e;case a.EVENT:case a.BINARY_EVENT:return Array.isArray(e)&&e.length>0;case a.ACK:case a.BINARY_ACK:return Array.isArray(e)}}destroy(){this.reconstructor&&this.reconstructor.finishedReconstruction()}}e.Decoder=c;class l{constructor(t){this.packet=t,this.buffers=[],this.reconPack=t}takeBinaryData(t){if(this.buffers.push(t),this.buffers.length===this.reconPack.attachments){const t=o.reconstructPacket(this.reconPack,this.buffers);return this.finishedReconstruction(),t}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}},790:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.hasBinary=e.isBinary=void 0;const n="function"==typeof ArrayBuffer,i=Object.prototype.toString,o="function"==typeof Blob||"undefined"!=typeof Blob&&"[object BlobConstructor]"===i.call(Blob),r="function"==typeof File||"undefined"!=typeof File&&"[object FileConstructor]"===i.call(File);function s(t){return n&&(t instanceof ArrayBuffer||(t=>"function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(t):t.buffer instanceof ArrayBuffer)(t))||o&&t instanceof Blob||r&&t instanceof File}e.isBinary=s,e.hasBinary=function t(e,n){if(!e||"object"!=typeof e)return!1;if(Array.isArray(e)){for(let n=0,i=e.length;n{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.reconstructPacket=e.deconstructPacket=void 0;const i=n(665);function o(t,e){if(!t)return t;if(i.isBinary(t)){const n={_placeholder:!0,num:e.length};return e.push(t),n}if(Array.isArray(t)){const n=new Array(t.length);for(let i=0;i=0&&t.num{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.Decoder=e.Encoder=e.PacketType=e.protocol=void 0;const i=n(7655),o=n(4880),r=n(665),s=n(1227).default("socket.io-parser");var a;e.protocol=5,function(t){t[t.CONNECT=0]="CONNECT",t[t.DISCONNECT=1]="DISCONNECT",t[t.EVENT=2]="EVENT",t[t.ACK=3]="ACK",t[t.CONNECT_ERROR=4]="CONNECT_ERROR",t[t.BINARY_EVENT=5]="BINARY_EVENT",t[t.BINARY_ACK=6]="BINARY_ACK"}(a=e.PacketType||(e.PacketType={}));e.Encoder=class{constructor(t){this.replacer=t}encode(t){return s("encoding packet %j",t),t.type!==a.EVENT&&t.type!==a.ACK||!r.hasBinary(t)?[this.encodeAsString(t)]:(t.type=t.type===a.EVENT?a.BINARY_EVENT:a.BINARY_ACK,this.encodeAsBinary(t))}encodeAsString(t){let e=""+t.type;return t.type!==a.BINARY_EVENT&&t.type!==a.BINARY_ACK||(e+=t.attachments+"-"),t.nsp&&"/"!==t.nsp&&(e+=t.nsp+","),null!=t.id&&(e+=t.id),null!=t.data&&(e+=JSON.stringify(t.data,this.replacer)),s("encoded %j as %s",t,e),e}encodeAsBinary(t){const e=o.deconstructPacket(t),n=this.encodeAsString(e.packet),i=e.buffers;return i.unshift(n),i}};class c extends i.Emitter{constructor(t){super(),this.reviver=t}add(t){let e;if("string"==typeof t){if(this.reconstructor)throw new Error("got plaintext data when reconstructing a packet");e=this.decodeString(t),e.type===a.BINARY_EVENT||e.type===a.BINARY_ACK?(this.reconstructor=new l(e),0===e.attachments&&super.emitReserved("decoded",e)):super.emitReserved("decoded",e)}else{if(!r.isBinary(t)&&!t.base64)throw new Error("Unknown type: "+t);if(!this.reconstructor)throw new Error("got binary data when not reconstructing a packet");e=this.reconstructor.takeBinaryData(t),e&&(this.reconstructor=null,super.emitReserved("decoded",e))}}decodeString(t){let e=0;const n={type:Number(t.charAt(0))};if(void 0===a[n.type])throw new Error("unknown packet type "+n.type);if(n.type===a.BINARY_EVENT||n.type===a.BINARY_ACK){const i=e+1;for(;"-"!==t.charAt(++e)&&e!=t.length;);const o=t.substring(i,e);if(o!=Number(o)||"-"!==t.charAt(e))throw new Error("Illegal attachments");n.attachments=Number(o)}if("/"===t.charAt(e+1)){const i=e+1;for(;++e;){if(","===t.charAt(e))break;if(e===t.length)break}n.nsp=t.substring(i,e)}else n.nsp="/";const i=t.charAt(e+1);if(""!==i&&Number(i)==i){const i=e+1;for(;++e;){const n=t.charAt(e);if(null==n||Number(n)!=n){--e;break}if(e===t.length)break}n.id=Number(t.substring(i,e+1))}if(t.charAt(++e)){const i=this.tryParse(t.substr(e));if(!c.isPayloadValid(n.type,i))throw new Error("invalid payload");n.data=i}return s("decoded %s as %j",t,n),n}tryParse(t){try{return JSON.parse(t,this.reviver)}catch(t){return!1}}static isPayloadValid(t,e){switch(t){case a.CONNECT:return"object"==typeof e;case a.DISCONNECT:return void 0===e;case a.CONNECT_ERROR:return"string"==typeof e||"object"==typeof e;case a.EVENT:case a.BINARY_EVENT:return Array.isArray(e)&&e.length>0;case a.ACK:case a.BINARY_ACK:return Array.isArray(e)}}destroy(){this.reconstructor&&this.reconstructor.finishedReconstruction()}}e.Decoder=c;class l{constructor(t){this.packet=t,this.buffers=[],this.reconPack=t}takeBinaryData(t){if(this.buffers.push(t),this.buffers.length===this.reconPack.attachments){const t=o.reconstructPacket(this.reconPack,this.buffers);return this.finishedReconstruction(),t}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}}},665:(t,e)=>{"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.hasBinary=e.isBinary=void 0;const n="function"==typeof ArrayBuffer,i=Object.prototype.toString,o="function"==typeof Blob||"undefined"!=typeof Blob&&"[object BlobConstructor]"===i.call(Blob),r="function"==typeof File||"undefined"!=typeof File&&"[object FileConstructor]"===i.call(File);function s(t){return n&&(t instanceof ArrayBuffer||(t=>"function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(t):t.buffer instanceof ArrayBuffer)(t))||o&&t instanceof Blob||r&&t instanceof File}e.isBinary=s,e.hasBinary=function t(e,n){if(!e||"object"!=typeof e)return!1;if(Array.isArray(e)){for(let n=0,i=e.length;n{"use strict";n.d(e,{Z:()=>i});const i=n(6092).Z.Symbol},3243:(t,e,n)=>{"use strict";n.d(e,{Z:()=>h});var i=n(7685),o=Object.prototype,r=o.hasOwnProperty,s=o.toString,a=i.Z?i.Z.toStringTag:void 0;const c=function(t){var e=r.call(t,a),n=t[a];try{t[a]=void 0;var i=!0}catch(t){}var o=s.call(t);return i&&(e?t[a]=n:delete t[a]),o};var l=Object.prototype.toString;const d=function(t){return l.call(t)};var u=i.Z?i.Z.toStringTag:void 0;const h=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":u&&u in Object(t)?c(t):d(t)}},3413:(t,e,n)=>{"use strict";n.d(e,{Z:()=>i});const i="object"==typeof global&&global&&global.Object===Object&&global},6092:(t,e,n)=>{"use strict";n.d(e,{Z:()=>r});var i=n(3413),o="object"==typeof self&&self&&self.Object===Object&&self;const r=i.Z||o||Function("return this")()},7771:(t,e,n)=>{"use strict";n.d(e,{Z:()=>i});const i=Array.isArray},7226:(t,e,n)=>{"use strict";n.d(e,{Z:()=>i});const i=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},8533:(t,e,n)=>{"use strict";n.d(e,{Z:()=>i});const i=function(t){return null!=t&&"object"==typeof t}},7655:(t,e,n)=>{"use strict";function i(t){if(t)return function(t){for(var e in i.prototype)t[e]=i.prototype[e];return t}(t)}n.r(e),n.d(e,{Emitter:()=>i}),i.prototype.on=i.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+t]=this._callbacks["$"+t]||[]).push(e),this},i.prototype.once=function(t,e){function n(){this.off(t,n),e.apply(this,arguments)}return n.fn=e,this.on(t,n),this},i.prototype.off=i.prototype.removeListener=i.prototype.removeAllListeners=i.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var n,i=this._callbacks["$"+t];if(!i)return this;if(1==arguments.length)return delete this._callbacks["$"+t],this;for(var o=0;o{var e=t&&t.__esModule?()=>t.default:()=>t;return __webpack_require__.d(e,{a:e}),e},__webpack_require__.d=(t,e)=>{for(var n in e)__webpack_require__.o(e,n)&&!__webpack_require__.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},__webpack_require__.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),__webpack_require__.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),__webpack_require__.r=t=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},__webpack_require__.nc=void 0;var __webpack_exports__={};return(()=>{"use strict";__webpack_require__.d(__webpack_exports__,{default:()=>lX});var t=__webpack_require__(9110);class e extends t.y{constructor(t){super(),this.editor=t,this.set("isEnabled",!0),this._disableStack=new Set}forceDisabled(t){this._disableStack.add(t),1==this._disableStack.size&&(this.on("set:isEnabled",n,{priority:"highest"}),this.isEnabled=!1)}clearForceDisabled(t){this._disableStack.delete(t),0==this._disableStack.size&&(this.off("set:isEnabled",n),this.isEnabled=!0)}destroy(){this.stopListening()}static get isContextPlugin(){return!1}}function n(t){t.return=!1,t.stop()}class i extends t.y{constructor(t){super(),this.editor=t,this.set("value",void 0),this.set("isEnabled",!1),this._affectsData=!0,this._disableStack=new Set,this.decorate("execute"),this.listenTo(this.editor.model.document,"change",(()=>{this.refresh()})),this.on("execute",(t=>{this.isEnabled||t.stop()}),{priority:"high"}),this.listenTo(t,"change:isReadOnly",((t,e,n)=>{n&&this.affectsData?this.forceDisabled("readOnlyMode"):this.clearForceDisabled("readOnlyMode")}))}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",o,{priority:"highest"}),this.isEnabled=!1)}clearForceDisabled(t){this._disableStack.delete(t),0==this._disableStack.size&&(this.off("set:isEnabled",o),this.refresh())}execute(...t){}destroy(){this.stopListening()}}function o(t){t.return=!1,t.stop()}var r=__webpack_require__(6547);class s extends i{constructor(t){super(t),this._childCommandsDefinitions=[]}refresh(){}execute(...t){const e=this._getFirstEnabledCommand();return!!e&&e.execute(t)}registerChildCommand(t,e={}){(0,r.Z)(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}}var a=__webpack_require__(3243);const c=function(t,e){return function(n){return t(e(n))}};const l=c(Object.getPrototypeOf,Object);var d=__webpack_require__(8533),u=Function.prototype,h=Object.prototype,m=u.toString,g=h.hasOwnProperty,p=m.call(Object);const f=function(t){if(!(0,d.Z)(t)||"[object Object]"!=(0,a.Z)(t))return!1;var e=l(t);if(null===e)return!0;var n=g.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&m.call(n)==p};const b=function(){this.__data__=[],this.size=0};const k=function(t,e){return t===e||t!=t&&e!=e};const x=function(t,e){for(var n=t.length;n--;)if(k(t[n][0],e))return n;return-1};var w=Array.prototype.splice;const _=function(t){var e=this.__data__,n=x(e,t);return!(n<0)&&(n==e.length-1?e.pop():w.call(e,n,1),--this.size,!0)};const A=function(t){var e=this.__data__,n=x(e,t);return n<0?void 0:e[n][1]};const v=function(t){return x(this.__data__,t)>-1};const C=function(t,e){var n=this.__data__,i=x(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this};function y(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 zt={};zt["[object Float32Array]"]=zt["[object Float64Array]"]=zt["[object Int8Array]"]=zt["[object Int16Array]"]=zt["[object Int32Array]"]=zt["[object Uint8Array]"]=zt["[object Uint8ClampedArray]"]=zt["[object Uint16Array]"]=zt["[object Uint32Array]"]=!0,zt["[object Arguments]"]=zt["[object Array]"]=zt["[object ArrayBuffer]"]=zt["[object Boolean]"]=zt["[object DataView]"]=zt["[object Date]"]=zt["[object Error]"]=zt["[object Function]"]=zt["[object Map]"]=zt["[object Number]"]=zt["[object Object]"]=zt["[object RegExp]"]=zt["[object Set]"]=zt["[object String]"]=zt["[object WeakMap]"]=!1;const jt=function(t){return(0,d.Z)(t)&&Lt(t.length)&&!!zt[(0,a.Z)(t)]};const Ft=function(t){return function(e){return t(e)}};var Vt=__webpack_require__(3413),Ht="object"==typeof exports&&exports&&!exports.nodeType&&exports,Ut=Ht&&"object"==typeof module&&module&&!module.nodeType&&module,qt=Ut&&Ut.exports===Ht&&Vt.Z.process;const Wt=function(){try{var t=Ut&&Ut.require&&Ut.require("util").types;return t||qt&&qt.binding&&qt.binding("util")}catch(t){}}();var Zt=Wt&&Wt.isTypedArray;const Gt=Zt?Ft(Zt):jt;var Kt=Object.prototype.hasOwnProperty;const $t=function(t,e){var n=(0,St.Z)(t),i=!n&&Dt(t),o=!n&&!i&&Ot(t),r=!n&&!i&&!o&&Gt(t),s=n||i||o||r,a=s?vt(t.length,String):[],c=a.length;for(var l in t)!e&&!Kt.call(t,l)||s&&("length"==l||o&&("offset"==l||"parent"==l)||r&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||Rt(l,c))||a.push(l);return a};var Yt=Object.prototype;const Jt=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||Yt)};const Qt=c(Object.keys,Object);var Xt=Object.prototype.hasOwnProperty;const te=function(t){if(!Jt(t))return Qt(t);var e=[];for(var n in Object(t))Xt.call(t,n)&&"constructor"!=n&&e.push(n);return e};const ee=function(t){return null!=t&&Lt(t.length)&&!M(t)};const ne=function(t){return ee(t)?$t(t):te(t)};const ie=function(t,e){return t&&At(e,ne(e),t)};const oe=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e};var re=Object.prototype.hasOwnProperty;const se=function(t){if(!(0,B.Z)(t))return oe(t);var e=Jt(t),n=[];for(var i in t)("constructor"!=i||!e&&re.call(t,i))&&n.push(i);return n};const ae=function(t){return ee(t)?$t(t,!0):se(t)};const ce=function(t,e){return t&&At(e,ae(e),t)};var le="object"==typeof exports&&exports&&!exports.nodeType&&exports,de=le&&"object"==typeof module&&module&&!module.nodeType&&module,ue=de&&de.exports===le?N.Z.Buffer:void 0,he=ue?ue.allocUnsafe:void 0;const me=function(t,e){if(e)return t.slice();var n=t.length,i=he?he(n):new t.constructor(n);return t.copy(i),i};const ge=function(t,e){var n=-1,i=t.length;for(e||(e=Array(i));++n{this._setToTarget(t,i,e[i],n)}))}}function wn(t){return bn(t,_n)}function _n(t){return kn(t)?t:void 0}var An=__webpack_require__(4033),vn=__webpack_require__(8378),Cn=__webpack_require__(669);class yn extends Cn.Q5{constructor(t,e=[],n=[]){super(),this._context=t,this._plugins=new Map,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 vn.ZP("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),u(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&&(u(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 vn.ZP("plugincollection-replace-plugin-invalid-type",null,{pluginItem:n});const e=n.pluginName;if(!e)throw new vn.ZP("plugincollection-replace-plugin-missing-name",null,{pluginItem:n});if(n.requires&&n.requires.length)throw new vn.ZP("plugincollection-plugin-for-replacing-cannot-have-dependencies",null,{pluginName:e});const o=i._availablePlugins.get(e);if(!o)throw new vn.ZP("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 vn.ZP("plugincollection-plugin-for-replacing-not-loaded",null,{pluginName:e})}if(o.requires&&o.requires.length)throw new vn.ZP("plugincollection-replaced-plugin-cannot-have-dependencies",null,{pluginName:e});t.splice(r,1,n),i._availablePlugins.set(e,n)}}(r,n);const s=function(t){return t.map((t=>{let e=i._contextPlugins.get(t);return e=e||new t(o),i._add(t,e),e}))}(r);return h(s,"init").then((()=>h(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 u(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 vn.ZP("plugincollection-soft-required",o,{missingPlugin:t,requiredBy:d(e)});throw new vn.ZP("plugincollection-plugin-not-found",o,{plugin:t})}(t,n),function(t,e){if(!c(e))return;if(c(t))return;throw new vn.ZP("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 vn.ZP("plugincollection-required",o,{plugin:d(t),requiredBy:d(n)})}(t,n)}))}function h(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 vn.ZP("plugincollection-plugin-name-conflict",null,{pluginName:n,plugin1:this._plugins.get(n).constructor,plugin2:t});this._plugins.set(n,e)}}}var En=__webpack_require__(3386);class Tn{constructor(t){this.config=new xn(t,this.constructor.defaultConfig);const e=this.constructor.builtinPlugins;this.config.define("plugins",e),this.plugins=new yn(this,e);const n=this.config.get("language")||{};this.locale=new En.Z({uiLanguage:"string"==typeof n?n:n.ui,contentLanguage:this.config.get("language.content")}),this.t=this.locale.t,this.editors=new An.Z,this._contextOwner=null}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 vn.ZP("context-initplugins-constructor-only",null,{Plugin:n});if(!0!==n.isContextPlugin)throw new vn.ZP("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 vn.ZP("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 Dn extends t.y{constructor(t){super(),this.context=t}destroy(){this.stopListening()}static get isContextPlugin(){return!0}}class Sn{is(){throw new Error("is() method is abstract")}}function In(t,e){const n=Math.min(t.length,e.length);for(let i=0;it.data.length)throw new vn.ZP("view-textproxy-wrong-offsetintext",this);if(n<0||e+n>t.data.length)throw new vn.ZP("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}}On.prototype.is=function(t){return"$textProxy"===t||"view:$textProxy"===t||"textProxy"===t||"view:textProxy"===t};var Pn=__webpack_require__(9047),Rn=__webpack_require__(3701),Ln=__webpack_require__(5838);class zn{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=jn(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=jn(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 jn(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());f(t)?(void 0!==t.style&&(0,vn.KE)("matcher-pattern-deprecated-attributes-style-key",t),void 0!==t.class&&(0,vn.KE)("matcher-pattern-deprecated-attributes-class-key",t)):(n.delete("style"),n.delete("class"));return Fn(t,n,(t=>e.getAttribute(t)))}(e.attributes,t),!n.attributes)||e.classes&&(n.classes=function(t,e){return Fn(t,e.getClassNames(),(()=>{}))}(e.classes,t),!n.classes)||e.styles&&(n.styles=function(t,e){return Fn(t,e.getStyleNames(!0),(t=>e.getStyle(t)))}(e.styles,t),!n.styles)?null:n}function Fn(t,e,n){const i=function(t){if(Array.isArray(t))return t.map((t=>f(t)?(void 0!==t.key&&void 0!==t.value||(0,vn.KE)("matcher-pattern-missing-key-or-value",t),[t.key,t.value]):[t,!0]));if(f(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);++i0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}};const Ei=yi(vi);const Ti=function(t,e){return Ei(_i(t,e,ki),t+"")};const Di=function(t,e,n){if(!(0,B.Z)(n))return!1;var i=typeof e;return!!("number"==i?ee(n)&&Rt(e,n.length):"string"==i&&e in n)&&k(n[e],t)};const Si=function(t){return Ti((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&&Di(n[0],n[1],s)&&(r=o<3?void 0:r,o=1),e=Object(e);++ie===t));return Array.isArray(e)}set(t,e){if((0,B.Z)(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=Pi(t);li(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]&&!(0,B.Z)(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=di(this._styles,n);if(!i)return;!Array.from(Object.keys(i)).length&&this.remove(n)}}class Oi{constructor(){this._normalizers=new Map,this._extractors=new Map,this._reducers=new Map,this._consumables=new Map}toNormalizedForm(t,e,n){if((0,B.Z)(e))Ri(n,Pi(t),e);else if(this._normalizers.has(t)){const i=this._normalizers.get(t),{path:o,value:r}=i(e);Ri(n,o,r)}else Ri(n,t,e)}getNormalized(t,e){if(!t)return Ii({},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 di(e,n);const i=n(t,e);if(i)return i}return di(e,Pi(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.values())}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 Pi(t){return t.replace("-",".")}function Ri(t,e,n){let i=n;(0,B.Z)(n)&&(i=Ii({},di(t,e),n)),Mi(t,e,i)}class Li extends Mn{constructor(t,e,n,i){if(super(t),this.name=e,this._attrs=function(t){const e=(0,Pn.Z)(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");zi(this._classes,t),this._attrs.delete("class")}this._styles=new Ni(this.document.stylesProcessor),this._attrs.has("style")&&(this._styles.setTo(this._attrs.get("style")),this._attrs.delete("style")),this._customProperties=new Map,this._unsafeAttributesToRender=[]}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 Li))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 zn(...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 Nn(t,e)];(0,Ln.Z)(e)||(e=[e]);return Array.from(e).map((e=>"string"==typeof e?new Nn(t,e):e instanceof On?new Nn(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(0,Rn.Z)(t))this._classes.add(e)}_removeClass(t){this._fireChange("attributes",this);for(const e of(0,Rn.Z)(t))this._classes.delete(e)}_setStyle(t,e){this._fireChange("attributes",this),f(t)?this._styles.set(t):this._styles.set(t,e)}_removeStyle(t){this._fireChange("attributes",this);for(const e of(0,Rn.Z)(t))this._styles.remove(e)}_setCustomProperty(t,e){this._customProperties.set(t,e)}_removeCustomProperty(t){return this._customProperties.delete(t)}}function zi(t,e){const n=e.split(/\s+/);t.clear(),n.forEach((e=>t.add(e)))}Li.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 ji extends Li{constructor(...t){super(...t),this.getFillerOffset=Fi}}function Fi(){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}ji.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 Vi extends((0,t.Z)(ji)){constructor(...t){super(...t);const e=t[0];this.set("isReadOnly",!1),this.set("isFocused",!1),this.bind("isReadOnly").to(e),this.bind("isFocused").to(e,"isFocused",(t=>t&&e.selection.editableElement==this)),this.listenTo(e.selection,"change",(()=>{this.isFocused=e.isFocused&&e.selection.editableElement==this}))}destroy(){this.stopListening()}}Vi.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 Hi=Symbol("rootName");class Ui extends Vi{constructor(t,e){super(t,e),this.rootName="main"}get rootName(){return this.getCustomProperty(Hi)}set rootName(t){this._setCustomProperty(Hi,t)}set _name(t){this.name=t}}Ui.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 qi{constructor(t={}){if(!t.boundaries&&!t.startPosition)throw new vn.ZP("view-tree-walker-no-start-position",null);if(t.direction&&"forward"!=t.direction&&"backward"!=t.direction)throw new vn.ZP("view-tree-walker-unknown-direction",t.startPosition,{direction:t.direction});this.boundaries=t.boundaries||null,t.startPosition?this.position=Wi._createAt(t.startPosition):this.position=Wi._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}skip(t){let e,n,i;do{i=this.position,({done:e,value:n}=this.next())}while(!e&&t(n));e||(this.position=i)}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 Nn){if(t.isAtEnd)return this.position=Wi._createAfter(n),this._next();i=n.data[t.offset]}else i=n.getChild(t.offset);if(i instanceof Li)return this.shallow?t.offset++:t=new Wi(i,0),this.position=t,this._formatReturnValue("elementStart",i,e,t,1);if(i instanceof Nn){if(this.singleCharacters)return t=new Wi(i,0),this.position=t,this._next();{let n,o=i.data.length;return i==this._boundaryEndParent?(o=this.boundaries.end.offset,n=new On(i,0,o),t=Wi._createAfter(n)):(n=new On(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 On(n,t.offset,i);return t.offset+=i,this.position=t,this._formatReturnValue("text",o,e,t,i)}return t=Wi._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 Nn){if(t.isAtStart)return this.position=Wi._createBefore(n),this._previous();i=n.data[t.offset-1]}else i=n.getChild(t.offset-1);if(i instanceof Li)return this.shallow?(t.offset--,this.position=t,this._formatReturnValue("elementStart",i,e,t,1)):(t=new Wi(i,i.childCount),this.position=t,this.ignoreElementEnd?this._previous():this._formatReturnValue("elementEnd",i,e,t));if(i instanceof Nn){if(this.singleCharacters)return t=new Wi(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 On(i,e,i.data.length-e),o=n.data.length,t=Wi._createBefore(n)}else n=new On(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 On(n,t.offset,i);return this.position=t,this._formatReturnValue("text",o,e,t,i)}return t=Wi._createBefore(n),this.position=t,this._formatReturnValue("elementStart",n,e,t,1)}_formatReturnValue(t,e,n,i,o){return e instanceof On&&(e.offsetInText+e.data.length==e.textNode.data.length&&("forward"!=this.direction||this.boundaries&&this.boundaries.end.isEqual(this.position)?n=Wi._createAfter(e.textNode):(i=Wi._createAfter(e.textNode),this.position=i)),0===e.offsetInText&&("backward"!=this.direction||this.boundaries&&this.boundaries.start.isEqual(this.position)?n=Wi._createBefore(e.textNode):(i=Wi._createBefore(e.textNode),this.position=i))),{done:!1,value:{type:t,item:e,previousPosition:n,nextPosition:i,length:o}}}}class Wi extends Sn{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 Vi);){if(!t.parent)return null;t=t.parent}return t}getShiftedBy(t){const e=Wi._createAt(this),n=e.offset+t;return e.offset=n<0?0:n,e}getLastMatchingPosition(t,e={}){e.startPosition=this;const n=new qi(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=In(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(Wi._createBefore(t),e)}}function Gi(t){return!(!t.item.is("attributeElement")&&!t.item.is("uiElement"))}function Ki(t){let e=0;for(const n of t)e++;return e}Zi.prototype.is=function(t){return"range"===t||"view:range"===t};class $i extends((0,Cn.ZP)(Sn)){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=Ki(this.getRanges());if(e!=Ki(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 $i||e instanceof Yi)this._setRanges(e.getRanges(),e.isBackward),this._setFakeOptions({fake:e.isFake,label:e.fakeSelectionLabel});else if(e instanceof Zi)this._setRanges([e],i&&i.backward),this._setFakeOptions(i);else if(e instanceof Wi)this._setRanges([new Zi(e)]),this._setFakeOptions(i);else if(e instanceof Mn){const t=!!i&&!!i.backward;let o;if(void 0===n)throw new vn.ZP("view-selection-setto-required-second-parameter",this);o="in"==n?Zi._createIn(e):"on"==n?Zi._createOn(e):new Zi(Wi._createAt(e,n)),this._setRanges([o],t),this._setFakeOptions(i)}else{if(!(0,Ln.Z)(e))throw new vn.ZP("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 vn.ZP("view-selection-setfocus-no-ranges",this);const n=Wi._createAt(t,e);if("same"==n.compareWith(this.focus))return;const i=this.anchor;this._ranges.pop(),"before"==n.compareWith(i)?this._addRange(new Zi(n,i),!0):this._addRange(new Zi(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 Zi))throw new vn.ZP("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 vn.ZP("view-selection-range-intersects",this,{addedRange:t,intersectingRange:e});this._ranges.push(new Zi(t.start,t.end))}}$i.prototype.is=function(t){return"selection"===t||"view:selection"===t};class Yi extends((0,Cn.ZP)(Sn)){constructor(...t){super(),this._selection=new $i,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)}}Yi.prototype.is=function(t){return"selection"===t||"documentSelection"==t||"view:selection"==t||"view:documentSelection"==t};var Ji=__webpack_require__(8483);class Qi extends Ji.Z{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 Xi=Symbol("bubbling contexts");function to(t){return class extends t{fire(t,...e){try{const n=t instanceof Ji.Z?t:new Ji.Z(this,t),i=oo(this);if(!i.size)return;if(eo(n,"capturing",this),no(i,"$capture",n,...e))return n.return;const o=n.startRange||this.selection.getFirstRange(),r=o?o.getContainedElement():null,s=!!r&&Boolean(io(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(eo(n,"atTarget",a),!s){if(no(i,"$text",n,...e))return n.return;eo(n,"bubbling",a)}for(;a;){if(a.is("rootElement")){if(no(i,"$root",n,...e))return n.return}else if(a.is("element")&&no(i,a.name,n,...e))return n.return;if(no(i,a,n,...e))return n.return;a=a.parent,eo(n,"bubbling",a)}return eo(n,"bubbling",this),no(i,"$document",n,...e),n.return}catch(t){vn.ZP.rethrowUnexpectedError(t,this)}}_addEventListener(t,e,n){const i=(0,Rn.Z)(n.context||"$document"),o=oo(this);for(const r of i){let i=o.get(r);i||(i=new Cn.Q5,o.set(r,i)),this.listenTo(i,t,e,n)}}_removeEventListener(t,e){const n=oo(this);for(const i of n.values())this.stopListening(i,t,e)}}}{const t=to(Object);["fire","_addEventListener","_removeEventListener"].forEach((e=>{to[e]=t.prototype[e]}))}function eo(t,e,n){t instanceof Qi&&(t._eventPhase=e,t._currentTarget=n)}function no(t,e,n,...i){const o="string"==typeof e?t.get(e):io(t,e);return!!o&&(o.fire(n,...i),n.stop.called)}function io(t,e){for(const[n,i]of t)if("function"==typeof n&&n(e))return i;return null}function oo(t){return t[Xi]||(t[Xi]=new Map),t[Xi]}class ro extends(to(t.y)){constructor(t){super(),this.selection=new Yi,this.roots=new An.Z({idProperty:"rootName"}),this.stylesProcessor=t,this.set("isReadOnly",!1),this.set("isFocused",!1),this.set("isSelecting",!1),this.set("isComposing",!1),this._postFixers=new Set}getRoot(t="main"){return this.roots.get(t)}registerPostFixer(t){this._postFixers.add(t)}destroy(){this.roots.map((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 so extends Li{constructor(...t){super(...t),this.getFillerOffset=ao,this._priority=10,this._id=null,this._clonesGroup=null}get priority(){return this._priority}get id(){return this._id}getElementsWithSameId(){if(null===this.id)throw new vn.ZP("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 ao(){if(co(this))return null;let t=this.parent;for(;t&&t.is("attributeElement");){if(co(t)>1)return null;t=t.parent}return!t||co(t)>1?null:this.childCount}function co(t){return Array.from(t.getChildren()).filter((t=>!t.is("uiElement"))).length}so.DEFAULT_PRIORITY=10,so.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 lo extends Li{constructor(t,e,n,i){super(t,e,n,i),this.getFillerOffset=uo}_insertChild(t,e){if(e&&(e instanceof Mn||Array.from(e).length>0))throw new vn.ZP("view-emptyelement-cannot-add",[this,e]);return 0}}function uo(){return null}lo.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};var ho=__webpack_require__(1147);class mo extends Li{constructor(...t){super(...t),this.getFillerOffset=po}_insertChild(t,e){if(e&&(e instanceof Mn||Array.from(e).length>0))throw new vn.ZP("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 go(t){t.document.on("arrowKey",((e,n)=>function(t,e,n){if(e.keyCode==ho.Do.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 po(){return null}mo.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 fo extends Li{constructor(...t){super(...t),this.getFillerOffset=bo}_insertChild(t,e){if(e&&(e instanceof Mn||Array.from(e).length>0))throw new vn.ZP("view-rawelement-cannot-add",[this,e]);return 0}render(){}}function bo(){return null}fo.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 ko extends((0,Cn.ZP)(Sn)){constructor(t,e){super(),this.document=t,this._children=[],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}_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 Nn(t,e)];(0,Ln.Z)(e)||(e=[e]);return Array.from(e).map((e=>"string"==typeof e?new Nn(t,e):e instanceof On?new Nn(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 Zi(i,o):new Zi(t)}remove(t){const e=t instanceof Zi?t:Zi._createOn(t);if(Do(e,this.document),e.isCollapsed)return new ko(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 ko(this.document,s)}clear(t,e){Do(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=Zi._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=Zi._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 so))throw new vn.ZP("view-writer-wrap-invalid-attribute",this.document);if(Do(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 Zi(i)}return this._wrapRange(t,e);var n}unwrap(t,e){if(!(e instanceof so))throw new vn.ZP("view-writer-unwrap-invalid-attribute",this.document);if(Do(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 Zi(s,a)}rename(t,e){const n=new ji(this.document,t,e.getAttributes());return this.insert(Wi._createAfter(e),n),this.move(Zi._createIn(e),Wi._createAt(n,0)),this.remove(Zi._createOn(e)),n}clearClonedElementsGroup(t){this._cloneGroups.delete(t)}createPositionAt(t,e){return Wi._createAt(t,e)}createPositionAfter(t){return Wi._createAfter(t)}createPositionBefore(t){return Wi._createBefore(t)}createRange(...t){return new Zi(...t)}createRangeOn(t){return Zi._createOn(t)}createRangeIn(t){return Zi._createIn(t)}createSelection(...t){return new $i(...t)}createSlot(t){if(!this._slotFactory)throw new vn.ZP("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?wo(t):t.parent.is("$text")?t.parent.parent:t.parent,!i)throw new vn.ZP("view-writer-invalid-position-container",this.document);o=n?this._breakAttributes(t,!0):t.parent.is("$text")?vo(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 Zi(a,c)}_wrapChildren(t,e,n,i){let o=e;const r=[];for(;o!1,t.parent._insertChild(t.offset,n);const i=new Zi(t,t.getShiftedBy(1));this.wrap(i,e);const o=new Wi(n.parent,n.index);n._remove();const r=o.nodeBefore,s=o.nodeAfter;return r instanceof Nn&&s instanceof Nn?Co(r,s):Ao(o)}_wrapAttributeElement(t,e){if(!So(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(!So(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(Do(t,this.document),t.isCollapsed){const n=this._breakAttributes(t.start,e);return new Zi(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 Zi(s,o)}_breakAttributes(t,e=!1){const n=t.offset,i=t.parent;if(t.parent.is("emptyElement"))throw new vn.ZP("view-writer-cannot-break-empty-element",this.document);if(t.parent.is("uiElement"))throw new vn.ZP("view-writer-cannot-break-ui-element",this.document);if(t.parent.is("rawElement"))throw new vn.ZP("view-writer-cannot-break-raw-element",this.document);if(!e&&i.is("$text")&&To(i.parent))return t.clone();if(To(i))return t.clone();if(i.is("$text"))return this._breakAttributes(vo(t),e);if(n==i.childCount){const t=new Wi(i.parent,i.index+1);return this._breakAttributes(t,e)}if(0===n){const t=new Wi(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 Wi(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 wo(t){let e=t.parent;for(;!To(e);){if(!e)return;e=e.parent}return e}function _o(t,e){return t.prioritye.priority)&&t.getIdentity()n instanceof t)))throw new vn.ZP("view-writer-insert-invalid-node-type",e);n.is("$text")||Eo(n.getChildren(),e)}}function To(t){return t&&(t.is("containerElement")||t.is("documentFragment"))}function Do(t,e){const n=wo(t.start),i=wo(t.end);if(!n||!i||n!==i)throw new vn.ZP("view-writer-invalid-range-container",e)}function So(t,e){return null===t.id&&null===e.id}var Io=__webpack_require__(7363);const Bo=t=>t.createTextNode(" "),Mo=t=>{const e=t.createElement("span");return e.dataset.ckeFiller="true",e.innerText=" ",e},No=t=>{const e=t.createElement("br");return e.dataset.ckeFiller="true",e},Oo="⁠".repeat(7);function Po(t){return(0,Io.Z)(t)&&t.data.substr(0,7)===Oo}function Ro(t){return 7==t.data.length&&Po(t)}function Lo(t){return Po(t)?t.data.slice(7):t.data}function zo(t,e){if(e.keyCode==ho.Do.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;Po(e)&&n<=7&&t.collapse(e,0)}}}var jo=__webpack_require__(327);function Fo(t,e,n){t.insertBefore(n,t.childNodes[e]||null)}function Vo(t){const e=t.parentNode;e&&e.removeChild(t)}function Ho(t){return t&&t.nodeType===Node.COMMENT_NODE}var Uo=__webpack_require__(5006),qo=__webpack_require__(4068),Wo=__webpack_require__(3950),Zo=__webpack_require__(3379),Go=__webpack_require__.n(Zo),Ko=__webpack_require__(4401),$o={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Ko.Z,$o);Ko.Z.locals;class Yo extends t.y{constructor(t,e){super(),this.domDocuments=new Set,this.domConverter=t,this.markedAttributes=new Set,this.markedChildren=new Set,this.markedTexts=new Set,this.selection=e,this.set("isFocused",!1),this.set("isSelecting",!1),Wo.ZP.isBlink&&!Wo.ZP.isAndroid&&this.on("change:isSelecting",(()=>{this.isSelecting||this.render()})),this.set("isComposing",!1),this.on("change:isComposing",(()=>{this.isComposing||this.render()})),this._inlineFiller=null,this._fakeSelectionContainer=null}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 vn.ZP("view-renderer-unknown-type",this);this.markedChildren.add(e)}}}render(){if(this.isComposing&&!Wo.ZP.isAndroid)return;let t=null;const e=!(Wo.ZP.isBlink&&!Wo.ZP.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=Wi._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;Po(e.parent)?this._inlineFiller=e.parent:this._inlineFiller=Jo(n,e.parent,e.offset)}else this._inlineFiller=null;this._updateFocus(),this._updateSelection(),this.markedTexts.clear(),this.markedAttributes.clear(),this.markedChildren.clear()}_updateChildrenMappings(t){if(!this.domConverter.mapViewToDom(t))return;const e=Array.from(this.domConverter.mapViewToDom(t).childNodes),n=Array.from(this.domConverter.viewChildrenToDom(t,{withChildren:!1})),i=this._diffNodeLists(e,n),o=this._findReplaceActions(i,e,n);if(-1!==o.indexOf("replace")){const i={equal:0,insert:0,delete:0};for(const r of o)if("replace"===r){const o=i.equal+i.insert,r=i.equal+i.delete,s=t.getChild(o);!s||s.is("uiElement")||s.is("rawElement")||this._updateElementMappings(s,e[r]),Vo(n[o]),i.equal++}else i[r]++}}_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")?Wi._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&&(0,Io.Z)(e.parent)&&Po(e.parent))}_removeInlineFiller(){const t=this._inlineFiller;if(!Po(t))throw new vn.ZP("view-renderer-filler-was-lost",this);Ro(t)?t.remove():t.data=t.data.substr(7),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;if(n===e.getFillerOffset())return!1;const i=t.nodeBefore,o=t.nodeAfter;return!(i instanceof Nn||o instanceof Nn)&&(!Wo.ZP.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=Oo+i),er(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(Wo.ZP.isAndroid){let t=null;for(const e of Array.from(n.childNodes)){if(t&&(0,Io.Z)(t)&&(0,Io.Z)(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&&Jo(n.ownerDocument,r,i.offset);const s=this._diffNodeLists(o,r),a=Wo.ZP.isAndroid?this._findReplaceActions(s,o,r,{replaceText:!0}):s;let c=0;const l=new Set;for(const t of a)"delete"===t?(l.add(o[c]),Vo(o[c])):"equal"!==t&&"replace"!==t||c++;c=0;for(const t of a)"insert"===t?(Fo(n,c,r[c]),c++):"replace"===t?(er(o[c],r[c].data),c++):"equal"===t&&(this._markDescendantTextToSync(this.domConverter.domToView(r[c])),c++);for(const t of l)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;n[n.length-1]==e&&n.pop();return n}(t,this._fakeSelectionContainer),(0,jo.Z)(t,e,tr.bind(null,this.domConverter))}_findReplaceActions(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((0,jo.Z)(r,s,i.replaceText?Xo:Qo).map((t=>"equal"===t?"replace":t))),o.push("equal"),r=[],s=[]),a[c]++;return o.concat((0,jo.Z)(r,s,i.replaceText?Xo:Qo).map((t=>"equal"===t?"replace":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(Wo.ZP.isBlink&&!Wo.ZP.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&&Wo.ZP.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.collapse(n.parent,n.offset),e.extend(i.parent,i.offset),Wo.ZP.isGecko&&function(t,e){const n=t.parent;if(n.nodeType!=Node.ELEMENT_NODE||t.offset!=n.childNodes.length-1)return;const i=n.childNodes[t.offset];i&&"BR"==i.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 Jo(t,e,n){const i=e instanceof Array?e:e.childNodes,o=i[n];if((0,Io.Z)(o))return o.data=Oo+o.data,o;{const o=t.createTextNode(Oo);return Array.isArray(e)?i.splice(n,0,o):Fo(e,n,o),o}}function Qo(t,e){return(0,Uo.Z)(t)&&(0,Uo.Z)(e)&&!(0,Io.Z)(t)&&!(0,Io.Z)(e)&&!Ho(t)&&!Ho(e)&&t.tagName.toLowerCase()===e.tagName.toLowerCase()}function Xo(t,e){return(0,Uo.Z)(t)&&(0,Uo.Z)(e)&&(0,Io.Z)(t)&&(0,Io.Z)(e)}function tr(t,e,n){return e===n||((0,Io.Z)(e)&&(0,Io.Z)(n)?e.data===n.data:!(!t.isBlockFiller(e)||!t.isBlockFiller(n)))}function er(t,e){const n=t.data;if(n==e)return;const i=(0,qo.Z)(n,e);for(const e of i)"insert"===e.type?t.insertData(e.index,e.values.join("")):t.deleteData(e.index,e.howMany)}var nr=__webpack_require__(2152);function ir(t){let e=0;for(;t.previousSibling;)t=t.previousSibling,e++;return e}function or(t){const e=[];let n=t;for(;n&&n.nodeType!=Node.DOCUMENT_NODE;)e.unshift(n),n=n.parentNode;return e}const rr=No(nr.Z.document),sr=Bo(nr.Z.document),ar=Mo(nr.Z.document),cr="data-ck-unsafe-attribute-",lr="data-ck-unsafe-element";class dr{constructor(t,e={}){this.document=t,this.renderingMode=e.renderingMode||"editing",this.blockFillerMode=e.blockFillerMode||("editing"===this.renderingMode?"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?nr.Z.document:nr.Z.document.implementation.createHTMLDocument(""),this._domToViewMapping=new WeakMap,this._viewToDomMapping=new WeakMap,this._fakeSelectionMapping=new WeakMap,this._rawContentElementMatcher=new zn,this._encounteredRawContentDomNodes=new WeakSet}bindFakeSelection(t,e){this._fakeSelectionMapping.set(t,new $i(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)&&(mr(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)}{if(this.mapViewToDom(t))return this.mapViewToDom(t);let n;if(t.is("documentFragment"))n=this._domDocument.createDocumentFragment(),e.bind&&this.bindDocumentFragments(n,t);else{if(t.is("uiElement"))return n="$comment"===t.name?this._domDocument.createComment(t.getCustomProperty("$rawContent")):t.render(this._domDocument,this),e.bind&&this.bindElements(n,t),n;this._shouldRenameElement(t.name)?(mr(t.name),n=this._createReplacementDomElement(t.name)):n=t.hasAttribute("xmlns")?this._domDocument.createElementNS(t.getAttribute("xmlns"),t.name):this._domDocument.createElement(t.name),t.is("rawElement")&&t.render(n,this),e.bind&&this.bindElements(n,t);for(const e of t.getAttributeKeys())this.setDomElementAttribute(n,e,t.getAttribute(e),t)}if(!1!==e.withChildren)for(const i of this.viewChildrenToDom(t,e))n.appendChild(i);return n}}setDomElementAttribute(t,e,n,i){const o=this.shouldRenderAttribute(e,n,t.tagName.toLowerCase())||i&&i.shouldRenderUnsafeAttribute(e);o||(0,vn.KE)("domconverter-unsafe-attribute-detected",{domElement:t,key:e,value:n}),t.hasAttribute(e)&&!o?t.removeAttribute(e):t.hasAttribute(cr+e)&&o&&t.removeAttribute(cr+e),t.setAttribute(o?e:cr+e,n)}removeDomElementAttribute(t,e){e!=lr&&(t.removeAttribute(e),t.removeAttribute(cr+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");t&&"data"==this.renderingMode?yield*this.viewChildrenToDom(o,e):(t&&(0,vn.KE)("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 Po(n)&&(i+=7),{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((0,Io.Z)(o)&&Po(o))return{parent:o,offset:7};return{parent:n,offset:i?ir(i)+1:0}}}domToView(t,e={}){if(this.isBlockFiller(t))return null;const n=this.getHostViewElement(t);if(n)return n;if(Ho(t)&&e.skipComments)return null;if((0,Io.Z)(t)){if(Ro(t))return null;{const e=this._processDataFromDomText(t);return""===e?null:new Nn(this.document,e)}}{if(this.mapDomToView(t))return this.mapDomToView(t);let n;if(this.isDocumentFragment(t))n=new ko(this.document),e.bind&&this.bindDocumentFragments(t,n);else{n=this._createViewElement(t,e),e.bind&&this.bindElements(t,n);const i=t.attributes;if(i)for(let t=i.length,e=0;e{const{scrollLeft:e,scrollTop:n}=t;i.push([e,n])})),e.focus(),ur(e,(t=>{const[e,n]=i.shift();t.scrollLeft=e,t.scrollTop=n})),nr.Z.window.scrollTo(t,n)}}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(rr):!("BR"!==t.tagName||!hr(t,this.blockElements)||1!==t.parentNode.childNodes.length)||(t.isEqualNode(ar)||function(t,e){return t.isEqualNode(sr)&&hr(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=or(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)}_getBlockFiller(){switch(this.blockFillerMode){case"nbsp":return Bo(this._domDocument);case"markedNbsp":return Mo(this._domDocument);case"br":return No(this._domDocument)}}_isDomSelectionPositionCorrect(t,e){if((0,Io.Z)(t)&&Po(t)&&e<7)return!1;if(this.isElement(t)&&Po(t.childNodes[e]))return!1;const n=this.mapDomToView(t);return!n||!n.is("uiElement")&&!n.is("rawElement")}_processDataFromViewText(t){let e=t.data;if(t.getAncestors().some((t=>this.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)}_processDataFromDomText(t){let e=t.data;if(function(t,e){return or(t).some((t=>t.tagName&&e.includes(t.tagName.toLowerCase())))}(t,this.preElements))return Lo(t);e=e.replace(/[ \n\t\r]{1,}/g," ");const n=this._getTouchingInlineDomNode(t,!1),i=this._getTouchingInlineDomNode(t,!0),o=this._checkShouldLeftTrimDomText(t,n),r=this._checkShouldRightTrimDomText(t,i);o&&(e=e.replace(/^ /,"")),r&&(e=e.replace(/ $/,"")),e=Lo(new Text(e)),e=e.replace(/ \u00A0/g," ");const s=i&&this.isElement(i)&&"BR"!=i.tagName,a=i&&(0,Io.Z)(i)&&" "==i.data.charAt(0);return(/( |\u00A0)\u00A0$/.test(e)||!i||s||a)&&(e=e.replace(/\u00A0$/," ")),(o||n&&this.isElement(n)&&"BR"!=n.tagName)&&(e=e.replace(/^\u00A0/," ")),e}_checkShouldLeftTrimDomText(t,e){return!e||(this.isElement(e)?"BR"===e.tagName:!this._encounteredRawContentDomNodes.has(t.previousSibling)&&/[^\S\u00A0]/.test(e.data.charAt(e.data.length-1)))}_checkShouldRightTrimDomText(t,e){return!e&&!Po(t)}_getTouchingInlineViewNode(t,e){const n=new qi({startPosition:e?Wi._createAfter(t):Wi._createBefore(t),direction:e?"forward":"backward"});for(const t of n){if(t.item.is("element")&&this.inlineObjectElements.includes(t.item.name))return t.item;if(t.item.is("containerElement"))return null;if(t.item.is("element","br"))return null;if(t.item.is("$textProxy"))return t.item}return null}_getTouchingInlineDomNode(t,e){if(!t.parentNode)return null;const n=e?"firstChild":"lastChild",i=e?"nextSibling":"previousSibling";let o=!0,r=t;do{if(!o&&r[n]?r=r[n]:r[i]?(r=r[i],o=!1):(r=r.parentNode,o=!0),!r||this._isBlockElement(r))return null}while(!(0,Io.Z)(r)&&"BR"!=r.tagName&&!this._isInlineObjectElement(r));return r}_isBlockElement(t){return this.isElement(t)&&this.blockElements.includes(t.tagName.toLowerCase())}_isInlineObjectElement(t){return this.isElement(t)&&this.inlineObjectElements.includes(t.tagName.toLowerCase())}_createViewElement(t,e){if(Ho(t))return new mo(this.document,"$comment");const n=e.keepOriginalCase?t.tagName:t.tagName.toLowerCase();return new Li(this.document,n)}_isViewElementWithRawContent(t,e){return!1!==e.withChildren&&!!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(lr,t),e){for(;e.firstChild;)n.appendChild(e.firstChild);for(const t of e.getAttributeNames())n.setAttribute(t,e.getAttribute(t))}return n}}function ur(t,e){let n=t;for(;n;)e(n),n=n.parentElement}function hr(t,e){const n=t.parentNode;return!!n&&!!n.tagName&&e.includes(n.tagName.toLowerCase())}function mr(t){"script"===t&&(0,vn.KE)("domconverter-unsafe-script-element-detected"),"style"===t&&(0,vn.KE)("domconverter-unsafe-style-element-detected")}var gr=__webpack_require__(1916);class pr extends gr.Q{constructor(t){super(),this.view=t,this.document=t.document,this.isEnabled=!1}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 fr=Si((function(t,e){At(e,ae(e),t)}));class br{constructor(t,e,n){this.view=t,this.document=t.document,this.domEvent=e,this.domTarget=e.target,fr(this,n)}get target(){return this.view.domConverter.mapDomToView(this.domTarget)}preventDefault(){this.domEvent.preventDefault()}stopPropagation(){this.domEvent.stopPropagation()}}class kr extends pr{constructor(t){super(t),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})}))}fire(t,e,n){this.isEnabled&&this.document.fire(t,new br(this.view,e,n))}}class xr extends kr{constructor(t){super(t),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(0,ho.Cq)(this)}};this.fire(t.type,t,e)}}const wr=function(){return N.Z.Date.now()};var _r=/\s/;const Ar=function(t){for(var e=t.length;e--&&_r.test(t.charAt(e)););return e};var vr=/^\s+/;const Cr=function(t){return t?t.slice(0,Ar(t)+1).replace(vr,""):t};var yr=/^[-+]0x[0-9a-f]+$/i,Er=/^0b[01]+$/i,Tr=/^0o[0-7]+$/i,Dr=parseInt;const Sr=function(t){if("number"==typeof t)return t;if(Vn(t))return NaN;if((0,B.Z)(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=(0,B.Z)(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=Cr(t);var n=Er.test(t);return n||Tr.test(t)?Dr(t.slice(2),n?2:8):yr.test(t)?NaN:+t};var Ir=Math.max,Br=Math.min;const Mr=function(t,e,n){var i,o,r,s,a,c,l=0,d=!1,u=!1,h=!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){return l=t,a=setTimeout(f,e),d?m(t):s}function p(t){var n=t-c;return void 0===c||n>=e||n<0||u&&t-l>=r}function f(){var t=wr();if(p(t))return b(t);a=setTimeout(f,function(t){var n=e-(t-c);return u?Br(n,r-(t-l)):n}(t))}function b(t){return a=void 0,h&&i?m(t):(i=o=void 0,s)}function k(){var t=wr(),n=p(t);if(i=arguments,o=this,c=t,n){if(void 0===a)return g(c);if(u)return clearTimeout(a),a=setTimeout(f,e),m(c)}return void 0===a&&(a=setTimeout(f,e)),s}return e=Sr(e)||0,(0,B.Z)(n)&&(d=!!n.leading,r=(u="maxWait"in n)?Ir(Sr(n.maxWait)||0,e):r,h="trailing"in n?!!n.trailing:h),k.cancel=function(){void 0!==a&&clearTimeout(a),l=0,i=c=o=a=void 0},k.flush=function(){return void 0===a?s:b(wr())},k};class Nr extends pr{constructor(t){super(t),this._fireSelectionChangeDoneDebounced=Mr((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"})}destroy(){super.destroy(),this._fireSelectionChangeDoneDebounced.cancel()}_handleSelectionMove(t){const e=this.document.selection,n=new $i(e.getRanges(),{backward:e.isBackward,fake:!1});t!=ho.Do.arrowleft&&t!=ho.Do.arrowup||n.setTo(n.getFirstPosition()),t!=ho.Do.arrowright&&t!=ho.Do.arrowdown||n.setTo(n.getLastPosition());const i={oldSelection:e,newSelection:n,domSelection:null};this.document.fire("selectionChange",i),this._fireSelectionChangeDoneDebounced(i)}}const Or=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this};const Pr=function(t){return this.__data__.has(t)};function Rr(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new mt;++ea))return!1;var l=r.get(t),d=r.get(e);if(l&&d)return l==e&&d==t;var u=-1,h=!0,m=2&n?new Lr:void 0;for(r.set(t,e),r.set(e,t);++u{this.document.fire("selectionChangeDone",t)}),200),this._clearInfiniteLoopInterval=setInterval((()=>this._clearInfiniteLoop()),1e3),this._documentIsSelectingInactivityTimeoutDebounced=Mr((()=>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&&!Wo.ZP.isAndroid||(this._handleSelectionChange(n,e),this._documentIsSelectingInactivityTimeoutDebounced())})),this._documents.add(e))}destroy(){super.destroy(),clearInterval(this._clearInfiniteLoopInterval),this._fireSelectionChangeDoneDebounced.cancel(),this._documentIsSelectingInactivityTimeoutDebounced.cancel()}_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.selection.isEqual(i)&&this.domConverter.isDomSelectionCorrect(n)||++this._loopbackCounter>60))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 os extends kr{constructor(t){super(t),this.domEventType=["focus","blur"],this.useCapture=!0;const e=this.document;e.on("focus",(()=>{e.isFocused=!0,this._renderTimeoutId=setTimeout((()=>t.change((()=>{}))),50)})),e.on("blur",((n,i)=>{const o=e.selection.editableElement;null!==o&&o!==i.target||(e.isFocused=!1,t.change((()=>{})))}))}onDomEvent(t){this.fire(t.type,t)}destroy(){this._renderTimeoutId&&clearTimeout(this._renderTimeoutId),super.destroy()}}class rs extends kr{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 ss{constructor(t){this.files=function(t){const e=Array.from(t.files||[]),n=Array.from(t.items||[]);if(e.length)return e;return n.filter((t=>"file"===t.kind)).map((t=>t.getAsFile()))}(t),this._native=t}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}get isCanceled(){return"none"==this._native.dropEffect||!!this._native.mozUserCancelled}}class as extends kr{constructor(t){super(t),this.domEventType=["beforeinput"]}onDomEvent(t){const e=t.getTargetRanges(),n=this.view,i=n.document;let o=null,r=null,s=[];if(t.dataTransfer&&(o=new ss(t.dataTransfer)),null!==t.data?r=t.data:o&&(r=o.getData("text/plain")),i.selection.isFake)s=Array.from(i.selection.getRanges());else if(e.length)s=e.map((t=>n.domConverter.domRangeToView(t)));else if(Wo.ZP.isAndroid){const e=t.target.ownerDocument.defaultView.getSelection();s=Array.from(n.domConverter.domSelectionToView(e).getRanges())}Wo.ZP.isAndroid&&"insertCompositionText"==t.inputType&&r&&r.endsWith("\n")?this.fire(t.type,t,{inputType:"insertParagraph",targetRanges:[n.createRange(s[0].end)]}):this.fire(t.type,t,{data:r,dataTransfer:o,targetRanges:s,inputType:t.inputType,isComposing:t.isComposing})}}var cs=__webpack_require__(7557);class ls extends pr{constructor(t){super(t),this.document.on("keydown",((t,e)=>{if(this.isEnabled&&(0,cs.dj)(e.keyCode)){const n=new Qi(this.document,"arrowKey",this.document.selection.getFirstRange());this.document.fire(n,e),n.stop.called&&t.stop()}}))}observe(){}}class ds extends pr{constructor(t){super(t);const e=this.document;e.on("keydown",((t,n)=>{if(!this.isEnabled||n.keyCode!=ho.Do.tab||n.ctrlKey)return;const i=new Qi(e,"tab",e.selection.getFirstRange());e.fire(i,n),i.stop.called&&t.stop()}))}observe(){}}var us=__webpack_require__(7275);class hs extends t.y{constructor(t){super(),this.document=new ro(t),this.domConverter=new dr(this.document),this.domRoots=new Map,this.set("isRenderingInProgress",!1),this.set("hasDomSelection",!1),this._renderer=new Yo(this.domConverter,this.document.selection),this._renderer.bind("isFocused","isSelecting","isComposing").to(this.document,"isFocused","isSelecting","isComposing"),this._initialDomRootAttributes=new WeakMap,this._observers=new Map,this._ongoingChange=!1,this._postFixersInProgress=!1,this._renderingDisabled=!1,this._hasChangedSinceTheLastRendering=!1,this._writer=new xo(this.document),this.addObserver(es),this.addObserver(is),this.addObserver(os),this.addObserver(xr),this.addObserver(Nr),this.addObserver(rs),this.addObserver(ls),this.addObserver(as),this.addObserver(ds),this.document.on("arrowKey",zo,{priority:"low"}),go(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}))}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)}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(){const t=this.document.selection.getFirstRange();t&&(0,us.m)({target:this.domConverter.viewRangeToDom(t),viewportOffset:20})}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 vn.ZP("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){vn.ZP.rethrowUnexpectedError(t,this)}}forceRender(){this._hasChangedSinceTheLastRendering=!0,this.change((()=>{}))}destroy(){for(const t of this._observers.values())t.destroy();this.document.destroy(),this.stopListening()}createPositionAt(t,e){return Wi._createAt(t,e)}createPositionAfter(t){return Wi._createAfter(t)}createPositionBefore(t){return Wi._createBefore(t)}createRange(...t){return new Zi(...t)}createRangeOn(t){return Zi._createOn(t)}createRangeIn(t){return Zi._createIn(t)}createSelection(...t){return new $i(...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 ms{is(){throw new Error("is() method is abstract")}}class gs extends ms{constructor(t){super(),this.parent=null,this._attrs=(0,Pn.Z)(t)}get document(){return null}get index(){let t;if(!this.parent)return null;if(null===(t=this.parent.getChildIndex(this)))throw new vn.ZP("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 vn.ZP("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 this.root.is("rootElement")}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=In(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 gs(this._attrs)}_remove(){this.parent._removeChildren(this.index)}_setAttribute(t,e){this._attrs.set(t,e)}_setAttributesTo(t){this._attrs=(0,Pn.Z)(t)}_removeAttribute(t){return this._attrs.delete(t)}_clearAttributes(){this._attrs.clear()}}gs.prototype.is=function(t){return"node"===t||"model:node"===t};class ps{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 vn.ZP("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 fs extends gs{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 fs(this.data,this.getAttributes())}static fromJSON(t){return new fs(t.data,t.attributes)}}fs.prototype.is=function(t){return"$text"===t||"model:$text"===t||"text"===t||"model:text"===t||"node"===t||"model:node"===t};class bs extends ms{constructor(t,e,n){if(super(),this.textNode=t,e<0||e>t.offsetSize)throw new vn.ZP("model-textproxy-wrong-offsetintext",this);if(n<0||e+n>t.offsetSize)throw new vn.ZP("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()}}bs.prototype.is=function(t){return"$textProxy"===t||"model:$textProxy"===t||"textProxy"===t||"model:textProxy"===t};class ks extends gs{constructor(t,e,n){super(e),this.name=t,this._children=new ps,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 ks(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 fs(t)];(0,Ln.Z)(t)||(t=[t]);return Array.from(t).map((t=>"string"==typeof t?new fs(t):t instanceof bs?new fs(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(ks.fromJSON(n)):e.push(fs.fromJSON(n))}return new ks(t.name,t.attributes,e)}}ks.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 xs{constructor(t={}){if(!t.boundaries&&!t.startPosition)throw new vn.ZP("model-tree-walker-no-start-position",null);const e=t.direction||"forward";if("forward"!=e&&"backward"!=e)throw new vn.ZP("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=_s._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}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=As(e,n),o=i||vs(e,n,i);if(o instanceof ks)return this.shallow?e.offset++:(e.path.push(0),this._visitedParent=o),this.position=e,ws("elementStart",o,t,e,1);if(o instanceof fs){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 bs(r,o-i,i);return e.offset-=i,this.position=e,ws("text",s,t,e,i)}return e.path.pop(),this.position=e,this._visitedParent=n.parent,ws("elementStart",n,t,e,1)}}function ws(t,e,n,i,o){return{done:!1,value:{type:t,item:e,previousPosition:n,nextPosition:i,length:o}}}class _s extends ms{constructor(t,e,n="toNone"){if(super(),!t.is("element")&&!t.is("documentFragment"))throw new vn.ZP("model-position-root-invalid",t);if(!(e instanceof Array)||0===e.length)throw new vn.ZP("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 ys(t,this,n);if(-1===e)return ys(this,t,n)}return this.path.length===t.path.length||(this.path.length>t.path.length?Es(this.path,e):Es(t.path,e))}hasSameParentAs(t){if(this.root!==t.root)return!1;return"same"==In(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=_s._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)?_s._createAt(t.deletionPosition):this._getTransformedByMove(t.deletionPosition,t.graveyardPosition,1),n}_getTransformedByDeletion(t,e){const n=_s._createAt(this);if(this.root!=t.root)return n;if("same"==In(t.getParentPath(),this.getParentPath())){if(t.offsetthis.offset)return null;n.offset-=e}}else if("prefix"==In(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=_s._createAt(this);if(this.root!=t.root)return n;if("same"==In(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 Es(t,e){for(;ee+1;){const e=i.maxOffset-n.offset;0!==e&&t.push(new Ts(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 Ts(n,n.getShiftedBy(i))),n.offset=e,n.path.push(0)}return t}getWalker(t={}){return t.boundaries=this,new xs(t)}*getItems(t={}){t.boundaries=this,t.ignoreElementEnd=!0;const e=new xs(t);for(const t of e)yield t.item}*getPositions(t={}){t.boundaries=this;const e=new xs(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 Ts(this.start,this.end)]}getTransformedByOperations(t){const e=[new Ts(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(_s._createAt(t,0),_s._createAt(t,t.maxOffset))}static _createOn(t){return this._createFromPositionAndShift(_s._createBefore(t),t.offsetSize)}static _createFromRanges(t){if(0===t.length)throw new vn.ZP("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=_s._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 vn.ZP("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=_s._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 Ts(this.toModelPosition(t.start),this.toModelPosition(t.end))}toViewRange(t){return new Zi(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]}class Bs extends Cn.Q5{constructor(t){super(),this._conversionApi={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(Ts._createFromPositionAndShift(t.position,t.length),i):"reinsert"===t.type?this._convertReinsert(Ts._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);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.mapper.flushDeferredBindings(),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=Array.from(e.getMarkersAtPosition(t.getFirstPosition())),o=this._createConversionApi(n);if(this._addConsumablesForSelection(o.consumable,t,i),this.fire("selection",{selection:t},o),t.isCollapsed){for(const e of i){const n=e.getRange();if(!Ms(t.getFirstPosition(),e,o.mapper))continue;const i={item:t,markerName:e.name,markerRange:n};o.consumable.test(t,"addMarker:"+e.name)&&this.fire(`addMarker:${e.name}`,i,o)}for(const e of t.getAttributeKeys()){const n={item:t,range:t.getFirstRange(),attributeKey:e,attributeOldValue:null,attributeNewValue:t.getAttribute(e)};o.consumable.test(t,"attribute:"+n.attributeKey)&&this.fire(`attribute:${n.attributeKey}:$text`,n,o)}}}_convertInsert(t,e,n={}){n.doNotAddConsumables||this._addConsumablesForInsert(e.consumable,Array.from(t));for(const n of Array.from(t.getWalker({shallow:!0})).map(Ns))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:Ts._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(Ns))this._testAndFire("insert",{...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:Ts._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:Ts._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={...this._conversionApi,consumable:new Ss,writer:t,options:n,convertItem:t=>this._convertInsert(Ts._createOn(t),i),convertChildren:t=>this._convertInsert(Ts._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 Ms(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 Ns(t){return{item:t.item,range:Ts._createFromPositionAndShift(t.previousPosition,t.length)}}class Os extends((0,Cn.ZP)(ms)){constructor(...t){super(),this._lastRangeBackward=!1,this._ranges=[],this._attrs=new Map,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 Ts(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 Ts(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 Ts(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 Os)this._setRanges(e.getRanges(),e.isBackward);else if(e&&"function"==typeof e.getRanges)this._setRanges(e.getRanges(),e.isBackward);else if(e instanceof Ts)this._setRanges([e],!!i&&!!i.backward);else if(e instanceof _s)this._setRanges([new Ts(e)]);else if(e instanceof gs){const t=!!i&&!!i.backward;let o;if("in"==n)o=Ts._createIn(e);else if("on"==n)o=Ts._createOn(e);else{if(void 0===n)throw new vn.ZP("model-selection-setto-required-second-parameter",[this,e]);o=new Ts(_s._createAt(e,n))}this._setRanges([o],t)}else{if(!(0,Ln.Z)(e))throw new vn.ZP("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 Ts))throw new vn.ZP("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 vn.ZP("model-selection-setfocus-no-ranges",[this,t]);const n=_s._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 Ts(n,i)),this._lastRangeBackward=!0):(this._pushRange(new Ts(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=Ls(e.start,t);n&&zs(n,e)&&(yield n);for(const n of e.getWalker()){const i=n.item;"elementEnd"==n.type&&Rs(i,t,e)&&(yield i)}const i=Ls(e.end,t);i&&!e.end.isTouching(_s._createAt(i,0))&&zs(i,e)&&(yield i)}}containsEntireContent(t=this.anchor.root){const e=_s._createAt(t,0),n=_s._createAt(t,"end");return e.isTouching(this.getFirstPosition())&&n.isTouching(this.getLastPosition())}_pushRange(t){this._checkRange(t),this._ranges.push(new Ts(t.start,t.end))}_checkRange(t){for(let e=0;e0;)this._popRange()}_popRange(){this._ranges.pop()}}function Ps(t,e){return!e.has(t)&&(e.add(t),t.root.document.model.schema.isBlock(t)&&!!t.parent)}function Rs(t,e,n){return Ps(t,e)&&zs(t,n)}function Ls(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&&Ps(t,e))));return i.forEach((t=>e.add(t))),r}function zs(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(Ts._createOn(n),!0)}Os.prototype.is=function(t){return"selection"===t||"model:selection"===t};class js extends((0,Cn.ZP)(Ts)){constructor(t,e){super(t,e),Fs.call(this)}detach(){this.stopListening()}toRange(){return new Ts(this.start,this.end)}static fromRange(t){return new js(t.start,t.end)}}function Fs(){this.listenTo(this.root.document.model,"applyOperation",((t,e)=>{const n=e[0];n.isDocumentOperation&&Vs.call(this,n)}),{priority:"low"})}function Vs(t){const e=this.getTransformedByOperation(t),n=Ts._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})}js.prototype.is=function(t){return"liveRange"===t||"model:liveRange"===t||"range"==t||"model:range"===t};var Hs=__webpack_require__(369);const Us="selection:";class qs extends((0,Cn.ZP)(ms)){constructor(t){super(),this._selection=new Ws(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 Us+t}static _isStoreAttributeKey(t){return t.startsWith(Us)}}qs.prototype.is=function(t){return"selection"===t||"model:selection"==t||"documentSelection"==t||"model:documentSelection"==t};class Ws extends Os{constructor(t){super(),this.markers=new An.Z({idProperty:"name"}),this._model=t.model,this._document=t,this._attributePriority=new Map,this._selectionRestorePosition=null,this._hasChangedRange=!1,this._overriddenGravityRegister=new Set,this._observedMarkers=new Set,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(Us)));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=(0,Pn.Z)(this._getSurroundingAttributes()),n=(0,Pn.Z)(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(Us)){const n=e.substr(Us.length);yield[n,t.getAttribute(e)]}}_getSurroundingAttributes(){const t=this.getFirstPosition(),e=this._model.schema;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=Zs(i)),n||(n=Zs(o)),!this.isGravityOverridden&&!n){let t=i;for(;t&&!e.isInline(t)&&!n;)t=t.previousSibling,n=Zs(t)}if(!n){let t=o;for(;t&&!e.isInline(t)&&!n;)t=t.nextSibling,n=Zs(t)}n||(n=this.getStoredAttributes())}else{const t=this.getFirstRange();for(const i of t){if(i.item.is("element")&&e.isObject(i.item))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 Zs(t){return t instanceof bs||t instanceof fs?t.getAttributes():null}class Gs{constructor(t){this._dispatchers=t}add(t){for(const e of this._dispatchers)t(e);return this}}const Ks=function(t){return fn(t,5)};class $s extends Gs{elementToElement(t){return this.add(function(t){const e=Qs(t.model),n=Xs(t.view,"container");e.attributes.length&&(e.children=!0);return i=>{i.on(`insert:${e.name}`,function(t,e=aa){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),ra(r,i.item.getChildren(),o,{reconversion:i.reconversion})}}(n,oa(e)),{priority:t.converterPriority||"normal"}),(e.children||e.attributes.length)&&i.on("reduceChanges",ia(e),{priority:"low"})}}(t))}elementToStructure(t){return this.add(function(t){const e=Qs(t.model),n=Xs(t.view,"container");return e.children=!0,i=>{if(i._conversionApi.schema.checkChild(e.name,"$text"))throw new vn.ZP("conversion-element-to-structure-disallowed-text",i,{elementName:e.name});var o,r;i.on(`insert:${e.name}`,(o=n,r=oa(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="children")=>{const r=i.createContainerElement("$slot");let s=null;if("children"===o)s=Array.from(t.getChildren());else{if("function"!=typeof o)throw new vn.ZP("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 vn.ZP("conversion-slot-filter-overlap",n.dispatcher,{element:t});if(o.size!=t.childCount)throw new vn.ZP("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)ra(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",ia(e),{priority:"low"})}}(t))}attributeToElement(t){return this.add(function(t){let e=(t=Ks(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]=Xs(t.view[n],"attribute");else t.view=Xs(t.view,"attribute");const i=ta(t);return e=>{e.on(n,function(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 Os||n.item instanceof qs)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)}}}(i),{priority:t.converterPriority||"normal"})}}(t))}attributeToAttribute(t){return this.add(function(t){let e=(t=Ks(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]=ea(t.view[n]);else t.view=ea(t.view);const i=ta(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 vn.ZP("conversion-attribute-to-attribute-on-text",n.dispatcher,e);if(null!==e.attributeOldValue&&i)if("class"==i.key){const t=(0,Rn.Z)(i.value);for(const e of t)a.removeClass(e,s)}else if("style"==i.key){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=(0,Rn.Z)(r.value);for(const e of t)a.addClass(e,s)}else if("style"==r.key){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=Xs(t.view,"ui");return n=>{var i;n.on(`addMarker:${t.model}`,(i=e,(t,e,n)=>{e.isOpening=!0;const o=i(e,n);e.isOpening=!1;const r=i(e,n);if(!o||!r)return;const s=e.markerRange;if(s.isCollapsed&&!n.consumable.consume(s,t.name))return;for(const e of s)if(!n.consumable.consume(e.item,t.name))return;const a=n.mapper,c=n.writer;c.insert(a.toViewPosition(s.start),o),n.mapper.bindElementToMarker(o,e.markerName),s.isCollapsed||(c.insert(a.toViewPosition(s.end),r),n.mapper.bindElementToMarker(r,e.markerName)),t.stop()}),{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 Os||e.item instanceof qs||e.item.is("$textProxy")))return;const o=na(n,e,i);if(!o)return;if(!i.consumable.consume(e.item,t.name))return;const r=i.writer,s=Ys(r,o),a=r.document.selection;if(e.item instanceof Os||e.item instanceof qs)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 ks))return;const o=na(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 Ts._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=na(t,n,i);if(!o)return;const r=Ys(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){const e=(t=Ks(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)&&(Js(r,!1,n,e,i),Js(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 Ys(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 Js(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 Qs(t){return"string"==typeof t&&(t={name:t}),t.attributes?Array.isArray(t.attributes)||(t.attributes=[t.attributes]):t.attributes=[],t.children=!!t.children,t}function Xs(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||so.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 ta(t){return t.model.values?(e,n,i)=>{const o=t.view[e];return o?o(e,n,i):null}:t.view}function ea(t){return"string"==typeof t?e=>({key:t,value:e}):"object"==typeof t?t.value?()=>t:e=>({key:t.key,value:e}):t}function na(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 ia(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=_s._createBefore(o);i.push({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 oa(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 ra(t,e,n,i){for(const o of e)sa(t.root,o,n,i)||n.convertItem(o)}function sa(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(_s._createBefore(e))),!0))}function aa(t,e,{preflight:n}={}){return n?e.test(t,"insert"):e.consume(t,"insert")}var ca=__webpack_require__(4841);function la(t){const{schema:e,document:n}=t.model;for(const i of n.getRootNames()){const o=n.getRoot(i);if(o.isEmpty&&!e.checkChild(o,"$text")&&e.checkChild(o,"paragraph"))return t.insertElement("paragraph",o),!0}return!1}function da(t,e,n){const i=n.createContext(t);return!!n.checkChild(i,"paragraph")&&!!n.checkChild(i.push("paragraph"),e)}function ua(t,e){const n=e.createElement("paragraph");return e.insert(n,t),e.createPositionAt(n,0)}class ha extends Gs{elementToElement(t){return this.add(ma(t))}elementToAttribute(t){return this.add(function(t){fa(t=Ks(t));const e=ba(t,!1),n=ga(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=Ks(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;let n;if("class"==e||"style"==e){n={["class"==e?"classes":"styles"]:t.view.value}}else{n={attributes:{[e]:void 0===t.view.value?/[\s\S]*/:t.view.value}}}t.view.name&&(n.name=t.view.name);return t.view=n,e}(t));fa(t,e);const n=ba(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 ma({...t,model:e})}(t))}dataToMarker(t){return this.add(function(t){(t=Ks(t)).model||(t.model=e=>e?t.view+":"+e:t.view);const e={view:t.view,model:t.model},n=pa(ka(e,"start")),i=pa(ka(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=ca.Z.get("low"),s=ca.Z.get("highest"),a=ca.Z.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 ma(t){const e=pa(t=Ks(t)),n=ga(t.view),i=n?`element:${n}`:"element";return n=>{n.on(i,e,{priority:t.converterPriority||"normal"})}}function ga(t){return"string"==typeof t?t:"object"==typeof t&&"string"==typeof t.name?t.name:null}function pa(t){const e=new zn(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 fa(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 ba(t,e){const n=new zn(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&&!ga(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 ka(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})}}}class xa extends t.y{constructor(t,e){super(),this.model=t,this.view=new hs(e),this.mapper=new Ds,this.downcastDispatcher=new Bs({mapper:this.mapper,schema:t.schema});const n=this.model.document,i=n.selection,o=this.model.markers;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.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.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("selection",((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)}),{priority:"high"}),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 Ui(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 vn.ZP("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 wa{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 vn.ZP("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()}}class _a{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 va(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 _a),t.is("$text"))return e.add(t),e;t.is("element")&&e.add(t,_a.consumablesFromElement(t)),t.is("documentFragment")&&e.add(t);for(const n of t.getChildren())e=_a.createFrom(n,e);return e}}const Aa=["attributes","classes","styles"];class va{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 Aa)e in t&&this._add(e,t[e])}test(t){if(t.name&&!this._canConsumeName)return this._canConsumeName;for(const e of Aa)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 Aa)e in t&&this._consume(e,t[e])}revert(t){t.name&&(this._canConsumeName=!0);for(const e of Aa)e in t&&this._revert(e,t[e])}_add(t,e){const n=(0,St.Z)(e)?e:[e],i=this._consumables[t];for(const e of n){if("attributes"===t&&("class"===e||"style"===e))throw new vn.ZP("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=(0,St.Z)(e)?e:[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=(0,St.Z)(e)?e:[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=(0,St.Z)(e)?e:[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 Ca extends t.y{constructor(){super(),this._sourceDefinitions={},this._attributeProperties={},this.decorate("checkChild"),this.decorate("checkAttribute"),this.on("checkAttribute",((t,e)=>{e[0]=new ya(e[0])}),{priority:"highest"}),this.on("checkChild",((t,e)=>{e[0]=new ya(e[0]),e[1]=this.getDefinition(e[1])}),{priority:"highest"})}register(t,e){if(this._sourceDefinitions[t])throw new vn.ZP("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 vn.ZP("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 _s){const e=t.nodeBefore,n=t.nodeAfter;if(!(e instanceof ks))throw new vn.ZP("schema-check-merge-no-element-before",this);if(!(n instanceof ks))throw new vn.ZP("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 _s)e=t.parent;else{e=(t instanceof Ts?[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 fs("",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(this.checkChild(t,"$text"))return new Ts(t);let n,i;const o=t.getAncestors().reverse().find((t=>this.isLimit(t)))||t.root;"both"!=e&&"backward"!=e||(n=new xs({boundaries:Ts._createIn(o),startPosition:t,direction:"backward"})),"both"!=e&&"forward"!=e||(i=new xs({boundaries:Ts._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 Ts._createOn(i.item);if(this.checkChild(i.nextPosition,"$text"))return new Ts(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"))za(this,n,e);else{const t=Ts._createIn(n).getPositions();for(const n of t){za(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 ya(t)}_clearCache(){this._compiledDefinitions=null}_compile(){const t={},e=this._sourceDefinitions,n=Object.keys(e);for(const i of n)t[i]=Ea(e[i],i);for(const e of n)Ta(t,e);for(const e of n)Da(t,e);for(const e of n)Sa(t,e);for(const e of n)Ia(t,e),Ba(t,e);for(const e of n)Ma(t,e),Na(t,e),Oa(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(Ts._createIn(o),e)),this.checkAttribute(o,e)||(n.isEqual(i)||(yield new Ts(n,i)),n=_s._createAfter(o)),i=_s._createAfter(o);n.isEqual(i)||(yield new Ts(n,i))}}class ya{constructor(t){if(t instanceof ya)return t;let e;e="string"==typeof t?[t]:Array.isArray(t)?t:t.getAncestors({includeSelf:!0}),this._items=e.map(La)}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 ya([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 Ea(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),Pa(t,n,"allowIn"),Pa(t,n,"allowContentOf"),Pa(t,n,"allowWhere"),Pa(t,n,"allowAttributes"),Pa(t,n,"allowAttributesOf"),Pa(t,n,"allowChildren"),Pa(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 Ta(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 Da(t,e){for(const n of t[e].allowContentOf)if(t[n]){Ra(t,n).forEach((t=>{t.allowIn.push(e)}))}delete t[e].allowContentOf}function Sa(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 Ia(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 Ba(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 Ma(t,e){const n=t[e],i=n.allowIn.filter((e=>t[e]));n.allowIn=Array.from(new Set(i))}function Na(t,e){const n=t[e];for(const i of n.allowIn){t[i].allowChildren.push(e)}}function Oa(t,e){const n=t[e];n.allowAttributes=Array.from(new Set(n.allowAttributes))}function Pa(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 Ra(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 La(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 za(t,e,n){for(const i of e.getAttributeKeys())t.checkAttribute(e,i)||n.removeAttribute(i,e)}class ja extends Cn.Q5{constructor(t){super(),this._splitParts=new Map,this._cursorParents=new Map,this._modelCursor=null,this._emptyElementsToKeep=new Set,this.conversionApi={...t,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 ya(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=_s._createAt(o,0)}return n}(n,e),this.conversionApi.writer=e,this.conversionApi.consumable=_a.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=Ts._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 Ts(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 Ts))throw new vn.ZP("view-conversion-dispatcher-incorrect-result",this);return{modelRange:n.modelRange,modelCursor:n.modelCursor}}_convertChildren(t,e){let n=e.is("position")?e:_s._createAt(e,0);const i=new Ts(n);for(const e of Array.from(t.getChildren())){const t=this._convertItem(e,n);t.modelRange instanceof Ts&&(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 da(e,t,n)?{position:ua(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 Fa{getHtml(t){const e=document.implementation.createHTMLDocument("").createElement("div");return e.appendChild(t),e.innerHTML}}class Va{constructor(t){this.domParser=new DOMParser,this.domConverter=new dr(t,{renderingMode:"data"}),this.htmlWriter=new Fa}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)}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 Ha extends Cn.Q5{constructor(e,n){super(),this.model=e,this.mapper=new Ds,this.downcastDispatcher=new Bs({mapper:this.mapper,schema:e.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 ja({schema:e.schema}),this.viewDocument=new ro(n),this.stylesProcessor=n,this.htmlProcessor=new Va(this.viewDocument),this.processor=this.htmlProcessor,this._viewWriter=new xo(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(!da(r,"$text",n))return;if(0==e.viewItem.data.trim().length)return;r=ua(r,o)}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"}),t.y.prototype.decorate.call(this,"init"),t.y.prototype.decorate.call(this,"set"),t.y.prototype.decorate.call(this,"get"),this.on("init",(()=>{this.fire("ready")}),{priority:"lowest"}),this.on("ready",(()=>{this.model.enqueueChange({isUndoable:!1},la)}),{priority:"lowest"})}get(t={}){const{rootName:e="main",trim:n="empty"}=t;if(!this._checkIfRootsExists([e]))throw new vn.ZP("datacontroller-get-non-existent-root",this);const i=this.model.document.getRoot(e);return"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=Ts._createIn(t),r=new ko(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=Ts._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 vn.ZP("datacontroller-init-document-not-empty",this);let e={};if("string"==typeof t?e.main=t:e=t,!this._checkIfRootsExists(Object.keys(e)))throw new vn.ZP("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 vn.ZP("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.getRootNames().includes(e))return!1;return!0}}class Ua{constructor(t,e){this._helpers=new Map,this._downcast=(0,Rn.Z)(t),this._createConversionHelpers({name:"downcast",dispatchers:this._downcast,isDowncast:!0}),this._upcast=(0,Rn.Z)(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 vn.ZP("conversion-add-alias-dispatcher-not-registered",this);this._createConversionHelpers({name:t,dispatchers:[e],isDowncast:n})}for(t){if(!this._helpers.has(t))throw new vn.ZP("conversion-for-unknown-group",this);return this._helpers.get(t)}elementToElement(t){this.for("downcast").elementToElement(t);for(const{model:e,view:n}of qa(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 qa(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 qa(t))this.for("upcast").attributeToAttribute({view:n,model:e})}_createConversionHelpers({name:t,dispatchers:e,isDowncast:n}){if(this._helpers.has(t))throw new vn.ZP("conversion-group-exists",this);const i=n?new $s(e):new ha(e);this._helpers.set(t,i)}}function*qa(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*Wa(n,i,o)}else yield*Wa(t.model,t.view,t.upcastAlso)}function*Wa(t,e,n){if(yield{model:t,view:e},n)for(const e of(0,Rn.Z)(n))yield{model:t,view:e}}class Za{constructor(t={}){"string"==typeof t&&(t="transparent"===t?{isUndoable:!1}:{},(0,vn.KE)("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(0,vn.KE)("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}}class Ga{constructor(t){this._markerCollection=t,this._changesInElement=new Map,this._elementSnapshots=new Map,this._changedMarkers=new Map,this._changeCount=0,this._cachedChanges=null,this._cachedChangesWithGraveyard=null,this._refreshedItems=new Set}get isEmpty(){return 0==this._changesInElement.size&&0==this._changedMarkers.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=Ts._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}}this._cachedChanges=null}bufferMarkerChange(t,e,n){const i=this._changedMarkers.get(t);i?(i.newMarkerData=n,null==i.oldMarkerData.range&&null==n.range&&this._changedMarkers.delete(t)):this._changedMarkers.set(t,{newMarkerData:n,oldMarkerData:e})}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._changesInElement.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(Ya),t.includeChangesInGraveyard?this._cachedChangesWithGraveyard.slice():this._cachedChanges.slice()}getRefreshedItems(){return new Set(this._refreshedItems)}reset(){this._changesInElement.clear(),this._elementSnapshots.clear(),this._changedMarkers.clear(),this._refreshedItems=new Set,this._cachedChanges=null}_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=Ts._createOn(t);for(const t of this._markerCollection.getMarkersIntersectingRange(e)){const e=t.getData();this.bufferMarkerChange(t.name,e,e)}this._cachedChanges=null}_markInsert(t,e,n){const i={type:"insert",offset:e,howMany:n,count:this._changeCount++};this._markChange(t,i)}_markRemove(t,e,n){const i={type:"remove",offset:e,howMany:n,count:this._changeCount++};this._markChange(t,i),this._removeAllNestedChanges(t,e,n)}_markAttribute(t){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:_s._createAt(t,e),name:n.name,attributes:new Map(n.attributes),length:1,changeCount:this._changeCount++}}_getRemoveDiff(t,e,n){return{type:"remove",position:_s._createAt(t,e),name:n.name,attributes:new Map(n.attributes),length:1,changeCount:this._changeCount++}}_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 cs.Bb("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 Qa extends ks{constructor(t,e,n="main"){super(e),this._document=t,this.rootName=n}get document(){return this._document}toJSON(){return this.rootName}}function Xa(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 tc(t,e){return!!(n=t.charAt(e))&&1==n.length&&/[\u0300-\u036f\u1ab0-\u1aff\u1dc0-\u1dff\u20d0-\u20ff\ufe20-\ufe2f]/.test(n);var n}Qa.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};const ec=function(){const t=/\p{Regional_Indicator}{2}/u.source,e="(?:"+[/\p{Emoji}[\u{E0020}-\u{E007E}]+\u{E007F}/u,/\p{Emoji}\u{FE0F}?\u{20E3}/u,/\p{Emoji}\u{FE0F}/u,/(?=\p{General_Category=Other_Symbol})\p{Emoji}\p{Emoji_Modifier}*/u].map((t=>t.source)).join("|")+")";return new RegExp(`${t}|${e}(?:‍${e})*`,"ug")}();function nc(t,e){const n=String(t).matchAll(ec);return Array.from(n).some((t=>t.index{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={...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,{...i,range:n},i)}))}))}get version(){return this.history.version}set version(t){this.history.version=t}get graveyard(){return this.getRoot(ic)}createRoot(t="$root",e="main"){if(this.roots.get(e))throw new vn.ZP("model-document-createroot-name-exists",this,{name:e});const n=new Qa(this,t,e);return this.roots.add(n),n}destroy(){this.selection.destroy(),this.stopListening()}getRoot(t="main"){return this.roots.get(t)}getRootNames(){return Array.from(this.roots,(t=>t.rootName)).filter((t=>t!=ic))}registerPostFixer(t){this._postFixers.add(t)}toJSON(){const t=Bn(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(){for(const t of this.roots)if(t!==this.graveyard)return t;return 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 rc(t.start)&&rc(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 rc(t){const e=t.textNode;if(e){const n=e.data,i=t.offset-e.startOffset;return!Xa(n,i)&&!tc(n,i)}return!0}class sc extends Cn.Q5{constructor(){super(),this._markers=new Map}[Symbol.iterator](){return this._markers.values()}has(t){const e=t instanceof ac?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 ac?t.name:t;if(o.includes(","))throw new vn.ZP("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(js.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=js.fromRange(e),a=new ac(o,s,n,i);return this._markers.set(o,a),this.fire(`update:${o}`,a,null,e,{...a.getData(),range:null}),a}_remove(t){const e=t instanceof ac?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 ac?t.name:t,n=this._markers.get(e);if(!n)throw new vn.ZP("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 ac extends((0,Cn.ZP)(ms)){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 vn.ZP("marker-destroyed",this);return this._managedUsingOperations}get affectsData(){if(!this._liveRange)throw new vn.ZP("marker-destroyed",this);return this._affectsData}getData(){return{range:this.getRange(),affectsData:this.affectsData,managedUsingOperations:this.managedUsingOperations}}getStart(){if(!this._liveRange)throw new vn.ZP("marker-destroyed",this);return this._liveRange.start.clone()}getEnd(){if(!this._liveRange)throw new vn.ZP("marker-destroyed",this);return this._liveRange.end.clone()}getRange(){if(!this._liveRange)throw new vn.ZP("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}}ac.prototype.is=function(t){return"marker"===t||"model:marker"===t};class cc{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 lc(t,e){const n=hc(e),i=n.reduce(((t,e)=>t+e.offsetSize),0),o=t.parent;gc(t);const r=t.index;return o._insertChild(r,n),mc(o,r+n.length),mc(o,r),new Ts(t,t.getShiftedBy(i))}function dc(t){if(!t.isFlat)throw new vn.ZP("operation-utils-remove-range-not-flat",this);const e=t.start.parent;gc(t.start),gc(t.end);const n=e._removeChildren(t.start.index,t.end.index-t.start.index);return mc(e,t.start.index),n}function uc(t,e){if(!t.isFlat)throw new vn.ZP("operation-utils-move-range-not-flat",this);const n=dc(t);return lc(e=e._getTransformedByDeletion(t.start,t.end.offset-t.start.offset),n)}function hc(t){const e=[];!function t(n){if("string"==typeof n)e.push(new fs(n));else if(n instanceof bs)e.push(new fs(n.data,n.getAttributes()));else if(n instanceof gs)e.push(n);else if((0,Ln.Z)(n))for(const e of n)t(e)}(t);for(let t=1;tt.maxOffset)throw new vn.ZP("move-operation-nodes-do-not-exist",this);if(t===e&&n=n&&this.targetPosition.path[t]t._clone(!0)))),e=new xc(this.position,t,this.baseVersion);return e.shouldReceiveAttributes=this.shouldReceiveAttributes,e}getReversed(){const t=this.position.root.document.graveyard,e=new _s(t,[0]);return new kc(this.position,this.nodes.maxOffset,e,this.baseVersion+1)}_validate(){const t=this.position.parent;if(!t||t.maxOffsett._clone(!0)))),lc(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(ks.fromJSON(e)):n.push(fs.fromJSON(e));const i=new xc(_s.fromJSON(t.position,e),n,t.baseVersion);return i.shouldReceiveAttributes=t.shouldReceiveAttributes,i}}class wc extends cc{constructor(t,e,n,i,o,r){super(r),this.name=t,this.oldRange=e?e.clone():null,this.newRange=n?n.clone():null,this.affectsData=o,this._markers=i}get type(){return"marker"}clone(){return new wc(this.name,this.oldRange,this.newRange,this._markers,this.affectsData,this.baseVersion)}getReversed(){return new wc(this.name,this.newRange,this.oldRange,this._markers,this.affectsData,this.baseVersion+1)}_execute(){this.newRange?this._markers._set(this.name,this.newRange,!0,this.affectsData):this._markers._remove(this.name)}toJSON(){const t=super.toJSON();return this.oldRange&&(t.oldRange=this.oldRange.toJSON()),this.newRange&&(t.newRange=this.newRange.toJSON()),delete t._markers,t}static get className(){return"MarkerOperation"}static fromJSON(t,e){return new wc(t.name,t.oldRange?Ts.fromJSON(t.oldRange,e):null,t.newRange?Ts.fromJSON(t.newRange,e):null,e.model.markers,t.affectsData,t.baseVersion)}}class _c extends cc{get type(){return"noop"}clone(){return new _c(this.baseVersion)}getReversed(){return new _c(this.baseVersion+1)}_execute(){}static get className(){return"NoOperation"}}class Ac extends cc{constructor(t,e,n,i){super(i),this.position=t,this.position.stickiness="toNext",this.oldName=e,this.newName=n}get type(){return"rename"}clone(){return new Ac(this.position.clone(),this.oldName,this.newName,this.baseVersion)}getReversed(){return new Ac(this.position.clone(),this.newName,this.oldName,this.baseVersion+1)}_validate(){const t=this.position.nodeAfter;if(!(t instanceof ks))throw new vn.ZP("rename-operation-wrong-position",this);if(t.name!==this.oldName)throw new vn.ZP("rename-operation-wrong-name",this)}_execute(){this.position.nodeAfter.name=this.newName}toJSON(){const t=super.toJSON();return t.position=this.position.toJSON(),t}static get className(){return"RenameOperation"}static fromJSON(t,e){return new Ac(_s.fromJSON(t.position,e),t.oldName,t.newName,t.baseVersion)}}class vc extends cc{constructor(t,e,n,i,o){super(o),this.root=t,this.key=e,this.oldValue=n,this.newValue=i}get type(){return null===this.oldValue?"addRootAttribute":null===this.newValue?"removeRootAttribute":"changeRootAttribute"}clone(){return new vc(this.root,this.key,this.oldValue,this.newValue,this.baseVersion)}getReversed(){return new vc(this.root,this.key,this.newValue,this.oldValue,this.baseVersion+1)}_validate(){if(this.root!=this.root.root||this.root.is("documentFragment"))throw new vn.ZP("rootattribute-operation-not-a-root",this,{root:this.root,key:this.key});if(null!==this.oldValue&&this.root.getAttribute(this.key)!==this.oldValue)throw new vn.ZP("rootattribute-operation-wrong-old-value",this,{root:this.root,key:this.key});if(null===this.oldValue&&null!==this.newValue&&this.root.hasAttribute(this.key))throw new vn.ZP("rootattribute-operation-attribute-exists",this,{root:this.root,key:this.key})}_execute(){null!==this.newValue?this.root._setAttribute(this.key,this.newValue):this.root._removeAttribute(this.key)}toJSON(){const t=super.toJSON();return t.root=this.root.toJSON(),t}static get className(){return"RootAttributeOperation"}static fromJSON(t,e){if(!e.getRoot(t.root))throw new vn.ZP("rootattribute-operation-fromjson-no-root",this,{rootName:t.root});return new vc(e.getRoot(t.root),t.key,t.oldValue,t.newValue,t.baseVersion)}}class Cc extends cc{constructor(t,e,n,i,o){super(o),this.sourcePosition=t.clone(),this.sourcePosition.stickiness="toPrevious",this.howMany=e,this.targetPosition=n.clone(),this.targetPosition.stickiness="toNext",this.graveyardPosition=i.clone()}get type(){return"merge"}get deletionPosition(){return new _s(this.sourcePosition.root,this.sourcePosition.path.slice(0,-1))}get movedRange(){const t=this.sourcePosition.getShiftedBy(Number.POSITIVE_INFINITY);return new Ts(this.sourcePosition,t)}clone(){return new Cc(this.sourcePosition,this.howMany,this.targetPosition,this.graveyardPosition,this.baseVersion)}getReversed(){const t=this.targetPosition._getTransformedByMergeOperation(this),e=this.sourcePosition.path.slice(0,-1),n=new _s(this.sourcePosition.root,e)._getTransformedByMergeOperation(this);return new yc(t,this.howMany,n,this.graveyardPosition,this.baseVersion+1)}_validate(){const t=this.sourcePosition.parent,e=this.targetPosition.parent;if(!t.parent)throw new vn.ZP("merge-operation-source-position-invalid",this);if(!e.parent)throw new vn.ZP("merge-operation-target-position-invalid",this);if(this.howMany!=t.maxOffset)throw new vn.ZP("merge-operation-how-many-invalid",this)}_execute(){const t=this.sourcePosition.parent;uc(Ts._createIn(t),this.targetPosition),uc(Ts._createOn(t),this.graveyardPosition)}toJSON(){const t=super.toJSON();return t.sourcePosition=t.sourcePosition.toJSON(),t.targetPosition=t.targetPosition.toJSON(),t.graveyardPosition=t.graveyardPosition.toJSON(),t}static get className(){return"MergeOperation"}static fromJSON(t,e){const n=_s.fromJSON(t.sourcePosition,e),i=_s.fromJSON(t.targetPosition,e),o=_s.fromJSON(t.graveyardPosition,e);return new this(n,t.howMany,i,o,t.baseVersion)}}class yc extends cc{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 _s(this.insertionPosition.root,t)}get movedRange(){const t=this.splitPosition.getShiftedBy(Number.POSITIVE_INFINITY);return new Ts(this.splitPosition,t)}clone(){return new yc(this.splitPosition,this.howMany,this.insertionPosition,this.graveyardPosition,this.baseVersion)}getReversed(){const t=this.splitPosition.root.document.graveyard,e=new _s(t,[0]);return new Cc(this.moveTargetPosition,this.howMany,this.splitPosition,e,this.baseVersion+1)}_validate(){const t=this.splitPosition.parent,e=this.splitPosition.offset;if(!t||t.maxOffset"string"==typeof t?new fs(t):t instanceof bs?new fs(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}}Sc.prototype.is=function(t){return"documentFragment"===t||"model:documentFragment"===t};class Ic{constructor(t,e){this.model=t,this.batch=e}createText(t,e){return new fs(t,e)}createElement(t,e){return new ks(t,e)}createDocumentFragment(){return new Sc}cloneElement(t,e=!0){return t._clone(e)}insert(t,e,n=0){if(this._assertWriterUsedCorrectly(),t instanceof fs&&""==t.data)return;const i=_s._createAt(e,n);if(t.parent){if(Pc(t.root,i.root))return void this.move(Ts._createOn(t),i);if(t.root.document)throw new vn.ZP("model-writer-insert-forbidden-move",this);this.remove(t)}const o=i.root.document?i.root.document.version:null,r=new xc(i,t,o);if(t instanceof fs&&(r.shouldReceiveAttributes=!0),this.batch.addOperation(r),this.model.applyOperation(r),t instanceof Sc)for(const[e,n]of t.markers){const t=_s._createAt(n.root,0),o={range:new Ts(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 Sc||e instanceof ks||e instanceof _s?this.insert(this.createText(t),e,n):this.insert(this.createText(t,e),n,i)}insertElement(t,e,n,i){e instanceof Sc||e instanceof ks||e instanceof _s?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 Sc||e instanceof ks?this.insert(this.createText(t),e,"end"):this.insert(this.createText(t,e),n,"end")}appendElement(t,e,n){e instanceof Sc||e instanceof ks?this.insert(this.createElement(t),e,"end"):this.insert(this.createElement(t,e),n,"end")}setAttribute(t,e,n){if(this._assertWriterUsedCorrectly(),n instanceof Ts){const i=n.getMinimalFlatRanges();for(const n of i)Bc(this,t,e,n)}else Mc(this,t,e,n)}setAttributes(t,e){for(const[n,i]of(0,Pn.Z)(t))this.setAttribute(n,i,e)}removeAttribute(t,e){if(this._assertWriterUsedCorrectly(),e instanceof Ts){const n=e.getMinimalFlatRanges();for(const e of n)Bc(this,t,null,e)}else Mc(this,t,null,e)}clearAttributes(t){this._assertWriterUsedCorrectly();const e=t=>{for(const e of t.getAttributeKeys())this.removeAttribute(e,t)};if(t instanceof Ts)for(const n of t.getItems())e(n);else e(t)}move(t,e,n){if(this._assertWriterUsedCorrectly(),!(t instanceof Ts))throw new vn.ZP("writer-move-invalid-range",this);if(!t.isFlat)throw new vn.ZP("writer-move-range-not-flat",this);const i=_s._createAt(e,n);if(i.isEqual(t.start))return;if(this._addOperationForAffectedMarkers("move",t),!Pc(t.root,i.root))throw new vn.ZP("writer-move-different-document",this);const o=t.root.document?t.root.document.version:null,r=new kc(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 Ts?t:Ts._createOn(t)).getMinimalFlatRanges().reverse();for(const t of e)this._addOperationForAffectedMarkers("move",t),Oc(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 ks))throw new vn.ZP("writer-merge-no-element-before",this);if(!(n instanceof ks))throw new vn.ZP("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(Ts._createIn(n),_s._createAt(e,"end")),this.remove(n)}_merge(t){const e=_s._createAt(t.nodeBefore,"end"),n=_s._createAt(t.nodeAfter,0),i=t.root.document.graveyard,o=new _s(i,[0]),r=t.root.document.version,s=new Cc(n,t.nodeAfter.maxOffset,e,o,r);this.batch.addOperation(s),this.model.applyOperation(s)}rename(t,e){if(this._assertWriterUsedCorrectly(),!(t instanceof ks))throw new vn.ZP("writer-rename-not-element-instance",this);const n=t.root.document?t.root.document.version:null,i=new Ac(_s._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 vn.ZP("writer-split-element-no-parent",this);if(e||(e=o.parent),!t.parent.getAncestors({includeSelf:!0}).includes(e))throw new vn.ZP("writer-split-invalid-limit-element",this);do{const e=o.root.document?o.root.document.version:null,r=o.maxOffset-t.offset,s=yc.getInsertionPosition(t),a=new yc(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 Ts(_s._createAt(n,"end"),_s._createAt(i,0))}}wrap(t,e){if(this._assertWriterUsedCorrectly(),!t.isFlat)throw new vn.ZP("writer-wrap-range-not-flat",this);const n=e instanceof ks?e:new ks(e);if(n.childCount>0)throw new vn.ZP("writer-wrap-element-not-empty",this);if(null!==n.parent)throw new vn.ZP("writer-wrap-element-attached",this);this.insert(n,t.start);const i=new Ts(t.start.getShiftedBy(1),t.end.getShiftedBy(1));this.move(i,_s._createAt(n,0))}unwrap(t){if(this._assertWriterUsedCorrectly(),null===t.parent)throw new vn.ZP("writer-unwrap-element-no-parent",this);this.move(Ts._createIn(t),this.createPositionAfter(t)),this.remove(t)}addMarker(t,e){if(this._assertWriterUsedCorrectly(),!e||"boolean"!=typeof e.usingOperation)throw new vn.ZP("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 vn.ZP("writer-addmarker-marker-exists",this);if(!i)throw new vn.ZP("writer-addmarker-no-range",this);return n?(Nc(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 vn.ZP("writer-updatemarker-marker-not-exists",this);if(!e)return(0,vn.KE)("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 vn.ZP("writer-updatemarker-wrong-options",this);const a=i.getRange(),c=e.range?e.range:a;o&&e.usingOperation!==i.managedUsingOperations?e.usingOperation?Nc(this,n,null,c,s):(Nc(this,n,a,null,s),this.model.markers._set(n,c,void 0,s)):i.managedUsingOperations?Nc(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 vn.ZP("writer-removemarker-no-marker",this);const n=this.model.markers.get(e);if(!n.managedUsingOperations)return void this.model.markers._remove(e);Nc(this,e,n.getRange(),null,n.affectsData)}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(0,Pn.Z)(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=qs._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=qs._getStoreAttributeKey(t);this.removeAttribute(n,e.anchor.parent)}e._removeAttribute(t)}_assertWriterUsedCorrectly(){if(this.model._currentWriter!==this)throw new vn.ZP("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 Bc(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 Ts(l,s),c=i.root.document?r.version:null,d=new bc(i,e,a,n,c);t.batch.addOperation(d),o.applyOperation(d)}s instanceof _s&&s!=l&&a!=n&&d()}function Mc(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 vc(i,e,s,n,t)}else{a=new Ts(_s._createBefore(i),t.createPositionAfter(i));const o=a.root.document?r.version:null;c=new bc(a,e,s,n,o)}t.batch.addOperation(c),o.applyOperation(c)}}function Nc(t,e,n,i,o){const r=t.model,s=r.document,a=new wc(e,n,i,r.markers,!!o,s.version);t.batch.addOperation(a),r.applyOperation(a)}function Oc(t,e,n,i){let o;if(t.root.document){const n=i.document,r=new _s(n.graveyard,[0]);o=new kc(t,e,r,n.version)}else o=new Dc(t,e);n.addOperation(o),i.applyOperation(o)}function Pc(t,e){return t===e||t instanceof Qa&&e instanceof Qa}function Rc(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=Lc(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 Lc(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?Ts._createOn(t):null}if(!i.isCollapsed)return i;const o=i.start;if(n.isEqual(o))return null;return new Ts(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 Ts(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||!jc(n.nodeAfter,e)),r=l&&(!t||!jc(i.nodeBefore,e));let d=n,u=i;return o&&(d=_s._createBefore(zc(s,e))),r&&(u=_s._createAfter(zc(a,e))),new Ts(d,u)}return null}(t,e)}function zc(t,e){let n=t,i=n;for(;e.isLimit(i)&&i.parent;)n=i,i=i.parent;return n}function jc(t,e){return t&&e.isSelectable(t)}class Fc extends((0,Cn.ZP)(_s)){constructor(t,e,n="toNone"){if(super(t,e,n),!this.root.is("rootElement"))throw new vn.ZP("model-liveposition-root-not-rootelement",t);Vc.call(this)}detach(){this.stopListening()}toPosition(){return new _s(this.root,this.path.slice(),this.stickiness)}static fromPosition(t,e){return new this(t.root,t.path.slice(),e||t.stickiness)}}function Vc(){this.listenTo(this.root.document.model,"applyOperation",((t,e)=>{const n=e[0];n.isDocumentOperation&&Hc.call(this,n)}),{priority:"low"})}function Hc(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)}}function Uc(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)),Gc(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[Fc.fromPosition(n,"toPrevious"),Fc.fromPosition(i,"toNext")]}(i);s.isTouching(a)||t.remove(t.createRange(s,a)),n.leaveUnmerged||(!function(t,e,n){const i=t.model;if(!Zc(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})?Wc(t,e,n,o.parent):qc(t,e,n,o.parent)}(t,s,a),o.removeDisallowedAttributes(s.parent.getChildren(),t)),Kc(t,e,s),!n.doNotAutoparagraph&&function(t,e){const n=t.checkChild(e,"$text"),i=t.checkChild(e,"paragraph");return!n&&i}(o,s)&&Gc(t,s,e,r),s.detach(),a.detach()}))}function qc(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)}Zc(t.model.schema,e,n)&&qc(t,e,n,i)}}function Wc(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),Zc(t.model.schema,e,n)&&Wc(t,e,n,i)}}function Zc(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 Ts(t,e);for(const t of i.getWalker())if(n.isLimit(t.item))return!1;return!0}(e,n,t))}function Gc(t,e,n,i={}){const o=t.createElement("paragraph");t.model.schema.setAllowedAttributes(o,i,t),t.insert(o,e),Kc(t,n,t.createPositionAt(o,0))}function Kc(t,e,n){e instanceof qs?t.setSelection(n):e.setTo(n)}function $c(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)}}))}Fc.prototype.is=function(t){return"livePosition"===t||"model:livePosition"===t||"position"==t||"model:position"===t};var Yc=__webpack_require__(8894),Jc={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Yc.Z,Jc);Yc.Z.locals;const Qc=new WeakMap;function Xc(t){const{view:e,element:n,text:i,isDirectHost:o=!0,keepOnFocus:r=!1}=t,s=e.document;Qc.has(s)||(Qc.set(s,new Map),s.registerPostFixer((t=>el(s,t))),s.on("change:isComposing",(()=>{e.change((t=>el(s,t)))}),{priority:"high"})),Qc.get(s).set(n,{text:i,isDirectHost:o,keepOnFocus:r,hostElement:o?n:null}),e.change((t=>el(s,t)))}function tl(t,e){return!!e.hasClass("ck-placeholder")&&(t.removeClass("ck-placeholder",e),!0)}function el(t,e){const n=Qc.get(t),i=[];let o=!1;for(const[t,r]of n)r.isDirectHost&&(i.push(t),nl(e,t,r)&&(o=!0));for(const[t,r]of n){if(r.isDirectHost)continue;const n=il(t);n&&(i.includes(n)||(r.hostElement=n,nl(e,t,r)&&(o=!0)))}return o}function nl(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)&&function(t,e){if(!t.isAttached())return!1;const n=Array.from(t.getChildren()).some((t=>!t.is("uiElement")));if(n)return!1;const i=t.document,o=i.selection.anchor;return!(i.isComposing&&o&&o.parent===t||!e&&i.isFocused&&(!o||o.parent===t))}(r,n.keepOnFocus)?function(t,e){return!e.hasClass("ck-placeholder")&&(t.addClass("ck-placeholder",e),!0)}(t,r)&&(s=!0):tl(t,r)&&(s=!0),s}function il(t){if(t.childCount){const e=t.getChild(0);if(e.is("element")&&!e.is("uiElement")&&!e.is("attributeElement"))return e}return null}const ol=new Map;function rl(t,e,n){let i=ol.get(t);i||(i=new Map,ol.set(t,i)),i.set(e,n)}function sl(t){return[t]}function al(t,e,n={}){const i=function(t,e){const n=ol.get(t);return n&&n.has(e)?n.get(e):sl}(t.constructor,e.constructor);try{return i(t=t.clone(),e,n)}catch(t){throw t}}function cl(t,e,n){t=t.slice(),e=e.slice();const i=new ll(n.document,n.useRelations,n.forceWeakRemove);i.setOriginalOperations(t),i.setOriginalOperations(e);const o=i.originalOperations;if(0==t.length||0==e.length)return{operationsA:t,operationsB:e,originalOperations:o};const r=new WeakMap;for(const e of t)r.set(e,0);const s={nextBaseVersionA:t[t.length-1].baseVersion+1,nextBaseVersionB:e[e.length-1].baseVersion+1,originalOperationsACount:t.length,originalOperationsBCount:e.length};let a=0;for(;a{if(t.key===e.key&&t.range.start.hasSameParentAs(e.range.start)){const i=t.range.getDifference(e.range).map((e=>new bc(e,t.key,t.oldValue,t.newValue,0))),o=t.range.getIntersection(e.range);return o&&n.aIsStrong&&i.push(new bc(o,e.key,e.newValue,t.newValue,0)),0==i.length?[new _c(0)]:i}return[t]})),rl(bc,xc,((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 bc(e,t.key,t.oldValue,t.newValue,t.baseVersion)));if(e.shouldReceiveAttributes){const i=hl(e,t.key,t.oldValue);i&&n.unshift(i)}return n}return t.range=t.range._getTransformedByInsertion(e.position,e.howMany,!1)[0],[t]})),rl(bc,Cc,((t,e)=>{const n=[];t.range.start.hasSameParentAs(e.deletionPosition)&&(t.range.containsPosition(e.deletionPosition)||t.range.start.isEqual(e.deletionPosition))&&n.push(Ts._createFromPositionAndShift(e.graveyardPosition,1));const i=t.range._getTransformedByMergeOperation(e);return i.isCollapsed||n.push(i),n.map((e=>new bc(e,t.key,t.oldValue,t.newValue,t.baseVersion)))})),rl(bc,kc,((t,e)=>{const n=function(t,e){const n=Ts._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 bc(e,t.key,t.oldValue,t.newValue,t.baseVersion)))})),rl(bc,yc,((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 Ts(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]})),rl(xc,bc,((t,e)=>{const n=[t];if(t.shouldReceiveAttributes&&t.position.hasSameParentAs(e.range.start)&&e.range.containsPosition(t.position)){const i=hl(t,e.key,e.newValue);i&&n.push(i)}return n})),rl(xc,xc,((t,e,n)=>(t.position.isEqual(e.position)&&n.aIsStrong||(t.position=t.position._getTransformedByInsertOperation(e)),[t]))),rl(xc,kc,((t,e)=>(t.position=t.position._getTransformedByMoveOperation(e),[t]))),rl(xc,yc,((t,e)=>(t.position=t.position._getTransformedBySplitOperation(e),[t]))),rl(xc,Cc,((t,e)=>(t.position=t.position._getTransformedByMergeOperation(e),[t]))),rl(wc,xc,((t,e)=>(t.oldRange&&(t.oldRange=t.oldRange._getTransformedByInsertOperation(e)[0]),t.newRange&&(t.newRange=t.newRange._getTransformedByInsertOperation(e)[0]),[t]))),rl(wc,wc,((t,e,n)=>{if(t.name==e.name){if(!n.aIsStrong)return[new _c(0)];t.oldRange=e.newRange?e.newRange.clone():null}return[t]})),rl(wc,Cc,((t,e)=>(t.oldRange&&(t.oldRange=t.oldRange._getTransformedByMergeOperation(e)),t.newRange&&(t.newRange=t.newRange._getTransformedByMergeOperation(e)),[t]))),rl(wc,kc,((t,e,n)=>{if(t.oldRange&&(t.oldRange=Ts._createFromRanges(t.oldRange._getTransformedByMoveOperation(e))),t.newRange){if(n.abRelation){const i=Ts._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=Ts._createFromRanges(t.newRange._getTransformedByMoveOperation(e))}return[t]})),rl(wc,yc,((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=_s._createAt(e.insertionPosition):t.newRange.start.isEqual(e.splitPosition)&&!n.abRelation.wasInLeftElement&&(t.newRange.start=_s._createAt(e.moveTargetPosition)),t.newRange.end.isEqual(e.splitPosition)&&n.abRelation.wasInRightElement?t.newRange.end=_s._createAt(e.moveTargetPosition):t.newRange.end.isEqual(e.splitPosition)&&n.abRelation.wasEndBeforeMergedElement?t.newRange.end=_s._createAt(e.insertionPosition):t.newRange.end=i.end,[t]}t.newRange=t.newRange._getTransformedBySplitOperation(e)}return[t]})),rl(Cc,xc,((t,e)=>(t.sourcePosition.hasSameParentAs(e.position)&&(t.howMany+=e.howMany),t.sourcePosition=t.sourcePosition._getTransformedByInsertOperation(e),t.targetPosition=t.targetPosition._getTransformedByInsertOperation(e),[t]))),rl(Cc,Cc,((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 _s(e.graveyardPosition.root,n),t.howMany=0,[t]}return[new _c(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,r=i&&!o;if(o&&!i||!r&&n.aIsStrong){const n=e.targetPosition._getTransformedByMergeOperation(e),i=t.targetPosition._getTransformedByMergeOperation(e);return[new kc(n,t.howMany,i,0)]}return[new _c(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]})),rl(Cc,kc,((t,e,n)=>{const i=Ts._createFromPositionAndShift(e.sourcePosition,e.howMany);return"remove"==e.type&&!n.bWasUndone&&!n.forceWeakRemove&&t.deletionPosition.hasSameParentAs(e.sourcePosition)&&i.containsPosition(t.sourcePosition)?[new _c(0)]:(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.graveyardPosition.isEqual(e.targetPosition)||(t.graveyardPosition=t.graveyardPosition._getTransformedByMoveOperation(e)),[t])})),rl(Cc,yc,((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]})),rl(kc,xc,((t,e)=>{const n=Ts._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]})),rl(kc,kc,((t,e,n)=>{const i=Ts._createFromPositionAndShift(t.sourcePosition,t.howMany),o=Ts._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),ml(t,e)&&ml(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),gl([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()),gl([i],r);const c=In(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),gl([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"==In(t.start.getParentPath(),e.getMovedRangeStart().getParentPath()),i=t._getTransformedByInsertion(e.getMovedRangeStart(),e.howMany,n);l.push(...i)}const u=i.getIntersection(o);return null!==u&&s&&(u.start=u.start._getCombined(e.sourcePosition,e.getMovedRangeStart()),u.end=u.end._getCombined(e.sourcePosition,e.getMovedRangeStart()),0===l.length?l.push(u):1==l.length?o.start.isBefore(i.start)||o.start.isEqual(i.start)?l.unshift(u):l.push(u):l.splice(1,0,u)),0===l.length?[new _c(t.baseVersion)]:gl(l,r)})),rl(kc,yc,((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=Ts._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 Ts(e.splitPosition,o.end);t=t._getTransformedBySplitOperation(e);return gl([new Ts(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(Ts._createFromPositionAndShift(e.insertionPosition,1))}return gl(r,i)})),rl(kc,Cc,((t,e,n)=>{const i=Ts._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 _c(0)]}else if(!n.aWasUndone){const n=[];let i=e.graveyardPosition.clone(),o=e.targetPosition._getTransformedByMergeOperation(e);t.howMany>1&&(n.push(new kc(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 kc(i,1,r,0),a=s.getMovedRangeStart().path.slice();a.push(0);const c=new _s(s.targetPosition.root,a);o=o._getTransformedByMove(i,r,1);const l=new kc(o,e.howMany,c,0);return n.push(s),n.push(l),n}const o=Ts._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]})),rl(Ac,xc,((t,e)=>(t.position=t.position._getTransformedByInsertOperation(e),[t]))),rl(Ac,Cc,((t,e)=>t.position.isEqual(e.deletionPosition)?(t.position=e.graveyardPosition.clone(),t.position.stickiness="toNext",[t]):(t.position=t.position._getTransformedByMergeOperation(e),[t]))),rl(Ac,kc,((t,e)=>(t.position=t.position._getTransformedByMoveOperation(e),[t]))),rl(Ac,Ac,((t,e,n)=>{if(t.position.isEqual(e.position)){if(!n.aIsStrong)return[new _c(0)];t.oldName=e.newName}return[t]})),rl(Ac,yc,((t,e)=>{if("same"==In(t.position.path,e.splitPosition.getParentPath())&&!e.graveyardPosition){const e=new Ac(t.position.getShiftedBy(1),t.oldName,t.newName,0);return[t,e]}return t.position=t.position._getTransformedBySplitOperation(e),[t]})),rl(vc,vc,((t,e,n)=>{if(t.root===e.root&&t.key===e.key){if(!n.aIsStrong||t.newValue===e.newValue)return[new _c(0)];t.oldValue=e.newValue}return[t]})),rl(yc,xc,((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 _s(e.graveyardPosition.root,n),o=yc.getInsertionPosition(new _s(e.graveyardPosition.root,n)),r=new yc(i,0,o,null,0);return t.splitPosition=t.splitPosition._getTransformedByMergeOperation(e),t.insertionPosition=yc.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=yc.getInsertionPosition(t.splitPosition),t.graveyardPosition&&(t.graveyardPosition=t.graveyardPosition._getTransformedByMergeOperation(e)),[t]})),rl(yc,kc,((t,e,n)=>{const i=Ts._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 _s(i.root,o);return[new kc(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=yc.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 _c(0)];if(t.graveyardPosition&&e.graveyardPosition&&t.graveyardPosition.isEqual(e.graveyardPosition))return[new _c(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,r=i&&!o;if(o&&!i||!r&&n.aIsStrong){const n=[];return e.howMany&&n.push(new kc(e.moveTargetPosition,e.howMany,e.splitPosition,0)),t.howMany&&n.push(new kc(t.splitPosition,t.howMany,t.moveTargetPosition,0)),n}return[new _c(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 _s(e.insertionPosition.root,n);return[t,new kc(t.insertionPosition,1,i,0)]}return t.splitPosition.hasSameParentAs(e.splitPosition)&&t.splitPosition.offset{const{top:n,right:i,bottom:o,left:r}=e,s=[];return[n,i,r,o].every((t=>!!t))?s.push([t,Vl(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 Vl({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 Hl(t){return e=>({path:t,value:jl(e)})}function Ul(t){return t.replace(/, /g,",").split(" ").map((t=>t.replace(/,/g,", ")))}function ql(t){t.setNormalizer("background",(t=>{const e={},n=Ul(t);for(const t of n)Ml(t)?(e.repeat=e.repeat||[],e.repeat.push(t)):Ol(t)?(e.position=e.position||[],e.position.push(t)):Rl(t)?e.attachment=t:Cl(t)?e.color=t:zl(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 Wl(t){t.setNormalizer("border",(t=>{const{color:e,style:n,width:i}=Ql(t);return{path:"border",value:{color:jl(e),style:jl(n),width:jl(i)}}})),t.setNormalizer("border-top",Zl("top")),t.setNormalizer("border-right",Zl("right")),t.setNormalizer("border-bottom",Zl("bottom")),t.setNormalizer("border-left",Zl("left")),t.setNormalizer("border-color",Gl("color")),t.setNormalizer("border-width",Gl("width")),t.setNormalizer("border-style",Gl("style")),t.setNormalizer("border-top-color",$l("color","top")),t.setNormalizer("border-top-style",$l("style","top")),t.setNormalizer("border-top-width",$l("width","top")),t.setNormalizer("border-right-color",$l("color","right")),t.setNormalizer("border-right-style",$l("style","right")),t.setNormalizer("border-right-width",$l("width","right")),t.setNormalizer("border-bottom-color",$l("color","bottom")),t.setNormalizer("border-bottom-style",$l("style","bottom")),t.setNormalizer("border-bottom-width",$l("width","bottom")),t.setNormalizer("border-left-color",$l("color","left")),t.setNormalizer("border-left-style",$l("style","left")),t.setNormalizer("border-left-width",$l("width","left")),t.setExtractor("border-top",Yl("top")),t.setExtractor("border-right",Yl("right")),t.setExtractor("border-bottom",Yl("bottom")),t.setExtractor("border-left",Yl("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",Fl("border-color")),t.setReducer("border-style",Fl("border-style")),t.setReducer("border-width",Fl("border-width")),t.setReducer("border-top",Xl("top")),t.setReducer("border-right",Xl("right")),t.setReducer("border-bottom",Xl("bottom")),t.setReducer("border-left",Xl("left")),t.setReducer("border",function(){return e=>{const n=Jl(e,"top"),i=Jl(e,"right"),o=Jl(e,"bottom"),r=Jl(e,"left"),s=[n,i,o,r],a={width:t(s,"width"),style:t(s,"style"),color:t(s,"color")},c=td(a,"all");if(c.length)return c;const l=Object.entries(a).reduce(((t,[e,n])=>(n&&(t.push([`border-${e}`,n]),s.forEach((t=>delete t[e]))),t)),[]);return[...l,...td(n,"top"),...td(i,"right"),...td(o,"bottom"),...td(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 Zl(t){return e=>{const{color:n,style:i,width:o}=Ql(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 Gl(t){return e=>({path:"border",value:Kl(e,t)})}function Kl(t,e){return{[e]:jl(t)}}function $l(t,e){return n=>({path:"border",value:{[t]:{[e]:n}}})}function Yl(t){return(e,n)=>{if(n.border)return Jl(n.border,t)}}function Jl(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 Ql(t){const e={},n=Ul(t);for(const t of n)Dl(t)||/thin|medium|thick/.test(t)?e.width=t:El(t)?e.style=t:e.color=t;return e}function Xl(t){return e=>td(e,t)}function td(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 ed(t){t.setNormalizer("margin",Hl("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",Fl("margin")),t.setStyleRelation("margin",["margin-top","margin-right","margin-bottom","margin-left"])}function nd(t){t.setNormalizer("padding",Hl("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",Fl("padding")),t.setStyleRelation("padding",["padding-top","padding-right","padding-bottom","padding-left"])}class id{constructor(t,e,n){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),this._firstNode=null,this._lastNode=null,this._lastAutoParagraph=null,this._filterAttributesOf=[],this._affectedStart=null,this._affectedEnd=null}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 vn.ZP("insertcontent-invalid-insertion-position",this);this.position=n,this._setAffectedBoundaries(this.position)}}getSelectionRange(){return this._nodeToSelect?Ts._createOn(this._nodeToSelect):this.model.schema.getNearestSelectionRange(this.position)}getAffectedRange(){return this._affectedStart?new Ts(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=Fc.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 vn.ZP("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=Fc.fromPosition(t,"toPrevious")),this._affectedEnd&&!this._affectedEnd.isBefore(t)||(this._affectedEnd&&this._affectedEnd.detach(),this._affectedEnd=Fc.fromPosition(t,"toNext"))}_mergeOnLeft(){const t=this._firstNode;if(!(t instanceof ks))return;if(!this._canMergeLeft(t))return;const e=Fc._createBefore(t);e.stickiness="toNext";const n=Fc.fromPosition(this.position,"toNext");this._affectedStart.isEqual(e)&&(this._affectedStart.detach(),this._affectedStart=Fc._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=Fc._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 ks))return;if(!this._canMergeRight(t))return;const e=Fc._createAfter(t);if(e.stickiness="toNext",!this.position.isEqual(e))throw new vn.ZP("insertcontent-invalid-insertion-position",this);this.position=_s._createAt(e.nodeBefore,"end");const n=Fc.fromPosition(this.position,"toPrevious");this._affectedEnd.isEqual(e)&&(this._affectedEnd.detach(),this._affectedEnd=Fc._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=Fc._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 ks&&this.canMergeWith.has(e)&&this.model.schema.checkMerge(e,t)}_canMergeRight(t){const e=t.nextSibling;return e instanceof ks&&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)}}var od=__webpack_require__(7246);function rd(t,e,n="auto"){const i=t.getSelectedElement();if(i&&e.schema.isObject(i)&&!e.schema.isInline(i))return"before"==n||"after"==n?e.createRange(e.createPositionAt(i,n)):e.createRangeOn(i);const o=(0,od.Z)(t.getSelectedBlocks());if(!o)return e.createRange(t.focus);if(o.isEmpty)return e.createRange(e.createPositionAt(o,0));const r=e.createPositionAfter(o);return t.focus.isTouching(r)?e.createRange(r):e.createRange(e.createPositionBefore(o))}function sd(t,e,n,i,o={}){if(!t.schema.isObject(e))throw new vn.ZP("insertobject-element-not-an-object",t,{object:e});let r;r=n?n instanceof Os||n instanceof qs?n:t.createSelection(n,i):t.document.selection;let s=r;o.findOptimalPosition&&t.schema.isBlock(e)&&(s=t.createSelection(rd(r,t,o.findOptimalPosition)));const a=(0,od.Z)(r.getSelectedBlocks()),c={};return a&&Object.assign(c,t.schema.getAttributesWithProperty(a,"copyOnReplace",!0)),t.change((n=>{s.isCollapsed||t.deleteContent(s,{doNotAutoparagraph:!0});let i=e;const r=s.anchor.parent;!t.schema.checkChild(r,e)&&t.schema.checkChild(r,"paragraph")&&t.schema.checkChild("paragraph",e)&&(i=n.createElement("paragraph"),n.insert(e,i)),t.schema.setAllowedAttributes(i,c,n);const a=t.insertContent(i,s);return a.isCollapsed||o.setSelection&&function(t,e,n,i){const o=t.model;if("after"==n){let n=e.nextSibling;!(n&&o.schema.checkChild(n,"$text"))&&o.schema.checkChild(e.parent,"paragraph")&&(n=t.createElement("paragraph"),o.schema.setAllowedAttributes(n,i,t),o.insertContent(n,t.createPositionAfter(e))),n&&t.setSelection(n,0)}else{if("on"!=n)throw new vn.ZP("insertobject-invalid-place-parameter-value",o);t.setSelection(e,"on")}}(n,e,o.setSelection,c),a}))}function ad(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(dd(n,i,e))n=e?t.position.nodeAfter:t.position.nodeBefore;else{if(ld(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(;Xa(o,r)||"character"==e&&tc(o,r)||n&&nc(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 _s._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 cd(t,e){const n=t.root,i=_s._createAt(n,e?"end":0);return e?new Ts(t,i):new Ts(i,t)}function ld(t,e,n){const i=e+(n?0:-1);return' ,.?!:;"-()'.includes(t.charAt(i))}function dd(t,e,n){return e===(n?t.offsetSize:0)}class ud extends t.y{constructor(){super(),this.markers=new sc,this.document=new oc(this),this.schema=new Ca,this._pendingChanges=[],this._currentWriter=null,["insertContent","insertObject","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})),Rc(this),this.document.registerPostFixer(la)}change(t){try{return 0===this._pendingChanges.length?(this._pendingChanges.push({batch:new Za,callback:t}),this._runPendingChanges()[0]):t(this._currentWriter)}catch(t){vn.ZP.rethrowUnexpectedError(t,this)}}enqueueChange(t,e){try{t?"function"==typeof t?(e=t,t=new Za):t instanceof Za||(t=new Za(t)):t=new Za,this._pendingChanges.push({batch:t,callback:e}),1==this._pendingChanges.length&&this._runPendingChanges()}catch(t){vn.ZP.rethrowUnexpectedError(t,this)}}applyOperation(t){t._execute()}insertContent(t,e,n){return function(t,e,n,i){return t.change((o=>{let r;r=n?n instanceof Os||n instanceof qs?n:o.createSelection(n,i):t.document.selection,r.isCollapsed||t.deleteContent(r,{doNotAutoparagraph:!0});const s=new id(t,o,r.anchor),a=[];let c;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:i,isCollapsed:r}of t){let t=null,s=null;const c=n.parent===e&&n.isAtStart,l=n.parent===e&&n.isAtEnd;c||l?r&&(s=c?"start":"end"):(t=o.createElement("$marker"),o.insert(t,n)),a.push({name:i,element:t,collapsed:s})}}c=e.getChildren()}else c=[e];s.handleNodes(c);let l=s.getSelectionRange();if(e.is("documentFragment")&&a.length){const t=l?js.fromRange(l):null,e={};for(let t=a.length-1;t>=0;t--){const{name:n,element:i,collapsed:r}=a[t],c=!e[n];if(c&&(e[n]=[]),i){const t=o.createPositionAt(i,"before");e[n].push(t),o.remove(i)}else{const t=s.getAffectedRange();if(!t){r&&e[n].push(s.position);continue}r?e[n].push(t[r]):e[n].push(c?t.start:t.end)}}for(const[t,[n,i]]of Object.entries(e))n&&i&&n.root===i.root&&o.addMarker(t,{usingOperation:!0,affectsData:!0,range:new Ts(n,i)});t&&(l=t.toRange(),t.detach())}l&&(r instanceof qs?o.setSelection(l):r.setTo(l));const d=s.getAffectedRange()||t.createRange(r.anchor);return s.destroy(),d}))}(this,t,e,n)}insertObject(t,e,n,i){return sd(this,t,e,n,i)}deleteContent(t,e){Uc(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 xs({boundaries:cd(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=ad(l,d.value);if(n)return void(e instanceof qs?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);$c(t.createRange(e.end,t.createPositionAt(n,"end")),t),$c(o,t)}return n}))}(this,t)}hasContent(t,e={}){const n=t instanceof Ts?t:Ts._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}createPositionFromPath(t,e,n){return new _s(t,e,n)}createPositionAt(t,e){return _s._createAt(t,e)}createPositionAfter(t){return _s._createAfter(t)}createPositionBefore(t){return _s._createBefore(t)}createRange(t,e){return new Ts(t,e)}createRangeIn(t){return Ts._createIn(t)}createRangeOn(t){return Ts._createOn(t)}createSelection(...t){return new Os(...t)}createBatch(t){return new Za(t)}createOperationFromJSON(t){return Tc.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 Ic(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}}var hd=__webpack_require__(6550);class md extends hd.Z{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)}}class gd extends t.y{constructor(t={}){super();const e=this.constructor,n=t.language||e.defaultConfig&&e.defaultConfig.language;this._context=t.context||new Tn({language:n}),this._context._addEditor(this,!t.context);const i=Array.from(e.builtinPlugins||[]);this.config=new xn(t,e.defaultConfig),this.config.define("plugins",i),this.config.define(this._context._getEditorConfig()),this.plugins=new yn(this,i,this._context.plugins),this.locale=this._context.locale,this.t=this.locale.t,this._readOnlyLocks=new Set,this.commands=new wa,this.set("state","initializing"),this.once("ready",(()=>this.state="ready"),{priority:"high"}),this.once("destroy",(()=>this.state="destroyed"),{priority:"high"}),this.model=new ud;const o=new Oi;this.data=new Ha(this.model,o),this.editing=new xa(this.model,o),this.editing.view.document.bind("isReadOnly").to(this),this.conversion=new Ua([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 md(this),this.keystrokes.listenTo(this.editing.view.document)}get isReadOnly(){return this._readOnlyLocks.size>0}set isReadOnly(t){throw new vn.ZP("editor-isreadonly-has-no-setter")}enableReadOnlyMode(t){if("string"!=typeof t&&"symbol"!=typeof t)throw new vn.ZP("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 vn.ZP("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))}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){vn.ZP.rethrowUnexpectedError(t,this)}}focus(){this.editing.view.focus()}}class pd{constructor(t){this.editor=t,this._components=new Map}*names(){for(const t of this._components.values())yield t.originalName}add(t,e){this._components.set(fd(t),{callback:e,originalName:t})}create(t){if(!this.has(t))throw new vn.ZP("componentfactory-item-missing",this,{name:t});return this._components.get(fd(t)).callback(this.editor.locale)}has(t){return this._components.has(fd(t))}}function fd(t){return String(t).toLowerCase()}var bd=__webpack_require__(2073);class kd extends An.Z{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 vn.ZP("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])}}class xd extends Cn.Q5{constructor(t){super(),Object.assign(this,Sd(Dd(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 vn.ZP("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)Pd(n)?yield n:Rd(n)&&(yield*t(n))}(this)}static bind(t,e){return{to:(n,i)=>new _d({eventNameOrFunction:n,attribute:n,observable:t,emitter:e,callback:i}),if:(n,i,o)=>new Ad({observable:t,emitter:e,attribute:n,valueIfTrue:i,callback:o})}}static extend(t,e){if(t._isRendered)throw new vn.ZP("template-extend-render",[this,t]);Nd(t,Sd(Dd(e)))}_renderNode(t){let e;if(e=t.node?this.tag&&this.text:this.tag?this.text:!this.text,e)throw new vn.ZP("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(""),vd(this.text)?this._bindToObservable({schema:this.text,updater:yd(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=zd(r)?r[0].ns:null;if(vd(r)){const a=zd(r)?r[0].value:r;n&&jd(i)&&a.unshift(o),this._bindToObservable({schema:a,updater:Ed(e,i,s),data:t})}else if("style"==i&&"string"!=typeof r[0])this._renderStyleAttribute(r[0],t);else{n&&o&&jd(i)&&r.unshift(o);const t=r.map((t=>t&&t.value||t)).reduce(((t,e)=>t.concat(e)),[]).reduce(Bd,"");Od(t)||e.setAttributeNS(s,i,t)}}}_renderStyleAttribute(t,e){const n=e.node;for(const i in t){const o=t[i];vd(o)?this._bindToObservable({schema:[o],updater:Td(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(Ld(r)){if(!i){r.setParent(e);for(const t of r)n.appendChild(t.element)}}else if(Pd(r))i||(r.isRendered||r.render(),n.appendChild(r.element));else if((0,Uo.Z)(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;Cd(t,e,n);const o=t.filter((t=>!Od(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;tCd(t,e,n);return this.emitter.listenTo(this.observable,`change:${this.attribute}`,i),()=>{this.emitter.stopListening(this.observable,`change:${this.attribute}`,i)}}}class _d extends wd{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 Ad extends wd{constructor(t){super(t),this.valueIfTrue=t.valueIfTrue}getValue(t){return!Od(super.getValue(t))&&(this.valueIfTrue||!0)}}function vd(t){return!!t&&(t.value&&(t=t.value),Array.isArray(t)?t.some(vd):t instanceof wd)}function Cd(t,e,{node:n}){const i=function(t,e){return t.map((t=>t instanceof wd?t.getValue(e):t))}(t,n);let o;o=1==t.length&&t[0]instanceof Ad?i[0]:i.reduce(Bd,""),Od(o)?e.remove():e.set(o)}function yd(t){return{set(e){t.textContent=e},remove(){t.textContent=""}}}function Ed(t,e,n){return{set(i){t.setAttributeNS(n,e,i)},remove(){t.removeAttributeNS(n,e)}}}function Td(t,e){return{set(n){t.style[e]=n},remove(){t.style[e]=null}}}function Dd(t){return bn(t,(t=>{if(t&&(t instanceof wd||Rd(t)||Pd(t)||Ld(t)))return t}))}function Sd(t){if("string"==typeof t?t=function(t){return{text:[t]}}(t):t.text&&function(t){t.text=(0,Rn.Z)(t.text)}(t),t.on&&(t.eventListeners=function(t){for(const e in t)Id(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=(0,Rn.Z)(t[e].value)),Id(t,e)}(t.attributes);const e=[];if(t.children)if(Ld(t.children))e.push(t.children);else for(const n of t.children)Rd(n)||Pd(n)||(0,Uo.Z)(n)?e.push(n):e.push(new xd(n));t.children=e}return t}function Id(t,e){t[e]=(0,Rn.Z)(t[e])}function Bd(t,e){return Od(e)?t:Od(t)?e:`${t} ${e}`}function Md(t,e){for(const n in e)t[n]?t[n].push(...e[n]):t[n]=e[n]}function Nd(t,e){if(e.attributes&&(t.attributes||(t.attributes={}),Md(t.attributes,e.attributes)),e.eventListeners&&(t.eventListeners||(t.eventListeners={}),Md(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 vn.ZP("ui-template-extend-children-mismatch",t);let n=0;for(const i of e.children)Nd(t.children[n++],i)}}function Od(t){return!t&&0!==t}function Pd(t){return t instanceof Hd}function Rd(t){return t instanceof xd}function Ld(t){return t instanceof kd}function zd(t){return(0,B.Z)(t[0])&&t[0].ns}function jd(t){return"class"==t||"style"==t}var Fd=__webpack_require__(6150),Vd={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Fd.Z,Vd);Fd.Z.locals;class Hd extends((0,gr.Z)(t.y)){constructor(t){super(),this.element=null,this.isRendered=!1,this.locale=t,this.t=t&&t.t,this._viewCollections=new An.Z,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=xd.bind(this,this)}createCollection(t){const e=new kd(t);return this._viewCollections.add(e),e}registerChild(t){(0,Ln.Z)(t)||(t=[t]);for(const e of t)this._unboundChildren.add(e)}deregisterChild(t){(0,Ln.Z)(t)||(t=[t]);for(const e of t)this._unboundChildren.remove(e)}setTemplate(t){this.template=new xd(t)}extendTemplate(t){xd.extend(this.template,t)}render(){if(this.isRendered)throw new vn.ZP("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)}}var Ud=__webpack_require__(6224);var qd=__webpack_require__(407);function Wd({element:t,target:e,positions:n,limiter:i,fitInViewport:o,viewportOffsetConfig:r}){M(e)&&(e=e()),M(i)&&(i=i());const s=function(t){return t&&t.parentNode?t.offsetParent===nr.Z.document.body?null:t.offsetParent:null}(t),a=new Ud.Z(t),c=new Ud.Z(e);let l;const d=o&&function(t){t=Object.assign({top:0,bottom:0,left:0,right:0},t);const e=new Ud.Z(nr.Z.window);return e.top+=t.top,e.height-=t.top,e.bottom-=t.bottom,e.height-=t.bottom,e}(r)||null,u={targetRect:c,elementRect:a,positionedElementAncestor:s,viewportRect:d};if(i||o){const t=i&&new Ud.Z(i).getVisible();Object.assign(u,{limiterRect:t,viewportRect:d}),l=function(t,e){const{elementRect:n}=e,i=n.getArea(),o=t.map((t=>new Gd(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=n**2+e**2;o>r&&(r=o,s=t)}return s}(n,u)||new Gd(n[0],u)}else l=new Gd(n[0],u);return l}function Zd(t){const{scrollX:e,scrollY:n}=nr.Z.window;return t.clone().moveBy(e,n)}class Gd{constructor(t,e){const n=t(e.targetRect,e.elementRect,e.viewportRect);if(!n)return;const{left:i,top:o,name:r,config:s}=n;this.name=r,this.config=s,this._positioningFunctionCorrdinates={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;if(t){const e=this._options.viewportRect;if(!e)return t.getIntersectionArea(this._rect);{const n=t.getIntersection(e);if(n)return n.getIntersectionArea(this._rect)}}return 0}get viewportIntersectionArea(){const t=this._options.viewportRect;return t?t.getIntersectionArea(this._rect):0}get _rect(){return this._cachedRect||(this._cachedRect=this._options.elementRect.clone().moveTo(this._positioningFunctionCorrdinates.left,this._positioningFunctionCorrdinates.top)),this._cachedRect}get _absoluteRect(){return this._cachedAbsoluteRect||(this._cachedAbsoluteRect=Zd(this._rect),this._options.positionedElementAncestor&&function(t,e){const n=Zd(new Ud.Z(e)),i=(0,qd.Z)(e);let o=0,r=0;o-=n.left,r-=n.top,o+=e.scrollLeft,r+=e.scrollTop,o-=i.left,r-=i.top,t.moveBy(o,r)}(this._cachedAbsoluteRect,this._options.positionedElementAncestor)),this._cachedAbsoluteRect}}var Kd=__webpack_require__(3978),$d=__webpack_require__(2907),Yd=__webpack_require__(8245),Jd={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Yd.Z,Jd);Yd.Z.locals;const Qd=(0,$d.Z)("px"),Xd=nr.Z.document.body;class tu extends Hd{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",Qd),left:e.to("left",Qd)}},children:this.content})}show(){this.isVisible=!0}hide(){this.isVisible=!1}attachTo(t){this.show();const e=tu.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:Xd,fitInViewport:!0},t),i=tu._getOptimalPosition(n),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 e=eu(t.target),n=t.limiter?eu(t.limiter):Xd;this.listenTo(nr.Z.document,"scroll",((i,o)=>{const r=o.target,s=e&&r.contains(e),a=n&&r.contains(n);!s&&!a&&e&&n||this.attachTo(t)}),{useCapture:!0}),this.listenTo(nr.Z.window,"resize",(()=>{this.attachTo(t)}))}_stopPinning(){this.stopListening(nr.Z.document,"scroll"),this.stopListening(nr.Z.window,"resize")}}function eu(t){return kn(t)?t:(0,Kd.Z)(t)?t.commonAncestorContainer:"function"==typeof t?eu(t()):null}function nu(t={}){const{sideOffset:e=tu.arrowSideOffset,heightOffset:n=tu.arrowHeightOffset,stickyVerticalOffset:i=tu.stickyVerticalOffset,config:o}=t;return{northWestArrowSouthWest:(t,n)=>({top:r(t,n),left:t.left-e,name:"arrow_sw",...o&&{config:o}}),northWestArrowSouthMiddleWest:(t,n)=>({top:r(t,n),left:t.left-.25*n.width-e,name:"arrow_smw",...o&&{config:o}}),northWestArrowSouth:(t,e)=>({top:r(t,e),left:t.left-e.width/2,name:"arrow_s",...o&&{config:o}}),northWestArrowSouthMiddleEast:(t,n)=>({top:r(t,n),left:t.left-.75*n.width+e,name:"arrow_sme",...o&&{config:o}}),northWestArrowSouthEast:(t,n)=>({top:r(t,n),left:t.left-n.width+e,name:"arrow_se",...o&&{config:o}}),northArrowSouthWest:(t,n)=>({top:r(t,n),left:t.left+t.width/2-e,name:"arrow_sw",...o&&{config:o}}),northArrowSouthMiddleWest:(t,n)=>({top:r(t,n),left:t.left+t.width/2-.25*n.width-e,name:"arrow_smw",...o&&{config:o}}),northArrowSouth:(t,e)=>({top:r(t,e),left:t.left+t.width/2-e.width/2,name:"arrow_s",...o&&{config:o}}),northArrowSouthMiddleEast:(t,n)=>({top:r(t,n),left:t.left+t.width/2-.75*n.width+e,name:"arrow_sme",...o&&{config:o}}),northArrowSouthEast:(t,n)=>({top:r(t,n),left:t.left+t.width/2-n.width+e,name:"arrow_se",...o&&{config:o}}),northEastArrowSouthWest:(t,n)=>({top:r(t,n),left:t.right-e,name:"arrow_sw",...o&&{config:o}}),northEastArrowSouthMiddleWest:(t,n)=>({top:r(t,n),left:t.right-.25*n.width-e,name:"arrow_smw",...o&&{config:o}}),northEastArrowSouth:(t,e)=>({top:r(t,e),left:t.right-e.width/2,name:"arrow_s",...o&&{config:o}}),northEastArrowSouthMiddleEast:(t,n)=>({top:r(t,n),left:t.right-.75*n.width+e,name:"arrow_sme",...o&&{config:o}}),northEastArrowSouthEast:(t,n)=>({top:r(t,n),left:t.right-n.width+e,name:"arrow_se",...o&&{config:o}}),southWestArrowNorthWest:t=>({top:s(t),left:t.left-e,name:"arrow_nw",...o&&{config:o}}),southWestArrowNorthMiddleWest:(t,n)=>({top:s(t),left:t.left-.25*n.width-e,name:"arrow_nmw",...o&&{config:o}}),southWestArrowNorth:(t,e)=>({top:s(t),left:t.left-e.width/2,name:"arrow_n",...o&&{config:o}}),southWestArrowNorthMiddleEast:(t,n)=>({top:s(t),left:t.left-.75*n.width+e,name:"arrow_nme",...o&&{config:o}}),southWestArrowNorthEast:(t,n)=>({top:s(t),left:t.left-n.width+e,name:"arrow_ne",...o&&{config:o}}),southArrowNorthWest:t=>({top:s(t),left:t.left+t.width/2-e,name:"arrow_nw",...o&&{config:o}}),southArrowNorthMiddleWest:(t,n)=>({top:s(t),left:t.left+t.width/2-.25*n.width-e,name:"arrow_nmw",...o&&{config:o}}),southArrowNorth:(t,e)=>({top:s(t),left:t.left+t.width/2-e.width/2,name:"arrow_n",...o&&{config:o}}),southArrowNorthMiddleEast:(t,n)=>({top:s(t),left:t.left+t.width/2-.75*n.width+e,name:"arrow_nme",...o&&{config:o}}),southArrowNorthEast:(t,n)=>({top:s(t),left:t.left+t.width/2-n.width+e,name:"arrow_ne",...o&&{config:o}}),southEastArrowNorthWest:t=>({top:s(t),left:t.right-e,name:"arrow_nw",...o&&{config:o}}),southEastArrowNorthMiddleWest:(t,n)=>({top:s(t),left:t.right-.25*n.width-e,name:"arrow_nmw",...o&&{config:o}}),southEastArrowNorth:(t,e)=>({top:s(t),left:t.right-e.width/2,name:"arrow_n",...o&&{config:o}}),southEastArrowNorthMiddleEast:(t,n)=>({top:s(t),left:t.right-.75*n.width+e,name:"arrow_nme",...o&&{config:o}}),southEastArrowNorthEast:(t,n)=>({top:s(t),left:t.right-n.width+e,name:"arrow_ne",...o&&{config:o}}),westArrowEast:(t,e)=>({top:t.top+t.height/2-e.height/2,left:t.left-e.width-n,name:"arrow_e",...o&&{config:o}}),eastArrowWest:(t,e)=>({top:t.top+t.height/2-e.height/2,left:t.right+n,name:"arrow_w",...o&&{config:o}}),viewportStickyNorth:(t,e,n)=>t.getIntersection(n)?{top:n.top+i,left:t.left+t.width/2-e.width/2,name:"arrowless",config:{withArrow:!1,...o}}:null};function r(t,e){return t.top-e.height-n}function s(t){return t.bottom+n}}tu.arrowSideOffset=25,tu.arrowHeightOffset=10,tu.stickyVerticalOffset=20,tu._getOptimalPosition=Wd,tu.defaultPositions=nu();var iu=__webpack_require__(9948),ou={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(iu.Z,ou);iu.Z.locals;const ru="ck-tooltip";class su extends gr.Q{constructor(t){if(super(),su._editors.add(t),su._instance)return su._instance;su._instance=this,this.tooltipTextView=new Hd(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 tu(t.locale),this.balloonPanelView.class=ru,this.balloonPanelView.content.add(this.tooltipTextView),this._resizeObserver=null,this._currentElementWithTooltip=null,this._currentTooltipPosition=null,this._pinTooltipDebounced=Mr(this._pinTooltip,600),this.listenTo(cs.CO.document,"mouseenter",this._onEnterOrFocus.bind(this),{useCapture:!0}),this.listenTo(cs.CO.document,"mouseleave",this._onLeaveOrBlur.bind(this),{useCapture:!0}),this.listenTo(cs.CO.document,"focus",this._onEnterOrFocus.bind(this),{useCapture:!0}),this.listenTo(cs.CO.document,"blur",this._onLeaveOrBlur.bind(this),{useCapture:!0}),this.listenTo(cs.CO.document,"scroll",this._onScroll.bind(this),{useCapture:!0}),this._watchdogExcluded=!0}destroy(t){const e=t.ui.view&&t.ui.view.body;su._editors.delete(t),this.stopListening(t.ui),e&&e.has(this.balloonPanelView)&&e.remove(this.balloonPanelView),su._editors.size||(this._unpinTooltip(),this.balloonPanelView.destroy(),this.stopListening(),su._instance=null)}static getPositioningFunctions(t){const e=su.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]}_onEnterOrFocus(t,{target:e}){const n=au(e);var i;n&&(n!==this._currentElementWithTooltip&&(this._unpinTooltip(),this._pinTooltipDebounced(n,{text:(i=n).dataset.ckeTooltipText,position:i.dataset.ckeTooltipPosition||"s",cssClass:i.dataset.ckeTooltipClass||""})))}_onLeaveOrBlur(t,{target:e,relatedTarget:n}){if("mouseleave"===t.name){if(!kn(e))return;if(this._currentElementWithTooltip&&e!==this._currentElementWithTooltip)return;const t=au(e),i=au(n);t&&t!==i&&this._unpinTooltip()}else{if(this._currentElementWithTooltip&&e!==this._currentElementWithTooltip)return;this._unpinTooltip()}}_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}){const o=(0,cs.Ps)(su._editors.values()).ui.view.body;o.has(this.balloonPanelView)||o.add(this.balloonPanelView),this.tooltipTextView.text=e,this.balloonPanelView.pin({target:t,positions:su.getPositioningFunctions(n)}),this._resizeObserver=new cs.do(t,(()=>{(0,cs.pn)(t)||this._unpinTooltip()})),this.balloonPanelView.class=[ru,i].filter((t=>t)).join(" ");for(const t of su._editors)this.listenTo(t.ui,"update",this._updateTooltipPosition.bind(this),{priority:"low"});this._currentElementWithTooltip=t,this._currentTooltipPosition=n}_unpinTooltip(){this._pinTooltipDebounced.cancel(),this.balloonPanelView.unpin();for(const t of su._editors)this.stopListening(t.ui,"update");this._currentElementWithTooltip=null,this._currentTooltipPosition=null,this._resizeObserver&&this._resizeObserver.destroy()}_updateTooltipPosition(){(0,cs.pn)(this._currentElementWithTooltip)?this.balloonPanelView.pin({target:this._currentElementWithTooltip,positions:su.getPositioningFunctions(this._currentTooltipPosition)}):this._unpinTooltip()}}function au(t){return kn(t)?t.closest("[data-cke-tooltip-text]:not([data-cke-tooltip-disabled])"):null}su.defaultBalloonPositions=nu({heightOffset:5,sideOffset:13}),su._editors=new Set,su._instance=null;var cu=__webpack_require__(6905);class lu extends t.y{constructor(t){super(),this.editor=t,this.componentFactory=new pd(t),this.focusTracker=new bd.Z,this.tooltipManager=new su(t),this.set("viewportOffset",this._readViewportOffsetFromConfig()),this.isReady=!1,this.once("ready",(()=>{this.isReady=!0})),this._editableElementsMap=new Map,this._focusableToolbarDefinitions=[],this.listenTo(t.editing.view.document,"layoutChanged",(()=>this.update())),this._initFocusTracking()}get element(){return null}update(){this.fire("update")}destroy(){this.stopListening(),this.focusTracker.destroy(),this.tooltipManager.destroy(this.editor);for(const t of this._editableElementsMap.values())t.ckeditorInstance=null;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)}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;((0,cu.Z)(n.element)||i.beforeFocus)&&t.push(e)}return t.sort(((t,e)=>du(t)-du(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(),!!(0,cu.Z)(e.element)&&(e.focus(),!0)}}function du(t){const{toolbarView:e,options:n}=t;let i=10;return(0,cu.Z)(e.element)&&i--,n.isContextual&&i--,i}function uu(t){if(!M(t.updateSourceElement))throw new vn.ZP("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();M(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)}))}}function hu(t){return class extends t{setData(t){this.data.set(t)}getData(t){return this.data.get(t)}}}{const t=hu(Object);hu.setData=t.prototype.setData,hu.getData=t.prototype.getData}var mu=__webpack_require__(8236);function gu(t){return class extends t{updateSourceElement(t=this.data.get()){if(!this.sourceElement)throw new vn.ZP("editor-missing-sourceelement",this);const e=this.config.get("updateSourceElementOnDestroy"),n=this.sourceElement instanceof HTMLTextAreaElement;e||n?(0,mu.Z)(this.sourceElement,t):(0,mu.Z)(this.sourceElement,"")}}}function pu(t){const e=t.sourceElement;if(e){if(e.ckeditorInstance)throw new vn.ZP("editor-source-element-already-used",t);e.ckeditorInstance=t,t.once("destroy",(()=>{delete e.ckeditorInstance}))}}gu.updateSourceElement=gu(Object).prototype.updateSourceElement;class fu extends Dn{static get pluginName(){return"PendingActions"}init(){this.set("hasAny",!1),this._actions=new An.Z({idProperty:"_id"}),this._actions.delegate("add","remove").to(this)}add(e){if("string"!=typeof e)throw new vn.ZP("pendingactions-add-invalid-message",this);const n=new t.y;return n.set("message",e),this._actions.add(n),this.hasAny=!0,n}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 bu='',ku='',xu='',wu={bold:'',cancel:bu,caption:'',check:ku,cog:'',eraser:'',image:'',lowVision:'',importExport:'',paragraph:'',plus:'',text:'',alignBottom:'',alignMiddle:'',alignTop:'',alignLeft:'',alignCenter:'',alignRight:'',alignJustify:'',objectLeft:'',objectCenter:'',objectRight:'',objectFullWidth:'',objectInline:'',objectBlockLeft:'',objectBlockRight:'',objectSizeFull:'',objectSizeLarge:'',objectSizeSmall:'',objectSizeMedium:'',pencil:'',pilcrow:'',quote:'',threeVerticalDots:xu};var _u=__webpack_require__(6553);function Au({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():[];for(const t of i)if(t.contains(o.target)||r.includes(t))return;n()}))}function vu(t){const e=t;e.set("_isCssTransitionsDisabled",!1),e.disableCssTransitions=()=>{e._isCssTransitionsDisabled=!0},e.enableCssTransitions=()=>{e._isCssTransitionsDisabled=!1},e.extendTemplate({attributes:{class:[e.bindTemplate.if("_isCssTransitionsDisabled","ck-transitions-disabled")]}})}function Cu({view:t}){t.listenTo(t.element,"submit",((e,n)=>{n.preventDefault(),t.fire("submit")}),{useCapture:!0})}function yu({keystrokeHandler:t,focusTracker:e,gridItems:n,numberOfColumns:i}){const o="number"==typeof i?()=>i:i;function r(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()}}t.set("arrowright",r(((t,e)=>t===e.length-1?0:t+1))),t.set("arrowleft",r(((t,e)=>0===t?e.length-1:t-1))),t.set("arrowup",r(((t,e)=>{let n=t-o();return n<0&&(n=t+o()*Math.floor(e.length/o()),n>e.length-1&&(n-=o())),n}))),t.set("arrowdown",r(((t,e)=>{let n=t+o();return n>e.length-1&&(n=t%o()),n})))}var Eu=__webpack_require__(8979);class Tu extends kd{constructor(t,e=[]){super(e),this.locale=t}attachToDom(){this._bodyCollectionContainer=new xd({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=(0,Eu.Z)(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 Du=__webpack_require__(1174),Su={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Du.Z,Su);Du.Z.locals;class Iu extends Hd{constructor(){super();const t=this.bindTemplate;this.set("content",""),this.set("viewBox","0 0 20 20"),this.set("fillColor",""),this.set("isColorInherited",!0),this.setTemplate({tag:"svg",ns:"http://www.w3.org/2000/svg",attributes:{class:["ck","ck-icon","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))Iu.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}))}}Iu.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"];var Bu=__webpack_require__(4499),Mu={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Bu.Z,Mu);Bu.Z.locals;class Nu extends Hd{constructor(t){super(t);const e=this.bindTemplate,n=(0,Hs.Z)();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("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._createLabelView(n),this.iconView=new Iu,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 i={tag:"button",attributes:{class:["ck","ck-button",e.to("class"),e.if("isEnabled","ck-disabled",(t=>!t)),e.if("isVisible","ck-hidden",(t=>!t)),e.to("isOn",(t=>t?"ck-on":"ck-off")),e.if("withText","ck-button_with-text"),e.if("withKeystroke","ck-button_with-keystroke")],type:e.to("type",(t=>t||"button")),tabindex:e.to("tabindex"),"aria-labelledby":`ck-editor__aria-label_${n}`,"aria-disabled":e.if("isEnabled",!0,(t=>!t)),"aria-pressed":e.to("isOn",(t=>!!this.isToggleable&&String(!!t))),"data-cke-tooltip-text":e.to("_tooltipString"),"data-cke-tooltip-position":e.to("tooltipPosition")},children:this.children,on:{click:e.to((t=>{this.isEnabled?this.fire("execute"):t.preventDefault()}))}};Wo.ZP.isSafari&&(i.on.mousedown=e.to((t=>{this.focus(),t.preventDefault()}))),this.setTemplate(i)}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()}_createLabelView(t){const e=new Hd,n=this.bindTemplate;return e.setTemplate({tag:"span",attributes:{class:["ck","ck-button__label"],style:n.to("labelStyle"),id:`ck-editor__aria-label_${t}`},children:[{text:this.bindTemplate.to("label")}]}),e}_createKeystrokeView(){const t=new Hd;return t.setTemplate({tag:"span",attributes:{class:["ck","ck-button__keystroke"]},children:[{text:this.bindTemplate.to("keystroke",(t=>(0,ho.XU)(t)))}]}),t}_getTooltipString(t,e,n){return t?"string"==typeof t?t:(n&&(n=(0,ho.XU)(n)),t instanceof Function?t(e,n):`${e}${n?` (${n})`:""}`):""}}var Ou=__webpack_require__(9681),Pu={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Ou.Z,Pu);Ou.Z.locals;class Ru extends Nu{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 Hd;return t.setTemplate({tag:"span",attributes:{class:["ck","ck-button__toggle"]},children:[{tag:"span",attributes:{class:["ck","ck-button__toggle__inner"]}}]}),t}}function Lu(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 zu(t){return t.map(ju).filter((t=>!!t))}function ju(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 Fu extends Nu{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")},class:["ck","ck-color-grid__tile",e.if("hasBorder","ck-color-table__color-tile_bordered")]}})}render(){super.render(),this.iconView.fillColor="hsl(0, 0%, 100%)"}}var Vu=__webpack_require__(4923),Hu={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Vu.Z,Hu);Vu.Z.locals;class Uu extends Hd{constructor(t,e){super(t);const n=e&&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 bd.Z,this.keystrokes=new hd.Z,this.items.on("add",((t,e)=>{e.isOn=e.color===this.selectedColor})),n.forEach((t=>{const e=new Fu;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),yu({keystrokeHandler:this.keystrokes,focusTracker:this.focusTracker,gridItems:this.items,numberOfColumns:this.columns})}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}}const qu='';class Wu extends Nu{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 Iu;return t.content=qu,t.extendTemplate({attributes:{class:"ck-dropdown__arrow"}}),t}}var Zu=__webpack_require__(66),Gu={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Zu.Z,Gu);Zu.Z.locals;class Ku extends Hd{constructor(t){super(t);const e=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(),this.arrowView=this._createArrowView(),this.keystrokes=new hd.Z,this.focusTracker=new bd.Z,this.setTemplate({tag:"div",attributes:{class:["ck","ck-splitbutton",e.to("class"),e.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(){const t=new Nu;return t.bind("icon","isEnabled","isOn","isToggleable","keystroke","label","tabindex","tooltip","tooltipPosition","type","withText").to(this),t.extendTemplate({attributes:{class:"ck-splitbutton__action"}}),t.delegate("execute").to(this),t}_createArrowView(){const t=new Nu,e=t.bindTemplate;return t.icon=qu,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}}class $u extends Hd{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")]},children:this.children,on:{selectstart:e.to((t=>t.preventDefault()))}})}focus(){if(this.children.length){const t=this.children.first;"function"==typeof t.focus?t.focus():(0,vn.KE)("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 Yu=__webpack_require__(3488),Ju={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Yu.Z,Ju);Yu.Z.locals;class Qu extends Hd{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.keystrokes=new hd.Z,this.focusTracker=new cs.Rh,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.panelView.bind("isVisible").to(this,"isOpen"),this.on("change:isOpen",((t,e,n)=>{n&&("auto"===this.panelPosition?this.panelView.position=Qu._getOptimalPosition({element:this.panelView.element,target:this.buttonView.element,fitInViewport:!0,positions:this._panelPositions}).name: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}=Qu.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]}}Qu.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"})},Qu._getOptimalPosition=Wd;class Xu{constructor(t){if(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()}))}}get first(){return this.focusables.find(th)||null}get last(){return this.focusables.filter(th).slice(-1)[0]||null}get next(){return this._getFocusableItem(1)}get previous(){return this._getFocusableItem(-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)}focusLast(){this._focus(this.last)}focusNext(){this._focus(this.next)}focusPrevious(){this._focus(this.previous)}_focus(t){t&&t.focus()}_getFocusableItem(t){const e=this.current,n=this.focusables.length;if(!n)return null;if(null===e)return this[1===t?"first":"last"];let i=(e+n+t)%n;do{const e=this.focusables.get(i);if(th(e))return e;i=(i+n+t)%n}while(i!==e);return null}}function th(t){return!(!t.focus||!(0,cu.Z)(t.element))}class eh extends Hd{constructor(t){super(t),this.setTemplate({tag:"span",attributes:{class:["ck","ck-toolbar__separator"]}})}}class nh extends Hd{constructor(t){super(t),this.setTemplate({tag:"span",attributes:{class:["ck","ck-toolbar__line-break"]}})}}var ih=__webpack_require__(679);function oh(t){return Array.isArray(t)?{items:t,removeItems:[]}:t?Object.assign({items:[],removeItems:[]},t):{items:[],removeItems:[]}}var rh=__webpack_require__(5571),sh={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(rh.Z,sh);rh.Z.locals;const{threeVerticalDots:ah}=wu,ch={alignLeft:wu.alignLeft,bold:wu.bold,importExport:wu.importExport,paragraph:wu.paragraph,plus:wu.plus,text:wu.text,threeVerticalDots:wu.threeVerticalDots};class lh extends Hd{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 bd.Z,this.keystrokes=new hd.Z,this.set("class",void 0),this.set("isCompact",!1),this.itemsView=new dh(t),this.children=this.createCollection(),this.children.add(this.itemsView),this.focusables=this.createCollection();const o="rtl"===t.uiLanguageDirection;this._focusCycler=new Xu({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")}},children:this.children,on:{mousedown:(s=this,s.bindTemplate.to((t=>{t.target===s.element&&t.preventDefault()})))}}),this._behavior=this.options.shouldGroupWhenFull?new hh(this):new uh(this)}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),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){const i=oh(t),o=n||i.removeItems,r=this._cleanItemsConfiguration(i.items,e,o).map((t=>(0,B.Z)(t)?this._createNestedToolbarDropdown(t,e,o):"|"===t?new eh:"-"===t?new nh:e.create(t))).filter((t=>!!t));this.items.addMany(r)}_cleanItemsConfiguration(t,e,n){const i=t.filter(((t,i,o)=>"|"===t||-1===n.indexOf(t)&&("-"===t?!this.options.shouldGroupWhenFull||((0,vn.KE)("toolbarview-line-break-ignored-when-grouping-items",o),!1):!(!(0,B.Z)(t)&&!e.has(t))||((0,vn.KE)("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=Ah(this.locale);return i||(0,vn.KE)("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=ch[o]||o||ah:c.buttonView.withText=!0,vh(c,[]),c.toolbarView.fillFromConfig(r,e,n),c}}class dh extends Hd{constructor(t){super(t),this.children=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-toolbar__items"]},children:this.children})}}class uh{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=>t)),t.extendTemplate({attributes:{class:[e.if("isVertical","ck-toolbar_vertical")]}})}render(){}destroy(){}}class hh{constructor(t){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(),this.resizeObserver=null,this.cachedPadding=null,this.shouldUpdateGroupingOnNextResize=!1,t.itemsView.children.bindTo(this.ungroupedItems).using((t=>t)),this.ungroupedItems.on("add",this._updateFocusCycleableItems.bind(this)),this.ungroupedItems.on("remove",this._updateFocusCycleableItems.bind(this)),t.children.on("add",this._updateFocusCycleableItems.bind(this)),t.children.on("remove",this._updateFocusCycleableItems.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(!(0,cu.Z)(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,e=this.viewLocale.uiLanguageDirection,n=new Ud.Z(t.lastChild),i=new Ud.Z(t);if(!this.cachedPadding){const n=nr.Z.window.getComputedStyle(t),i="ltr"===e?"paddingRight":"paddingLeft";this.cachedPadding=Number.parseInt(n[i])}return"ltr"===e?n.right>i.right-this.cachedPadding:n.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 eh),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=Ah(t);return n.class="ck-toolbar__grouped-dropdown",n.panelPosition="ltr"===t.uiLanguageDirection?"sw":"se",vh(n,[]),n.buttonView.set({label:e("Show more items"),tooltip:!0,tooltipPosition:"rtl"===t.uiLanguageDirection?"se":"sw",icon:ah}),n.toolbarView.items.bindTo(this.groupedItems).using((t=>t)),n}_updateFocusCycleableItems(){this.viewFocusables.clear(),this.ungroupedItems.map((t=>{this.viewFocusables.add(t)})),this.groupedItems.length&&this.viewFocusables.add(this.groupedItemsDropdown)}}var mh=__webpack_require__(1162),gh={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(mh.Z,gh);mh.Z.locals;class ph extends Hd{constructor(t){super(t),this.items=this.createCollection(),this.focusTracker=new bd.Z,this.keystrokes=new hd.Z,this._focusCycler=new Xu({focusables:this.items,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"arrowup",focusNext:"arrowdown"}}),this.setTemplate({tag:"ul",attributes:{class:["ck","ck-reset","ck-list"]},children:this.items})}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)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}}class fh extends Hd{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))]},children:this.children})}focus(){this.children.first.focus()}}class bh extends Hd{constructor(t){super(t),this.setTemplate({tag:"li",attributes:{class:["ck","ck-list__separator"]}})}}var kh=__webpack_require__(5075),xh={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(kh.Z,xh);kh.Z.locals;var wh=__webpack_require__(6875),_h={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(wh.Z,_h);wh.Z.locals;function Ah(t,e=Wu){const n=new e(t),i=new $u(t),o=new Qu(t,n,i);return n.bind("isEnabled").to(o),n instanceof Ku?n.arrowView.bind("isOn").to(o,"isOpen"):n.bind("isOn").to(o,"isOpen"),function(t){(function(t){t.on("render",(()=>{Au({emitter:t,activator:()=>t.isOpen,callback:()=>{t.isOpen=!1},contextElements:[t.element]})}))})(t),function(t){t.on("execute",(e=>{e.source instanceof Ru||(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",((e,n,i)=>{i||t.panelView.element.contains(cs.CO.document.activeElement)&&t.buttonView.focus()}))}(t),function(t){t.on("change:isOpen",((e,n,i)=>{i&&t.panelView.focus()}),{priority:"low"})}(t)}(o),o}function vh(t,e,n={}){const i=t.locale,o=i.t,r=t.toolbarView=new lh(i);r.set("ariaLabel",o("Dropdown toolbar")),t.extendTemplate({attributes:{class:["ck-toolbar-dropdown"]}}),e.map((t=>r.items.add(t))),n.enableActiveItemFocusOnDropdownOpen&&yh(t,(()=>r.items.find((t=>t.isOn)))),t.panelView.children.add(r),r.items.delegate("execute").to(t)}function Ch(t,e){const n=t.locale,i=t.listView=new ph(n);i.items.bindTo(e).using((t=>{if("separator"===t.type)return new bh(n);if("button"===t.type||"switchbutton"===t.type){const e=new fh(n);let i;return i="button"===t.type?new Nu(n):new Ru(n),i.bind(...Object.keys(t.model)).to(t.model),i.delegate("execute").to(e),e.children.add(i),e}return null})),t.panelView.children.add(i),i.items.delegate("execute").to(t),yh(t,(()=>i.items.find((t=>t instanceof fh&&t.children.first.isOn))))}function yh(t,e){t.on("change:isOpen",(()=>{if(!t.isOpen)return;const n=e();n&&("function"==typeof n.focus?n.focus():(0,cs.KE)("ui-dropdown-focus-child-on-open-child-missing-focus",{view:n}))}),{priority:cs.tA.low-10})}var Eh=__webpack_require__(4547),Th={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Eh.Z,Th);Eh.Z.locals;class Dh extends Hd{constructor(t){super(t),this.body=new Tu(t)}render(){super.render(),this.body.attachToDom()}destroy(){return this.body.detachFromDom(),super.destroy()}}var Sh=__webpack_require__(2751),Ih={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Sh.Z,Ih);Sh.Z.locals;class Bh extends Hd{constructor(t){super(t),this.set("text",void 0),this.set("for",void 0),this.id=`ck-editor__label_${(0,Hs.Z)()}`;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")}]})}}class Mh extends Dh{constructor(t){super(t),this.top=this.createCollection(),this.main=this.createCollection(),this._voiceLabelView=this._createVoiceLabel(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-reset","ck-editor","ck-rounded-corners"],role:"application",dir:t.uiLanguageDirection,lang:t.uiLanguage,"aria-labelledby":this._voiceLabelView.id},children:[this._voiceLabelView,{tag:"div",attributes:{class:["ck","ck-editor__top","ck-reset_all"],role:"presentation"},children:this.top},{tag:"div",attributes:{class:["ck","ck-editor__main"],role:"presentation"},children:this.main}]})}_createVoiceLabel(){const t=this.t,e=new Bh;return e.text=t("Rich Text Editor"),e.extendTemplate({attributes:{class:"ck-voice-label"}}),e}}class Nh extends Hd{constructor(t,e,n){super(t),this.setTemplate({tag:"div",attributes:{class:["ck","ck-content","ck-editor__editable","ck-rounded-corners"],lang:t.contentLanguage,dir:t.contentLanguageDirection}}),this.name=null,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()}_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 Oh extends Nh{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)}))}}var Ph=__webpack_require__(5523),Rh={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Ph.Z,Rh);Ph.Z.locals;class Lh extends Hd{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});const i=new Hd(t);i.setTemplate({tag:"span",attributes:{class:["ck","ck-form__header__label"]},children:[{text:n.to("label")}]}),this.children.add(i)}}var zh=__webpack_require__(6985),jh={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(zh.Z,jh);zh.Z.locals;class Fh extends Hd{constructor(t){super(t),this.set("value",void 0),this.set("id",void 0),this.set("placeholder",void 0),this.set("isReadOnly",!1),this.set("hasError",!1),this.set("ariaDescribedById",void 0),this.focusTracker=new bd.Z,this.bind("isFocused").to(this.focusTracker),this.set("isEmpty",!0),this.set("inputMode","text");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"),readonly:e.to("isReadOnly"),inputmode:e.to("inputMode"),"aria-invalid":e.if("hasError",!0),"aria-describedby":e.to("ariaDescribedById")},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()}_updateIsEmpty(){this.isEmpty=!this.element.value}_setDomElementValue(t){this.element.value=t||0===t?t:""}}class Vh extends Fh{constructor(t){super(t),this.extendTemplate({attributes:{type:"text",class:["ck-input-text"]}})}}class Hh extends Fh{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 Uh=__webpack_require__(8111),qh={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Uh.Z,qh);Uh.Z.locals;class Wh extends Hd{constructor(t,e){super(t);const n=`ck-labeled-field-view-${(0,Hs.Z)()}`,i=`ck-labeled-field-view-status-${(0,Hs.Z)()}`;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 Bh(this.locale);return e.for=t,e.bind("text").to(this,"label"),e}_createStatusView(t){const e=new Hd(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(){this.fieldView.focus()}}function Zh(t,e,n){const i=new Vh(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}function Gh(t,e,n){const i=new Hh(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}function Kh(t,e,n){const i=Ah(t.locale);return i.set({id:e,ariaDescribedById:n}),i.bind("isEnabled").to(t),i}class $h extends Dn{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 Yh extends t.y{constructor(t,e){super(),e&&fr(this,e),t&&this.set(t)}}const Jh='';var Qh=__webpack_require__(1757),Xh={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Qh.Z,Xh);Qh.Z.locals;var tm=__webpack_require__(3553),em={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(tm.Z,em);tm.Z.locals;const nm=(0,$d.Z)("px");class im extends e{constructor(t){super(t),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.view=new tu(t.locale),t.ui.view.body.add(this.view),t.ui.focusTracker.add(this.view.element),this._viewToStack=new Map,this._idToStack=new Map,this.set("_numberOfStacks",0),this.set("_singleViewMode",!1),this._rotatorView=this._createRotatorView(),this._fakePanelsView=this._createFakePanelsView()}static get pluginName(){return"ContextualBalloon"}destroy(){super.destroy(),this.view.destroy(),this._rotatorView.destroy(),this._fakePanelsView.destroy()}hasView(t){return Array.from(this._viewToStack.keys()).includes(t)}add(t){if(this.hasView(t.view))throw new vn.ZP("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 vn.ZP("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 vn.ZP("contextualballoon-showstack-stack-not-exist",this);this._visibleStack!==e&&this._showView(Array.from(e.values()).pop())}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 om(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 rm(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 om extends Hd{constructor(t){super(t);const e=t.t,n=this.bindTemplate;this.set("isNavigationVisible",!0),this.focusTracker=new bd.Z,this.buttonPrevView=this._createButtonView(e("Previous"),Jh),this.buttonNextView=this._createButtonView(e("Next"),''),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 Nu(this.locale);return n.set({label:t,icon:e,tooltip:!0}),n}}class rm extends Hd{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",nm),left:n.to("left",nm),width:n.to("width",nm),height:n.to("height",nm)}},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 Hd;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 Ud.Z(this._balloonPanelView.element);Object.assign(this,{top:t,left:e,width:n,height:i})}}}var sm=__webpack_require__(3609),am={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(sm.Z,am);sm.Z.locals;const cm=(0,$d.Z)("px");class lm extends Hd{constructor(t){super(t);const e=this.bindTemplate;this.set("isActive",!1),this.set("isSticky",!1),this.set("limiterElement",null),this.set("limiterBottomOffset",50),this.set("viewportTopOffset",0),this.set("_marginLeft",null),this.set("_isStickyToTheLimiter",!1),this.set("_hasViewportTopOffset",!1),this.content=this.createCollection(),this._contentPanelPlaceholder=new xd({tag:"div",attributes:{class:["ck","ck-sticky-panel__placeholder"],style:{display:e.to("isSticky",(t=>t?"block":"none")),height:e.to("isSticky",(t=>t?cm(this._panelRect.height):null))}}}).render(),this._contentPanel=new xd({tag:"div",attributes:{class:["ck","ck-sticky-panel__content",e.if("isSticky","ck-sticky-panel__content_sticky"),e.if("_isStickyToTheLimiter","ck-sticky-panel__content_sticky_bottom-limit")],style:{width:e.to("isSticky",(t=>t?cm(this._contentPanelPlaceholder.getBoundingClientRect().width):null)),top:e.to("_hasViewportTopOffset",(t=>t?cm(this.viewportTopOffset):null)),bottom:e.to("_isStickyToTheLimiter",(t=>t?cm(this.limiterBottomOffset):null)),marginLeft:e.to("_marginLeft")}},children:this.content}).render(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-sticky-panel"]},children:[this._contentPanelPlaceholder,this._contentPanel]})}render(){super.render(),this._checkIfShouldBeSticky(),this.listenTo(nr.Z.window,"scroll",(()=>{this._checkIfShouldBeSticky()})),this.listenTo(this,"change:isActive",(()=>{this._checkIfShouldBeSticky()}))}_checkIfShouldBeSticky(){const t=this._panelRect=this._contentPanel.getBoundingClientRect();let e;this.limiterElement?(e=this._limiterRect=this.limiterElement.getBoundingClientRect(),this.isSticky=this.isActive&&e.top{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._resizeObserver=null,this._balloon=t.plugins.get(im),this._fireSelectionChangeDebounced=Mr((()=>this.fire("_selectionChangeDebounced")),200),this.decorate("show")}static get pluginName(){return"BalloonToolbar"}static get requires(){return[im]}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 ih.Z(e,(()=>{this.toolbarView.maxWidth=dm(.9*new Ud.Z(e).width)}))})),this.listenTo(this.toolbarView,"groupedItemsUpdate",(()=>{this._updatePosition()}))}afterInit(){const t=this.editor.ui.componentFactory;this.toolbarView.fillFromConfig(this._balloonConfig,t)}_createToolbarView(){const t=this.editor.locale.t,e=!this._balloonConfig.shouldNotGroupWhenFull,n=new lh(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=Ud.Z.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 e=cs.OB.isSafari&&cs.OB.isiOS?nu({heightOffset:Math.max(tu.arrowHeightOffset,Math.round(20/cs.CO.window.visualViewport.scale))}):tu.defaultPositions;return t?[e.northWestArrowSouth,e.northWestArrowSouthWest,e.northWestArrowSouthEast,e.northWestArrowSouthMiddleEast,e.northWestArrowSouthMiddleWest,e.southWestArrowNorth,e.southWestArrowNorthWest,e.southWestArrowNorthEast,e.southWestArrowNorthMiddleWest,e.southWestArrowNorthMiddleEast]:[e.southEastArrowNorth,e.southEastArrowNorthEast,e.southEastArrowNorthWest,e.southEastArrowNorthMiddleEast,e.southEastArrowNorthMiddleWest,e.northEastArrowSouth,e.northEastArrowSouthEast,e.northEastArrowSouthWest,e.northEastArrowSouthMiddleEast,e.northEastArrowSouthMiddleWest]}}var hm=__webpack_require__(6706),mm={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(hm.Z,mm);hm.Z.locals,(0,$d.Z)("px");(0,$d.Z)("px");class gm extends lu{constructor(t,e){super(t),this.view=e,this._toolbarConfig=oh(t.config.get("toolbar")),this._elementReplacer=new _u.ElementReplacer}get element(){return this.view.element}init(t){const e=this.editor,n=this.view,i=e.editing.view,o=n.editable,r=i.document.getRoot();o.name=r.rootName,n.render();const s=o.element;this.setEditableElement(o.name,s),n.editable.bind("isFocused").to(this.focusTracker),i.attachDomRoot(s),t&&this._elementReplacer.replace(t,this.element),this._initPlaceholder(),this._initToolbar(),this.fire("ready")}destroy(){super.destroy();const t=this.view,e=this.editor.editing.view;this._elementReplacer.restore(),e.detachDomRoot(t.editable.name),t.destroy()}_initToolbar(){const t=this.view;t.stickyPanel.bind("isActive").to(this.focusTracker,"isFocused"),t.stickyPanel.limiterElement=t.element,t.stickyPanel.bind("viewportTopOffset").to(this,"viewportOffset",(({top:t})=>t)),t.toolbar.fillFromConfig(this._toolbarConfig,this.componentFactory),this.addToolbar(t.toolbar)}_initPlaceholder(){const t=this.editor,e=t.editing.view,n=e.document.getRoot(),i=t.sourceElement,o=t.config.get("placeholder")||i&&"textarea"===i.tagName.toLowerCase()&&i.getAttribute("placeholder");o&&Xc({view:e,element:n,text:o,isDirectHost:!1,keepOnFocus:!0})}}var pm=__webpack_require__(3638),fm={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(pm.Z,fm);pm.Z.locals;class bm extends Mh{constructor(t,e,n={}){super(t),this.stickyPanel=new lm(t),this.toolbar=new lh(t,{shouldGroupWhenFull:n.shouldToolbarGroupWhenFull}),this.editable=new Oh(t,e)}render(){super.render(),this.stickyPanel.content.add(this.toolbar),this.top.add(this.stickyPanel),this.main.add(this.editable)}}class km extends gd{constructor(t,e={}){if(!kn(t)&&void 0!==e.initialData)throw new _u.CKEditorError("editor-create-initial-data",null);super(e),void 0===this.config.get("initialData")&&this.config.set("initialData",function(t){return kn(t)?(0,_u.getDataFromElement)(t):t}(t)),kn(t)&&(this.sourceElement=t),this.model.document.createRoot();const n=!this.config.get("toolbar.shouldNotGroupWhenFull"),i=new bm(this.locale,this.editing.view,{shouldToolbarGroupWhenFull:n});this.ui=new gm(this,i),uu(this)}destroy(){return this.sourceElement&&this.updateSourceElement(),this.ui.destroy(),super.destroy()}static create(t,e={}){return new Promise((n=>{const i=new this(t,e);n(i.initPlugins().then((()=>i.ui.init(kn(t)?t:null))).then((()=>i.data.init(i.config.get("initialData")))).then((()=>i.fire("ready"))).then((()=>i)))}))}}(0,_u.mix)(km,hu),(0,_u.mix)(km,gu);class xm extends lu{constructor(t,e){super(t),this.view=e,this._toolbarConfig=oh(t.config.get("toolbar"))}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._initToolbar(),this.fire("ready")}destroy(){super.destroy();const t=this.view;this.editor.editing.view.detachDomRoot(t.editable.name),t.destroy()}_initToolbar(){const t=this.editor,e=this.view,n=e.editable.element,i=e.toolbar;e.panel.bind("isVisible").to(this.focusTracker,"isFocused"),e.bind("viewportTopOffset").to(this,"viewportOffset",(({top:t})=>t)),e.listenTo(t.ui,"update",(()=>{e.panel.isVisible&&e.panel.pin({target:n,positions:e.panelPositions})})),i.fillFromConfig(this._toolbarConfig,this.componentFactory),this.addToolbar(i)}_initPlaceholder(){const t=this.editor,e=t.editing.view,n=e.document.getRoot(),i=t.sourceElement,o=t.config.get("placeholder")||i&&"textarea"===i.tagName.toLowerCase()&&i.getAttribute("placeholder");o&&Xc({view:e,element:n,text:o,isDirectHost:!1,keepOnFocus:!0})}}const wm=(0,_u.toUnit)("px");class _m extends Dh{constructor(t,e,n,i={}){super(t);const o=t.t;this.toolbar=new lh(t,{shouldGroupWhenFull:i.shouldToolbarGroupWhenFull,isFloating:!0}),this.set("viewportTopOffset",0),this.panel=new tu(t),this.panelPositions=this._getPanelPositions(),this.panel.extendTemplate({attributes:{class:"ck-toolbar-container"}}),this.editable=new Oh(t,e,n,{label:t=>o("Rich Text Editor. Editing area: %0",t.name)}),this._resizeObserver=null}render(){super.render(),this.body.add(this.panel),this.registerChild(this.editable),this.panel.content.add(this.toolbar);if(this.toolbar.options.shouldGroupWhenFull){const t=this.editable.element;this._resizeObserver=new _u.ResizeObserver(t,(()=>{this.toolbar.maxWidth=wm(new _u.Rect(t).width)}))}}destroy(){super.destroy(),this._resizeObserver&&this._resizeObserver.destroy()}_getPanelPositionTop(t,e){let n;return n=t.top>e.height+this.viewportTopOffset?t.top-e.height:t.bottom>e.height+this.viewportTopOffset+50?this.viewportTopOffset:t.bottom,n}_getPanelPositions(){const t=[(t,e)=>({top:this._getPanelPositionTop(t,e),left:t.left,name:"toolbar_west",config:{withArrow:!1}}),(t,e)=>({top:this._getPanelPositionTop(t,e),left:t.left+t.width-e.width,name:"toolbar_east",config:{withArrow:!1}})];return"ltr"===this.locale.uiLanguageDirection?t:t.reverse()}}class Am extends gd{constructor(t,e={}){if(!kn(t)&&void 0!==e.initialData)throw new _u.CKEditorError("editor-create-initial-data",null);super(e),void 0===this.config.get("initialData")&&this.config.set("initialData",function(t){return kn(t)?(0,_u.getDataFromElement)(t):t}(t)),this.model.document.createRoot(),kn(t)&&(this.sourceElement=t,pu(this));const n=!this.config.get("toolbar.shouldNotGroupWhenFull"),i=new _m(this.locale,this.editing.view,this.sourceElement,{shouldToolbarGroupWhenFull:n});this.ui=new xm(this,i),uu(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(kn(t)&&"TEXTAREA"===t.tagName)throw new _u.CKEditorError("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)))}))}}(0,_u.mix)(Am,hu),(0,_u.mix)(Am,gu);class vm extends lu{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.sourceElement,o=t.config.get("placeholder")||i&&"textarea"===i.tagName.toLowerCase()&&i.getAttribute("placeholder");o&&Xc({view:e,element:n,text:o,isDirectHost:!1,keepOnFocus:!0})}}class Cm extends Dh{constructor(t,e,n){super(t);const i=t.t;this.editable=new Oh(t,e,n,{label:t=>i("Rich Text Editor. Editing area: %0",t.name)})}render(){super.render(),this.registerChild(this.editable)}}class ym extends gd{constructor(t,e={}){if(!kn(t)&&void 0!==e.initialData)throw new _u.CKEditorError("editor-create-initial-data",null);super(e),void 0===this.config.get("initialData")&&this.config.set("initialData",function(t){return kn(t)?(0,_u.getDataFromElement)(t):t}(t)),kn(t)&&(this.sourceElement=t,pu(this));const n=this.config.get("plugins");n.push(um),this.config.set("plugins",n),this.config.define("balloonToolbar",this.config.get("toolbar")),this.model.document.createRoot();const i=new Cm(this.locale,this.editing.view,this.sourceElement);this.ui=new vm(this,i),uu(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(kn(t)&&"TEXTAREA"===t.tagName)throw new _u.CKEditorError("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)))}))}}(0,_u.mix)(ym,hu),(0,_u.mix)(ym,gu);class Em extends lu{constructor(t,e){super(t),this.view=e}init(){const t=this.editor,e=this.view,n=t.editing.view,i=e.editable,o=n.document.getRoot();e.editable.name=o.rootName,e.render();const r=i.element;this.setEditableElement(i.name,r),e.editable.bind("isFocused").to(this.focusTracker),n.attachDomRoot(r),this._initPlaceholder(),this._initToolbar(),this.fire("ready")}destroy(){super.destroy();const t=this.view;this.editor.editing.view.detachDomRoot(t.editable.name),t.destroy()}_initToolbar(){const t=this.editor,e=this.view;e.toolbar.fillFromConfig(t.config.get("toolbar"),this.componentFactory),this.addToolbar(e.toolbar)}_initPlaceholder(){const t=this.editor,e=t.editing.view,n=e.document.getRoot(),i=t.sourceElement,o=t.config.get("placeholder")||i&&"textarea"===i.tagName.toLowerCase()&&i.getAttribute("placeholder");o&&Xc({view:e,element:n,text:o,isDirectHost:!1,keepOnFocus:!0})}}class Tm extends Dh{constructor(t,e,n={}){super(t);const i=t.t;this.toolbar=new lh(t,{shouldGroupWhenFull:n.shouldToolbarGroupWhenFull}),this.editable=new Oh(t,e,n.editableElement,{label:t=>i("Rich Text Editor. Editing area: %0",t.name)}),this.toolbar.extendTemplate({attributes:{class:["ck-reset_all","ck-rounded-corners"],dir:t.uiLanguageDirection}})}render(){super.render(),this.registerChild([this.toolbar,this.editable])}}class Dm extends gd{constructor(t,e={}){if(!kn(t)&&void 0!==e.initialData)throw new _u.CKEditorError("editor-create-initial-data",null);super(e),void 0===this.config.get("initialData")&&this.config.set("initialData",function(t){return kn(t)?(0,_u.getDataFromElement)(t):t}(t)),kn(t)&&(this.sourceElement=t,pu(this)),this.model.document.createRoot();const n=!this.config.get("toolbar.shouldNotGroupWhenFull"),i=new Tm(this.locale,this.editing.view,{editableElement:this.sourceElement,shouldToolbarGroupWhenFull:n});this.ui=new Em(this,i)}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(kn(t)&&"TEXTAREA"===t.tagName)throw new _u.CKEditorError("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)))}))}}(0,_u.mix)(Dm,gu),(0,_u.mix)(Dm,hu);class Sm extends t.y{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 Im extends e{static get pluginName(){return"FileRepository"}static get requires(){return[fu]}init(){this.loaders=new An.Z,this.loaders.on("change",(()=>this._updatePendingAction())),this._loadersMap=new Map,this._pendingAction=null,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(0,vn.KE)("filerepository-no-upload-adapter"),null;const e=new Bm(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 Bm?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(fu);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 Bm extends t.y{constructor(t,e){super(),this.id=(0,Hs.Z)(),this._filePromiseWrapper=this._createFilePromiseWrapper(t),this._adapter=e(this),this._reader=new Sm,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 vn.ZP("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 vn.ZP("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}}class Mm extends Hd{constructor(t){super(t),this.buttonView=new Nu(t),this._fileInputView=new Nm(t),this._fileInputView.bind("acceptedType").to(this),this._fileInputView.bind("allowMultipleFiles").to(this),this._fileInputView.delegate("done").to(this),this.setTemplate({tag:"span",attributes:{class:"ck-file-dialog-button"},children:[this.buttonView,this._fileInputView]}),this.buttonView.on("execute",(()=>{this._fileInputView.open()}))}focus(){this.buttonView.focus()}}class Nm extends Hd{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()}}class Om extends e{static get requires(){return[Im]}static get pluginName(){return"Base64UploadAdapter"}init(){this.editor.plugins.get(Im).createUploadAdapter=t=>new Pm(t)}}class Pm{constructor(t){this.loader=t}upload(){return new Promise(((t,e)=>{const n=this.reader=new window.FileReader;n.addEventListener("load",(()=>{t({default:n.result})})),n.addEventListener("error",(t=>{e(t)})),n.addEventListener("abort",(()=>{e()})),this.loader.file.then((t=>{n.readAsDataURL(t)}))}))}abort(){this.reader.abort()}}const Rm="ckCsrfToken",Lm="abcdefghijklmnopqrstuvwxyz0123456789";function zm(){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}(Rm);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=Rm,n=t,document.cookie=encodeURIComponent(e)+"="+encodeURIComponent(n)+";path=/"),t}class jm extends e{static get requires(){return[Im]}static get pluginName(){return"CKFinderUploadAdapter"}init(){const t=this.editor.config.get("ckfinder.uploadUrl");t&&(this.editor.plugins.get(Im).createUploadAdapter=e=>new Fm(e,t,this.editor.t))}}class Fm{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",zm()),this.xhr.send(e)}}const Vm=["left","right","center","justify"];function Hm(t){return Vm.includes(t)}function Um(t,e){return"rtl"==e.contentLanguageDirection?"right"===t:"left"===t}function qm(t){const e=t.map((t=>{let e;return e="string"==typeof t?{name:t}:t,e})).filter((t=>{const e=!!Vm.includes(t.name);return e||(0,_u.logWarning)("alignment-config-name-not-recognized",{option:t}),e})),n=e.filter((t=>!!t.className)).length;if(n&&n{const o=i.slice(n+1);if(o.some((t=>t.name==e.name)))throw new _u.CKEditorError("alignment-config-name-already-defined",{option:e,configuredOptions:t});if(e.className){if(o.some((t=>t.className==e.className)))throw new _u.CKEditorError("alignment-config-classname-already-defined",{option:e,configuredOptions:t})}})),e}const Wm="alignment";class Zm extends i{refresh(){const t=this.editor.locale,e=(0,_u.first)(this.editor.model.document.selection.getSelectedBlocks());this.isEnabled=!!e&&this._canBeAligned(e),this.isEnabled&&e.hasAttribute("alignment")?this.value=e.getAttribute("alignment"):this.value="rtl"===t.contentLanguageDirection?"right":"left"}execute(t={}){const e=this.editor,n=e.locale,i=e.model,o=i.document,r=t.value;i.change((t=>{const e=Array.from(o.selection.getSelectedBlocks()).filter((t=>this._canBeAligned(t))),i=e[0].getAttribute("alignment");Um(r,n)||i===r||!r?function(t,e){for(const n of t)e.removeAttribute(Wm,n)}(e,t):function(t,e,n){for(const i of t)e.setAttribute(Wm,n,i)}(e,t,r)}))}_canBeAligned(t){return this.editor.model.schema.checkAttribute(t,Wm)}}class Gm extends e{static get pluginName(){return"AlignmentEditing"}constructor(t){super(t),t.config.define("alignment",{options:[...Vm.map((t=>({name:t})))]})}init(){const t=this.editor,e=t.locale,n=t.model.schema,i=qm(t.config.get("alignment.options")).filter((t=>Hm(t.name)&&!Um(t.name,e))),o=i.some((t=>!!t.className));n.extend("$block",{allowAttributes:"alignment"}),t.model.schema.setAttributeProperties("alignment",{isFormatting:!0}),o?t.conversion.attributeToAttribute(function(t){const e={model:{key:"alignment",values:t.map((t=>t.name))},view:{}};for(const n of t)e.view[n.name]={key:"class",value:n.className};return e}(i)):t.conversion.for("downcast").attributeToAttribute(function(t){const e={model:{key:"alignment",values:t.map((t=>t.name))},view:{}};for(const{name:n}of t)e.view[n]={key:"style",value:{"text-align":n}};return e}(i));const r=function(t){const e=[];for(const{name:n}of t)e.push({view:{key:"style",value:{"text-align":n}},model:{key:"alignment",value:n}});return e}(i);for(const e of r)t.conversion.for("upcast").attributeToAttribute(e);const s=function(t){const e=[];for(const{name:n}of t)e.push({view:{key:"align",value:n},model:{key:"alignment",value:n}});return e}(i);for(const e of s)t.conversion.for("upcast").attributeToAttribute(e);t.commands.add("alignment",new Zm(t))}}const Km=new Map([["left",wu.alignLeft],["right",wu.alignRight],["center",wu.alignCenter],["justify",wu.alignJustify]]);class $m extends e{get localizedOptionTitles(){const t=this.editor.t;return{left:t("Align left"),right:t("Align right"),center:t("Align center"),justify:t("Justify")}}static get pluginName(){return"AlignmentUI"}init(){const t=this.editor,e=t.ui.componentFactory,n=t.t,i=qm(t.config.get("alignment.options"));i.map((t=>t.name)).filter(Hm).forEach((t=>this._addButton(t))),e.add("alignment",(o=>{const r=Ah(o),s=i.map((t=>e.create(`alignment:${t.name}`)));vh(r,s,{enableActiveItemFocusOnDropdownOpen:!0}),r.buttonView.set({label:n("Text alignment"),tooltip:!0}),r.toolbarView.isVertical=!0,r.toolbarView.ariaLabel=n("Text alignment toolbar"),r.extendTemplate({attributes:{class:"ck-alignment-dropdown"}});const a="rtl"===o.contentLanguageDirection?Km.get("right"):Km.get("left");return r.buttonView.bind("icon").toMany(s,"isOn",((...t)=>{const e=t.findIndex((t=>t));return e<0?a:s[e].icon})),r.bind("isEnabled").toMany(s,"isEnabled",((...t)=>t.some((t=>t)))),this.listenTo(r,"execute",(()=>{t.editing.view.focus()})),r}))}_addButton(t){const e=this.editor;e.ui.componentFactory.add(`alignment:${t}`,(n=>{const i=e.commands.get("alignment"),o=new Nu(n);return o.set({label:this.localizedOptionTitles[t],icon:Km.get(t),tooltip:!0,isToggleable:!0}),o.bind("isEnabled").to(i),o.bind("isOn").to(i,"value",(e=>e===t)),this.listenTo(o,"execute",(()=>{e.execute("alignment",{value:t}),e.editing.view.focus()})),o}))}}class Ym extends e{static get requires(){return[Gm,$m]}static get pluginName(){return"Alignment"}}class Jm{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 Qm extends i{constructor(t,e){super(t),this._buffer=new Jm(t.model,e)}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;t.selection?r=t.selection:t.range&&(r=e.createSelection(t.range));const s=t.resultRange;e.enqueueChange(this._buffer.batch,(t=>{this._buffer.lock(),e.deleteContent(r),i&&e.insertContent(t.createText(i,n.selection.getAttributes()),r),s?t.setSelection(s):r.is("documentSelection")||t.setSelection(r),this._buffer.unlock(),this._buffer.input(o)}))}}const Xm=["insertText","insertReplacementText"];class tg extends pr{constructor(t){super(t),Wo.ZP.isAndroid&&Xm.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(!Xm.includes(s))return;const c=new Ji.Z(e,"insertText");e.fire(c,new br(t,a,{text:o,selection:t.createSelection(r)})),c.stop.called&&n.stop()})),e.on("compositionend",((n,{data:i,domEvent:o})=>{this.isEnabled&&!Wo.ZP.isAndroid&&i&&e.fire("insertText",new br(t,o,{text:i,selection:e.selection}))}),{priority:"lowest"})}observe(){}}class eg extends e{static get pluginName(){return"Input"}init(){const t=this.editor,e=t.model,n=t.editing.view,i=e.document.selection;n.addObserver(tg);const o=new Qm(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:s,resultRange:a}=o,c=Array.from(s.getRanges()).map((e=>t.editing.mapper.toModelRange(e)));let l=r;if(Wo.ZP.isAndroid){const t=Array.from(c[0].getItems()).reduce(((t,e)=>t+(e.is("$textProxy")?e.data:"")),"");t&&(t.length<=l.length?l.startsWith(t)&&(l=l.substring(t.length),c[0].start=c[0].start.getShiftedBy(t.length)):t.startsWith(l)&&(c[0].start=c[0].start.getShiftedBy(l.length),l=""))}const d={text:l,selection:e.createSelection(c)};a&&(d.resultRange=t.editing.mapper.toModelRange(a)),t.execute("insertText",d)})),Wo.ZP.isAndroid?this.listenTo(n.document,"keydown",((t,r)=>{!i.isCollapsed&&229==r.keyCode&&n.document.isComposing&&ng(e,o)})):this.listenTo(n.document,"compositionstart",(()=>{i.isCollapsed||ng(e,o)}))}}function ng(t,e){if(!e.isEnabled)return;const n=e.buffer;n.lock(),t.enqueueChange(n.batch,(()=>{t.deleteContent(t.document.selection)})),n.unlock()}class ig extends i{constructor(t,e){super(t),this.direction=e,this._buffer=new Jm(t.model,t.config.get("typing.undoStep"))}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),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+=Ki(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 og="word",rg="selection",sg="backward",ag="forward",cg={deleteContent:{unit:rg,direction:sg},deleteContentBackward:{unit:"codePoint",direction:sg},deleteWordBackward:{unit:og,direction:sg},deleteHardLineBackward:{unit:rg,direction:sg},deleteSoftLineBackward:{unit:rg,direction:sg},deleteContentForward:{unit:"character",direction:ag},deleteWordForward:{unit:og,direction:ag},deleteHardLineForward:{unit:rg,direction:ag},deleteSoftLineForward:{unit:rg,direction:ag}};class lg extends pr{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:s,inputType:a}=o,c=cg[a];if(!c)return;const l={direction:c.direction,unit:c.unit,sequence:n};l.unit==rg&&(l.selectionToRemove=t.createSelection(r[0])),cs.OB.isAndroid&&"deleteContentBackward"===a&&(l.sequence=1,1!=r.length||r[0].start.parent==r[0].end.parent&&r[0].start.offset+1==r[0].end.offset||(l.unit=rg,l.selectionToRemove=t.createSelection(r)));const d=new Qi(e,"delete",r[0]);e.fire(d,new br(t,s,l)),d.stop.called&&i.stop()})),cs.OB.isBlink&&function(t){const e=t.view,n=e.document;let i=null,o=!1;function r(t){return t==cs.Do.backspace||t==cs.Do.delete}function s(t){return t==cs.Do.backspace?sg:ag}n.on("keydown",((t,{keyCode:e})=>{i=e,o=!1})),n.on("keyup",((a,{keyCode:c,domEvent:l})=>{const d=n.selection,u=t.isEnabled&&c==i&&r(c)&&!d.isCollapsed&&!o;if(i=null,u){const t=d.getFirstRange(),i=new Qi(n,"delete",t),o={unit:rg,direction:s(c),selectionToRemove:d};n.fire(i,new br(e,l,o))}})),n.on("beforeinput",((t,{inputType:e})=>{const n=cg[e];r(i)&&n&&n.direction==s(i)&&(o=!0)})),n.on("beforeinput",((t,{inputType:e,data:n})=>{i==cs.Do.delete&&"insertText"==e&&""==n&&t.stop()}),{priority:"high"})}(this)}observe(){}}class dg extends e{static get pluginName(){return"Delete"}init(){const t=this.editor,e=t.editing.view,n=e.document,i=t.model.document;e.addObserver(lg),this._undoOnBackspace=!1;const o=new ig(t,"forward");t.commands.add("deleteForward",o),t.commands.add("forwardDelete",o),t.commands.add("delete",new ig(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 ug extends e{static get requires(){return[eg,dg]}static get pluginName(){return"Typing"}}function hg(t,e){let n=t.start;return{text:Array.from(t.getItems()).reduce(((t,i)=>i.is("$text")||i.is("$textProxy")?t+i.data:(n=e.createPositionAfter(i),"")),""),range:e.createRange(n,t.end)}}class mg extends t.y{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}=hg(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 gg extends e{constructor(t){super(t),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==ho.Do.arrowright,r=e.keyCode==ho.Do.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._isNextGravityRestorationSkipped=!1,this.listenTo(o,"change:range",((t,e)=>{this._isNextGravityRestorationSkipped?this._isNextGravityRestorationSkipped=!1:this._isGravityOverridden&&(!e.directChange&&kg(o.getFirstPosition(),this.attributes)||this._restoreGravity())}))}registerAttribute(t){this.attributes.add(t)}_handleForwardMovement(t){const e=this.attributes,n=this.editor.model.document.selection,i=n.getFirstPosition();return!this._isGravityOverridden&&((!i.isAtStart||!pg(n,e))&&(!!kg(i,e)&&(bg(t),this._overrideGravity(),!0)))}_handleBackwardMovement(t){const e=this.attributes,n=this.editor.model,i=n.document.selection,o=i.getFirstPosition();return this._isGravityOverridden?(bg(t),this._restoreGravity(),fg(n,e,o),!0):o.isAtStart?!!pg(i,e)&&(bg(t),fg(n,e,o),!0):!!function(t,e){return kg(t.getShiftedBy(-1),e)}(o,e)&&(o.isAtEnd&&!pg(i,e)&&kg(o,e)?(bg(t),fg(n,e,o),!0):(this._isNextGravityRestorationSkipped=!0,this._overrideGravity(),!1))}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 pg(t,e){for(const n of e)if(t.hasAttribute(n))return!0;return!1}function fg(t,e,n){const i=n.nodeBefore;t.change((t=>{i?t.setSelectionAttribute(i.getAttributes()):t.removeSelectionAttribute(e)}))}function bg(t){t.preventDefault()}function kg(t,e){const{nodeBefore:n,nodeAfter:i}=t;for(const t of e){const e=n?n.getAttribute(t):void 0;if((i?i.getAttribute(t):void 0)!==e)return!0}return!1}var xg=/[\\^$.*+?()[\]{}|]/g,wg=RegExp(xg.source);const _g=function(t){return(t=ei(t))&&wg.test(t)?t.replace(xg,"\\$&"):t},Ag={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:Sg('"'),to:[null,"“",null,"”"]},quotesSecondary:{from:Sg("'"),to:[null,"‘",null,"’"]},quotesPrimaryEnGb:{from:Sg("'"),to:[null,"‘",null,"’"]},quotesSecondaryEnGb:{from:Sg('"'),to:[null,"“",null,"”"]},quotesPrimaryPl:{from:Sg('"'),to:[null,"„",null,"”"]},quotesSecondaryPl:{from:Sg("'"),to:[null,"‚",null,"’"]}},vg={symbols:["copyright","registeredTrademark","trademark"],mathematical:["oneHalf","oneThird","twoThirds","oneForth","threeQuarters","lessThanOrEqual","greaterThanOrEqual","notEqual","arrowLeft","arrowRight"],typography:["horizontalEllipsis","enDash","emDash"],quotes:["quotesPrimary","quotesSecondary"]},Cg=["symbols","mathematical","typography","quotes"];class yg extends e{static get requires(){return["Delete","Input"]}static get pluginName(){return"TextTransformation"}constructor(t){super(t),t.config.define("typing",{transformations:{include:Cg}})}init(){const t=this.editor.model.document.selection;t.on("change:range",(()=>{this.isEnabled=!t.anchor.parent.is("element","codeBlock")})),this._enableTransformationWatchers()}_enableTransformationWatchers(){const t=this.editor,e=t.model,n=t.plugins.get("Delete"),i=function(t){const e=t.extra||[],n=t.remove||[],i=t=>!n.includes(t);return function(t){const e=new Set;for(const n of t)if("string"==typeof n&&vg[n])for(const t of vg[n])e.add(t);else e.add(n);return Array.from(e)}(t.include.concat(e).filter(i)).filter(i).map((t=>"string"==typeof t&&Ag[t]?Ag[t]:t)).filter((t=>"object"==typeof t)).map((t=>({from:Eg(t.from),to:Tg(t.to)})))}(t.config.get("typing.transformations")),o=new mg(t.model,(t=>{for(const e of i){if(e.from.test(t))return{normalizedTransformation:e}}}));o.on("matched:data",((t,i)=>{if(!i.batch.isTyping)return;const{from:o,to:r}=i.normalizedTransformation,s=o.exec(i.text),a=r(s.slice(1)),c=i.range;let l=s.index;e.enqueueChange((t=>{for(let n=1;n{n.requestUndoOnBackspace()}))}))})),o.bind("isEnabled").to(this)}}function Eg(t){return"string"==typeof t?new RegExp(`(${_g(t)})$`):t}function Tg(t){return"string"==typeof t?()=>[t]:t instanceof Array?()=>t:t}function Dg(t){return(t.textNode?t.textNode:t.nodeAfter).getAttributes()}function Sg(t){return new RegExp(`(^|\\s)(${t})([^${t}]*)(${t})$`)}function Ig(t,e,n,i){return i.createRange(Bg(t,e,n,!0,i),Bg(t,e,n,!1,i))}function Bg(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 Mg(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=Ig(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 Ng(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=(0,_u.first)(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 u=d.position.parent;if(u.is("element","codeBlock"))return;if(u.is("element","listItem")&&"function"!=typeof i&&!["numberedList","bulletedList","todoList"].includes(i))return;if(r&&!0===r.value)return;const h=u.getChild(0),m=t.model.createRangeOn(h);if(!m.containsRange(c)&&!c.end.isEqual(m.end))return;const g=n.exec(h.data.substr(0,c.end.offset));g&&t.model.enqueueChange((e=>{const n=e.createPositionAt(u,0),i=e.createPositionAt(u,g[0].length),r=new js(n,i);if(!1!==o({match:g})){e.remove(r);const n=t.model.document.selection.getFirstRange(),i=e.createRangeIn(u);!u.isEmpty||i.isEqual(n)||i.containsRange(n,!0)||e.remove(u)}r.detach(),t.model.enqueueChange((()=>{t.plugins.get("Delete").requestUndoOnBackspace()}))}))}))}function Og(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,u=d.parent,{text:h,range:m}=function(t,e){let n=t.start;return{text:Array.from(t.getItems()).reduce(((t,i)=>!i.is("$text")&&!i.is("$textProxy")||i.getAttribute("code")?(n=e.createPositionAfter(i),""):t+i.data),""),range:e.createRange(n,t.end)}}(s.createRange(s.createPositionAt(u,0),d),s),g=r(h),p=Pg(m.start,g.format,s),f=Pg(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 Pg(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]))))}class Rg extends e{static get requires(){return[dg]}static get pluginName(){return"Autoformat"}afterInit(){this._addListAutoformats(),this._addBasicStylesAutoformats(),this._addHeadingAutoformats(),this._addBlockQuoteAutoformats(),this._addCodeBlockAutoformats(),this._addHorizontalLineAutoformats()}_addListAutoformats(){const t=this.editor.commands;t.get("bulletedList")&&Ng(this.editor,this,/^[*-]\s$/,"bulletedList"),t.get("numberedList")&&Ng(this.editor,this,/^1[.|)]\s$/,"numberedList"),t.get("todoList")&&Ng(this.editor,this,/^\[\s?\]\s$/,"todoList"),t.get("checkTodoList")&&Ng(this.editor,this,/^\[\s?x\s?\]\s$/,(()=>{this.editor.execute("todoList"),this.editor.execute("checkTodoList")}))}_addBasicStylesAutoformats(){const t=this.editor.commands;if(t.get("bold")){const t=Lg(this.editor,"bold");Og(this.editor,this,/(?:^|\s)(\*\*)([^*]+)(\*\*)$/g,t),Og(this.editor,this,/(?:^|\s)(__)([^_]+)(__)$/g,t)}if(t.get("italic")){const t=Lg(this.editor,"italic");Og(this.editor,this,/(?:^|\s)(\*)([^*_]+)(\*)$/g,t),Og(this.editor,this,/(?:^|\s)(_)([^_]+)(_)$/g,t)}if(t.get("code")){const t=Lg(this.editor,"code");Og(this.editor,this,/(`)([^`]+)(`)$/g,t)}if(t.get("strikethrough")){const t=Lg(this.editor,"strikethrough");Og(this.editor,this,/(~~)([^~]+)(~~)$/g,t)}}_addHeadingAutoformats(){const t=this.editor.commands.get("heading");t&&t.modelElements.filter((t=>t.match(/^heading[1-6]$/))).forEach((e=>{const n=e[7],i=new RegExp(`^(#{${n}})\\s$`);Ng(this.editor,this,i,(()=>{if(!t.isEnabled||t.value===e)return!1;this.editor.execute("heading",{value:e})}))}))}_addBlockQuoteAutoformats(){this.editor.commands.get("blockQuote")&&Ng(this.editor,this,/^>\s$/,"blockQuote")}_addCodeBlockAutoformats(){const t=this.editor,e=t.model.document.selection;t.commands.get("codeBlock")&&Ng(t,this,/^```$/,(()=>{if(e.getFirstPosition().parent.is("element","listItem"))return!1;this.editor.execute("codeBlock",{usePreviousLanguageChoice:!0})}))}_addHorizontalLineAutoformats(){this.editor.commands.get("horizontalLine")&&Ng(this.editor,this,/^---$/,"horizontalLine")}}function Lg(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 zg extends i{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 jg="bold";class Fg extends e{static get pluginName(){return"BoldEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:jg}),t.model.schema.setAttributeProperties(jg,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:jg,view:"strong",upcastAlso:["b",t=>{const e=t.getStyle("font-weight");return e?"bold"==e||Number(e)>=600?{name:!0,styles:["font-weight"]}:void 0:null}]}),t.commands.add(jg,new zg(t,jg)),t.keystrokes.set("CTRL+B",jg)}}const Vg="bold";class Hg extends e{static get pluginName(){return"BoldUI"}init(){const t=this.editor,e=t.t;t.ui.componentFactory.add(Vg,(n=>{const i=t.commands.get(Vg),o=new Nu(n);return o.set({label:e("Bold"),icon:wu.bold,keystroke:"CTRL+B",tooltip:!0,isToggleable:!0}),o.bind("isOn","isEnabled").to(i,"value","isEnabled"),this.listenTo(o,"execute",(()=>{t.execute(Vg),t.editing.view.focus()})),o}))}}class Ug extends e{static get requires(){return[Fg,Hg]}static get pluginName(){return"Bold"}}const qg="code";class Wg extends e{static get pluginName(){return"CodeEditing"}static get requires(){return[gg]}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:qg}),t.model.schema.setAttributeProperties(qg,{isFormatting:!0,copyOnEnter:!1}),t.conversion.attributeToElement({model:qg,view:"code",upcastAlso:{styles:{"word-wrap":"break-word"}}}),t.commands.add(qg,new zg(t,qg)),t.plugins.get(gg).registerAttribute(qg),Mg(t,qg,"code","ck-code_selected")}}var Zg=__webpack_require__(8180),Gg={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Zg.Z,Gg);Zg.Z.locals;const Kg="code";class $g extends e{static get pluginName(){return"CodeUI"}init(){const t=this.editor,e=t.t;t.ui.componentFactory.add(Kg,(n=>{const i=t.commands.get(Kg),o=new Nu(n);return o.set({label:e("Code"),icon:'',tooltip:!0,isToggleable:!0}),o.bind("isOn","isEnabled").to(i,"value","isEnabled"),this.listenTo(o,"execute",(()=>{t.execute(Kg),t.editing.view.focus()})),o}))}}class Yg extends e{static get requires(){return[Wg,$g]}static get pluginName(){return"Code"}}const Jg="italic";class Qg extends e{static get pluginName(){return"ItalicEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:Jg}),t.model.schema.setAttributeProperties(Jg,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:Jg,view:"i",upcastAlso:["em",{styles:{"font-style":"italic"}}]}),t.commands.add(Jg,new zg(t,Jg)),t.keystrokes.set("CTRL+I",Jg)}}const Xg="italic";class tp extends e{static get pluginName(){return"ItalicUI"}init(){const t=this.editor,e=t.t;t.ui.componentFactory.add(Xg,(n=>{const i=t.commands.get(Xg),o=new Nu(n);return o.set({label:e("Italic"),icon:'',keystroke:"CTRL+I",tooltip:!0,isToggleable:!0}),o.bind("isOn","isEnabled").to(i,"value","isEnabled"),this.listenTo(o,"execute",(()=>{t.execute(Xg),t.editing.view.focus()})),o}))}}class ep extends e{static get requires(){return[Qg,tp]}static get pluginName(){return"Italic"}}const np="strikethrough";class ip extends e{static get pluginName(){return"StrikethroughEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:np}),t.model.schema.setAttributeProperties(np,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:np,view:"s",upcastAlso:["del","strike",{styles:{"text-decoration":"line-through"}}]}),t.commands.add(np,new zg(t,np)),t.keystrokes.set("CTRL+SHIFT+X","strikethrough")}}const op="strikethrough";class rp extends e{static get pluginName(){return"StrikethroughUI"}init(){const t=this.editor,e=t.t;t.ui.componentFactory.add(op,(n=>{const i=t.commands.get(op),o=new Nu(n);return o.set({label:e("Strikethrough"),icon:'',keystroke:"CTRL+SHIFT+X",tooltip:!0,isToggleable:!0}),o.bind("isOn","isEnabled").to(i,"value","isEnabled"),this.listenTo(o,"execute",(()=>{t.execute(op),t.editing.view.focus()})),o}))}}class sp extends e{static get requires(){return[ip,rp]}static get pluginName(){return"Strikethrough"}}const ap="subscript";class cp extends e{static get pluginName(){return"SubscriptEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:ap}),t.model.schema.setAttributeProperties(ap,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:ap,view:"sub",upcastAlso:[{styles:{"vertical-align":"sub"}}]}),t.commands.add(ap,new zg(t,ap))}}const lp="subscript";class dp extends e{static get pluginName(){return"SubscriptUI"}init(){const t=this.editor,e=t.t;t.ui.componentFactory.add(lp,(n=>{const i=t.commands.get(lp),o=new Nu(n);return o.set({label:e("Subscript"),icon:'',tooltip:!0,isToggleable:!0}),o.bind("isOn","isEnabled").to(i,"value","isEnabled"),this.listenTo(o,"execute",(()=>{t.execute(lp),t.editing.view.focus()})),o}))}}class up extends e{static get requires(){return[cp,dp]}static get pluginName(){return"Subscript"}}const hp="superscript";class mp extends e{static get pluginName(){return"SuperscriptEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:hp}),t.model.schema.setAttributeProperties(hp,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:hp,view:"sup",upcastAlso:[{styles:{"vertical-align":"super"}}]}),t.commands.add(hp,new zg(t,hp))}}const gp="superscript";class pp extends e{static get pluginName(){return"SuperscriptUI"}init(){const t=this.editor,e=t.t;t.ui.componentFactory.add(gp,(n=>{const i=t.commands.get(gp),o=new Nu(n);return o.set({label:e("Superscript"),icon:'',tooltip:!0,isToggleable:!0}),o.bind("isOn","isEnabled").to(i,"value","isEnabled"),this.listenTo(o,"execute",(()=>{t.execute(gp),t.editing.view.focus()})),o}))}}class fp extends e{static get requires(){return[mp,pp]}static get pluginName(){return"Superscript"}}const bp="underline";class kp extends e{static get pluginName(){return"UnderlineEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:bp}),t.model.schema.setAttributeProperties(bp,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:bp,view:"u",upcastAlso:{styles:{"text-decoration":"underline"}}}),t.commands.add(bp,new zg(t,bp)),t.keystrokes.set("CTRL+U","underline")}}const xp="underline";class wp extends e{static get pluginName(){return"UnderlineUI"}init(){const t=this.editor,e=t.t;t.ui.componentFactory.add(xp,(n=>{const i=t.commands.get(xp),o=new Nu(n);return o.set({label:e("Underline"),icon:'',keystroke:"CTRL+U",tooltip:!0,isToggleable:!0}),o.bind("isOn","isEnabled").to(i,"value","isEnabled"),this.listenTo(o,"execute",(()=>{t.execute(xp),t.editing.view.focus()})),o}))}}class _p extends e{static get requires(){return[kp,wp]}static get pluginName(){return"Underline"}}function*Ap(t,e){for(const n of e)n&&t.getAttributeProperties(n[0]).copyOnEnter&&(yield n)}class vp extends i{execute(){const t=this.editor.model,e=t.document;t.change((n=>{!function(t,e,n,i){const o=n.isCollapsed,r=n.getFirstRange(),s=r.start.parent,a=r.end.parent;if(i.isLimit(s)||i.isLimit(a))return void(o||s!=a||t.deleteContent(n));if(o){const t=Ap(e.model.schema,n.getAttributes());Cp(e,r.start),e.setSelectionAttribute(t)}else{const i=!(r.start.isAtStart&&r.end.isAtEnd),o=s==a;t.deleteContent(n,{leaveUnmerged:i}),i&&(o?Cp(e,n.focus):e.setSelection(a,0))}}(this.editor.model,n,e.selection,t.schema),this.fire("afterExecute",{writer:n})}))}}function Cp(t,e){t.split(e),t.setSelection(e.parent.nextSibling,0)}const yp={insertParagraph:{isSoft:!1},insertLineBreak:{isSoft:!0}};class Ep extends pr{constructor(t){super(t);const e=this.document;e.on("beforeinput",((n,i)=>{if(!this.isEnabled)return;const o=i.domEvent,r=yp[i.inputType];if(!r)return;const s=new Qi(e,"enter",i.targetRanges[0]);e.fire(s,new br(t,o,{isSoft:r.isSoft})),s.stop.called&&n.stop()}))}observe(){}}class Tp extends e{static get pluginName(){return"Enter"}init(){const t=this.editor,e=t.editing.view,n=e.document;e.addObserver(Ep),t.commands.add("enter",new vp(t)),this.listenTo(n,"enter",((i,o)=>{n.isComposing||o.preventDefault(),o.isSoft||(t.execute("enter"),e.scrollToTheSelection())}),{priority:"low"})}}class Dp extends i{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=Ap(t.schema,n.getAttributes());Sp(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?Sp(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((Ip(o,t)||Ip(r,t))&&o!==r)return!1;return!0}(t.schema,e.selection)}}function Sp(t,e,n){const i=e.createElement("softBreak");t.insertContent(i,n),e.setSelection(i,"after")}function Ip(t,e){return!t.is("rootElement")&&(e.isLimit(t)||Ip(t.parent,e))}class Bp extends e{static get pluginName(){return"ShiftEnter"}init(){const t=this.editor,e=t.model.schema,n=t.conversion,i=t.editing.view,o=i.document;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(Ep),t.commands.add("shiftEnter",new Dp(t)),this.listenTo(o,"enter",((e,n)=>{o.isComposing||n.preventDefault(),n.isSoft&&(t.execute("shiftEnter"),i.scrollToTheSelection())}),{priority:"low"})}}class Mp extends i{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=>Np(t)||Pp(n,t)));this._applyQuote(t,e)}else this._removeQuote(t,o.filter(Np))}))}_getValue(){const t=this.editor.model.document.selection,e=(0,_u.first)(t.getSelectedBlocks());return!(!e||!Np(e))}_checkEnabled(){if(this.value)return!0;const t=this.editor.model.document.selection,e=this.editor.model.schema,n=(0,_u.first)(t.getSelectedBlocks());return!!n&&Pp(e,n)}_removeQuote(t,e){Op(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=[];Op(t,e).reverse().forEach((e=>{let i=Np(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 Np(t){return"blockQuote"==t.parent.name?t.parent:null}function Op(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 Lp=__webpack_require__(636),zp={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Lp.Z,zp);Lp.Z.locals;class jp extends e{static get pluginName(){return"BlockQuoteUI"}init(){const t=this.editor,e=t.t;t.ui.componentFactory.add("blockQuote",(n=>{const i=t.commands.get("blockQuote"),o=new Nu(n);return o.set({label:e("Block quote"),icon:wu.quote,tooltip:!0,isToggleable:!0}),o.bind("isOn","isEnabled").to(i,"value","isEnabled"),this.listenTo(o,"execute",(()=>{t.execute("blockQuote"),t.editing.view.focus()})),o}))}}class Fp extends e{static get requires(){return[Rp,jp]}static get pluginName(){return"BlockQuote"}}class Vp extends e{static get pluginName(){return"CKBoxUI"}afterInit(){const t=this.editor;if(!t.commands.get("ckbox"))return;const e=t.t;t.ui.componentFactory.add("ckbox",(n=>{const i=t.commands.get("ckbox"),o=new Nu(n);return o.set({label:e("Open file manager"),icon:'',tooltip:!0}),o.bind("isOn","isEnabled").to(i,"value","isEnabled"),o.on("execute",(()=>{t.execute("ckbox")})),o}))}}function Hp({token:t,id:e,origin:n,width:i,extension:o}){const r=Up(t),s=function(t){const e=[10*t/100,80],n=Math.floor(Math.max(...e)),i=[Math.min(t,4e3)];let o=i[0];for(;o-n>=n;)o-=n,i.unshift(o);return i}(i),a=function(t){if("bmp"===t||"tiff"===t||"jpg"===t)return"jpeg";return t}(o);return{imageFallbackUrl:qp({environmentId:r,id:e,origin:n,width:i,extension:a}),imageSources:[{srcset:s.map((t=>`${qp({environmentId:r,id:e,origin:n,width:t,extension:"webp"})} ${t}w`)).join(","),sizes:`(max-width: ${i}px) 100vw, ${i}px`,type:"image/webp"}]}}function Up(t){const[,e]=t.value.split(".");return JSON.parse(atob(e)).aud}function qp({environmentId:t,id:e,origin:n,width:i,extension:o}){return new URL(`${t}/assets/${e}/images/${i}.${o}`,n).toString()}class Wp extends i{constructor(t){super(t),this._chosenAssets=new Set,this._wrapper=null,this._initListeners()}refresh(){this.value=this._getValue(),this.isEnabled=this._checkEnabled()}execute(){this.fire("ckbox:open")}_getValue(){return null!==this._wrapper}_checkEnabled(){const t=this.editor.commands.get("insertImage"),e=this.editor.commands.get("link");return!(!t.isEnabled&&!e.isEnabled)}_prepareOptions(){const t=this.editor.config.get("ckbox");return{theme:t.theme,language:t.language,tokenUrl:t.tokenUrl,serviceOrigin:t.serviceOrigin,assetsOrigin:t.assetsOrigin,dialog:{onClose:()=>this.fire("ckbox:close")},assets:{onChoose:t=>this.fire("ckbox:choose",t)}}}_initListeners(){const t=this.editor,e=t.model,n=!t.config.get("ckbox.ignoreDataId");this.on("ckbox",(()=>{this.refresh()}),{priority:"low"}),this.on("ckbox:open",(()=>{this.isEnabled&&!this.value&&(this._wrapper=(0,_u.createElement)(document,"div",{class:"ck ckbox-wrapper"}),document.body.appendChild(this._wrapper),window.CKBox.mount(this._wrapper,this._prepareOptions()))})),this.on("ckbox:close",(()=>{this.value&&(this._wrapper.remove(),this._wrapper=null)})),this.on("ckbox:choose",((i,o)=>{if(!this.isEnabled)return;const r=t.commands.get("insertImage"),s=t.commands.get("link"),a=t.plugins.get("CKBoxEditing"),c=function({assets:t,origin:e,token:n,isImageAllowed:i,isLinkAllowed:o}){return t.map((t=>({id:t.data.id,type:Gp(t)?"image":"link",attributes:Zp(t,n,e)}))).filter((t=>"image"===t.type?i:o))}({assets:o,origin:t.config.get("ckbox.assetsOrigin"),token:a.getToken(),isImageAllowed:r.isEnabled,isLinkAllowed:s.isEnabled});0!==c.length&&e.change((t=>{for(const e of c){const i=e===c[c.length-1];this._insertAsset(e,i,t),n&&(setTimeout((()=>this._chosenAssets.delete(e)),1e3),this._chosenAssets.add(e))}}))})),this.listenTo(t,"destroy",(()=>{this.fire("ckbox:close"),this._chosenAssets.clear()}))}_insertAsset(t,e,n){const i=this.editor.model.document.selection;n.removeSelectionAttribute("linkHref"),"image"===t.type?this._insertImage(t):this._insertLink(t,n),e||n.setSelection(i.getLastPosition())}_insertImage(t){const e=this.editor,{imageFallbackUrl:n,imageSources:i,imageTextAlternative:o}=t.attributes;e.execute("insertImage",{source:{src:n,sources:i,alt:o}})}_insertLink(t,e){const n=this.editor,i=n.model,o=i.document.selection,{linkName:r,linkHref:s}=t.attributes;if(o.isCollapsed){const t=(0,_u.toMap)(o.getAttributes()),n=e.createText(r,t),s=i.insertContent(n);e.setSelection(s)}n.execute("link",s)}}function Zp(t,e,n){if(Gp(t)){const{imageFallbackUrl:i,imageSources:o}=Hp({token:e,origin:n,id:t.data.id,width:t.data.metadata.width,extension:t.data.extension});return{imageFallbackUrl:i,imageSources:o,imageTextAlternative:t.data.metadata.description||""}}return{linkName:t.data.name,linkHref:Kp(t,e,n)}}function Gp(t){const e=t.data.metadata;return!!e&&(e.width&&e.height)}function Kp(t,e,n){const i=Up(e),o=new URL(`${i}/assets/${t.data.id}/file`,n);return o.searchParams.set("download","true"),o.toString()}class $p extends e{static get requires(){return["ImageUploadEditing","ImageUploadProgress",Im,Qp]}static get pluginName(){return"CKBoxUploadAdapter"}async afterInit(){const t=this.editor,e=!!t.config.get("ckbox"),n=!!window.CKBox;if(!e&&!n)return;const i=t.plugins.get(Im),o=t.plugins.get(Qp);i.createUploadAdapter=e=>new Yp(e,o.getToken(),t);const r=!t.config.get("ckbox.ignoreDataId"),s=t.plugins.get("ImageUploadEditing");r&&s.on("uploadComplete",((e,{imageElement:n,data:i})=>{t.model.change((t=>{t.setAttribute("ckboxImageId",i.ckboxImageId,n)}))}))}}class Yp{constructor(t,e,n){this.loader=t,this.token=e,this.editor=n,this.controller=new AbortController,this.serviceOrigin=n.config.get("ckbox.serviceOrigin"),this.assetsOrigin=n.config.get("ckbox.assetsOrigin")}async getAvailableCategories(t=0){const e=new URL("categories",this.serviceOrigin);return e.searchParams.set("limit",50..toString()),e.searchParams.set("offset",t.toString()),this._sendHttpRequest({url:e}).then((async e=>{if(e.totalCount-(t+50)>0){const n=await this.getAvailableCategories(t+50);return[...e.items,...n]}return e.items})).catch((()=>{this.controller.signal.throwIfAborted(),(0,_u.logError)("ckbox-fetch-category-http-error")}))}async getCategoryIdForFile(t){const e=Jp(t.name),n=await this.getAvailableCategories();if(!n)return null;const i=this.editor.config.get("ckbox.defaultUploadCategories");if(i){const t=Object.keys(i).find((t=>i[t].includes(e)));if(t){const e=n.find((e=>e.id===t||e.name===t));return e?e.id:null}}const o=n.find((t=>t.extensions.includes(e)));return o?o.id:null}async upload(){const t=this.editor.t,e=t("Cannot determine a category for the uploaded file."),n=await this.loader.file,i=await this.getCategoryIdForFile(n);if(!i)return Promise.reject(e);const o=new URL("assets",this.serviceOrigin),r=new FormData;r.append("categoryId",i),r.append("file",n);const s={method:"POST",url:o,data:r,onUploadProgress:t=>{t.lengthComputable&&(this.loader.uploadTotal=t.total,this.loader.uploaded=t.loaded)}};return this._sendHttpRequest(s).then((async t=>{const e=await this._getImageWidth(),i=Jp(n.name),o=Hp({token:this.token,id:t.id,origin:this.assetsOrigin,width:e,extension:i});return{ckboxImageId:t.id,default:o.imageFallbackUrl,sources:o.imageSources}})).catch((()=>{const e=t("Cannot upload file:")+` ${n.name}.`;return Promise.reject(e)}))}abort(){this.controller.abort()}_sendHttpRequest(t){const{url:e,data:n,onUploadProgress:i}=t,o=t.method||"GET",r=this.controller.signal,s=new XMLHttpRequest;s.open(o,e.toString(),!0),s.setRequestHeader("Authorization",this.token.value),s.setRequestHeader("CKBox-Version","CKEditor 5"),s.responseType="json";const a=()=>{s.abort()};return new Promise(((t,e)=>{r.addEventListener("abort",a),s.addEventListener("loadstart",(()=>{r.addEventListener("abort",a)})),s.addEventListener("loadend",(()=>{r.removeEventListener("abort",a)})),s.addEventListener("error",(()=>{e()})),s.addEventListener("abort",(()=>{e()})),s.addEventListener("load",(async()=>{const n=s.response;return!n||n.statusCode>=400?e(n&&n.message):t(n)})),i&&s.upload.addEventListener("progress",(t=>{i(t)})),s.send(n)}))}_getImageWidth(){return new Promise((t=>{const e=new Image;e.onload=()=>{URL.revokeObjectURL(e.src),t(e.width)},e.src=this.loader.data}))}}function Jp(t){return t.match(/\.(?[^.]+)$/).groups.ext}class Qp extends e{static get pluginName(){return"CKBoxEditing"}static get requires(){return["CloudServices","LinkEditing","PictureEditing",$p]}async init(){const t=this.editor,e=!!t.config.get("ckbox"),n=!!window.CKBox;if(!e&&!n)return;this._initConfig();const i=t.plugins.get("CloudServicesCore"),o=t.config.get("ckbox.tokenUrl"),r=t.config.get("cloudServices.tokenUrl");this._token=o===r?t.plugins.get("CloudServices").token:await i.createToken(o).init(),t.config.get("ckbox.ignoreDataId")||(this._initSchema(),this._initConversion(),this._initFixers()),n&&t.commands.add("ckbox",new Wp(t))}getToken(){return this._token}_initConfig(){const t=this.editor;t.config.define("ckbox",{serviceOrigin:"https://api.ckbox.io",assetsOrigin:"https://ckbox.cloud",defaultUploadCategories:null,ignoreDataId:!1,language:t.locale.uiLanguage,theme:"default",tokenUrl:t.config.get("cloudServices.tokenUrl")});if(!t.config.get("ckbox.tokenUrl"))throw new _u.CKEditorError("ckbox-plugin-missing-token-url",this);t.plugins.has("ImageBlockEditing")||t.plugins.has("ImageInlineEditing")||(0,_u.logError)("ckbox-plugin-image-feature-missing",t)}_initSchema(){const t=this.editor.model.schema;t.extend("$text",{allowAttributes:"ckboxLinkId"}),t.isRegistered("imageBlock")&&t.extend("imageBlock",{allowAttributes:["ckboxImageId","ckboxLinkId"]}),t.isRegistered("imageInline")&&t.extend("imageInline",{allowAttributes:["ckboxImageId","ckboxLinkId"]}),t.addAttributeCheck(((t,e)=>{if(!!!t.last.getAttribute("linkHref")&&"ckboxLinkId"===e)return!1}))}_initConversion(){const t=this.editor;t.conversion.for("downcast").add((t=>{t.on("attribute:ckboxLinkId:imageBlock",((t,e,n)=>{const{writer:i,mapper:o,consumable:r}=n;if(!r.consume(e.item,t.name))return;const s=[...o.toViewElement(e.item).getChildren()].find((t=>"a"===t.name));s&&(e.item.hasAttribute("ckboxLinkId")?i.setAttribute("data-ckbox-resource-id",e.item.getAttribute("ckboxLinkId"),s):i.removeAttribute("data-ckbox-resource-id",s))}),{priority:"low"}),t.on("attribute:ckboxLinkId",((t,e,n)=>{const{writer:i,mapper:o,consumable:r}=n;if(r.consume(e.item,t.name)){if(e.attributeOldValue){const t=tf(i,e.attributeOldValue);i.unwrap(o.toViewRange(e.range),t)}if(e.attributeNewValue){const t=tf(i,e.attributeNewValue);if(e.item.is("selection")){const e=i.document.selection;i.wrap(e.getFirstRange(),t)}else i.wrap(o.toViewRange(e.range),t)}}}),{priority:"low"})})),t.conversion.for("upcast").add((t=>{t.on("element:a",((t,e,n)=>{const{writer:i,consumable:o}=n;if(!e.viewItem.getAttribute("href"))return;if(!o.consume(e.viewItem,{attributes:["data-ckbox-resource-id"]}))return;const r=e.viewItem.getAttribute("data-ckbox-resource-id");if(r)if(e.modelRange)for(let t of e.modelRange.getItems())t.is("$textProxy")&&(t=t.textNode),ef(t)&&i.setAttribute("ckboxLinkId",r,t);else{const t=e.modelCursor.nodeBefore||e.modelCursor.parent;i.setAttribute("ckboxLinkId",r,t)}}),{priority:"low"})})),t.conversion.for("downcast").attributeToAttribute({model:"ckboxImageId",view:"data-ckbox-resource-id"}),t.conversion.for("upcast").elementToAttribute({model:{key:"ckboxImageId",value:t=>t.getAttribute("data-ckbox-resource-id")},view:{attributes:{"data-ckbox-resource-id":/[\s\S]+/}}})}_initFixers(){const t=this.editor,e=t.model,n=e.document.selection;e.document.registerPostFixer(function(t){return e=>{let n=!1;const i=t.model,o=t.commands.get("ckbox");if(!o)return n;for(const t of i.document.differ.getChanges()){if("insert"!==t.type&&"attribute"!==t.type)continue;const i="insert"===t.type?new Ts(t.position,t.position.getShiftedBy(t.length)):t.range,r="attribute"===t.type&&"linkHref"===t.attributeKey&&null===t.attributeNewValue;for(const t of i.getItems()){if(r&&t.hasAttribute("ckboxLinkId")){e.removeAttribute("ckboxLinkId",t),n=!0;continue}const i=Xp(t,o._chosenAssets);for(const o of i){const i="image"===o.type?"ckboxImageId":"ckboxLinkId";o.id!==t.getAttribute(i)&&(e.setAttribute(i,o.id,t),n=!0)}}}return n}}(t)),e.document.registerPostFixer(function(t){return e=>{!t.hasAttribute("linkHref")&&t.hasAttribute("ckboxLinkId")&&e.removeSelectionAttribute("ckboxLinkId")}}(n))}}function Xp(t,e){const n=t.is("element","imageInline")||t.is("element","imageBlock"),i=t.hasAttribute("linkHref");return[...e].filter((e=>"image"===e.type&&n?e.attributes.imageFallbackUrl===t.getAttribute("src"):"link"===e.type&&i?e.attributes.linkHref===t.getAttribute("linkHref"):void 0))}function tf(t,e){const n=t.createAttributeElement("a",{"data-ckbox-resource-id":e},{priority:5});return t.setCustomProperty("link",!0,n),n}function ef(t){return!!t.is("$text")||!(!t.is("element","imageInline")&&!t.is("element","imageBlock"))}class nf extends e{static get pluginName(){return"CKBox"}static get requires(){return[Qp,Vp]}}class of extends e{static get pluginName(){return"CKFinderUI"}init(){const t=this.editor,e=t.ui.componentFactory,n=t.t;e.add("ckfinder",(e=>{const i=t.commands.get("ckfinder"),o=new Nu(e);return o.set({label:n("Insert image or file"),icon:'',tooltip:!0}),o.bind("isEnabled").to(i),o.on("execute",(()=>{t.execute("ckfinder"),t.editing.view.focus()})),o}))}}class rf extends i{constructor(t){super(t),this.stopListening(this.editor.model.document,"change"),this.listenTo(this.editor.model.document,"change",(()=>this.refresh()),{priority:"low"})}refresh(){const t=this.editor.commands.get("insertImage"),e=this.editor.commands.get("link");this.isEnabled=t.isEnabled||e.isEnabled}execute(){const t=this.editor,e=this.editor.config.get("ckfinder.openerMethod")||"modal";if("popup"!=e&&"modal"!=e)throw new _u.CKEditorError("ckfinder-unknown-openermethod",t);const n=this.editor.config.get("ckfinder.options")||{};n.chooseFiles=!0;const i=n.onInit;n.language||(n.language=t.locale.uiLanguage),n.onInit=e=>{i&&i(e),e.on("files:choose",(n=>{const i=n.data.files.toArray(),o=i.filter((t=>!t.isImage())),r=i.filter((t=>t.isImage()));for(const e of o)t.execute("link",e.getUrl());const s=[];for(const t of r){const n=t.getUrl();s.push(n||e.request("file:getProxyUrl",{file:t}))}s.length&&sf(t,s)})),e.on("file:choose:resizedImage",(e=>{const n=e.data.resizedUrl;if(n)sf(t,[n]);else{const e=t.plugins.get("Notification"),n=t.locale.t;e.showWarning(n("Could not obtain resized image URL."),{title:n("Selecting resized image failed"),namespace:"ckfinder"})}}))},window.CKFinder[e](n)}}function sf(t,e){if(t.commands.get("insertImage").isEnabled)t.execute("insertImage",{source:e});else{const e=t.plugins.get("Notification"),n=t.locale.t;e.showWarning(n("Could not insert image at the current position."),{title:n("Inserting image failed"),namespace:"ckfinder"})}}class af extends e{static get pluginName(){return"CKFinderEditing"}static get requires(){return[$h,"LinkEditing"]}init(){const t=this.editor;if(!t.plugins.has("ImageBlockEditing")&&!t.plugins.has("ImageInlineEditing"))throw new _u.CKEditorError("ckfinder-missing-image-plugin",t);t.commands.add("ckfinder",new rf(t))}}class cf extends e{static get pluginName(){return"CKFinder"}static get requires(){return["Link","CKFinderUploadAdapter",af,of]}}const lf={autoRefresh:!0},df=36e5;class uf{constructor(t,e=lf){if(!t)throw new _u.CKEditorError("token-missing-token-url",this);e.initValue&&this._validateTokenValue(e.initValue),this.set("value",e.initValue),this._refresh="function"==typeof t?t:()=>{return e=t,new Promise(((t,n)=>{const i=new XMLHttpRequest;i.open("GET",e),i.addEventListener("load",(()=>{const e=i.status,o=i.response;return e<200||e>299?n(new _u.CKEditorError("token-cannot-download-new-token",null)):t(o)})),i.addEventListener("error",(()=>n(new Error("Network Error")))),i.addEventListener("abort",(()=>n(new Error("Abort")))),i.send()}));var e},this._options=Object.assign({},lf,e)}init(){return new Promise(((t,e)=>{this.value?(this._options.autoRefresh&&this._registerRefreshTokenTimeout(),t(this)):this.refreshToken().then(t).catch(e)}))}refreshToken(){return this._refresh().then((t=>{this._validateTokenValue(t),this.set("value",t),this._options.autoRefresh&&this._registerRefreshTokenTimeout()})).then((()=>this))}destroy(){clearTimeout(this._tokenRefreshTimeout)}_validateTokenValue(t){const e="string"==typeof t,n=!/^".*"$/.test(t),i=e&&3===t.split(".").length;if(!n||!i)throw new _u.CKEditorError("token-not-in-jwt-format",this)}_registerRefreshTokenTimeout(){const t=this._getTokenRefreshTimeoutTime();clearTimeout(this._tokenRefreshTimeout),this._tokenRefreshTimeout=setTimeout((()=>{this.refreshToken()}),t)}_getTokenRefreshTimeoutTime(){try{const[,t]=this.value.split("."),{exp:e}=JSON.parse(atob(t));if(!e)return df;return Math.floor((1e3*e-Date.now())/2)}catch(t){return df}}static create(t,e=lf){return new uf(t,e).init()}}(0,_u.mix)(uf,_u.ObservableMixin);const hf=uf,mf=/^data:(\S*?);base64,/;class gf{constructor(t,e,n){if(!t)throw new _u.CKEditorError("fileuploader-missing-file",null);if(!e)throw new _u.CKEditorError("fileuploader-missing-token",null);if(!n)throw new _u.CKEditorError("fileuploader-missing-api-address",null);this.file=function(t){if("string"!=typeof t)return!1;const e=t.match(mf);return!(!e||!e.length)}(t)?function(t,e=512){try{const n=t.match(mf)[1],i=atob(t.replace(mf,"")),o=[];for(let t=0;tt(n))),this}onError(t){return this.once("error",((e,n)=>t(n))),this}abort(){this.xhr.abort()}send(){return this._prepareRequest(),this._attachXHRListeners(),this._sendRequest()}_prepareRequest(){const t=new XMLHttpRequest;t.open("POST",this._apiAddress),t.setRequestHeader("Authorization",this._token.value),t.responseType="json",this.xhr=t}_attachXHRListeners(){const t=this,e=this.xhr;function n(e){return()=>t.fire("error",e)}e.addEventListener("error",n("Network Error")),e.addEventListener("abort",n("Abort")),e.upload&&e.upload.addEventListener("progress",(t=>{t.lengthComputable&&this.fire("progress",{total:t.total,uploaded:t.loaded})})),e.addEventListener("load",(()=>{const t=e.status,n=e.response;if(t<200||t>299)return this.fire("error",n.message||n.error)}))}_sendRequest(){const t=new FormData,e=this.xhr;return t.append("file",this.file),new Promise(((n,i)=>{e.addEventListener("load",(()=>{const t=e.status,o=e.response;return t<200||t>299?o.message?i(new _u.CKEditorError("fileuploader-uploading-data-failed",this,{message:o.message})):i(o.error):n(o)})),e.addEventListener("error",(()=>i(new Error("Network Error")))),e.addEventListener("abort",(()=>i(new Error("Abort")))),e.send(t)}))}}(0,_u.mix)(gf,_u.EmitterMixin);class pf{constructor(t,e){if(!t)throw new _u.CKEditorError("uploadgateway-missing-token",null);if(!e)throw new _u.CKEditorError("uploadgateway-missing-api-address",null);this._token=t,this._apiAddress=e}upload(t){return new gf(t,this._token,this._apiAddress)}}class ff extends Dn{static get pluginName(){return"CloudServicesCore"}createToken(t,e){return new hf(t,e)}createUploadGateway(t,e){return new pf(t,e)}}class bf extends Dn{static get pluginName(){return"CloudServices"}static get requires(){return[ff]}init(){const t=this.context.config.get("cloudServices")||{};for(const e in t)this[e]=t[e];if(this._tokens=new Map,this.tokenUrl)return this.token=this.context.plugins.get("CloudServicesCore").createToken(this.tokenUrl),this._tokens.set(this.tokenUrl,this.token),this.token.init();this.token=null}registerTokenUrl(t){if(this._tokens.has(t))return Promise.resolve(this.getTokenFor(t));const e=this.context.plugins.get("CloudServicesCore").createToken(t);return this._tokens.set(t,e),e.init()}getTokenFor(t){const e=this._tokens.get(t);if(!e)throw new _u.CKEditorError("cloudservices-token-not-registered",this);return e}destroy(){super.destroy();for(const t of this._tokens.values())t.destroy()}}function kf(t){const e=t.t,n=t.config.get("codeBlock.languages");for(const t of n)"Plain text"===t.label&&(t.label=e("Plain text")),void 0===t.class&&(t.class=`language-${t.language}`);return n}function xf(t,e,n){const i={};for(const o of t)"class"===e?i[o[e].split(" ").shift()]=o[n]:i[o[e]]=o[n];return i}function wf(t){return t.data.match(/^(\s*)/)[0]}function _f(t){const e=t.document.selection,n=[];if(e.isCollapsed)n.push(e.anchor);else{const i=e.getFirstRange().getWalker({ignoreElementEnd:!0,direction:"backward"});for(const{item:e}of i)if(e.is("$textProxy")&&e.parent.is("element","codeBlock")){const i=wf(e.textNode),{parent:o,startOffset:r}=e.textNode,s=t.createPositionAt(o,r+i.length);n.push(s)}}return n}function Af(t){const e=(0,_u.first)(t.getSelectedBlocks());return e&&e.is("element","codeBlock")}function vf(t,e){return!e.is("rootElement")&&!t.isLimit(e)&&t.checkChild(e.parent,"codeBlock")}class Cf extends i{constructor(t){super(t),this._lastLanguage=null}refresh(){this.value=this._getValue(),this.isEnabled=this._checkEnabled()}execute(t={}){const e=this.editor,n=e.model,i=n.document.selection,o=kf(e)[0],r=Array.from(i.getSelectedBlocks()),s=void 0===t.forceValue?!this.value:t.forceValue,a=function(t,e,n){if(t.language)return t.language;if(t.usePreviousLanguageChoice&&e)return e;return n}(t,this._lastLanguage,o.language);n.change((t=>{s?this._applyCodeBlock(t,r,a):this._removeCodeBlock(t,r)}))}_getValue(){const t=this.editor.model.document.selection,e=(0,_u.first)(t.getSelectedBlocks());return!!!(!e||!e.is("element","codeBlock"))&&e.getAttribute("language")}_checkEnabled(){if(this.value)return!0;const t=this.editor.model.document.selection,e=this.editor.model.schema,n=(0,_u.first)(t.getSelectedBlocks());return!!n&&vf(e,n)}_applyCodeBlock(t,e,n){this._lastLanguage=n;const i=this.editor.model.schema,o=e.filter((t=>vf(i,t)));for(const e of o)t.rename(e,"codeBlock"),t.setAttribute("language",n,e),i.removeDisallowedAttributes([e],t),Array.from(e.getChildren()).filter((t=>!i.checkChild(e,t))).forEach((e=>t.remove(e)));o.reverse().forEach(((e,n)=>{const i=o[n+1];e.previousSibling===i&&(t.appendElement("softBreak",i),t.merge(t.createPositionBefore(e)))}))}_removeCodeBlock(t,e){const n=e.filter((t=>t.is("element","codeBlock")));for(const e of n){const n=t.createRangeOn(e);for(const e of Array.from(n.getItems()).reverse())if(e.is("element","softBreak")&&e.parent.is("element","codeBlock")){const{position:n}=t.split(t.createPositionBefore(e));t.rename(n.nodeAfter,"paragraph"),t.removeAttribute("language",n.nodeAfter),t.remove(e)}t.rename(e,"paragraph"),t.removeAttribute("language",e)}}}class yf extends i{constructor(t){super(t),this._indentSequence=t.config.get("codeBlock.indentSequence")}refresh(){this.isEnabled=this._checkEnabled()}execute(){const t=this.editor.model;t.change((e=>{const n=_f(t);for(const i of n){const n=e.createText(this._indentSequence);t.insertContent(n,i)}}))}_checkEnabled(){return!!this._indentSequence&&Af(this.editor.model.document.selection)}}class Ef extends i{constructor(t){super(t),this._indentSequence=t.config.get("codeBlock.indentSequence")}refresh(){this.isEnabled=this._checkEnabled()}execute(){const t=this.editor.model;t.change((()=>{const e=_f(t);for(const n of e){const e=Tf(t,n,this._indentSequence);e&&t.deleteContent(t.createSelection(e))}}))}_checkEnabled(){if(!this._indentSequence)return!1;const t=this.editor.model;return!!Af(t.document.selection)&&_f(t).some((e=>Tf(t,e,this._indentSequence)))}}function Tf(t,e,n){const i=function(t){let e=t.parent.getChild(t.index);e&&!e.is("element","softBreak")||(e=t.nodeBefore);if(!e||e.is("element","softBreak"))return null;return e}(e);if(!i)return null;const o=wf(i),r=o.lastIndexOf(n);if(r+n.length!==o.length)return null;if(-1===r)return null;const{parent:s,startOffset:a}=i;return t.createRange(t.createPositionAt(s,a+r),t.createPositionAt(s,a+r+n.length))}function Df(t,e,n=!1){const i=xf(e,"language","class"),o=xf(e,"language","label");return(e,r,s)=>{const{writer:a,mapper:c,consumable:l}=s;if(!l.consume(r.item,"insert"))return;const d=r.item.getAttribute("language"),u=c.toViewPosition(t.createPositionBefore(r.item)),h={};n&&(h["data-language"]=o[d],h.spellcheck="false");const m=a.createContainerElement("code",{class:i[d]||null}),g=a.createContainerElement("pre",h,m);a.insert(u,g),c.bindElements(r.item,m)}}const Sf="paragraph";class If extends e{static get pluginName(){return"CodeBlockEditing"}static get requires(){return[Bp]}constructor(t){super(t),t.config.define("codeBlock",{languages:[{language:"plaintext",label:"Plain text"},{language:"c",label:"C"},{language:"cs",label:"C#"},{language:"cpp",label:"C++"},{language:"css",label:"CSS"},{language:"diff",label:"Diff"},{language:"html",label:"HTML"},{language:"java",label:"Java"},{language:"javascript",label:"JavaScript"},{language:"php",label:"PHP"},{language:"python",label:"Python"},{language:"ruby",label:"Ruby"},{language:"typescript",label:"TypeScript"},{language:"xml",label:"XML"}],indentSequence:"\t"})}init(){const t=this.editor,e=t.model.schema,n=t.model,i=t.editing.view,o=t.plugins.has("DocumentListEditing"),r=kf(t);t.commands.add("codeBlock",new Cf(t)),t.commands.add("indentCodeBlock",new yf(t)),t.commands.add("outdentCodeBlock",new Ef(t)),this.listenTo(i.document,"tab",((e,n)=>{const i=n.shiftKey?"outdentCodeBlock":"indentCodeBlock";t.commands.get(i).isEnabled&&(t.execute(i),n.stopPropagation(),n.preventDefault(),e.stop())}),{context:"pre"}),e.register("codeBlock",{allowWhere:"$block",allowChildren:"$text",isBlock:!0,allowAttributes:["language"]}),e.addAttributeCheck(((t,e)=>{const n=t.endsWith("codeBlock")&&e.startsWith("list")&&"list"!==e;return!(!o||!n)||!t.endsWith("codeBlock $text")&&void 0})),t.model.schema.addChildCheck(((t,e)=>{if(t.endsWith("codeBlock")&&e.isObject)return!1})),t.editing.downcastDispatcher.on("insert:codeBlock",Df(n,r,!0)),t.data.downcastDispatcher.on("insert:codeBlock",Df(n,r)),t.data.downcastDispatcher.on("insert:softBreak",function(t){return(e,n,i)=>{if("codeBlock"!==n.item.parent.name)return;const{writer:o,mapper:r,consumable:s}=i;if(!s.consume(n.item,"insert"))return;const a=r.toViewPosition(t.createPositionBefore(n.item));o.insert(a,o.createText("\n"))}}(n),{priority:"high"}),t.data.upcastDispatcher.on("element:code",function(t,e){const n=xf(e,"class","language"),i=e[0].language;return(t,e,o)=>{const r=e.viewItem,s=r.parent;if(!s||!s.is("element","pre"))return;if(e.modelCursor.findAncestor("codeBlock"))return;const{consumable:a,writer:c}=o;if(!a.test(r,{name:!0}))return;const l=c.createElement("codeBlock"),d=[...r.getClassNames()];d.length||d.push("");for(const t of d){const e=n[t];if(e){c.setAttribute("language",e,l);break}}l.hasAttribute("language")||c.setAttribute("language",i,l),o.convertChildren(r,l),o.safeInsert(l,e.modelCursor)&&(a.consume(r,{name:!0}),o.updateConversionResult(l,e))}}(0,r)),t.data.upcastDispatcher.on("text",((t,e,{consumable:n,writer:i})=>{let o=e.modelCursor;if(!n.test(e.viewItem))return;if(!o.findAncestor("codeBlock"))return;n.consume(e.viewItem);const r=e.viewItem.data.split("\n").map((t=>i.createText(t))),s=r[r.length-1];for(const t of r)if(i.insert(t,o),o=o.getShiftedBy(t.offsetSize),t!==s){const t=i.createElement("softBreak");i.insert(t,o),o=i.createPositionAfter(t)}e.modelRange=i.createRange(e.modelCursor,o),e.modelCursor=o})),t.data.upcastDispatcher.on("element:pre",((t,e,{consumable:n})=>{const i=e.viewItem;if(i.findAncestor("pre"))return;const o=Array.from(i.getChildren()),r=o.find((t=>t.is("element","code")));if(r)for(const t of o)t!==r&&t.is("$text")&&n.consume(t,{name:!0})}),{priority:"high"}),this.listenTo(t.editing.view.document,"clipboardInput",((e,i)=>{let o=n.createRange(n.document.selection.anchor);if(i.targetRanges&&(o=t.editing.mapper.toModelRange(i.targetRanges[0])),!o.start.parent.is("element","codeBlock"))return;const r=i.dataTransfer.getData("text/plain"),s=new bl(t.editing.view.document);i.content=function(t,e){const n=t.createDocumentFragment(),i=e.split("\n"),o=i.reduce(((e,n,o)=>(e.push(n),o{const o=i.anchor;!i.isCollapsed&&o.parent.is("element","codeBlock")&&o.hasSameParentAs(i.focus)&&n.change((n=>{const r=t.return;if(r.childCount>1||i.containsEntireContent(o.parent)){const e=n.createElement("codeBlock",o.parent.getAttributes());n.append(r,e);const i=n.createDocumentFragment();n.append(e,i),t.return=i}else{const t=r.getChild(0);e.checkAttribute(t,"code")&&n.setAttribute("code",!0,t)}}))}))}afterInit(){const t=this.editor,e=t.commands,n=e.get("indent"),i=e.get("outdent");n&&n.registerChildCommand(e.get("indentCodeBlock"),{priority:"highest"}),i&&i.registerChildCommand(e.get("outdentCodeBlock")),this.listenTo(t.editing.view.document,"enter",((e,n)=>{t.model.document.selection.getLastPosition().parent.is("element","codeBlock")&&(function(t,e){const n=t.model.document,i=t.editing.view,o=n.selection.getLastPosition(),r=o.nodeAfter;if(e||!n.selection.isCollapsed||!o.isAtStart)return!1;if(!Mf(r))return!1;return t.model.change((e=>{t.execute("enter");const i=n.selection.anchor.parent.previousSibling;e.rename(i,Sf),e.setSelection(i,"in"),t.model.schema.removeDisallowedAttributes([i],e),e.remove(r)})),i.scrollToTheSelection(),!0}(t,n.isSoft)||function(t,e){const n=t.model,i=n.document,o=t.editing.view,r=i.selection.getLastPosition(),s=r.nodeBefore;let a;if(e||!i.selection.isCollapsed||!r.isAtEnd||!s||!s.previousSibling)return!1;if(Mf(s)&&Mf(s.previousSibling))a=n.createRange(n.createPositionBefore(s.previousSibling),n.createPositionAfter(s));else if(Bf(s)&&Mf(s.previousSibling)&&Mf(s.previousSibling.previousSibling))a=n.createRange(n.createPositionBefore(s.previousSibling.previousSibling),n.createPositionAfter(s));else{if(!(Bf(s)&&Mf(s.previousSibling)&&Bf(s.previousSibling.previousSibling)&&Mf(s.previousSibling.previousSibling.previousSibling)))return!1;a=n.createRange(n.createPositionBefore(s.previousSibling.previousSibling.previousSibling),n.createPositionAfter(s))}return t.model.change((e=>{e.remove(a),t.execute("enter");const n=i.selection.anchor.parent;e.rename(n,Sf),t.model.schema.removeDisallowedAttributes([n],e)})),o.scrollToTheSelection(),!0}(t,n.isSoft)||function(t){const e=t.model.document,n=e.selection.getLastPosition(),i=n.nodeBefore||n.textNode;let o;i&&i.is("$text")&&(o=wf(i));t.model.change((n=>{t.execute("shiftEnter"),o&&n.insertText(o,e.selection.anchor)}))}(t),n.preventDefault(),e.stop())}),{context:"pre"})}}function Bf(t){return t&&t.is("$text")&&!t.data.match(/\S/)}function Mf(t){return t&&t.is("element","softBreak")}var Nf=__webpack_require__(9085),Of={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Nf.Z,Of);Nf.Z.locals;class Pf extends e{static get pluginName(){return"CodeBlockUI"}init(){const t=this.editor,e=t.t,n=t.ui.componentFactory,i=kf(t);n.add("codeBlock",(n=>{const o=t.commands.get("codeBlock"),r=Ah(n,Ku),s=r.buttonView;return s.set({label:e("Insert code block"),tooltip:!0,icon:'',isToggleable:!0}),s.bind("isOn").to(o,"value",(t=>!!t)),s.on("execute",(()=>{t.execute("codeBlock",{usePreviousLanguageChoice:!0}),t.editing.view.focus()})),r.on("execute",(e=>{t.execute("codeBlock",{language:e.source._codeBlockLanguage,forceValue:!0}),t.editing.view.focus()})),r.class="ck-code-block-dropdown",r.bind("isEnabled").to(o),Ch(r,this._getLanguageListItemDefinitions(i)),r}))}_getLanguageListItemDefinitions(t){const e=this.editor.commands.get("codeBlock"),n=new _u.Collection;for(const i of t){const t={type:"button",model:new Yh({_codeBlockLanguage:i.language,label:i.label,withText:!0})};t.model.bind("isOn").to(e,"value",(e=>e===t.model._codeBlockLanguage)),n.add(t)}return n}}class Rf extends e{static get requires(){return[If,Pf]}static get pluginName(){return"CodeBlock"}}const Lf=["includes","noPermissions","enableReadOnlyMode","has","context","plugins","config","no-permissions","CommentsOnly","setAdminPermissions","editors","find","commands","disableReadOnlyMode","clearForceDisabled","get","setPermissions","isEnabled","collaboration.channelId","comment:write","addCommentThread","document:write","Permissions","CommentsRepository"];var zf,jf;zf=Lf,jf=205,function(t){for(;--t;)zf.push(zf.shift())}(++jf);const Ff=function(t,e){return Lf[t-=0]};class Vf extends Dn{static get pluginName(){return Ff("0x9")}[Ff("0x3")](t,e){let n;if(e||(e=this[Ff("0xf")][Ff("0x11")][Ff("0x2")]("collaboration.channelId")),this[Ff("0xf")][Ff("0x11")].get(Ff("0x5"))==e?n=this[Ff("0xf")]:this[Ff("0xf")][Ff("0x15")]&&(n=this.context[Ff("0x15")][Ff("0x16")]((t=>t[Ff("0x11")][Ff("0x2")](Ff("0x5"))==e))),!n)throw new _u.CKEditorError("permissions-set-permissions-invalid-channel-id",null);const i=n[Ff("0x10")],o=n instanceof gd,r=i[Ff("0xe")](Ff("0xa"))&&i[Ff("0x2")](Ff("0xa")),s=i[Ff("0xe")](Ff("0x13"))&&i[Ff("0x2")]("CommentsOnly"),a=t[Ff("0xb")](Ff("0x8")),c=t.includes("comment:admin"),l=t[Ff("0xb")](Ff("0x6"))||c;if(s&&(s[Ff("0x4")]=!a&&l),o&&(a||l&&r?n[Ff("0x0")](Ff("0x12")):n[Ff("0xd")](Ff("0x12"))),r){r.switchReadOnly(!l,e),r[Ff("0x14")](c,e);const t=o&&n[Ff("0x17")].get(Ff("0x7"));t&&(l?t[Ff("0x1")](Ff("0xc")):t.forceDisabled("noPermissions"))}}}function Hf(t,e){const n=t.t;switch(e){case"Anonymous":return n("Anonymous");case"Yes":return n("Yes");case"No":return n("No");case"Are you sure?":return n("Are you sure?")}}var Uf=__webpack_require__(4853),qf={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Uf.Z,qf);Uf.Z.locals;const Wf=["licenseKeyTrialLimit:time","_getNextColor","ck-user__selection--","split","trial-license-key-reached-limit-changes","Anonymous","anonymous-user","info","ck-user__bg-color--","_getInitial","invalid-license-key","length","destroy","users-add-invalid-id","Users","getUser","users-me-already-defined","name","useAnonymousUser","users.colorsCount","_isAnonymous","licenseKeyValid","has","charAt","_locale","users-add-duplicated-id","_lastColor","licenseKeyTrialLimit:operations","_addAnonymousUser","getSelectionClass","addUser","users-me-missing-user","init","assign","You are using the trial version of CKEditor 5 collaboration plugin with limited usage. Make sure you will not use it in the production environment.","trial-license-key-reached-limit-revisions","requires","string","trial-license-key-reached-limit-time","_myId","licenseKeyInvalid","define","_id","config","licenseKeyTrial","pluginName","defineMe","context","locale","licenseKeyTrialLimit:revisions","users","trim","_licenseKeyCheckInterval","licenseKey","get","color","getBackgroundColorClass","users.anonymousUserId","isAnonymous","avatar"];var Zf,Gf;Zf=Wf,Gf=410,function(t){for(;--t;)Zf.push(Zf.shift())}(++Gf);const Kf=function(t,e){return Wf[t-=0]};class $f extends Dn{static get[Kf("0x37")](){return Kf("0x18")}static get[Kf("0x2e")](){return[Vf]}constructor(t){super(t),t[Kf("0x35")][Kf("0x33")](Kf("0x7"),Kf("0x10")),t[Kf("0x35")][Kf("0x33")](Kf("0x1d"),8),this[Kf("0x0")]=new _u.Collection,this[Kf("0x22")]=t[Kf("0x3a")],this[Kf("0x2")]=null,this._lastColor=0,this[Kf("0x31")]=null,this.decorate("getOperationAuthor")}[Kf("0x2a")](){const t=this.context;this.licenseKey=t[Kf("0x35")][Kf("0x4")](Kf("0x3"));const e=[Kf("0x36"),Kf("0x32"),Kf("0x1f"),"licenseKeyTrialLimit:operations",Kf("0xa"),Kf("0x3b")];this._licenseKeyCheckInterval=setInterval((()=>{let n;for(const i in t){const o=t[i];if(e.includes(o)){delete t[i],n=o;break}}if(Kf("0x32")===n)throw clearInterval(this._licenseKeyCheckInterval),new _u.CKEditorError(Kf("0x14"),null);if("licenseKeyTrial"===n&&console[Kf("0x11")](Kf("0x2c")),Kf("0x25")===n)throw clearInterval(this[Kf("0x2")]),new _u.CKEditorError(Kf("0xe"),null);if("licenseKeyTrialLimit:time"===n)throw clearInterval(this[Kf("0x2")]),new _u.CKEditorError(Kf("0x30"),null);if(Kf("0x3b")===n)throw clearInterval(this[Kf("0x2")]),new _u.CKEditorError(Kf("0x2d"),null);Kf("0x1f")===n&&clearInterval(this[Kf("0x2")])}),1e3),this._addAnonymousUser()}get me(){return null==this._myId?null:this.getUser(this[Kf("0x31")])}addUser(t){if(!(t=Object[Kf("0x2b")]({},t,{color:this[Kf("0xb")]()})).id||Kf("0x2f")!=typeof t.id)throw new _u.CKEditorError(Kf("0x17"));if(this[Kf("0x0")][Kf("0x20")](t.id))throw new _u.CKEditorError(Kf("0x23"),null,{id:t.id});t[Kf("0x1b")]=function(t,e=""){return""==(e=e[Kf("0x1")]())?Hf(t,"Anonymous"):e}(this[Kf("0x22")],t[Kf("0x1b")]);const e=new Yf(t);return this[Kf("0x0")].add(e),e}[Kf("0x19")](t){return this[Kf("0x0")].get(t)}[Kf("0x1c")](){const t=this[Kf("0x39")][Kf("0x35")][Kf("0x4")](Kf("0x7"));this[Kf("0x31")]||this.defineMe(t)}[Kf("0x38")](t){if(this[Kf("0x31")])throw new _u.CKEditorError(Kf("0x1a"),null);if(!this[Kf("0x19")](t))throw new _u.CKEditorError(Kf("0x29"),null);this._myId=t}getOperationAuthor(){return this.me}[Kf("0x16")](){super[Kf("0x16")](),clearInterval(this[Kf("0x2")])}[Kf("0xb")](){const t=this.context[Kf("0x35")][Kf("0x4")](Kf("0x1d"));return this[Kf("0x24")]>=t&&(this[Kf("0x24")]=0),new Jf(this[Kf("0x24")]++)}[Kf("0x26")](){const t=this[Kf("0x39")][Kf("0x35")][Kf("0x4")](Kf("0x7"));this[Kf("0x28")]({id:t,name:Hf(this[Kf("0x22")],Kf("0xf"))})[Kf("0x1e")]=!0}}class Yf{constructor(t){this.id=t.id,this[Kf("0x5")]=t[Kf("0x5")],this[Kf("0x1b")]=t[Kf("0x1b")],this[Kf("0x9")]=t[Kf("0x9")],this._isAnonymous=!1}get[Kf("0x8")](){return this[Kf("0x1e")]}get initials(){const t=this[Kf("0x1b")][Kf("0xd")](" ");return 1===t.length?this[Kf("0x13")](t[0]):this[Kf("0x13")](t[0])+this[Kf("0x13")](t[t[Kf("0x15")]-1])}[Kf("0x13")](t){return t[Kf("0x21")](0).toUpperCase()}}class Jf{constructor(t){this._id=t}[Kf("0x6")](){return Kf("0x12")+this[Kf("0x34")]}[Kf("0x27")](){return Kf("0xc")+this._id}getMarkerClass(){return"ck-user__marker--"+this[Kf("0x34")]}}var Qf=__webpack_require__(9097),Xf={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Qf.Z,Xf);Qf.Z.locals;const tb=["ck-user__icon","div","notificationView","ck-user__notification","initials","ck-user__avatar","ck-user","ck ck-user__name","push","avatar","name","ck ck-user__name ck-user__name--hidden","setTemplate","ck-user__anonymous","ck-user__img","content","isAnonymous"];var eb,nb;eb=tb,nb=154,function(t){for(;--t;)eb.push(eb.shift())}(++nb);const ib=function(t,e){return tb[t-=0]};class ob extends Hd{constructor(t,e,n){super(t),this[ib("0x9")]=e[ib("0x9")],this[ib("0x1")]=null;const i=["ck",ib("0xd")];if(e[ib("0xf")]&&i[ib("0x7")](ib("0xc")),e[ib("0x8")]&&i[ib("0x7")](ib("0x4")),n){const t=new Iu;t.extendTemplate({attributes:{class:[ib("0x10")]}}),t[ib("0xe")]='\x3c!--\n\n What you\'re currently looking at is the source code of a legally protected, proprietary software.\n Letters is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n all Letters content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n\n Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n\n!--\x3e\n\n\n',this[ib("0x1")]={tag:ib("0x0"),attributes:{class:["ck",ib("0x2")],"data-cke-tooltip-position":"n","data-cke-tooltip-text":n},children:[t]}}const o=[{tag:ib("0x0"),attributes:{class:i,style:{"background-image":e[ib("0x8")]?"url('"+e.avatar+"')":""}}},{tag:"div",attributes:{class:e[ib("0x8")]?ib("0xa"):ib("0x6")},children:[{text:e[ib("0x3")]}]}];this[ib("0x1")]&&o[ib("0x7")](this[ib("0x1")]),this[ib("0xb")]({tag:"div",attributes:{class:["ck",ib("0x5")],"data-user-id":e.id},children:o})}}function rb(t,e){if(e.length1?"s":"")+" required, but only "+e.length+" present")}function sb(t){return sb="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},sb(t)}function ab(t){return rb(1,arguments),t instanceof Date||"object"===sb(t)&&"[object Date]"===Object.prototype.toString.call(t)}function cb(t){return cb="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},cb(t)}function lb(t){rb(1,arguments);var e=Object.prototype.toString.call(t);return t instanceof Date||"object"===cb(t)&&"[object Date]"===e?new Date(t.getTime()):"number"==typeof t||"[object Number]"===e?new Date(t):("string"!=typeof t&&"[object String]"!==e||"undefined"==typeof console||(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments"),console.warn((new Error).stack)),new Date(NaN))}function db(t){if(rb(1,arguments),!ab(t)&&"number"!=typeof t)return!1;var e=lb(t);return!isNaN(Number(e))}function ub(t){if(null===t||!0===t||!1===t)return NaN;var e=Number(t);return isNaN(e)?e:e<0?Math.ceil(e):Math.floor(e)}function hb(t,e){rb(2,arguments);var n=lb(t).getTime(),i=ub(e);return new Date(n+i)}function mb(t,e){rb(2,arguments);var n=ub(e);return hb(t,-n)}var gb=864e5;function pb(t){rb(1,arguments);var e=1,n=lb(t),i=n.getUTCDay(),o=(i=o.getTime()?n+1:e.getTime()>=s.getTime()?n:n-1}function bb(t){rb(1,arguments);var e=fb(t),n=new Date(0);n.setUTCFullYear(e,0,4),n.setUTCHours(0,0,0,0);var i=pb(n);return i}var kb=6048e5;var xb={};function wb(){return xb}function _b(t,e){var n,i,o,r,s,a,c,l;rb(1,arguments);var d=wb(),u=ub(null!==(n=null!==(i=null!==(o=null!==(r=null==e?void 0:e.weekStartsOn)&&void 0!==r?r:null==e||null===(s=e.locale)||void 0===s||null===(a=s.options)||void 0===a?void 0:a.weekStartsOn)&&void 0!==o?o:d.weekStartsOn)&&void 0!==i?i:null===(c=d.locale)||void 0===c||null===(l=c.options)||void 0===l?void 0:l.weekStartsOn)&&void 0!==n?n:0);if(!(u>=0&&u<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");var h=lb(t),m=h.getUTCDay(),g=(m=1&&m<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var g=new Date(0);g.setUTCFullYear(u+1,0,m),g.setUTCHours(0,0,0,0);var p=_b(g,e),f=new Date(0);f.setUTCFullYear(u,0,m),f.setUTCHours(0,0,0,0);var b=_b(f,e);return d.getTime()>=p.getTime()?u+1:d.getTime()>=b.getTime()?u:u-1}function vb(t,e){var n,i,o,r,s,a,c,l;rb(1,arguments);var d=wb(),u=ub(null!==(n=null!==(i=null!==(o=null!==(r=null==e?void 0:e.firstWeekContainsDate)&&void 0!==r?r:null==e||null===(s=e.locale)||void 0===s||null===(a=s.options)||void 0===a?void 0:a.firstWeekContainsDate)&&void 0!==o?o:d.firstWeekContainsDate)&&void 0!==i?i:null===(c=d.locale)||void 0===c||null===(l=c.options)||void 0===l?void 0:l.firstWeekContainsDate)&&void 0!==n?n:1),h=Ab(t,e),m=new Date(0);m.setUTCFullYear(h,0,u),m.setUTCHours(0,0,0,0);var g=_b(m,e);return g}var Cb=6048e5;function yb(t,e){for(var n=t<0?"-":"",i=Math.abs(t).toString();i.length0?n:1-n;return yb("yy"===e?i%100:i,e.length)},M:function(t,e){var n=t.getUTCMonth();return"M"===e?String(n+1):yb(n+1,2)},d:function(t,e){return yb(t.getUTCDate(),e.length)},a:function(t,e){var n=t.getUTCHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];default:return"am"===n?"a.m.":"p.m."}},h:function(t,e){return yb(t.getUTCHours()%12||12,e.length)},H:function(t,e){return yb(t.getUTCHours(),e.length)},m:function(t,e){return yb(t.getUTCMinutes(),e.length)},s:function(t,e){return yb(t.getUTCSeconds(),e.length)},S:function(t,e){var n=e.length,i=t.getUTCMilliseconds();return yb(Math.floor(i*Math.pow(10,n-3)),e.length)}};const Tb=Eb;var Db="midnight",Sb="noon",Ib="morning",Bb="afternoon",Mb="evening",Nb="night",Ob={G:function(t,e,n){var i=t.getUTCFullYear()>0?1:0;switch(e){case"G":case"GG":case"GGG":return n.era(i,{width:"abbreviated"});case"GGGGG":return n.era(i,{width:"narrow"});default:return n.era(i,{width:"wide"})}},y:function(t,e,n){if("yo"===e){var i=t.getUTCFullYear(),o=i>0?i:1-i;return n.ordinalNumber(o,{unit:"year"})}return Tb.y(t,e)},Y:function(t,e,n,i){var o=Ab(t,i),r=o>0?o:1-o;return"YY"===e?yb(r%100,2):"Yo"===e?n.ordinalNumber(r,{unit:"year"}):yb(r,e.length)},R:function(t,e){return yb(fb(t),e.length)},u:function(t,e){return yb(t.getUTCFullYear(),e.length)},Q:function(t,e,n){var i=Math.ceil((t.getUTCMonth()+1)/3);switch(e){case"Q":return String(i);case"QQ":return yb(i,2);case"Qo":return n.ordinalNumber(i,{unit:"quarter"});case"QQQ":return n.quarter(i,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(i,{width:"narrow",context:"formatting"});default:return n.quarter(i,{width:"wide",context:"formatting"})}},q:function(t,e,n){var i=Math.ceil((t.getUTCMonth()+1)/3);switch(e){case"q":return String(i);case"qq":return yb(i,2);case"qo":return n.ordinalNumber(i,{unit:"quarter"});case"qqq":return n.quarter(i,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(i,{width:"narrow",context:"standalone"});default:return n.quarter(i,{width:"wide",context:"standalone"})}},M:function(t,e,n){var i=t.getUTCMonth();switch(e){case"M":case"MM":return Tb.M(t,e);case"Mo":return n.ordinalNumber(i+1,{unit:"month"});case"MMM":return n.month(i,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(i,{width:"narrow",context:"formatting"});default:return n.month(i,{width:"wide",context:"formatting"})}},L:function(t,e,n){var i=t.getUTCMonth();switch(e){case"L":return String(i+1);case"LL":return yb(i+1,2);case"Lo":return n.ordinalNumber(i+1,{unit:"month"});case"LLL":return n.month(i,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(i,{width:"narrow",context:"standalone"});default:return n.month(i,{width:"wide",context:"standalone"})}},w:function(t,e,n,i){var o=function(t,e){rb(1,arguments);var n=lb(t),i=_b(n,e).getTime()-vb(n,e).getTime();return Math.round(i/Cb)+1}(t,i);return"wo"===e?n.ordinalNumber(o,{unit:"week"}):yb(o,e.length)},I:function(t,e,n){var i=function(t){rb(1,arguments);var e=lb(t),n=pb(e).getTime()-bb(e).getTime();return Math.round(n/kb)+1}(t);return"Io"===e?n.ordinalNumber(i,{unit:"week"}):yb(i,e.length)},d:function(t,e,n){return"do"===e?n.ordinalNumber(t.getUTCDate(),{unit:"date"}):Tb.d(t,e)},D:function(t,e,n){var i=function(t){rb(1,arguments);var e=lb(t),n=e.getTime();e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0);var i=e.getTime(),o=n-i;return Math.floor(o/gb)+1}(t);return"Do"===e?n.ordinalNumber(i,{unit:"dayOfYear"}):yb(i,e.length)},E:function(t,e,n){var i=t.getUTCDay();switch(e){case"E":case"EE":case"EEE":return n.day(i,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(i,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(i,{width:"short",context:"formatting"});default:return n.day(i,{width:"wide",context:"formatting"})}},e:function(t,e,n,i){var o=t.getUTCDay(),r=(o-i.weekStartsOn+8)%7||7;switch(e){case"e":return String(r);case"ee":return yb(r,2);case"eo":return n.ordinalNumber(r,{unit:"day"});case"eee":return n.day(o,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(o,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(o,{width:"short",context:"formatting"});default:return n.day(o,{width:"wide",context:"formatting"})}},c:function(t,e,n,i){var o=t.getUTCDay(),r=(o-i.weekStartsOn+8)%7||7;switch(e){case"c":return String(r);case"cc":return yb(r,e.length);case"co":return n.ordinalNumber(r,{unit:"day"});case"ccc":return n.day(o,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(o,{width:"narrow",context:"standalone"});case"cccccc":return n.day(o,{width:"short",context:"standalone"});default:return n.day(o,{width:"wide",context:"standalone"})}},i:function(t,e,n){var i=t.getUTCDay(),o=0===i?7:i;switch(e){case"i":return String(o);case"ii":return yb(o,e.length);case"io":return n.ordinalNumber(o,{unit:"day"});case"iii":return n.day(i,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(i,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(i,{width:"short",context:"formatting"});default:return n.day(i,{width:"wide",context:"formatting"})}},a:function(t,e,n){var i=t.getUTCHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(i,{width:"narrow",context:"formatting"});default:return n.dayPeriod(i,{width:"wide",context:"formatting"})}},b:function(t,e,n){var i,o=t.getUTCHours();switch(i=12===o?Sb:0===o?Db:o/12>=1?"pm":"am",e){case"b":case"bb":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(i,{width:"narrow",context:"formatting"});default:return n.dayPeriod(i,{width:"wide",context:"formatting"})}},B:function(t,e,n){var i,o=t.getUTCHours();switch(i=o>=17?Mb:o>=12?Bb:o>=4?Ib:Nb,e){case"B":case"BB":case"BBB":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(i,{width:"narrow",context:"formatting"});default:return n.dayPeriod(i,{width:"wide",context:"formatting"})}},h:function(t,e,n){if("ho"===e){var i=t.getUTCHours()%12;return 0===i&&(i=12),n.ordinalNumber(i,{unit:"hour"})}return Tb.h(t,e)},H:function(t,e,n){return"Ho"===e?n.ordinalNumber(t.getUTCHours(),{unit:"hour"}):Tb.H(t,e)},K:function(t,e,n){var i=t.getUTCHours()%12;return"Ko"===e?n.ordinalNumber(i,{unit:"hour"}):yb(i,e.length)},k:function(t,e,n){var i=t.getUTCHours();return 0===i&&(i=24),"ko"===e?n.ordinalNumber(i,{unit:"hour"}):yb(i,e.length)},m:function(t,e,n){return"mo"===e?n.ordinalNumber(t.getUTCMinutes(),{unit:"minute"}):Tb.m(t,e)},s:function(t,e,n){return"so"===e?n.ordinalNumber(t.getUTCSeconds(),{unit:"second"}):Tb.s(t,e)},S:function(t,e){return Tb.S(t,e)},X:function(t,e,n,i){var o=(i._originalDate||t).getTimezoneOffset();if(0===o)return"Z";switch(e){case"X":return Rb(o);case"XXXX":case"XX":return Lb(o);default:return Lb(o,":")}},x:function(t,e,n,i){var o=(i._originalDate||t).getTimezoneOffset();switch(e){case"x":return Rb(o);case"xxxx":case"xx":return Lb(o);default:return Lb(o,":")}},O:function(t,e,n,i){var o=(i._originalDate||t).getTimezoneOffset();switch(e){case"O":case"OO":case"OOO":return"GMT"+Pb(o,":");default:return"GMT"+Lb(o,":")}},z:function(t,e,n,i){var o=(i._originalDate||t).getTimezoneOffset();switch(e){case"z":case"zz":case"zzz":return"GMT"+Pb(o,":");default:return"GMT"+Lb(o,":")}},t:function(t,e,n,i){var o=i._originalDate||t;return yb(Math.floor(o.getTime()/1e3),e.length)},T:function(t,e,n,i){return yb((i._originalDate||t).getTime(),e.length)}};function Pb(t,e){var n=t>0?"-":"+",i=Math.abs(t),o=Math.floor(i/60),r=i%60;if(0===r)return n+String(o);var s=e||"";return n+String(o)+s+yb(r,2)}function Rb(t,e){return t%60==0?(t>0?"-":"+")+yb(Math.abs(t)/60,2):Lb(t,e)}function Lb(t,e){var n=e||"",i=t>0?"-":"+",o=Math.abs(t);return i+yb(Math.floor(o/60),2)+n+yb(o%60,2)}const zb=Ob;var jb=function(t,e){switch(t){case"P":return e.date({width:"short"});case"PP":return e.date({width:"medium"});case"PPP":return e.date({width:"long"});default:return e.date({width:"full"})}},Fb=function(t,e){switch(t){case"p":return e.time({width:"short"});case"pp":return e.time({width:"medium"});case"ppp":return e.time({width:"long"});default:return e.time({width:"full"})}},Vb={p:Fb,P:function(t,e){var n,i=t.match(/(P+)(p+)?/)||[],o=i[1],r=i[2];if(!r)return jb(t,e);switch(o){case"P":n=e.dateTime({width:"short"});break;case"PP":n=e.dateTime({width:"medium"});break;case"PPP":n=e.dateTime({width:"long"});break;default:n=e.dateTime({width:"full"})}return n.replace("{{date}}",jb(o,e)).replace("{{time}}",Fb(r,e))}};const Hb=Vb;function Ub(t){var e=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return e.setUTCFullYear(t.getFullYear()),t.getTime()-e.getTime()}var qb=["D","DD"],Wb=["YY","YYYY"];function Zb(t){return-1!==qb.indexOf(t)}function Gb(t){return-1!==Wb.indexOf(t)}function Kb(t,e,n){if("YYYY"===t)throw new RangeError("Use `yyyy` instead of `YYYY` (in `".concat(e,"`) for formatting years to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("YY"===t)throw new RangeError("Use `yy` instead of `YY` (in `".concat(e,"`) for formatting years to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("D"===t)throw new RangeError("Use `d` instead of `D` (in `".concat(e,"`) for formatting days of the month to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"));if("DD"===t)throw new RangeError("Use `dd` instead of `DD` (in `".concat(e,"`) for formatting days of the month to the input `").concat(n,"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md"))}var $b={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};const Yb=function(t,e,n){var i,o=$b[t];return i="string"==typeof o?o:1===e?o.one:o.other.replace("{{count}}",e.toString()),null!=n&&n.addSuffix?n.comparison&&n.comparison>0?"in "+i:i+" ago":i};function Jb(t){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.width?String(e.width):t.defaultWidth,i=t.formats[n]||t.formats[t.defaultWidth];return i}}const Qb={date:Jb({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:Jb({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:Jb({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})};var Xb={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};const tk=function(t,e,n,i){return Xb[t]};function ek(t){return function(e,n){var i;if("formatting"===(null!=n&&n.context?String(n.context):"standalone")&&t.formattingValues){var o=t.defaultFormattingWidth||t.defaultWidth,r=null!=n&&n.width?String(n.width):o;i=t.formattingValues[r]||t.formattingValues[o]}else{var s=t.defaultWidth,a=null!=n&&n.width?String(n.width):t.defaultWidth;i=t.values[a]||t.values[s]}return i[t.argumentCallback?t.argumentCallback(e):e]}}const nk={ordinalNumber:function(t,e){var n=Number(t),i=n%100;if(i>20||i<10)switch(i%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:ek({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:ek({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:function(t){return t-1}}),month:ek({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:ek({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:ek({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})};function ik(t){return function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=n.width,o=i&&t.matchPatterns[i]||t.matchPatterns[t.defaultMatchWidth],r=e.match(o);if(!r)return null;var s,a=r[0],c=i&&t.parsePatterns[i]||t.parsePatterns[t.defaultParseWidth],l=Array.isArray(c)?rk(c,(function(t){return t.test(a)})):ok(c,(function(t){return t.test(a)}));s=t.valueCallback?t.valueCallback(l):l,s=n.valueCallback?n.valueCallback(s):s;var d=e.slice(a.length);return{value:s,rest:d}}}function ok(t,e){for(var n in t)if(t.hasOwnProperty(n)&&e(t[n]))return n}function rk(t,e){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:{},n=t.match(sk.matchPattern);if(!n)return null;var i=n[0],o=t.match(sk.parsePattern);if(!o)return null;var r=sk.valueCallback?sk.valueCallback(o[0]):o[0];r=e.valueCallback?e.valueCallback(r):r;var s=t.slice(i.length);return{value:r,rest:s}}),era:ik({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:ik({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:function(t){return t+1}}),month:ik({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:ik({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:ik({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})};const ck={code:"en-US",formatDistance:Yb,formatLong:Qb,formatRelative:tk,localize:nk,match:ak,options:{weekStartsOn:0,firstWeekContainsDate:1}};var lk=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,dk=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,uk=/^'([^]*?)'?$/,hk=/''/g,mk=/[a-zA-Z]/;function gk(t){var e=t.match(uk);return e?e[1].replace(hk,"'"):t}Math.pow(10,8);var pk=36e5;var fk={dateTimeDelimiter:/[T ]/,timeZoneDelimiter:/[Z ]/i,timezone:/([Z+-].*)$/},bk=/^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/,kk=/^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/,xk=/^([+-])(\d{2})(?::?(\d{2}))?$/;function wk(t){var e,n={},i=t.split(fk.dateTimeDelimiter);if(i.length>2)return n;if(/:/.test(i[0])?e=i[0]:(n.date=i[0],e=i[1],fk.timeZoneDelimiter.test(n.date)&&(n.date=t.split(fk.timeZoneDelimiter)[0],e=t.substr(n.date.length,t.length))),e){var o=fk.timezone.exec(e);o?(n.time=e.replace(o[1],""),n.timezone=o[1]):n.time=e}return n}function _k(t,e){var n=new RegExp("^(?:(\\d{4}|[+-]\\d{"+(4+e)+"})|(\\d{2}|[+-]\\d{"+(2+e)+"})$)"),i=t.match(n);if(!i)return{year:NaN,restDateString:""};var o=i[1]?parseInt(i[1]):null,r=i[2]?parseInt(i[2]):null;return{year:null===r?o:100*r,restDateString:t.slice((i[1]||i[2]).length)}}function Ak(t,e){if(null===e)return new Date(NaN);var n=t.match(bk);if(!n)return new Date(NaN);var i=!!n[4],o=vk(n[1]),r=vk(n[2])-1,s=vk(n[3]),a=vk(n[4]),c=vk(n[5])-1;if(i)return function(t,e,n){return e>=1&&e<=53&&n>=0&&n<=6}(0,a,c)?function(t,e,n){var i=new Date(0);i.setUTCFullYear(t,0,4);var o=i.getUTCDay()||7,r=7*(e-1)+n+1-o;return i.setUTCDate(i.getUTCDate()+r),i}(e,a,c):new Date(NaN);var l=new Date(0);return function(t,e,n){return e>=0&&e<=11&&n>=1&&n<=(Tk[e]||(Dk(t)?29:28))}(e,r,s)&&function(t,e){return e>=1&&e<=(Dk(t)?366:365)}(e,o)?(l.setUTCFullYear(e,r,Math.max(o,s)),l):new Date(NaN)}function vk(t){return t?parseInt(t):1}function Ck(t){var e=t.match(kk);if(!e)return NaN;var n=yk(e[1]),i=yk(e[2]),o=yk(e[3]);return function(t,e,n){if(24===t)return 0===e&&0===n;return n>=0&&n<60&&e>=0&&e<60&&t>=0&&t<25}(n,i,o)?n*pk+6e4*i+1e3*o:NaN}function yk(t){return t&&parseFloat(t.replace(",","."))||0}function Ek(t){if("Z"===t)return 0;var e=t.match(xk);if(!e)return 0;var n="+"===e[1]?-1:1,i=parseInt(e[2]),o=e[3]&&parseInt(e[3])||0;return function(t,e){return e>=0&&e<=59}(0,o)?n*(i*pk+6e4*o):NaN}var Tk=[31,null,31,30,31,30,31,31,30,31,30,31];function Dk(t){return t%400==0||t%4==0&&t%100!=0}function Sk(t){rb(1,arguments);var e=lb(t);return e.setHours(0,0,0,0),e}var Ik=864e5;const Bk=["string","dateTimeFormat","'Yesterday' hh:mma","MM-dd-yyyy hh:mma","'Today' hh:mma"];var Mk,Nk;Mk=Bk,Nk=117,function(t){for(;--t;)Mk.push(Mk.shift())}(++Nk);const Ok=function(t,e){return Bk[t-=0]};function Pk(t={}){if(void 0!==t[Ok("0x4")]&&"function"!=typeof t.dateTimeFormat)throw new _u.CKEditorError("invalid-date-time-format");return e=>{const n=Ok("0x3")==typeof e?function(t,e){var n;rb(1,arguments);var i=ub(null!==(n=null==e?void 0:e.additionalDigits)&&void 0!==n?n:2);if(2!==i&&1!==i&&0!==i)throw new RangeError("additionalDigits must be 0, 1 or 2");if("string"!=typeof t&&"[object String]"!==Object.prototype.toString.call(t))return new Date(NaN);var o,r=wk(t);if(r.date){var s=_k(r.date,i);o=Ak(s.restDateString,s.year)}if(!o||isNaN(o.getTime()))return new Date(NaN);var a,c=o.getTime(),l=0;if(r.time&&(l=Ck(r.time),isNaN(l)))return new Date(NaN);if(!r.timezone){var d=new Date(c+l),u=new Date(0);return u.setFullYear(d.getUTCFullYear(),d.getUTCMonth(),d.getUTCDate()),u.setHours(d.getUTCHours(),d.getUTCMinutes(),d.getUTCSeconds(),d.getUTCMilliseconds()),u}return a=Ek(r.timezone),isNaN(a)?new Date(NaN):new Date(c+l+a)}(e):e,i=function(t,e){rb(2,arguments);var n=Sk(t),i=Sk(e),o=n.getTime()-Ub(n),r=i.getTime()-Ub(i);return Math.round((o-r)/Ik)}(new Date,n);return t.dateTimeFormat?t.dateTimeFormat(n):function(t,e,n){var i,o,r,s,a,c,l,d,u,h,m,g,p,f,b,k,x,w;rb(2,arguments);var _=String(e),A=wb(),v=null!==(i=null!==(o=null==n?void 0:n.locale)&&void 0!==o?o:A.locale)&&void 0!==i?i:ck,C=ub(null!==(r=null!==(s=null!==(a=null!==(c=null==n?void 0:n.firstWeekContainsDate)&&void 0!==c?c:null==n||null===(l=n.locale)||void 0===l||null===(d=l.options)||void 0===d?void 0:d.firstWeekContainsDate)&&void 0!==a?a:A.firstWeekContainsDate)&&void 0!==s?s:null===(u=A.locale)||void 0===u||null===(h=u.options)||void 0===h?void 0:h.firstWeekContainsDate)&&void 0!==r?r:1);if(!(C>=1&&C<=7))throw new RangeError("firstWeekContainsDate must be between 1 and 7 inclusively");var y=ub(null!==(m=null!==(g=null!==(p=null!==(f=null==n?void 0:n.weekStartsOn)&&void 0!==f?f:null==n||null===(b=n.locale)||void 0===b||null===(k=b.options)||void 0===k?void 0:k.weekStartsOn)&&void 0!==p?p:A.weekStartsOn)&&void 0!==g?g:null===(x=A.locale)||void 0===x||null===(w=x.options)||void 0===w?void 0:w.weekStartsOn)&&void 0!==m?m:0);if(!(y>=0&&y<=6))throw new RangeError("weekStartsOn must be between 0 and 6 inclusively");if(!v.localize)throw new RangeError("locale must contain localize property");if(!v.formatLong)throw new RangeError("locale must contain formatLong property");var E=lb(t);if(!db(E))throw new RangeError("Invalid time value");var T=Ub(E),D=mb(E,T),S={firstWeekContainsDate:C,weekStartsOn:y,locale:v,_originalDate:E};return _.match(dk).map((function(t){var e=t[0];return"p"===e||"P"===e?(0,Hb[e])(t,v.formatLong):t})).join("").match(lk).map((function(i){if("''"===i)return"'";var o=i[0];if("'"===o)return gk(i);var r=zb[o];if(r)return null!=n&&n.useAdditionalWeekYearTokens||!Gb(i)||Kb(i,e,String(t)),null!=n&&n.useAdditionalDayOfYearTokens||!Zb(i)||Kb(i,e,String(t)),r(D,i,v.localize,S);if(o.match(mk))throw new RangeError("Format string contains an unescaped latin alphabet character `"+o+"`");return i})).join("")}(n,0===i?Ok("0x2"):1===i?Ok("0x0"):i<7?"'Last' EEEE hh:mma":Ok("0x1"))}}const Rk=["values","domConverter","markerNameToElements","view","name","mapper"];var Lk,zk;Lk=Rk,zk=346,function(t){for(;--t;)Lk.push(Lk.shift())}(++zk);const jk=function(t,e){return Rk[t-=0]};function Fk(t,e){const n=t[jk("0x1")][jk("0x4")](e[jk("0x0")]),i=(0,_u.first)(n[jk("0x2")]());return t[jk("0x5")][jk("0x3")].mapViewToDom(i)}const Vk=["indexOf","push","join","replace","length","...","split","pop","slice","substring","startsWith"];var Hk,Uk;Hk=Vk,Uk=399,function(t){for(;--t;)Hk.push(Hk.shift())}(++Uk);const qk=function(t,e){return Vk[t-=0]};function Wk(t,{limit:e,suffix:n=qk("0x2")}){const i=[];let o=0;const r=t[qk("0x0")](//g,">\n")[qk("0x0")](/^\n/g,"")[qk("0x0")](/\n$/g,"")[qk("0x3")]("\n");for(let t=0;t=e){const t=s.match(/[a-zA-Z]+/)[0];s[qk("0x7")]("=e)s="";else if(o+a[qk("0x1")]>=e){let t=e-o;if(" "===a[t-1])t--;else{const e=a[qk("0x5")](t)[qk("0x8")](" ");-1!==e?t+=e:t=s[qk("0x1")]}s=a[qk("0x5")](0,t).join("")+n,o=e}else o+=a[qk("0x1")];r[t]=s}return r[qk("0xa")]("\n")[qk("0x0")](/\n/g,"")}function Zk(t){const e=[];for(let n=0;nthis[Yk("0x10")](i))),o}}var Qk,Xk,tx=["appendChild","message","render","destroy","once","isConfirm","set","_removeConfirm","confirmView","element","cancel","locale","submit","remove"];Qk=tx,Xk=427,function(t){for(;--t;)Qk.push(Qk.shift())}(++Xk);var ex=function(t,e){return tx[t-=0]};const nx={showConfirm(t,e){return this[ex("0x1")]=new Jk(this[ex("0x4")]),this[ex("0x1")][ex("0x9")](),this[ex("0x1")][ex("0x8")]=t,this[ex("0x1")][ex("0xb")](ex("0x3"),(()=>{this[ex("0x0")]()})),this[ex("0x1")][ex("0xb")](ex("0x5"),(()=>{this[ex("0x0")]()})),e[ex("0x7")](this[ex("0x1")].element),this.registerChild(this[ex("0x1")]),this[ex("0xd")](ex("0xc"),!0),new Promise((t=>this[ex("0x1")].on(ex("0x5"),t)))},cancelConfirm(){this[ex("0xc")]&&this[ex("0x1")].fire(ex("0x3"))},_removeConfirm(){this[ex("0x1")][ex("0x2")][ex("0x6")](),this.deregisterChild(this.confirmView),this.isConfirm=!1,this[ex("0x1")][ex("0xa")](),delete this[ex("0x1")]}},ix=["toString","number","keys","sign","sort","boolean"];var ox,rx;ox=ix,rx=500,function(t){for(;--t;)ox.push(ox.shift())}(++rx);const sx=function(t,e){return ix[t-=0]};function ax(t){let e=0,n=0;for(const i of lx(t))e=(e<<5)-e+i,e&=e,[e,n]=[n,e];return hx(e)+hx(n)}function*cx(t){t?sx("0x3")==typeof t?yield 1:Array.isArray(t)?yield*function*(t){for(const e of t)yield*cx(e)}(t):"object"==typeof t?yield*lx(t):"string"==typeof t?yield*dx(t):sx("0x5")==typeof t&&(yield t):yield 0}function*lx(t){if(yield ux("{"),t){const e=Object[sx("0x0")](t)[sx("0x2")]();for(const n of e){yield*dx(n),yield ux(":");const e=t[n];yield*cx(e)}}yield ux("}")}function*dx(t){yield ux('"');for(const e of t)yield ux(e);yield ux('"')}function ux(t){return t.charCodeAt(0)}function hx(t){return(t*=Math[sx("0x1")](t))[sx("0x4")](36)}var mx=__webpack_require__(9032),gx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(mx.Z,gx);mx.Z.locals;var px=__webpack_require__(6533),fx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(px.Z,fx);px.Z.locals;var bx=__webpack_require__(8136),kx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(bx.Z,kx);bx.Z.locals;var xx=__webpack_require__(8350),wx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(xx.Z,wx);xx.Z.locals;var _x=__webpack_require__(9224),Ax={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(_x.Z,Ax);_x.Z.locals;var vx=__webpack_require__(2102),Cx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(vx.Z,Cx);vx.Z.locals;var yx=__webpack_require__(9050),Ex={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(yx.Z,Ex);yx.Z.locals;var Tx=__webpack_require__(4807),Dx={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Tx.Z,Dx);Tx.Z.locals;var Sx,Ix,Bx=["updateComment","getComment","addComment","model","remove","update","view","removeComment","removeCommentThread","_localUser","listenTo","_isAttached","stopListening","destroy"];Sx=Bx,Ix=297,function(t){for(;--t;)Sx.push(Sx.shift())}(++Ix);var Mx=function(t,e){return Bx[t-=0]};class Nx{constructor(t,e){this[Mx("0x0")]=t,this[Mx("0x0")][Mx("0x8")]=!0,this[Mx("0x3")]=e,this[Mx("0x7")](e,Mx("0x5"),(()=>this.remove())),this.listenTo(e,"addComment",((t,e)=>this.addComment(e))),this[Mx("0x7")](e,Mx("0xb"),((t,e,n)=>this.updateComment(e,n))),this.listenTo(e,Mx("0x4"),((t,e)=>this[Mx("0x4")](e)))}[Mx("0x1")](){this[Mx("0x0")][Mx("0x1")]()}[Mx("0xd")](t){this.model.addComment({content:t,authorId:this[Mx("0x3")][Mx("0x6")].id})}updateComment(t,e){this[Mx("0x0")][Mx("0xc")](t)[Mx("0x2")]({content:e})}removeComment(t){this[Mx("0x0")][Mx("0xc")](t)[Mx("0x1")]()}[Mx("0xa")](){this[Mx("0x9")](),this.model[Mx("0x8")]=!1}}function Ox(t,e,n){const i=t.t;switch(e){case"PENDING_ACTION_COMMENT_THREAD":return i({string:"Unsaved change in comment thread.",id:"PENDING_ACTION_COMMENT_THREAD"});case"Comment":return i("Comment");case"Reply...":return i("Reply...");case"Write a comment...":return i("Write a comment...");case"Comment editor":return i("Comment editor");case"Delete comment thread?":return i("Delete comment thread?");case"Delete comment?":return i("Delete comment?");case"Cancel":return i("Cancel");case"Edit":return i("Edit");case"Remove":return i("Remove");case"Submit":return i("Submit");case"NUMBER_OF_COMMENTS":return i({string:"%0 Comment",plural:"%0 Comments",id:"NUMBER_OF_COMMENTS"},n);case"TOO_LONG_COMMENT_ALERT":return i({string:"Comment content is too long. Your comment has %0 characters but the limit is %1 characters.",id:"TOO_LONG_COMMENT_ALERT"},n);case"EXTERNAL_COMMENT":return i({string:"This comment comes from an external source.",id:"EXTERNAL_COMMENT"});case"EXTERNAL_IMPORT_WORD_COMMENT":return i({string:"This comment comes from an imported Word file.",id:"EXTERNAL_IMPORT_WORD_COMMENT"});case"EXTERNAL_AVATAR":return i({string:"Displayed author name comes from external source (added by %0)",id:"EXTERNAL_AVATAR"},n);case"EXTERNAL_IMPORT_WORD_AVATAR":return i({string:"Displayed author name comes from a Word document imported by %0",id:"EXTERNAL_IMPORT_WORD_AVATAR"},n)}}(0,_u.mix)(Nx,_u.ObservableMixin);const Px=["cke-editor__aria-label_","render","main","_createVoiceLabel","text","setTemplate","extendTemplate","ck-voice-label","focus","ck-editor","add","ck-editor__aria-label_","element","div","presentation","editable","ck-editor__main","uiLanguage","comment","ck-reset","ck-comment__input","createCollection","ck-rounded-corners","_voiceLabelView"];var Rx,Lx;Rx=Px,Lx=488,function(t){for(;--t;)Rx.push(Rx.shift())}(++Lx);const zx=function(t,e){return Px[t-=0]};class jx extends Dh{constructor(t,e){super(t);const n=(0,_u.uid)();this[zx("0x12")]=this[zx("0xd")](),this[zx("0x7")]=new Oh(t,e),this[zx("0xf")]=this[zx("0x13")](n,t),this[zx("0x15")]({tag:zx("0x5"),attributes:{class:[zx("0xb"),zx("0x1"),zx("0xe"),zx("0xc")],role:zx("0xa"),dir:t.uiLanguageDirection,lang:t[zx("0x9")],"aria-labelledby":zx("0x10")+n},children:[this[zx("0xf")],{tag:zx("0x5"),attributes:{class:zx("0x8"),role:zx("0x6")},children:this[zx("0x12")]}]})}render(){super[zx("0x11")](),this.main[zx("0x2")](this[zx("0x7")])}[zx("0x0")](){this.editable[zx("0x4")][zx("0x0")]()}_createVoiceLabel(t,e){const n=new Bh;return n[zx("0x14")]=Ox(e,"Comment editor"),n[zx("0x16")]({attributes:{id:zx("0x3")+t,class:zx("0x17")}}),n}}const Fx=["rootName","render","init","focusTracker","isFocused","setEditableElement","getRoot","ready","document","editing","attachDomRoot","name","editable","destroy","view","element","editor","fire"];var Vx,Hx;Vx=Fx,Hx=404,function(t){for(;--t;)Vx.push(Vx.shift())}(++Hx);const Ux=function(t,e){return Fx[t-=0]};class qx extends lu{constructor(t){super(t),this[Ux("0x6")]=new jx(t.locale,t[Ux("0x1")][Ux("0x6")])}get element(){return this[Ux("0x6")].element}[Ux("0xc")](){const t=this[Ux("0x8")][Ux("0x1")][Ux("0x6")],e=this.view.editable,n=t[Ux("0x0")][Ux("0x10")]();e[Ux("0x3")]=n[Ux("0xa")],this.view[Ux("0xb")]();const i=e[Ux("0x7")];this[Ux("0xf")](e[Ux("0x3")],i),this[Ux("0x6")][Ux("0x4")].bind(Ux("0xe")).to(this[Ux("0xd")]),t[Ux("0x2")](i),this[Ux("0x9")](Ux("0x11"))}[Ux("0x5")](){super.destroy(),this[Ux("0x6")].destroy()}}class Wx extends kr{constructor(t){super(t);const e=this.document;function n(t){return(n,i)=>{i.preventDefault();const o=i.dropRange?[i.dropRange]:null,r=new Ji.Z(e,t);e.fire(r,{dataTransfer:i.dataTransfer,method:n.name,targetRanges:o,target:i.target}),r.stop.called&&i.stopPropagation()}}this.domEventType=["paste","copy","cut","drop","dragover","dragstart","dragend","dragenter","dragleave"],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={dataTransfer:new ss("clipboardData"in t?t.clipboardData:t.dataTransfer)};"drop"!=t.type&&"dragover"!=t.type||(e.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,e)}}const Zx=["figcaption","li"];function Gx(t){let e="";if(t.is("$text")||t.is("$textProxy"))e=t.data;else if(t.is("element","img")&&t.hasAttribute("alt"))e=t.getAttribute("alt");else if(t.is("element","br"))e="\n";else{let n=null;for(const i of t.getChildren()){const t=Gx(i);n&&(n.is("containerElement")||i.is("containerElement"))&&(Zx.includes(n.name)||Zx.includes(i.name)?e+="\n":e+="\n\n"),e+=t,n=i}}return e}class Kx extends e{static get pluginName(){return"ClipboardPipeline"}init(){this.editor.editing.view.addObserver(Wx),this._setupPasteDrop(),this._setupCopyCut()}_setupPasteDrop(){const t=this.editor,e=t.model,n=t.editing.view,i=n.document;this.listenTo(i,"clipboardInput",(e=>{t.isReadOnly&&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(/\r?\n\r?\n/g,"

    ").replace(/\r?\n/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 Ji.Z(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,n)=>{n.resultRange=e.insertContent(n.content)}),{priority:"low"})}_setupCopyCut(){const t=this.editor,e=t.model.document,n=t.editing.view.document,i=(i,o)=>{const r=o.dataTransfer;o.preventDefault();const s=t.data.toView(t.model.getSelectedContent(e.selection));n.fire("clipboardOutput",{dataTransfer:r,content:s,method:i.name})};this.listenTo(n,"copy",i,{priority:"low"}),this.listenTo(n,"cut",((e,n)=>{t.isReadOnly?n.preventDefault():i(e,n)}),{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",Gx(i.content))),"cut"==i.method&&t.model.deleteContent(e.selection)}),{priority:"low"})}}class $x extends Cn.Q5{constructor(){super(),this._stack=[]}add(t,e){const n=this._stack,i=n[0];this._insertDescriptor(t);const o=n[0];i===o||Yx(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||Yx(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(Yx(t,e[n]))return;n>-1&&e.splice(n,1);let i=0;for(;e[i]&&Jx(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 Yx(t,e){return t&&e&&t.priority==e.priority&&Qx(t.classes)==Qx(e.classes)}function Jx(t,e){return t.priority>e.priority||!(t.priorityQx(e.classes)}function Qx(t){return Array.isArray(t)?t.sort().join(","):t}const Xx='',tw="ck-widget_selected";function ew(t){return!!t.is("element")&&!!t.getCustomProperty("widget")}function nw(t,e,n={}){if(!t.is("containerElement"))throw new vn.ZP("widget-to-widget-wrong-element-type",null,{element:t});return e.setAttribute("contenteditable","false",t),e.addClass("ck-widget",t),e.setCustomProperty("widget",!0,t),t.getFillerOffset=lw,n.label&&function(t,e,n){n.setCustomProperty("widgetLabel",e,t)}(t,n.label,e),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 Iu;return n.set("content",Xx),n.render(),e.appendChild(n.element),e}));e.insert(e.createPositionAt(t,0),n),e.addClass(["ck-widget_with-selection-handle"],t)}(t,e),rw(t,e),t}function iw(t,e,n){if(e.classes&&n.addClass((0,Rn.Z)(e.classes),t),e.attributes)for(const i in e.attributes)n.setAttribute(i,e.attributes[i],t)}function ow(t,e,n){if(e.classes&&n.removeClass((0,Rn.Z)(e.classes),t),e.attributes)for(const i in e.attributes)n.removeAttribute(i,t)}function rw(t,e,n=iw,i=ow){const o=new $x;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 sw(t){const e=t.getCustomProperty("widgetLabel");return e?"function"==typeof e?e():e:""}function aw(t,e,n={}){return e.addClass(["ck-editor__editable","ck-editor__nested-editable"],t),e.setAttribute("role","textbox",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)})),rw(t,e),t}function cw(t,e){const n=t.getSelectedElement();if(n){const i=hw(t);if(i)return e.createRange(e.createPositionAt(n,i))}return rd(t,e)}function lw(){return null}const dw="widget-type-around";function uw(t,e,n){return!!t&&ew(t)&&!n.isInline(e)}function hw(t){return t.getAttribute(dw)}var mw=__webpack_require__(5137),gw={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(mw.Z,gw);mw.Z.locals;const pw=["before","after"],fw=(new DOMParser).parseFromString('',"image/svg+xml").firstChild,bw="ck-widget__type-around_disabled";class kw extends e{constructor(t){super(t),this._currentFakeCaretModelElement=null}static get pluginName(){return"WidgetTypeAround"}static get requires(){return[Tp,dg]}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(bw,n):t.addClass(bw,n)})),o||t.model.change((t=>{t.removeSelectionAttribute(dw)}))})),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=hw(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,n,o)=>{const r=o.mapper.toViewElement(n.item);uw(r,n.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 pw){const i=new xd({tag:"div",attributes:{class:["ck","ck-widget__type-around__button",`ck-widget__type-around__button_${n}`],title:e[n]},children:[t.ownerDocument.importNode(fw,!0)]});t.appendChild(i.render())}}(n,e),function(t){const e=new xd({tag:"div",attributes:{class:["ck","ck-widget__type-around__fake-caret"]}});t.appendChild(e.render())}(n),n}));t.insert(t.createPositionAt(n,"end"),i)}(o.writer,i,r)}),{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:[ew,"$text"],priority:"high"}),this._listenToIfEnabled(n,"change:range",((e,n)=>{n.directChange&&t.model.change((t=>{t.removeSelectionAttribute(dw)}))})),this._listenToIfEnabled(e.document,"change:data",(()=>{const e=n.getSelectedElement();if(e){if(uw(t.editing.mapper.toViewElement(e),e,i))return}t.model.change((t=>{t.removeSelectionAttribute(dw)}))})),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(pw.map(r),t),this._currentFakeCaretModelElement=null)}const s=e.selection.getSelectedElement();if(!s)return;const a=n.mapper.toViewElement(s);if(!uw(a,s,i))return;const c=hw(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(dw)}))}))}_handleArrowKeyPress(t,e){const n=this.editor,i=n.model,o=i.document.selection,r=i.schema,s=n.editing.view,a=e.keyCode,c=(0,ho.Zt)(a,n.locale.contentLanguageDirection),l=s.document.selection.getSelectedElement();let d;uw(l,n.editing.mapper.toModelElement(l),r)?d=this._handleArrowKeyPressOnSelectedWidget(c):o.isCollapsed?d=this._handleArrowKeyPressWhenSelectionNextToAWidget(c):e.shiftKey||(d=this._handleArrowKeyPressWhenNonCollapsedSelection(c)),d&&(e.preventDefault(),t.stop())}_handleArrowKeyPressOnSelectedWidget(t){const e=this.editor.model,n=hw(e.document.selection);return e.change((e=>{if(!n)return e.setSelectionAttribute(dw,t?"after":"before"),!0;if(!(n===(t?"after":"before")))return e.removeSelectionAttribute(dw),!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!!uw(e.editing.mapper.toViewElement(r),r,i)&&(n.change((e=>{o._setSelectionOverElement(r),e.setSelectionAttribute(dw,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!!uw(o.toViewElement(s),s,i)&&(n.change((e=>{e.setSelection(s,"on"),e.setSelectionAttribute(dw,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:uw(r,o,s)&&(this._insertParagraph(o,i.isSoft?"before":"after"),a=!0),a&&(i.preventDefault(),n.stop())}),{context:ew})}_enableInsertingParagraphsOnTypingKeystroke(){const t=this.editor.editing.view.document;this._listenToIfEnabled(t,"insertText",((e,n)=>{this._insertParagraphAccordingToFakeCaretPosition()&&(n.selection=t.selection)}),{priority:"high"}),Wo.ZP.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=hw(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:ew})}_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=hw(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=hw(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;hw(e)&&t.stop()}),{priority:"high"})}}function xw(t){const e=t.model;return(n,i)=>{const o=i.keyCode==ho.Do.arrowup,r=i.keyCode==ho.Do.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=ww(i,t,"forward");if(!n)return null;const o=i.createRange(t,n),r=_w(i.schema,o,"backward");return r?i.createRange(t,r):null}{const t=e.isCollapsed?e.focus:e.getFirstPosition(),n=ww(i,t,"backward");if(!n)return null;const o=i.createRange(n,t),r=_w(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=Ud.Z.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 ww(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 _w(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 Aw=__webpack_require__(6507),vw={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Aw.Z,vw);Aw.Z.locals;class Cw extends e{static get pluginName(){return"Widget"}static get requires(){return[kw,dg]}init(){const t=this.editor,e=t.editing.view,n=e.document;this._previouslySelected=new Set,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);ew(a)&&i.consumable.consume(r,"selection")&&o.setSelection(o.createRangeOn(a),{fake:!0,label:sw(a)})})),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;ew(t)&&!yw(t,r)&&(i.addClass(tw,t),this._previouslySelected.add(t),r=t)}}),{priority:"low"}),e.addObserver(fl),this.listenTo(n,"mousedown",((...t)=>this._onMousedown(...t))),this.listenTo(n,"arrowKey",((...t)=>{this._handleSelectionChangeOnArrowKeyPress(...t)}),{context:[ew,"$text"]}),this.listenTo(n,"arrowKey",((...t)=>{this._preventDefaultOnArrowKeyPress(...t)}),{context:"$root"}),this.listenTo(n,"arrowKey",xw(this.editor.editing),{context:"$text"}),this.listenTo(n,"delete",((t,e)=>{this._handleDelete("forward"==e.direction)&&(e.preventDefault(),t.stop())}),{context:"$root"})}_onMousedown(t,e){const n=this.editor,i=n.editing.view,o=i.document;let r=e.target;if(function(t){let e=t;for(;e;){if(e.is("editableElement")&&!e.is("rootElement"))return!0;if(ew(e))return!1;e=e.parent}return!1}(r)){if((Wo.ZP.isSafari||Wo.ZP.isGecko)&&e.domEvent.detail>=3){const t=n.editing.mapper,i=r.is("attributeElement")?r.findAncestor((t=>!t.is("attributeElement"))):r,o=t.toModelElement(i);e.preventDefault(),this.editor.model.change((t=>{t.setSelection(o,"in")}))}return}if(!ew(r)&&(r=r.findAncestor(ew),!r))return;Wo.ZP.isAndroid&&e.preventDefault(),o.isFocused||i.focus();const s=n.editing.mapper.toModelElement(r);this._setSelectionOverElement(s)}_handleSelectionChangeOnArrowKeyPress(t,e){const n=e.keyCode,i=this.editor.model,o=i.schema,r=i.document.selection,s=r.getSelectedElement(),a=(0,ho.mA)(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){if(this.editor.isReadOnly)return;const e=this.editor.model.document.selection;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(tw,e);this._previouslySelected.clear()}}function yw(t,e){return!!e&&Array.from(t.getAncestors()).includes(e)}const Ew=function(t,e,n){var i=!0,o=!0;if("function"!=typeof t)throw new TypeError("Expected a function");return(0,B.Z)(n)&&(i="leading"in n?!!n.leading:i,o="trailing"in n?!!n.trailing:o),Mr(t,e,{leading:i,maxWait:e,trailing:o})};var Tw=__webpack_require__(390),Dw={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Tw.Z,Dw);Tw.Z.locals;class Sw extends e{static get pluginName(){return"DragDrop"}static get requires(){return[Kx,Cw]}init(){const t=this.editor,e=t.editing.view;this._draggedRange=null,this._draggingUid="",this._draggableElement=null,this._updateDropMarkerThrottled=Ew((t=>this._updateDropMarker(t)),40),this._removeDropMarkerDelayed=Mw((()=>this._removeDropMarker()),40),this._clearDraggableAttributesDelayed=Mw((()=>this._clearDraggableAttributes()),40),e.addObserver(Wx),e.addObserver(fl),this._setupDragging(),this._setupContentInsertionIntegration(),this._setupClipboardInputIntegration(),this._setupDropMarker(),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)})),Wo.ZP.isAndroid&&this.forceDisabled("noAndroidSupport")}destroy(){return this._draggedRange&&(this._draggedRange.detach(),this._draggedRange=null),this._updateDropMarkerThrottled.cancel(),this._removeDropMarkerDelayed.cancel(),this._clearDraggableAttributesDelayed.cancel(),super.destroy()}_setupDragging(){const t=this.editor,e=t.model,n=e.document,i=t.editing.view,o=i.document;this.listenTo(o,"dragstart",((i,r)=>{const s=n.selection;if(r.target&&r.target.is("editableElement"))return void r.preventDefault();const a=r.target?Nw(r.target):null;if(a){const n=t.editing.mapper.toModelElement(a);this._draggedRange=js.fromRange(e.createRangeOn(n)),t.plugins.has("WidgetToolbarRepository")&&t.plugins.get("WidgetToolbarRepository").forceDisabled("dragDrop")}else if(!o.selection.isCollapsed){const t=o.selection.getSelectedElement();t&&ew(t)||(this._draggedRange=js.fromRange(s.getFirstRange()))}if(!this._draggedRange)return void r.preventDefault();this._draggingUid=(0,Hs.Z)(),r.dataTransfer.effectAllowed=this.isEnabled?"copyMove":"copy",r.dataTransfer.setData("application/ckeditor5-dragging-uid",this._draggingUid);const c=e.createSelection(this._draggedRange.toRange()),l=t.data.toView(e.getSelectedContent(c));o.fire("clipboardOutput",{dataTransfer:r.dataTransfer,content:l,method:"dragstart"}),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.listenTo(o,"dragenter",(()=>{this.isEnabled&&i.focus()})),this.listenTo(o,"dragleave",(()=>{this._removeDropMarkerDelayed()})),this.listenTo(o,"dragging",((e,n)=>{if(!this.isEnabled)return void(n.dataTransfer.dropEffect="none");this._removeDropMarkerDelayed.cancel();const i=Iw(t,n.targetRanges,n.target);this._draggedRange||(n.dataTransfer.dropEffect="copy"),Wo.ZP.isGecko||("copy"==n.dataTransfer.effectAllowed?n.dataTransfer.dropEffect="copy":["all","copyMove"].includes(n.dataTransfer.effectAllowed)&&(n.dataTransfer.dropEffect="move")),i&&this._updateDropMarkerThrottled(i)}),{priority:"low"})}_setupClipboardInputIntegration(){const t=this.editor,e=t.editing.view.document;this.listenTo(e,"clipboardInput",((e,n)=>{if("drop"!=n.method)return;const i=Iw(t,n.targetRanges,n.target);if(this._removeDropMarker(),!i)return this._finalizeDragging(!1),void e.stop();this._draggedRange&&this._draggingUid!=n.dataTransfer.getData("application/ckeditor5-dragging-uid")&&(this._draggedRange.detach(),this._draggedRange=null,this._draggingUid="");if("move"==Bw(n.dataTransfer)&&this._draggedRange&&this._draggedRange.containsRange(i,!0))return this._finalizeDragging(!1),void e.stop();n.targetRanges=[t.editing.mapper.toViewRange(i)]}),{priority:"high"})}_setupContentInsertionIntegration(){const t=this.editor.plugins.get(Kx);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"==Bw(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(Wo.ZP.isAndroid||!o)return;this._clearDraggableAttributesDelayed.cancel();let r=Nw(o.target);if(Wo.ZP.isBlink&&!t.isReadOnly&&!r&&!n.selection.isCollapsed){const t=n.selection.getSelectedElement();t&&ew(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",(()=>{Wo.ZP.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}))}_setupDropMarker(){const t=this.editor;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 n.createUIElement("span",{class:"ck ck-clipboard-drop-target-position"},(function(t){const e=this.toDomElement(t);return e.append("⁠",t.createElement("span"),"⁠"),e}))}})}_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})}))}_removeDropMarker(){const t=this.editor.model;this._removeDropMarkerDelayed.cancel(),this._updateDropMarkerThrottled.cancel(),t.markers.has("drop-target")&&t.change((t=>{t.removeMarker("drop-target")}))}_finalizeDragging(t){const e=this.editor,n=e.model;this._removeDropMarker(),this._clearDraggableAttributes(),e.plugins.has("WidgetToolbarRepository")&&e.plugins.get("WidgetToolbarRepository").clearForceDisabled("dragDrop"),this._draggingUid="",this._draggedRange&&(t&&this.isEnabled&&n.deleteContent(n.createSelection(this._draggedRange),{doNotAutoparagraph:!0}),this._draggedRange.detach(),this._draggedRange=null)}}function Iw(t,e,n){const i=t.model,o=t.editing.mapper;let r=null;const s=e?e[0].start:null;if(n.is("uiElement")&&(n=n.parent),r=function(t,e){const n=t.model,i=t.editing.mapper;if(ew(e))return n.createRangeOn(i.toModelElement(e));if(!e.is("editableElement")){const t=e.findAncestor((t=>ew(t)||t.is("editableElement")));if(ew(t))return n.createRangeOn(i.toModelElement(t))}return null}(t,n),r)return r;const a=function(t,e){const n=t.editing.mapper,i=t.editing.view,o=n.toModelElement(e);if(o)return o;const r=i.createPositionBefore(e),s=n.findMappedViewAncestor(r);return n.toModelElement(s)}(t,n),c=s?o.toModelPosition(s):null;return c?(r=function(t,e,n){const i=t.model;if(!i.schema.checkChild(n,"$block"))return null;const o=i.createPositionAt(n,0),r=e.path.slice(0,o.path.length),s=i.createPositionFromPath(e.root,r).nodeAfter;if(s&&i.schema.isObject(s))return i.createRangeOn(s);return null}(t,c,a),r||(r=i.schema.getNearestSelectionRange(c,Wo.ZP.isGecko?"forward":"backward"),r||function(t,e){const n=t.model;let i=e;for(;i;){if(n.schema.isObject(i))return n.createRangeOn(i);i=i.parent}return null}(t,c.parent))):function(t,e){const n=t.model,i=n.schema,o=n.createPositionAt(e,0);return i.getNearestSelectionRange(o,"forward")}(t,a)}function Bw(t){return Wo.ZP.isGecko?t.dropEffect:["all","copyMove"].includes(t.effectAllowed)?"move":"copy"}function Mw(t,e){let n;function i(...o){i.cancel(),n=setTimeout((()=>t(...o)),e)}return i.cancel=()=>{clearTimeout(n)},i}function Nw(t){if(t.is("editableElement"))return null;if(t.hasClass("ck-widget__selection-handle"))return t.findAncestor(ew);if(ew(t))return t;const e=t.findAncestor((t=>ew(t)||t.is("editableElement")));return ew(e)?e:null}class Ow extends e{static get pluginName(){return"PastePlainText"}static get requires(){return[Kx]}init(){const t=this.editor,e=t.model,n=t.editing.view,i=n.document,o=e.document.selection;let r=!1;n.addObserver(Wx),this.listenTo(i,"keydown",((t,e)=>{r=e.shiftKey})),t.plugins.get(Kx).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 Pw extends e{static get pluginName(){return"Clipboard"}static get requires(){return[Kx,Sw,Ow]}}class Rw extends i{constructor(t){super(t),this.affectsData=!1}execute(){const t=this.editor.model,e=t.document.selection;let n=t.schema.getLimitElement(e);if(e.containsEntireContent(n)||!Lw(t.schema,n))do{if(n=n.parent,!n)return}while(!Lw(t.schema,n));t.change((t=>{t.setSelection(n,"in")}))}}function Lw(t,e){return t.isLimit(e)&&(t.checkChild(e,"$text")||t.checkChild(e,"paragraph"))}const zw=(0,ho.Zz)("Ctrl+A");class jw extends e{static get pluginName(){return"SelectAllEditing"}init(){const t=this.editor,e=t.editing.view.document;t.commands.add("selectAll",new Rw(t)),this.listenTo(e,"keydown",((e,n)=>{(0,ho.Cq)(n)===zw&&(t.execute("selectAll"),n.preventDefault())}))}}class Fw extends e{static get pluginName(){return"SelectAllUI"}init(){const t=this.editor;t.ui.componentFactory.add("selectAll",(e=>{const n=t.commands.get("selectAll"),i=new Nu(e),o=e.t;return i.set({label:o("Select all"),icon:'',keystroke:"Ctrl+A",tooltip:!0}),i.bind("isEnabled").to(n,"isEnabled"),this.listenTo(i,"execute",(()=>{t.execute("selectAll"),t.editing.view.focus()})),i}))}}class Vw extends e{static get requires(){return[jw,Fw]}static get pluginName(){return"SelectAll"}}class Hw extends i{constructor(t){super(t),this._stack=[],this._createdBatches=new WeakSet,this.refresh(),this.listenTo(t.data,"set",((t,e)=>{e[1]={...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}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=>!qw(t,a)));e.length&&(Uw(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=cl([t.getReversed()],r,{useRelations:!0,document:this.editor.model.document,padWithNoOps:!1,forceWeakRemove:!0}).operationsA;for(const o of s)e.addOperation(o),n.applyOperation(o),i.history.setOperationAsUndone(t,o)}}}function Uw(t){t.sort(((t,e)=>t.start.isBefore(e.start)?-1:1));for(let e=1;ee!==t&&e.containsRange(t,!0)))}class Ww extends Hw{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 Zw extends Hw{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 Gw extends e{constructor(t){super(t),this._batchRegistry=new WeakSet}static get pluginName(){return"UndoEditing"}init(){const t=this.editor;this._undoCommand=new Ww(t),this._redoCommand=new Zw(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")}}const Kw='',$w='';class Yw extends e{static get pluginName(){return"UndoUI"}init(){const t=this.editor,e=t.locale,n=t.t,i="ltr"==e.uiLanguageDirection?Kw:$w,o="ltr"==e.uiLanguageDirection?$w:Kw;this._addButton("undo",n("Undo"),"CTRL+Z",i),this._addButton("redo",n("Redo"),"CTRL+Y",o)}_addButton(t,e,n,i){const o=this.editor;o.ui.componentFactory.add(t,(r=>{const s=o.commands.get(t),a=new Nu(r);return a.set({label:e,icon:i,keystroke:n,tooltip:!0}),a.bind("isEnabled").to(s,"isEnabled"),this.listenTo(a,"execute",(()=>{o.execute(t),o.editing.view.focus()})),a}))}}class Jw extends e{static get requires(){return[Gw,Yw]}static get pluginName(){return"Undo"}}class Qw extends i{refresh(){const t=this.editor.model,e=t.document,n=(0,od.Z)(e.selection.getSelectedBlocks());this.value=!!n&&n.is("element","paragraph"),this.isEnabled=!!n&&Xw(n,t.schema)}execute(t={}){const e=this.editor.model,n=e.document;e.change((i=>{const o=(t.selection||n.selection).getSelectedBlocks();for(const t of o)!t.is("element","paragraph")&&Xw(t,e.schema)&&i.rename(t,"paragraph")}))}}function Xw(t,e){return e.checkChild(t.parent,"paragraph")&&!e.isObject(t)}class t_ extends i{execute(t){const e=this.editor.model,n=t.attributes;let i=t.position;e.change((t=>{const o=t.createElement("paragraph");if(n&&e.schema.setAllowedAttributes(o,n,t),!e.schema.checkChild(i.parent,o)){const n=e.schema.findAllowedParent(i,o);if(!n)return;i=t.split(i,n).position}e.insertContent(o,i),t.setSelection(o,"in")}))}}class e_ extends e{static get pluginName(){return"Paragraph"}init(){const t=this.editor,e=t.model;t.commands.add("paragraph",new Qw(t)),t.commands.add("insertParagraph",new t_(t)),e.schema.register("paragraph",{inheritAllFrom:"$block"}),t.conversion.elementToElement({model:"paragraph",view:"p"}),t.conversion.for("upcast").elementToElement({model:(t,{writer:e})=>e_.paragraphLikeElements.has(t.name)?t.isEmpty?null:e.createElement("paragraph"):null,view:/.+/,converterPriority:"low"})}}e_.paragraphLikeElements=new Set(["blockquote","dd","div","dt","h1","h2","h3","h4","h5","h6","li","p","td","th"]);const n_=["focus","defaultPlugins","childCount","placeholder","_updatePlaceholder","change","create","initPlugins","setSelection","initialData","ready","document","name","view","change:placeholder","getRoot","plugins","assign","editing","init","fire","placeholderElement","getChild","destroy","then","config","set","data","model"];var i_,o_;i_=n_,o_=221,function(t){for(;--t;)i_.push(i_.shift())}(++o_);const r_=function(t,e){return n_[t-=0]};class s_ extends gd{constructor(t={}){(t=Object[r_("0x1c")]({},t))[r_("0x1b")]||(t[r_("0x1b")]=s_[r_("0xc")]),super(t),this.ui=new qx(this),this[r_("0x8")](r_("0xe"),""),this[r_("0xa")][r_("0x16")].on(r_("0x10"),(()=>this[r_("0xf")]()),{priority:"low"}),this.on(r_("0x19"),(()=>this[r_("0xf")]())),this[r_("0xa")][r_("0x16")].createRoot()}[r_("0x11")](){const t=this[r_("0x7")].get(r_("0x14"))||"";return this[r_("0x12")]()[r_("0x6")]((()=>this.ui[r_("0x1")]()))[r_("0x6")]((()=>this[r_("0x9")].init(t))).then((()=>this[r_("0x2")](r_("0x15"))))}[r_("0x5")](){return super[r_("0x5")]()[r_("0x6")]((()=>this.ui.destroy()))}[r_("0xb")](){this[r_("0xa")][r_("0x10")]((t=>{const e=this.model[r_("0x16")][r_("0x1a")](),n=e[r_("0x4")](e.childCount-1);t[r_("0x13")](n,"end"),this[r_("0x0")][r_("0x18")][r_("0xb")]()}))}_updatePlaceholder(){const t=this[r_("0x0")][r_("0x18")],e=t.document[r_("0x1a")](),n=e.getChild(0);e[r_("0xd")]>1||!n||"p"!=n[r_("0x17")]?this.placeholderElement&&(function(t,e){const n=e.document;t.change((t=>{if(!Qc.has(n))return;const i=Qc.get(n),o=i.get(e);t.removeAttribute("data-placeholder",o.hostElement),tl(t,o.hostElement),i.delete(e)}))}(t,this[r_("0x3")]),this[r_("0x3")]=void 0):(Xc({view:t,element:n,text:this[r_("0xe")],keepOnFocus:!0}),this.placeholderElement=n)}}(0,_u.mix)(s_,_u.ObservableMixin),(0,_u.mix)(s_,hu),s_[r_("0xc")]=[Pw,Tp,Bp,Vw,ug,Jw,e_];const a_=["_editorCreationPromise","model","destroy","insertBefore","createEditor","editor","placeholder","focusNext","TOO_LONG_COMMENT_ALERT","ck-comment__input-actions--submit","isEnabled","extendTemplate","submitButtonView","_isDestroyed","setData","_createSubmitButton","label","then","value","Esc","set","tab","focusTracker","add","_initializeFocusCycling","_createCancelButton","fire","div","disabledSubmit","stop","cancelButtonView","cancel","showButtons","bind","ck-comment__input-wrapper","forEach","render","submit","focus","view","Reply...","initialData","keystrokes","length","icon","element","change","editorReady","ck-comment__input-actions--active","bindTemplate","_editorConfig","low","execute","ck-comment__input-actions--cancel"];var c_,l_;c_=a_,l_=473,function(t){for(;--t;)c_.push(c_.shift())}(++l_);const d_=function(t,e){return a_[t-=0]};class u_ extends Hd{constructor(t,e={}){super(t),this[d_("0x12")]=null,this[d_("0x9")]=e,this[d_("0x1")]=new _u.KeystrokeHandler,this[d_("0x23")]=new _u.FocusTracker,this.set(d_("0x1f"),e[d_("0x0")]||""),this[d_("0x21")](d_("0x29"),!1),this[d_("0x21")](d_("0x2d"),!0),this[d_("0x21")](d_("0x13"),Ox(t,d_("0x35"))),this[d_("0x19")]=this._createSubmitButton(),this.cancelButtonView=this[d_("0x26")](),this.setTemplate({tag:d_("0x28"),attributes:{class:[d_("0x2f")]},children:[{tag:d_("0x28"),attributes:{class:["ck-comment__input-actions",this[d_("0x8")].if(d_("0x2d"),d_("0x7"))]},children:[this[d_("0x19")],this[d_("0x2b")]]}]}),this[d_("0x1")][d_("0x21")](d_("0x20"),((t,e)=>{this[d_("0x2b")][d_("0x27")](d_("0xb")),e()})),this.on(d_("0x32"),((e,n)=>{n[d_("0x2")]>65e3?(alert(Ox(t,d_("0x15"),[n[d_("0x2")],65e3])),e[d_("0x2a")]()):this[d_("0x12")][d_("0x1b")]("")}),{priority:"high"})}[d_("0x31")](){super[d_("0x31")](),this.keystrokes.listenTo(this[d_("0x4")]),this[d_("0x23")][d_("0x24")](this.element)}[d_("0x11")](){return this[d_("0x12")]||(this[d_("0x12")]=new s_(this[d_("0x9")]),this._editorCreationPromise=this[d_("0x12")].create()[d_("0x1e")]((()=>{this._isDestroyed||(this[d_("0x4")][d_("0x10")](this.editor.ui[d_("0x4")],this[d_("0x4")].firstChild),this[d_("0x12")][d_("0xe")].document.on(d_("0x5"),(()=>this[d_("0x1f")]=this.editor.getData())),this[d_("0x12")][d_("0x2e")](d_("0x13")).to(this),this[d_("0x25")](this[d_("0x12")]),this[d_("0x27")](d_("0x6")))}))),this[d_("0xd")]}focus(){this.editor&&this.editor[d_("0x33")]()}async[d_("0xf")](){this[d_("0x1a")]||(this[d_("0x1a")]=!0,this.editor&&(await this[d_("0xd")],await this[d_("0x12")][d_("0xf")]()),await super.destroy())}[d_("0x1c")](){const{locale:t}=this,e=new Nu(t);return e[d_("0x18")]({attributes:{class:[d_("0x16")]}}),e.label=Ox(t,"Submit"),e.icon=wu.check,e.on(d_("0xb"),(()=>{this[d_("0x27")](d_("0x32"),this[d_("0x1f")])})),e[d_("0x2e")](d_("0x17")).to(this,d_("0x1f"),this,"disabledSubmit",((t,e)=>!e&&!!t.trim())),e}_createCancelButton(){const{locale:t}=this,e=new Nu(t);return e[d_("0x18")]({attributes:{class:[d_("0xc")]}}),e[d_("0x1d")]=Ox(t,"Cancel"),e[d_("0x3")]=wu[d_("0x2c")],e.on(d_("0xb"),(()=>{this[d_("0x12")][d_("0x1b")](""),this.fire(d_("0x2c"))})),e}[d_("0x25")](t){const e=this[d_("0x23")],n=new kd;[t.ui[d_("0x34")],this.submitButtonView,this.cancelButtonView][d_("0x30")]((t=>{n[d_("0x24")](t),e[d_("0x24")](t[d_("0x4")])}));const i=new Xu({focusables:n,focusTracker:e});this[d_("0x1")].set(d_("0x22"),((t,e)=>{i[d_("0x14")](),e()}),{priority:d_("0xa")}),this.keystrokes[d_("0x21")]("shift + tab",((t,e)=>{i.focusPrevious(),e()}),{priority:d_("0xa")})}}var h_,m_,g_=["then","ck-thread__user","ck-comment__input-container--active","showButtons","editor","extendTemplate","set","createEditor","change:showInput","commentInputView","isFocused","ck-comment__input-container","div","focusTracker","setTemplate","bind","showInput","userView","destroy"];h_=g_,m_=127,function(t){for(;--t;)h_.push(h_.shift())}(++m_);var p_=function(t,e){return g_[t-=0]};class f_ extends Hd{constructor(t,e,n){super(t),this.commentInputView=new u_(t,n),this[p_("0xf")][p_("0x2")](p_("0x9")).to(this[p_("0xf")][p_("0x0")],p_("0x10"),this[p_("0xf")],"value",((t,e)=>t||!!e)),this[p_("0xc")](p_("0x3"),!1),this.on(p_("0xe"),(()=>{this[p_("0x3")]&&!this[p_("0xf")][p_("0xa")]&&this[p_("0xf")][p_("0xd")]()})),this[p_("0x4")]=new ob(t,e),this[p_("0x4")].extendTemplate({attributes:{class:p_("0x7")}}),this[p_("0xf")][p_("0xb")]({attributes:{class:"ck-thread__input"}}),this[p_("0x1")]({tag:p_("0x12"),attributes:{class:[p_("0x11"),this.bindTemplate.if("showInput",p_("0x8"))]},children:[this[p_("0x4")],this[p_("0xf")]]})}destroy(){return this[p_("0xf")].destroy()[p_("0x6")]((()=>super[p_("0x5")]()))}}const b_=["set","bindTemplate","count","NUMBER_OF_COMMENTS"];var k_,x_;k_=b_,x_=329,function(t){for(;--t;)k_.push(k_.shift())}(++x_);const w_=function(t,e){return b_[t-=0]};class __ extends Hd{constructor(t){super(t);const e=this[w_("0x0")];this[w_("0x3")](w_("0x1")),this.setTemplate({tag:"li",attributes:{class:"ck-thread__comment-count"},children:[{text:e.to("count",(e=>Ox(t,w_("0x2"),e)))}]})}}const A_=["_shouldCollapse","createCollection","change:isActive","equal","remove","viewUid","maxCommentCharsWhenCollapsed","set","_rearrangeCollapse","insert","removeComment","from","expand","isEditMode","comments","delegate","add","bind","_rearrangeExpand","commentViews","isActive","CommentView","ck-thread__comments","_updateHasDirtyComment","maxThreadTotalWeight","_handleRemoveCommentModel","editorConfig","setTemplate","locale","_handleNewCommentModel","formatDateTime","delete","change:isEditMode","render","destroy","refreshVisibleViews","hasDirtyComment","count","listenTo","commentUpdated","_model","_config","some","length","change:hasDirtyComment","_collapsedCommentsView","focus","stopListening","collapse","visibleViews","weight","get"];var v_,C_;v_=A_,C_=265,function(t){for(;--t;)v_.push(v_.shift())}(++C_);const y_=function(t,e){return A_[t-=0]};class E_ extends Hd{constructor(t,e,n){super(t),this[y_("0x2")](y_("0x1f"),!1),this[y_("0x2")](y_("0x26"),e[y_("0x9")][y_("0x26")]),this[y_("0x2")](y_("0xf"),!1),this[y_("0x23")]=e,this[y_("0x24")]=n,this.commentViews=this.createCollection(),this[y_("0x2c")]=this[y_("0x30")](),this[y_("0x28")]=new __(t),this[y_("0x28")][y_("0xc")](y_("0x20")).to(this,"length",(t=>t-this[y_("0x24")].maxCommentsWhenCollapsed));for(const t of e[y_("0x9")])this._handleNewCommentModel(t);this[y_("0x21")](e[y_("0x9")],"add",((t,e)=>{this[y_("0x26")]++,this[y_("0x18")](e),this.refreshVisibleViews()})),this[y_("0x21")](e[y_("0x9")],y_("0x33"),((t,e)=>{this.length--,this[y_("0x14")](e),this.refreshVisibleViews()})),this[y_("0x21")](e,y_("0x22"),(()=>this[y_("0x1e")]())),this.on(y_("0x31"),(()=>this[y_("0x1e")]())),this.on(y_("0x27"),(()=>this.refreshVisibleViews())),this[y_("0x16")]({tag:"ul",attributes:{class:[y_("0x11")]},children:this[y_("0x2c")]})}get[y_("0x2f")](){return this[y_("0x23")][y_("0x2d")]>this[y_("0x24")][y_("0x13")]&&!this[y_("0xf")]&&!this[y_("0x1f")]}[y_("0x1c")](){super[y_("0x1c")](),this[y_("0x1e")]()}[y_("0x29")](){this.element[y_("0x29")]()}[y_("0x1d")](){this[y_("0x28")][y_("0x1d")]();for(const t of this.commentViews)t[y_("0x1d")]();super[y_("0x1d")]()}[y_("0x1e")](){this[y_("0x2f")]?this[y_("0x3")]():this._rearrangeExpand()}[y_("0x18")](t){const e=new(this[y_("0x24")][y_("0x10")])(this[y_("0x17")],t,{maxCommentCharsWhenCollapsed:this._config[y_("0x1")],formatDateTime:this[y_("0x24")][y_("0x19")],editorConfig:this._config[y_("0x15")]});e[y_("0x0")]=t.id,e[y_("0xa")](y_("0x5")).to(this),e[y_("0xa")]("updateComment").to(this),this[y_("0x21")](e,y_("0x1b"),(()=>this[y_("0x12")]())),this[y_("0xe")].add(e)}[y_("0x14")](t){const e=this.commentViews[y_("0x33")](t.id);this[y_("0x2a")](e),e[y_("0x8")]&&this._updateHasDirtyComment(),e[y_("0x1d")]()}[y_("0x12")](){this[y_("0x1f")]=Array.from(this.commentViews)[y_("0x25")]((t=>t[y_("0x8")]))}_rearrangeCollapse(){const t=function(t){const e=new _u.Collection;for(const n of t)e[y_("0xb")](n);return e}(this[y_("0xe")]),e=this[y_("0x28")][y_("0x20")];for(let n=1;n<=e;n++)t[y_("0x33")](1);for(const e of t)e[y_("0x2b")]();e>0&&t[y_("0xb")](this._collapsedCommentsView,1),T_((0,_u.diff)(Array[y_("0x6")](this.visibleViews),Array.from(t)),this[y_("0x2c")],t)}[y_("0xd")](){T_((0,_u.diff)(Array.from(this[y_("0x2c")]),Array[y_("0x6")](this[y_("0xe")])),this.visibleViews,this.commentViews);for(const t of this[y_("0x2c")])t[y_("0x7")]()}}function T_(t,e,n){let i=0;for(const o of t)switch(o){case y_("0x4"):e[y_("0xb")](n[y_("0x2e")](i),i),i++;break;case y_("0x1a"):e[y_("0x33")](i);break;case y_("0x32"):i++}}const D_=["CommentView","_localUser","Write a comment...","change:isActive","commentThreadInputView","isActive","addComment","removeComment","isDirty","editorConfig","_config","removeCommentThread","delegate","_model","placeholder","fire","commentInputView","bind","stop","element","value","commentsListView","showInput","isReadOnly","length","_createCommentThreadInputView","hasDirtyComment","set","cancel","Reply...","destroy","locale","focus"];var S_,I_;S_=D_,I_=105,function(t){for(;--t;)S_.push(S_.shift())}(++I_);const B_=function(t,e){return D_[t-=0]};class M_ extends Hd{constructor(t,e,n,i){super(t),this[B_("0x15")](B_("0x20"),!1),this[B_("0x15")](B_("0x2"),!1),this[B_("0x7")]=e,this[B_("0x1c")]=n,this[B_("0x4")]=i,this[B_("0xf")]=new E_(t,e,Object.assign({CommentView:this[B_("0x4")][B_("0x1b")]},i)),this[B_("0xf")].delegate("removeComment").to(this),this[B_("0xf")][B_("0x6")]("updateComment").to(this),this[B_("0xf")][B_("0xb")](B_("0x20")).to(this),this[B_("0x15")](B_("0x12"),this[B_("0xf")][B_("0x12")]),this.bind(B_("0x12")).to(this[B_("0xf")],"length"),this[B_("0x1f")]=this[B_("0x13")](),this.on(B_("0x1"),(()=>this[B_("0x1a")]())),this[B_("0xb")](B_("0x2")).to(this.commentsListView,B_("0x14"),this[B_("0x1f")][B_("0xa")],B_("0xe"),((t,e)=>t||!!e))}[B_("0x1a")](){this[B_("0xd")].focus()}[B_("0x18")](){this[B_("0x2")]=!1,this[B_("0xf")][B_("0x18")](),this[B_("0x1f")][B_("0x18")](),super[B_("0x18")]()}[B_("0x13")](){const t=new f_(this[B_("0x19")],this[B_("0x1c")],this[B_("0x4")][B_("0x3")]),e=t.commentInputView;return t.bind(B_("0x10")).to(this,B_("0x20"),this[B_("0x7")],"isReadOnly",e,B_("0xe"),((t,e,n)=>!!n||t&&!e)),e[B_("0xb")](B_("0x8")).to(this,B_("0x12"),(t=>Ox(this[B_("0x19")],B_(t?"0x17":"0x1d")))),e.on("submit",((t,e)=>{this[B_("0x9")](B_("0x0"),e)})),e.on("cancel",(()=>{this[B_("0x1a")]()})),e[B_("0xb")]("disabledSubmit").to(this[B_("0x7")],B_("0x11")),e.on(B_("0x16"),(t=>{0==this[B_("0x12")]&&(this[B_("0x9")]("removeCommentThread"),t[B_("0xc")]())})),this.on(B_("0x1e"),((t,n,i)=>{i||this[B_("0x12")]||e[B_("0xe")]||this[B_("0x9")](B_("0x5"))})),t}}const N_=["_bindFirstCommentView","fire","ck-thread--remove-confirmation",".ck-thread__container","set","listenTo","removeCommentThread","locale","_cancelAllConfirms","bind","element","length","change:isReadOnly","Delete comment thread?","div","getTemplate","ck-thread","render","containerElement","ck-thread__container","setTemplate","commentsListView","actionIndicator","remove","stop","commentThreadInputView","placeholder","bindTemplate","removeButton","_model","cancelConfirm","get","_boundFirstCommentView","commentViews","change:isActive","isActive","high"];var O_,P_;O_=N_,P_=131,function(t){for(;--t;)O_.push(O_.shift())}(++P_);const R_=function(t,e){return N_[t-=0]};class L_ extends M_{constructor(t,e,n,i){super(t,e,n,i),this[R_("0x15")](R_("0x2"),null),this.containerElement=null,this[R_("0xc")]=null,this[R_("0x18")]=t,this[R_("0x0")](this[R_("0x20")]()),this.on(R_("0xe"),((t,e,n)=>{n||this[R_("0x19")]()})),this[R_("0x16")](this[R_("0x9")],R_("0x1d"),((t,e,n)=>{n&&this[R_("0x19")]()})),this[R_("0x1c")]>0&&this[R_("0x11")](),this[R_("0x16")](this.commentsListView[R_("0xd")],"add",(()=>{this[R_("0x11")]()}))}[R_("0x20")](){const t=this[R_("0x7")];return{tag:R_("0x1f"),attributes:{class:[R_("0x21"),t.if(R_("0xf"),"ck-thread--active"),t.if("isConfirm",R_("0x13")),t.to(R_("0x2"),(t=>t?"ck-thread--"+t:""))],"data-thread-id":this[R_("0x9")].id,tabindex:-1},children:[{tag:R_("0x1f"),attributes:{class:R_("0x24")},children:[this[R_("0x1")],this[R_("0x5")]]}]}}[R_("0x22")](){super[R_("0x22")](),this[R_("0x23")]=this[R_("0x1b")].querySelector(R_("0x14"))}[R_("0x19")](){this[R_("0xa")]();for(const t of this[R_("0x1")].commentViews)t[R_("0xa")]()}[R_("0x11")](){const{locale:t}=this,e=this[R_("0x1")][R_("0xd")][R_("0xb")](0);e!==this._boundFirstCommentView&&(this[R_("0xc")]=e,this.unbind("actionIndicator"),this[R_("0x1a")](R_("0x2")).to(e,R_("0x2"),(t=>R_("0x3")===t?"remove":null)),e[R_("0x6")]=Ox(t,"Write a comment..."),e[R_("0x8")].on("execute",(e=>{e[R_("0x4")](),this.showConfirm(Ox(t,R_("0x1e")),this[R_("0x23")]).then((()=>{this[R_("0x12")](R_("0x17"))}))}),{priority:R_("0x10")}))}}(0,_u.mix)(L_,nx);var z_,j_,F_=["content","ck-annotation__content","change:content","innerHTML","set","setTemplate","render","ck-comment__content","element"];z_=F_,j_=214,function(t){for(;--t;)z_.push(z_.shift())}(++j_);var V_=function(t,e){return F_[t-=0]};class H_ extends Hd{constructor(t){super(t),this[V_("0x6")](V_("0x2"),""),this[V_("0x7")]({tag:"div",attributes:{class:[V_("0x0"),V_("0x3")]}})}[V_("0x8")](){super[V_("0x8")](),this.on(V_("0x4"),((t,e,n)=>{this[V_("0x1")].innerHTML=n})),this[V_("0x1")][V_("0x5")]=this[V_("0x2")]}}const U_=["value","isEditMode","add","locale","fire","destroy","isCollapsed","_createCommentContentView","_model","remove","collapse","bind","set","get","focus","_createCommentInputView","createCollection","editorConfig","isReadOnly","initialData","visibleView","createEditor","switchToEditMode","content","_config","switchToDisplayMode","cancel","element"];var q_,W_;q_=U_,W_=452,function(t){for(;--t;)q_.push(q_.shift())}(++W_);const Z_=function(t,e){return U_[t-=0]};class G_ extends Hd{constructor(t,e,n){super(t),this._model=e,this[Z_("0x14")]=n,this[Z_("0x8")](Z_("0x19"),!1),this[Z_("0x8")](Z_("0x2"),!0),this[Z_("0x10")]=this[Z_("0xc")](),this[Z_("0x10")].add(this[Z_("0x3")]())}expand(){this.isCollapsed=!1}[Z_("0x6")](){this[Z_("0x19")]||(this[Z_("0x2")]=!0)}focus(){this[Z_("0x17")][Z_("0xa")]()}async[Z_("0x1")](){await this[Z_("0x10")][Z_("0x9")](0).destroy(),super[Z_("0x1")]()}[Z_("0x12")](){this.isEditMode||(this.isEditMode=!0,this.visibleView[Z_("0x5")](0)[Z_("0x1")](),this[Z_("0x10")][Z_("0x1a")](this[Z_("0xb")]()))}[Z_("0x15")](){this.isEditMode&&(this[Z_("0x19")]=!1,this[Z_("0x10")][Z_("0x5")](0).destroy(),this[Z_("0x10")][Z_("0x1a")](this._createCommentContentView()))}_createCommentContentView(){const t=new H_(this[Z_("0x1b")]);return t.bind(Z_("0x13")).to(this[Z_("0x4")],Z_("0x13"),this,Z_("0x2"),((t,e)=>e?Wk(t,{limit:this[Z_("0x14")].maxCommentCharsWhenCollapsed}):t)),t}[Z_("0xb")](){this[Z_("0x14")].editorConfig||(this._config[Z_("0xd")]={}),this._config[Z_("0xd")][Z_("0xf")]=this[Z_("0x4")][Z_("0x13")];const t=new u_(this[Z_("0x1b")],this[Z_("0x14")][Z_("0xd")]);return t[Z_("0x18")]=this[Z_("0x4")][Z_("0x13")],t[Z_("0x7")]("disabledSubmit").to(this[Z_("0x4")],Z_("0xe")),t.on("submit",((t,e)=>{this[Z_("0x0")]("updateComment",this[Z_("0x4")].id,e),this[Z_("0x15")](),this[Z_("0xa")]()})),t.on(Z_("0x16"),(()=>{this.switchToDisplayMode(),this[Z_("0xa")]()})),t.once("editorReady",(()=>{t[Z_("0xa")]()})),t[Z_("0x11")](),t}}const K_=["ck-comment__actions--hidden","render","isVisible","EXTERNAL_IMPORT_WORD_COMMENT","focus","isRemovable","bindTemplate","getTemplate","_attachActions","edit","switchToEditMode","ck-annotation__user","change:isRemovable","name","then","ck-annotation__info","ck-comment__main","getExternalCommentNote","removeButton","set","removeComment","listenTo","attributes","@external","getUserViewNotificationText","showConfirm","Remove","isEditable","ck-annotation__info-time","extendTemplate","setTemplate","ck-comment--edit","ck-annotation","element","isExternal","actionIndicator","icon","EXTERNAL_AVATAR","_createRemoveButton","author","importWord","ck-comment__actions","Reply...","label","source","isEditMode","userView","bind","ck-comment__info-time","authoredAt","div","ck-comment__external","isConfirm","span","mouseenter","EXTERNAL_COMMENT","isEnabled","cancelConfirm","locale","blur","Delete comment?","isReadOnly","fire","pencil","_model","ck-comment__wrapper","ck-comment","_createCommentInputView","creator","mouseleave","time","ck-comment--remove-confirmation","ck-comment__user","editButton","placeholder","formatDateTime","push"];var $_,Y_;$_=K_,Y_=426,function(t){for(;--t;)$_.push($_.shift())}(++Y_);const J_=function(t,e){return K_[t-=0]};class Q_ extends G_{constructor(t,e,n){super(t,e,n),this.set(J_("0x47"),null),this[J_("0x37")](J_("0x21"),Ox(t,J_("0x1"))),this[J_("0x37")]("authoredAt",null),this[J_("0x6")](J_("0x8")).to(e),this[J_("0x20")]=this._createEditButton(),this[J_("0x36")]=this[J_("0x4a")](),this[J_("0x5")]=new ob(t,e.author,this[J_("0x3c")]()),this[J_("0x5")].extendTemplate({attributes:{class:[J_("0x1f"),J_("0x2f")]}}),this[J_("0x39")](e,J_("0x30"),(()=>this[J_("0x10")]())),this[J_("0x42")](this[J_("0x2b")]())}[J_("0x2b")](){const t=this[J_("0x2a")],e=[{tag:"div",attributes:{class:["ck-comment__info",J_("0x33")]},children:[{tag:J_("0xc"),children:[{text:this.userView[J_("0x31")]}],attributes:{class:["ck-comment__info-name","ck-annotation__info-name"]}},{tag:J_("0x1d"),attributes:{datetime:t.to(J_("0x8")),class:[J_("0x7"),J_("0x40")]},children:[{text:t.to(J_("0x8"),(t=>this._config[J_("0x22")](t)))}]}]},{tag:J_("0x9"),attributes:{class:[J_("0x0"),"ck-annotation__actions",t.if(J_("0x4"),J_("0x24")),t.if(J_("0x4"),"ck-annotation__actions--hidden")]},children:[this[J_("0x20")],this[J_("0x36")]]},{tag:J_("0x9"),attributes:{class:["ck-annotation__content-wrapper"]},children:this.visibleView}];return this[J_("0x17")][J_("0x46")]&&e[J_("0x23")]({tag:"div",attributes:{class:[J_("0xa")]},children:[{text:this[J_("0x35")]()}]}),{tag:"li",attributes:{class:[J_("0x18"),t.if(J_("0xb"),J_("0x1e"))],tabindex:-1},children:[{tag:J_("0x9"),attributes:{class:[J_("0x19"),J_("0x44"),t.if(J_("0x4"),J_("0x43")),t.to(J_("0x47"),(t=>t?"ck-comment--"+t:""))],"data-author-id":this[J_("0x17")][J_("0x4b")].id,"data-comment-id":this._model.id},children:[this[J_("0x5")],{tag:J_("0x9"),attributes:{class:[J_("0x34"),"ck-annotation__main"]},children:e}]}]}}_createEditButton(){const t=new Nu(this[J_("0x11")]);return t[J_("0x2")]=Ox(this[J_("0x11")],"Edit"),t[J_("0x48")]=wu[J_("0x16")],t[J_("0x41")]({attributes:{class:J_("0x43")}}),t[J_("0x6")]("isEnabled").to(this[J_("0x17")],J_("0x14"),(t=>!t)),t[J_("0x6")]("isVisible").to(this[J_("0x17")],J_("0x3f")),t.on("execute",(()=>this[J_("0x2e")]())),t}[J_("0x4a")](){const t=new Nu(this[J_("0x11")]);return t[J_("0x2")]=Ox(this[J_("0x11")],J_("0x3e")),t[J_("0x48")]='\x3c!--\n\n What you\'re currently looking at is the source code of a legally protected, proprietary software.\n CKEditor 5 Collaboration is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n all CKEditor 5 Collaboration content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n\n Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n\n!--\x3e\n\n\n',t.extendTemplate({attributes:{class:"ck-comment--remove"}}),t.bind(J_("0xf")).to(this[J_("0x17")],"isReadOnly",(t=>!t)),t[J_("0x6")](J_("0x26")).to(this._model,J_("0x29")),t.on("execute",(()=>{this[J_("0x3d")](Ox(this[J_("0x11")],J_("0x13")),this[J_("0x45")])[J_("0x32")]((()=>{this[J_("0x15")](J_("0x38"),this[J_("0x17")].id)}))})),t}_attachActions(t,e){this[J_("0x39")](t,J_("0xd"),(()=>this[J_("0x47")]=e)),this.listenTo(t,J_("0x28"),(()=>this.actionIndicator=e)),this[J_("0x39")](t,J_("0x1c"),(()=>this[J_("0x47")]=null)),this[J_("0x39")](t,J_("0x12"),(()=>this[J_("0x47")]=null))}[J_("0x1a")](){const t=super[J_("0x1a")]();return t[J_("0x6")]("placeholder").to(this),t}[J_("0x35")](){return"importWord"===this[J_("0x17")][J_("0x3a")]["@external"].source?Ox(this[J_("0x11")],J_("0x27")):Ox(this[J_("0x11")],J_("0xe"))}[J_("0x3c")](){return this[J_("0x17")].isExternal?J_("0x4c")===this[J_("0x17")][J_("0x3a")][J_("0x3b")][J_("0x3")]?Ox(this.locale,"EXTERNAL_IMPORT_WORD_AVATAR",this._model.creator[J_("0x31")]):Ox(this[J_("0x11")],J_("0x49"),this[J_("0x17")][J_("0x1b")][J_("0x31")]):null}[J_("0x25")](){super[J_("0x25")](),this[J_("0x2c")](this.editButton[J_("0x45")],J_("0x2d")),this[J_("0x2c")](this[J_("0x36")][J_("0x45")],"remove")}}(0,_u.mix)(Q_,nx);var X_=__webpack_require__(1556),tA={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(X_.Z,tA);X_.Z.locals;var eA=__webpack_require__(4342),nA={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(eA.Z,nA);eA.Z.locals;var iA=__webpack_require__(4964),oA={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(iA.Z,oA);iA.Z.locals;const rA=["observe","disconnect","class","type","cancel","attributeName"];var sA,aA;sA=rA,aA=490,function(t){for(;--t;)sA.push(sA.shift())}(++aA);const cA=function(t,e){return rA[t-=0]};function lA(t){const e=Ew(t,30),n=new MutationObserver((t=>{for(const n of t)("attributes"==n[cA("0x5")]&&cA("0x4")==n[cA("0x1")]||"childList"==n[cA("0x5")])&&e()}));return{attach(t){n[cA("0x2")](t,{attributes:!0,childList:!0,subtree:!0})},detach(){n[cA("0x3")](),e[cA("0x0")]()}}}var dA=__webpack_require__(5899),uA={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(dA.Z,uA);dA.Z.locals;const hA=["_mutationObserver","ck-rounded-corners","type","focusTracker","isActive","mainView","detach","div","ck-annotation-wrapper--active","bindTemplate","createCollection","height","_updateHeight","set","element","targetRect","Esc","ck-annotation-wrapper","fire","add","keystrokes","focus","attach","destroy","render","content"];var mA,gA;mA=hA,gA=249,function(t){for(;--t;)mA.push(mA.shift())}(++gA);const pA=function(t,e){return hA[t-=0]};class fA extends Hd{constructor(t,e){super(t),this.id=(0,_u.uid)(),this[pA("0xe")]=new _u.FocusTracker,this[pA("0x5")]=new _u.KeystrokeHandler,this.keystrokes.set("Esc",((t,e)=>this[pA("0x3")](pA("0x1"),e))),this.set(pA("0x0"),{top:0,right:0,bottom:0,left:0}),this[pA("0x18")](pA("0x16"),0),this[pA("0x18")](pA("0xf"),!1),this.set("isDirty",!1),this[pA("0x18")]("length",0),this.set(pA("0xd"),""),this._mutationObserver=lA((()=>this[pA("0x17")]())),this[pA("0xa")]=this[pA("0x15")](),this.content[pA("0x4")](e),this[pA("0x10")]=e;const n=this[pA("0x14")];this.setTemplate({tag:pA("0x12"),attributes:{class:["ck",pA("0x2"),pA("0xc"),n.if(pA("0xf"),pA("0x13"))],tabindex:-1},children:this[pA("0xa")]})}[pA("0x9")](){super.render(),this[pA("0xe")].add(this[pA("0x19")]),this.keystrokes.listenTo(this[pA("0x19")]),this[pA("0xb")][pA("0x7")](this[pA("0x19")])}destroy(){this.content.clear(),this.keystrokes[pA("0x8")](),this.focusTracker[pA("0x8")](),this[pA("0xb")][pA("0x11")](),super[pA("0x8")]()}[pA("0x6")](){this[pA("0x19")][pA("0x6")]()}[pA("0x17")](){const t=this[pA("0x19")].clientHeight;t&&(this.height=t)}}const bA=["annotation-invalid-target","destroy","object","view","focusableElements","type","_assertCorrectTarget","mainView","_type","isActive","add","_isTargetElementVisible","isVisible","item","stopListening","refreshVisibility","render","updateTargetRect","function","_id","element","focusTracker","targetRect","nodeType","getClientRects","_target","remove","target"];var kA,xA;kA=bA,xA=192,function(t){for(;--t;)kA.push(kA.shift())}(++xA);const wA=function(t,e){return bA[t-=0]};class _A{constructor({view:t,target:e,type:n,isVisible:i=!0}){this[wA("0x7")]=t,this[wA("0x7")][wA("0x18")]||this.view[wA("0x14")](),this[wA("0xc")]=n,this[wA("0x1")]=e,this._assertCorrectTarget(),this[wA("0x8")]=new _u.Collection([this[wA("0x7")][wA("0x18")]],{idProperty:wA("0x17")}),this.focusableElements.on(wA("0xe"),((t,e)=>{this[wA("0x7")].focusTracker[wA("0xe")](e)})),this[wA("0x8")].on("remove",((t,e)=>{this[wA("0x7")][wA("0x19")][wA("0x2")](e)})),this.set(wA("0x10"),i)}get[wA("0x9")](){return"function"==typeof this[wA("0xc")]?this._type():this[wA("0xc")]}get innerView(){return this[wA("0x7")].mainView}get[wA("0x3")](){return wA("0x16")==typeof this[wA("0x1")]?this[wA("0x1")]():this[wA("0x1")]}get targetRect(){const t=this[wA("0x3")];return this[wA("0xa")](),null!==t&&this._isTargetElementVisible()?AA(t)?new _u.Rect(t[wA("0x0")]()[wA("0x11")](0)):new _u.Rect(t):null}get isActive(){return this[wA("0x7")][wA("0xd")]}set[wA("0xd")](t){this[wA("0x7")][wA("0xd")]=t,this[wA("0x7")][wA("0xb")][wA("0xd")]=t}[wA("0x15")](){this[wA("0x7")][wA("0x1a")]=this[wA("0x1a")]}[wA("0x5")](){this.focusableElements[wA("0x12")](),this[wA("0x8")].clear(),this[wA("0x12")]()}[wA("0x13")](){this[wA("0x10")]=this[wA("0xf")]()}[wA("0xf")](){const t=this[wA("0x3")];return!AA(t)||(!!t.offsetParent||!!t.getClientRects()[wA("0x11")](0))}[wA("0xa")](){const t=this[wA("0x3")];if(!(null===t||t instanceof _u.Rect||AA(t)))throw new _u.CKEditorError(wA("0x4"),null,{target:t})}}function AA(t){return null!==t&&wA("0x6")==typeof t&&1===t[wA("0x1b")]}(0,_u.mix)(_A,_u.ObservableMixin);const vA=["view","change:isFocused","refreshPositioning","add","set","_sort","has","_viewToAnnotation","_innerViewToAnnotation","innerView","top","focusableElements","delete","isFocused","_items","get","remove","targetRect","_getOrderInContent","_focusTracker","left","stopListening","length","fire","getByInnerView","destroy","clear","focusTracker","updateTargetRect","sort","blur","listenTo","focus","getIndex"];var CA,yA;CA=vA,yA=239,function(t){for(;--t;)CA.push(CA.shift())}(++yA);const EA=function(t,e){return vA[t-=0]};class TA extends _u.Collection{constructor(t=[]){super(),this[EA("0x7")]=new Map,this[EA("0x6")]=new Map,this[EA("0x12")]=new _u.FocusTracker,this[EA("0x12")].on(EA("0x0"),((t,e,n)=>{n||this[EA("0x16")](EA("0x1d"))}));for(const e of t)this.add(e)}get[EA("0xc")](){return this[EA("0x12")][EA("0xc")]}[EA("0x2")](t){if(this[EA("0x5")](t))throw new _u.CKEditorError("annotationcollection-duplicated-item",null);this[EA("0x7")][EA("0x3")](t[EA("0x8")],t),this[EA("0x6")][EA("0x3")](t[EA("0x21")],t);for(const e of t[EA("0xa")])this[EA("0x12")][EA("0x2")](e);this[EA("0x1e")](t.focusableElements,EA("0x2"),((t,e)=>{this[EA("0x12")][EA("0x2")](e)})),this[EA("0x1e")](t[EA("0xa")],EA("0xf"),((t,e)=>{this._focusTracker[EA("0xf")](e)})),this.listenTo(t[EA("0x21")].focusTracker,EA("0x0"),((e,n,i)=>{i&&this.fire(EA("0x1f"),t)})),t[EA("0x1b")]();const e=this._getOrderInContent(t[EA("0x21")][EA("0x10")]);super[EA("0x2")](t,e)}[EA("0xf")](t){if(!this[EA("0x5")](t))throw new _u.CKEditorError("annotationcollection-not-existing-item",null);this[EA("0x14")](t[EA("0x21")][EA("0x1a")]),this[EA("0x14")](t[EA("0xa")]);for(const e of t[EA("0xa")])this._focusTracker[EA("0xf")](e);this[EA("0x6")][EA("0xb")](t[EA("0x21")]),this[EA("0x7")][EA("0xb")](t[EA("0x8")]),super[EA("0xf")](t)}[EA("0x17")](t){return this[EA("0x7")][EA("0xe")](t)}getByView(t){return this[EA("0x6")].get(t)}[EA("0x18")](){super[EA("0x19")](),this[EA("0x14")](),this[EA("0x7")][EA("0x19")](),this[EA("0x6")][EA("0x19")](),this[EA("0x12")][EA("0x18")]()}[EA("0x1")](){for(const t of this)t.updateTargetRect();this[EA("0x4")]()}[EA("0x4")](){const t=Array.from(this)[EA("0x1c")](((t,e)=>DA(t[EA("0x21")][EA("0x10")],e[EA("0x21")][EA("0x10")])));for(let e=t[EA("0x15")]-1;e>0;e--){const n=t[e];e!==this[EA("0x20")](n)&&(this[EA("0xf")](n),this.add(n,e))}}[EA("0x11")](t){let e=0;if(!t)return this[EA("0xd")][EA("0x15")];for(const n of this){const i=n[EA("0x21")][EA("0x10")];if(i){if(DA(t,i)<0)return e;e++}}return e}}function DA(t,e){if(null===t&&null===e)return 0;if(null===t)return-1;if(null===e)return 1;const n=t[EA("0x9")]-e[EA("0x9")];return 0==n?t[EA("0x13")]-e[EA("0x13")]:n}const SA=["createAnnotationView","collection","fire","has","source","activeAnnotations","_deactivateAllAnnotations","destroy","refreshVisibility","remove","activate","set","isVisible","_activateAnnotation","_bindAnnotationsToVisibleAnnotations","change:isVisible","Annotations","_addActiveAnnotation","_removeActiveAnnotation","createAnnotation","refreshPositioning","add","getByInnerView","deactivateAll","_visibleAnnotations","listenTo"];var IA,BA;IA=SA,BA=380,function(t){for(;--t;)IA.push(IA.shift())}(++BA);const MA=function(t,e){return SA[t-=0]};class NA extends Dn{static get pluginName(){return MA("0x0")}constructor(t){super(t),this[MA("0xb")]=new TA,this._visibleAnnotations=new TA,this[MA("0x15")](MA("0xf"),new Set),this[MA("0x18")]()}[MA("0x5")](t){this.collection[MA("0x5")](t)}[MA("0x13")](t){this[MA("0xb")][MA("0x13")](t),t[MA("0x11")]()}[MA("0x12")](){for(const t of this.collection)t[MA("0x12")]()}[MA("0x4")](){this._visibleAnnotations[MA("0x4")]()}[MA("0x6")](t){return this.collection[MA("0x6")](t)}[MA("0x7")](){this[MA("0xc")](MA("0x10"))}[MA("0x11")](){for(const t of this.collection)t[MA("0x11")]();this[MA("0x8")][MA("0x11")](),this.collection[MA("0x11")](),super[MA("0x11")]()}[MA("0x14")](t){this.fire(MA("0x17"),t)}[MA("0x3")](t){return new _A(t)}[MA("0xa")](t,e){return new fA(t,e)}[MA("0x1")](t){const e=new Set(this[MA("0xf")]);e[MA("0x5")](t),this[MA("0xf")]=e}[MA("0x2")](t){const e=new Set(this[MA("0xf")]);e.delete(t),this.activeAnnotations=e}_bindAnnotationsToVisibleAnnotations(){const t=this[MA("0xb")],e=this[MA("0x8")];function n(t){const n=t[MA("0xe")];n[MA("0x16")]&&!e[MA("0xd")](n)?e[MA("0x5")](n):!n[MA("0x16")]&&e[MA("0xd")](n)&&e[MA("0x13")](n)}this.listenTo(t,MA("0x5"),((t,i)=>{i[MA("0x16")]&&e[MA("0x5")](i),this.listenTo(i,"change:isVisible",n)})),this[MA("0x9")](t,"remove",((t,i)=>{e[MA("0xd")](i)&&e[MA("0x13")](i),this.stopListening(i,MA("0x19"),n)}))}}const OA=["_adapter","isExternal","addUser","requires","commentsrepository-active-not-attached","_findOptimalIndex","commentsrepository-invalid-comment-authorid","updateComment","commentsrepository-remove-comment-missing-comment-thread","comments.maxCommentCharsWhenCollapsed","_getExternalAuthor","removeCommentThread","getByInnerView","pop","createdAt","Users","removeAttribute","then","context","commentsrepository-invalid-comment-thread-id","getCommentThreads","commentInputView","commentsrepository-remove-comment-thread-internal-error","commentsrepository-remove-missing-comment","commentsrepository-attach-missing-comment-thread","_nonAdminChannels","_isAttached","commentsrepository-get-comment-invalid-id","createElement","div","_attachCommentThread","licenseKey","add","comments","config","slice","locale","external:","_removeCommentThread","author","resolve","update","error","commentsrepository-invalid-comment-content","content","once","string","CommentsRepository","attachTo","adapter","fetchCommentThread","replace","channelId","commentsrepository-missing-thread-and-adapter-method","_detachCommentThread","addComment","addCommentThread","getIndex","assign","change:activeAnnotations","commentsrepository-invalid-commentid","setAdminPermissions","removeComment","_removeComment","comments.maxThreadTotalWeight","_threads","get","commentsrepository-update-comment-invalid-content","comments.maxCommentsWhenCollapsed","trim","commentsrepository-update-missing-comment","push","type","comment","creator","listenTo","isFromAdapter","activeCommentThread","@external","bind","reduce","commentsrepository-fetch-comment-thread","authorName","has","commentsrepository-missing-target","init","charCodeAt","catch","getCommentThread","delete","focus","commentsrepository-add-comment-user-not-exists","authoredAt","commentsrepository-adapter-already-set","weight","PendingActions","getTime","isEditable","_add","editorReady","from","PENDING_ACTION_COMMENT_THREAD","values","define","_threadToController","innerHTML","stopListening","length","_updateComment","map","_readOnlyChannels","_addCommentThread","set","isReadOnly","function","innerView","activate","deactivateAll","commentsrepository-remove-missing-comment-thread","commentThreadInputView","isRemovable","model","parse","hasCommentThread","_remove","comments.editorConfig","commentsrepository-update-comment-missing-comment-thread","isDirty","createCommentThreadController","getUser","getComment","filter","_addComment","fire","textContent","_repository","isAttached","commentsrepository-update-comment-internal-error","remove","plugins","_viewToController","commentsrepository-remove-comment-internal-error","attributes","warn","pluginName","openNewCommentThread","view","fromCharCode","toJSON","destroy","substring","threadId","switchReadOnly"];var PA,RA;PA=OA,RA=245,function(t){for(;--t;)PA.push(PA.shift())}(++RA);const LA=function(t,e){return OA[t-=0]},zA=Symbol("noChannel");class jA extends Dn{static get[LA("0x40")](){return[NA,fu,$f]}static get[LA("0x34")](){return LA("0x6c")}constructor(t){super(t),this[LA("0x7e")]=new Map,this[LA("0xc")]=new Map,this._viewToController=new Map,this[LA("0x12")]=new Set,this.set(LA("0x56"),new Set),this.licenseKey=this[LA("0x4f")].config[LA("0x7f")](LA("0x5c"));const e=this[LA("0x4f")][LA("0x5f")];e.define(LA("0x81"),2),e[LA("0xb")](LA("0x7d"),500),e[LA("0xb")](LA("0x46"),140),e[LA("0xb")]("comments.CommentThreadView",L_),e[LA("0xb")]("comments.CommentView",Q_),e[LA("0x7f")]("comments.editorConfig")||console[LA("0x33")]("Missing comments editor configuration (`comments.editorConfig`). Default configuration will be used instead.")}[LA("0x92")](){const t=this[LA("0x4f")][LA("0x2f")][LA("0x7f")](NA);this.set(LA("0x8a"),null),this.on(LA("0x75"),((t,e)=>this[LA("0x13")](e))),this.on(LA("0x48"),((t,e)=>this[LA("0x63")](e))),this.on(LA("0x74"),((t,e)=>this[LA("0x28")](e))),this.on(LA("0x44"),((t,e)=>this._updateComment(e))),this.on("removeComment",((t,e)=>this[LA("0x7c")](e))),this.on(LA("0x74"),((t,{threadId:e,isFromAdapter:n})=>{if(n)return;const i=this[LA("0x95")](e),o=this[LA("0xc")][LA("0x7f")](i);o&&o[LA("0x36")][LA("0x97")]()}),{priority:"lowest"}),this[LA("0x88")](t,LA("0x78"),((t,e,n)=>{const i=Array[LA("0x8")](n)[LA("0x11")]((t=>this[LA("0x30")].get(t[LA("0x17")])))[LA("0x27")](Boolean)[0];this[LA("0x8a")]=i?i[LA("0x1d")]:null}))}afterInit(){!function(t){const e=t instanceof Tn,n=[1,85,78,115,198,255,50,112,83,87,161],i=u([52,48,52,52,50,50,48,54]),o=[127,34,6,211,167,86,146,199,132,160,18],r=u([65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,48,49,50,51,52,53,54,55,56,57]),s=function(e){if(t[u([112,108,117,103,105,110,115])][u([104,97,115])](u([87,101,98,83,111,99,107,101,116,71,97,116,101,119,97,121]))&&t[u([112,108,117,103,105,110,115])][u([103,101,116])](u([87,101,98,83,111,99,107,101,116,71,97,116,101,119,97,121]))[u([115,116,97,116,101])]==u([99,111,110,110,101,99,116,101,100]))return a(u([108,105,99,101,110,115,101,75,101,121,86,97,108,105,100]));if(t[u([112,108,117,103,105,110,115])][u([104,97,115])](u([84,114,97,99,107,67,104,97,110,103,101,115,68,97,116,97,71,101,116,116,101,114]))&&t[u([112,108,117,103,105,110,115])][u([103,101,116])](u([84,114,97,99,107,67,104,97,110,103,101,115,68,97,116,97,71,101,116,116,101,114]))[u([114,101,115,117,108,116])]==u([101,110,100]))return a(u([108,105,99,101,110,115,101,75,101,121,86,97,108,105,100]));try{const r=function(t){const e=[29,221,175,90,231,133,239,240,75,180];return function(t,e){const n=atob(t),i=Array.from(function(t){const e=new Uint8Array(t[LA("0xf")]);for(let n=0;n=0;--t)o[t]=n%256,n=parseInt(n/256);let r=null,s=16;const a=new Uint8Array(e),c=[],l=[];g();for(let e=0;e=0;e--){if(255!==t[e]){t[e]++;break}t[e]=0}}function m(t){const e=c[LA("0xf")]-1,n=[0,0,0,0];let o=d(t);for(let t=0;t<4;t++)o[t]^=c[0][t];for(let t=1;t>24&255]^i[u([84,50])][o[(e+1)%4]>>16&255]^i[u([84,51])][o[(e+2)%4]>>8&255]^i[u([84,52])][255&o[(e+3)%4]]^c[t][e];o=n[LA("0x60")]()}const r=new Uint8Array(16);let s;for(let t=0;t<4;t++)s=c[e][t],r[4*t]=255&(i[u([83])][o[t]>>24&255]^s>>24),r[4*t+1]=255&(i[u([83])][o[(t+1)%4]>>16&255]^s>>16),r[4*t+2]=255&(i[u([83])][o[(t+2)%4]>>8&255]^s>>8),r[4*t+3]=255&(i[u([83])][255&o[(t+3)%4]]^s);return r}function g(){const t=i[u([110,117,109,98,101,114,79,102,82,111,117,110,100,115])][a[LA("0xf")]];for(let e=0;e<=t;e++)c.push([0,0,0,0]),l[LA("0x84")]([0,0,0,0]);const e=4*(t+1),n=a[LA("0xf")]/4,o=d(a);let r;for(let e=0;e>2,c[r][e%4]=o[e],l[t-r][e%4]=o[e];let s,h=0,m=n;for(;m>16&255]<<24^i[u([83])][s>>8&255]<<16^i[u([83])][255&s]<<8^i[u([83])][s>>24&255]^i[u([114,99,111,110])][h]<<24,h+=1;for(let t=1;t>8&255]<<8^i[u([83])][s>>16&255]<<16^i[u([83])][s>>24&255]<<24;for(let t=n/2+1;t>2,a=m%4,c[r][a]=o[d],l[t-r][a]=o[d++],m++}for(let e=1;e>24&255]^i[u([85,50])][s>>16&255]^i[u([85,51])][s>>8&255]^i[u([85,52])][255&s]}}(i,e,r+256*o))}(t,new(window[u([85,105,110,116,56,65,114,114,97,121])])([...n,...e,...o]))}(e),s=JSON[LA("0x1e")](r),c=parseInt(s[u([49])]),l=parseInt(s[u([51])]),d=parseInt(s[u([52])])||0,h=parseInt(s[u([53])])||0,m=2;if(!(1&d)||t[u([112,108,117,103,105,110,115])][u([104,97,115])](u([84,114,97,99,107,67,104,97,110,103,101,115,69,100,105,116,105,110,103]))&&!(d&m))return a(u([108,105,99,101,110,115,101,75,101,121,73,110,118,97,108,105,100]));if(h&&!window[u([111,112,101,110])][u([99,108,111,115,101,100])])return a(u([108,105,99,101,110,115,101,75,101,121,73,110,118,97,108,105,100]));if(parseInt(i)/2>c)return a(u([108,105,99,101,110,115,101,75,101,121,73,110,118,97,108,105,100]));if(t[u([112,108,117,103,105,110,115])][u([104,97,115])](u([84,114,97,99,107,67,104,97,110,103,101,115,69,100,105,116,105,110,103]))){const e=t[u([112,108,117,103,105,110,115])][u([103,101,116])](u([84,114,97,99,107,67,104,97,110,103,101,115,69,100,105,116,105,110,103]));if(parseInt(e[u([95,101,120,101,99,117,116,101,83,117,103,103,101,115,116,105,111,110])])/2>c)return a(u([108,105,99,101,110,115,101,75,101,121,73,110,118,97,108,105,100]))}return a(u(l?[108,105,99,101,110,115,101,75,101,121,84,114,105,97,108]:[108,105,99,101,110,115,101,75,101,121,86,97,108,105,100]))}catch(t){return a(u([108,105,99,101,110,115,101,75,101,121,73,110,118,97,108,105,100]))}}(t.config[LA("0x7f")](u([108,105,99,101,110,115,101,75,101,121])));function a(e){const n=function(){const t=String(window[u([112,101,114,102,111,114,109,97,110,99,101])][u([110,111,119])]())[LA("0x70")](u([46]),"");let e="";for(let n=0;n=r.length&&(i-=r[LA("0xf")]),e+=r[i]}return e}();return t[n]=e,e}function c(t){for(const e of t[u([101,100,105,116,111,114,115])])l(e);t[u([112,108,117,103,105,110,115])][u([103,101,116])](u([67,111,109,109,101,110,116,115,82,101,112,111,115,105,116,111,114,121]))[u([115,119,105,116,99,104,82,101,97,100,79,110,108,121])](!0),t[u([112,108,117,103,105,110,115])][u([103,101,116])](u([67,111,109,109,101,110,116,115,82,101,112,111,115,105,116,111,114,121]))[u([115,119,105,116,99,104,82,101,97,100,79,110,108,121])]=d}function l(t){function e(){t[u([109,111,100,101,108])][u([99,104,97,110,103,101])]=d,t[u([109,111,100,101,108])][u([101,110,113,117,101,117,101,67,104,97,110,103,101])]=d,t[u([101,110,97,98,108,101,82,101,97,100,79,110,108,121,77,111,100,101])](u([109,111,100,101,108]))}t[u([115,116,97,116,101])]==u([114,101,97,100,121])?e():t[u([111,110,99,101])](u([114,101,97,100,121]),(()=>e()))}function d(){return null}function u(t){return t[LA("0x11")]((t=>String.fromCharCode(t))).join("")}e?(s==u([108,105,99,101,110,115,101,75,101,121,73,110,118,97,108,105,100])?c(t):s==u([108,105,99,101,110,115,101,75,101,121,84,114,105,97,108])&&window[u([115,101,116,84,105,109,101,111,117,116])]((()=>{c(t),a(u([108,105,99,101,110,115,101,75,101,121,84,114,105,97,108,76,105,109,105,116,58,116,105,109,101]))}),o[6]*n[8]*n[6]),t[u([101,100,105,116,111,114,115])][u([111,110])](u([97,100,100]),((t,e)=>{s!=u([108,105,99,101,110,115,101,75,101,121,73,110,118,97,108,105,100])&&s!=u([108,105,99,101,110,115,101,75,101,121,84,114,105,97,108,76,105,109,105,116,58,116,105,109,101])&&s!=u([108,105,99,101,110,115,101,75,101,121,84,114,105,97,108,76,105,109,105,116,58,111,112,101,114,97,116,105,111,110,115])||l(e)}))):s==u([108,105,99,101,110,115,101,75,101,121,73,110,118,97,108,105,100])?l(t):s==u([108,105,99,101,110,115,101,75,101,121,84,114,105,97,108])&&t[u([111,110])](u([114,101,97,100,121]),(()=>{let e=0;t[u([109,111,100,101,108])][u([111,110])](u([97,112,112,108,121,79,112,101,114,97,116,105,111,110]),((n,i)=>{i[0][u([105,115,68,111,99,117,109,101,110,116,79,112,101,114,97,116,105,111,110])]&&e++,504===e&&(l(t),a(u([108,105,99,101,110,115,101,75,101,121,84,114,105,97,108,76,105,109,105,116,58,111,112,101,114,97,116,105,111,110,115])),n[u([111,102,102])]())}),{priority:u([104,105,103,104,101,115,116])})}))}(this.context)}set[LA("0x6e")](t){if(this[LA("0x3d")])throw new _u.CKEditorError(LA("0x1"));this[LA("0x3d")]=t}get adapter(){return this[LA("0x3d")]}[LA("0x75")]({channelId:t=zA,threadId:e=(0,_u.uid)(),comments:n=[],target:i,isFromAdapter:o}={}){return this.fire(HA("addCommentThread",t),{channelId:t,threadId:e,comments:n,target:i,isFromAdapter:o}),this[LA("0x95")](e)}[LA("0x35")]({channelId:t=zA,threadId:e=(0,_u.uid)(),target:n}){if(this._readOnlyChannels.has(t)||this[LA("0x12")][LA("0x90")](void 0))return;if(!n)throw new _u.CKEditorError(LA("0x91"));const i=this.addCommentThread({channelId:t,threadId:e,target:n});if(!i)return null;const o=this._threadToController[LA("0x7f")](i),r=o.view[LA("0x1b")][LA("0x52")],s=this[LA("0x4f")][LA("0x2f")][LA("0x7f")](NA),a=s[LA("0x49")](o[LA("0x36")]);return s[LA("0x18")](a),r[LA("0x6a")](LA("0x7"),(()=>r[LA("0x97")]())),i}[LA("0x1f")](t){if(LA("0x6b")!=typeof t)throw new _u.CKEditorError(LA("0x50"));return this[LA("0x7e")][LA("0x90")](t)}getCommentThread(t){if(LA("0x6b")!=typeof t)throw new _u.CKEditorError(LA("0x50"));return this[LA("0x7e")][LA("0x7f")](t)}[LA("0x6f")]({channelId:t,threadId:e}={}){const n=this[LA("0x95")](e);if(n)return Promise[LA("0x65")](n);if(!this[LA("0x6e")])throw new _u.CKEditorError("commentsrepository-missing-thread-and-adapter",this[LA("0x4f")]);if(LA("0x16")!=typeof this.adapter[LA("0x95")])throw new _u.CKEditorError(LA("0x72"),this[LA("0x4f")]);return this[LA("0x6e")][LA("0x95")]({channelId:t,threadId:e})[LA("0x4e")]((n=>this[LA("0x1f")](e)?this.getCommentThread(e):n?this[LA("0x75")](Object[LA("0x77")]({isFromAdapter:!0,channelId:t},n)):void 0))[LA("0x94")]((t=>{throw console[LA("0x67")](t),new _u.CKEditorError(LA("0x8e"),this.context)}))}[LA("0x51")]({channelId:t,skipNotAttached:e=!1,skipEmpty:n=!1,toJSON:i=!1}={}){const o=[];for(const i of this[LA("0x7e")][LA("0xa")]())t&&i[LA("0x71")]!==t||e&&!i[LA("0x2c")]||n&&0===i[LA("0xf")]||o[LA("0x84")](i);return i?o[LA("0x11")]((t=>t[LA("0x38")]())):o}setActiveCommentThread(t){const e=this[LA("0x4f")].plugins[LA("0x7f")](NA);if(!t)return void(this[LA("0x8a")]&&e[LA("0x19")]());const n=this[LA("0x95")](t);if(!n)throw new _u.CKEditorError("commentsrepository-active-missing-comment-thread",null,{threadId:t});if(!this[LA("0xc")][LA("0x90")](n))throw new _u.CKEditorError(LA("0x41"),null,{threadId:t});const i=e[LA("0x49")](this._threadToController[LA("0x7f")](n)[LA("0x36")]);e[LA("0x18")](i)}[LA("0x3c")](t,e){t?this[LA("0x12")][LA("0x5d")](e):this[LA("0x12")].delete(e);for(const n of this[LA("0x51")]({channelId:e}))n[LA("0x15")]=!!t}[LA("0x15")](t){return this._readOnlyChannels[LA("0x90")](t)||this[LA("0x12")][LA("0x90")](void 0)}[LA("0x24")](t,e){return new Nx(t,e)}[LA("0x7a")](t,e=zA){const n=!this[LA("0x56")][LA("0x90")](e),i=new Set(this[LA("0x56")]);n&&!t&&(i[LA("0x5d")](e),this._nonAdminChannels=i),!n&&t&&(i[LA("0x96")](e),this[LA("0x56")]=i)}_addCommentThread({channelId:t,threadId:e,comments:n,target:i,isFromAdapter:o}){if(LA("0x6b")!=typeof e)throw new _u.CKEditorError(LA("0x50"),null,{threadId:e});if(this[LA("0x1f")](e))throw new _u.CKEditorError("commentsrepository-duplicated-comment-thread-id",null,{threadId:e});const r=new FA(this,{channelId:t,id:e});(this._readOnlyChannels[LA("0x90")](t)||this[LA("0x12")][LA("0x90")](void 0))&&(r[LA("0x15")]=!0),this._threads.set(e,r);for(const t of n)r.addComment(Object[LA("0x77")]({isFromAdapter:o},t));i&&r[LA("0x6d")](i)}[LA("0x5b")]({threadId:t,target:e}){const n=this[LA("0x95")](t);if(!n)throw new _u.CKEditorError(LA("0x55"),this);const i=this[LA("0x4f")][LA("0x2f")][LA("0x7f")]("PendingActions"),o=this[LA("0x4f")][LA("0x2f")][LA("0x7f")](NA),r=this._createCommentThreadView(n),s=new Nx(n,r);let a=null;r.on("change:isDirty",((t,e,n)=>{n?a=i[LA("0x5d")](Ox(this[LA("0x4f")][LA("0x61")],LA("0x9"))):(i[LA("0x2e")](a),a=null)})),this[LA("0xc")].set(n,s),this[LA("0x30")][LA("0x14")](r,s);const c=new fA(this[LA("0x4f")].locale,r);c[LA("0x8c")](LA("0xf")).to(r),c[LA("0x8c")](LA("0x23")).to(r,LA("0x23"),r,LA("0xf"),((t,e)=>t||!e)),c[LA("0x8c")]("isActive").to(r),c[LA("0x85")]=LA("0x86");const l=new _A({view:c,target:e,type:LA("0x86")});return o[LA("0x5d")](l),l}_createCommentThreadView(t){const e=this[LA("0x4f")][LA("0x2f")].get(LA("0x4c")),{config:n,locale:i}=this[LA("0x4f")],o=Pk(n.get(LA("0x61")));return new(0,n[LA("0x7f")]("comments").CommentThreadView)(i,t,e.me,{editorConfig:n[LA("0x7f")](LA("0x21")),maxCommentsWhenCollapsed:n[LA("0x7f")](LA("0x81")),maxThreadTotalWeight:n[LA("0x7f")](LA("0x7d")),maxCommentCharsWhenCollapsed:n[LA("0x7f")](LA("0x46")),formatDateTime:o,CommentView:n[LA("0x7f")]("comments").CommentView})}_removeCommentThread({threadId:t,isFromAdapter:e}){const n=this.getCommentThread(t);if(!n)throw new _u.CKEditorError(LA("0x1a"),this);if(this[LA("0x73")](t),this[LA("0x7e")].delete(t),!n[LA("0xf")]||e||!this[LA("0x6e")]||LA("0x16")!=typeof this.adapter[LA("0x48")])return Promise[LA("0x65")]();const i=this.context.plugins.get(LA("0x3")),{channelId:o}=n,r=i[LA("0x5d")](Ox(this.context[LA("0x61")],LA("0x9")));return this[LA("0x6e")][LA("0x48")]({channelId:o,threadId:t})[LA("0x4e")]((()=>i.remove(r)))[LA("0x94")]((t=>{throw console[LA("0x67")](t),new _u.CKEditorError(LA("0x53"),this)}))}_detachCommentThread(t){const e=this.context.plugins[LA("0x7f")](NA),n=this[LA("0x95")](t);if(this[LA("0xc")][LA("0x90")](n)){const t=this[LA("0xc")][LA("0x7f")](n),i=t[LA("0x36")],o=e.getByInnerView(i);this[LA("0xc")].delete(n),this[LA("0x30")].delete(i),o&&e[LA("0x2e")](o),t[LA("0x39")](),i.destroy()}}[LA("0x47")](t){const e=this.context[LA("0x2f")].get($f),n=ax(LA("0x62")+t);return e[LA("0x25")](n)||e[LA("0x3f")]({id:n,name:t})}[LA("0x28")]({threadId:t,commentId:e=(0,_u.uid)(),content:n,authorId:i,createdAt:o,attributes:r,isFromAdapter:s}){if(LA("0x6b")!=typeof e)throw new _u.CKEditorError(LA("0x79"));if(LA("0x6b")!=typeof i)throw new _u.CKEditorError(LA("0x43"));if(LA("0x6b")!=typeof n||!n[LA("0x82")]())throw new _u.CKEditorError(LA("0x68"));const a=this[LA("0x95")](t);if(!a)throw new _u.CKEditorError("commentsrepository-add-comment-to-missing-comment-thread",this);const c=this[LA("0x4f")][LA("0x2f")][LA("0x7f")]($f).getUser(i);if(!c)throw new _u.CKEditorError(LA("0x98"),null,{authorId:i});let l=null,d=o;r&&r[LA("0x8b")]&&(l=this[LA("0x47")](r[LA("0x8b")][LA("0x8f")]),d=r[LA("0x8b")][LA("0x4b")]);const u=new VA(this,{threadId:t,id:e,author:l||c,creator:c,content:n,createdAt:o,authoredAt:d,attributes:r});if(a[LA("0x6")](u),s||!this[LA("0x6e")]||LA("0x16")!=typeof this[LA("0x6e")].addComment)return Promise.resolve();const h=this.context[LA("0x2f")].get(LA("0x3")),{channelId:m}=a,g=h[LA("0x5d")](Ox(this.context[LA("0x61")],LA("0x9")));return r||(r={}),this[LA("0x6e")][LA("0x74")]({channelId:m,threadId:t,commentId:e,content:n,attributes:r})[LA("0x4e")]((i=>{if(h[LA("0x2e")](g),this.hasCommentThread(t))i&&i[LA("0x4b")]&&this[LA("0x10")]({threadId:t,commentId:e,createdAt:i[LA("0x4b")],isFromAdapter:!0});else{const s={threadId:t,commentId:e,content:n,attributes:r,createdAt:i&&i[LA("0x4b")]?i[LA("0x4b")]:o,authorId:c.id};this.addCommentThread({channelId:m,threadId:t,comments:[s],isFromAdapter:!0})}})).catch((t=>{throw console[LA("0x67")](t),new _u.CKEditorError("commentsrepository-add-comment-internal-error",this)}))}[LA("0x10")]({threadId:t,commentId:e,content:n,createdAt:i,attributes:o,isFromAdapter:r}){if(void 0!==n&&(LA("0x6b")!=typeof n||!n[LA("0x82")]()[LA("0xf")]))throw new _u.CKEditorError(LA("0x80"));const s=this[LA("0x95")](t),a=s[LA("0x26")](e);if(!a)throw new _u.CKEditorError(LA("0x83"),this);let c=!1;if(n&&n!==a[LA("0x69")]&&(a[LA("0x5")]||r)&&(a[LA("0x69")]=n,c=!0),i&&i!==a[LA("0x4b")]&&(a.createdAt=i,a[LA("0x32")]&&a[LA("0x32")][LA("0x8b")]||(a[LA("0x0")]=i),c=!0),o&&!fc(o,a[LA("0x32")])&&(a[LA("0x32")]=o,c=!0),!c)return Promise[LA("0x65")]();if(s.fire("commentUpdated"),r||!this[LA("0x6e")]||LA("0x16")!=typeof this[LA("0x6e")][LA("0x44")])return Promise[LA("0x65")]();const l=this.context[LA("0x2f")][LA("0x7f")]("PendingActions"),{channelId:d}=this[LA("0x95")](a[LA("0x3b")]),u=l[LA("0x5d")](Ox(this[LA("0x4f")][LA("0x61")],LA("0x9")));return this[LA("0x6e")].updateComment({channelId:d,threadId:t,commentId:e,content:n,attributes:o})[LA("0x4e")]((()=>l[LA("0x2e")](u)))[LA("0x94")]((t=>{throw console[LA("0x67")](t),new _u.CKEditorError(LA("0x2d"),this)}))}[LA("0x7c")]({threadId:t,commentId:e,isFromAdapter:n}){const i=this.getCommentThread(t),o=i[LA("0x26")](e);if(!o)throw new _u.CKEditorError(LA("0x54"),this);if(i[LA("0x20")](o),n||!this[LA("0x6e")]||LA("0x16")!=typeof this[LA("0x6e")][LA("0x7b")])return Promise[LA("0x65")]();const r=this[LA("0x4f")].plugins[LA("0x7f")](LA("0x3")),{channelId:s}=i,a=r[LA("0x5d")](Ox(this[LA("0x4f")][LA("0x61")],"PENDING_ACTION_COMMENT_THREAD"));return this[LA("0x6e")][LA("0x7b")]({channelId:s,threadId:t,commentId:e})[LA("0x4e")]((()=>r[LA("0x2e")](a))).catch((t=>{throw console[LA("0x67")](t),new _u.CKEditorError(LA("0x31"),this)}))}}class FA{constructor(t,e){this[LA("0x71")]=e.channelId,this.id=e.id,this[LA("0x14")]("isReadOnly",!1),this[LA("0x8c")](LA("0x1c")).to(t,"_nonAdminChannels",(t=>!t[LA("0x90")](this[LA("0x71")]))),this[LA("0x5e")]=new _u.Collection,this[LA("0x2b")]=t,this[LA("0x57")]=!1}get[LA("0x2")](){return Array.from(this[LA("0x5e")])[LA("0x8d")](((t,e)=>t+e[LA("0x2")]),0)}get length(){return this[LA("0x5e")].length}get[LA("0x2c")](){return this[LA("0x57")]}[LA("0x2e")]({isFromAdapter:t=!1}={}){const{channelId:e,id:n}=this;this[LA("0x2b")][LA("0x29")](HA(LA("0x48"),e),{channelId:e,threadId:n,isFromAdapter:t})}[LA("0x6d")](t){return this[LA("0x2b")][LA("0x5b")]({threadId:this.id,target:t})}addComment(t){const{channelId:e,id:n}=this;this[LA("0x2b")][LA("0x29")](HA(LA("0x74"),e,n),Object.assign({channelId:e,threadId:n},t))}getComment(t){if(LA("0x6b")!=typeof t)throw new _u.CKEditorError(LA("0x58"),null,{commentId:t});return this[LA("0x5e")][LA("0x7f")](t)}[LA("0x38")](){return{threadId:this.id,comments:this.comments.map((t=>t[LA("0x38")]()))}}[LA("0x6")](t){return this[LA("0x88")](t,"change:authoredAt",(()=>{const e=this[LA("0x42")](t),n=this[LA("0x5e")];e-1!=n[LA("0x76")](t)&&e+1!=n[LA("0x76")](t)&&(this[LA("0x20")](t),this[LA("0x6")](t))})),t[LA("0x4b")]?this[LA("0x5e")][LA("0x5d")](t,this[LA("0x42")](t)):this[LA("0x5e")][LA("0x5d")](t)}[LA("0x20")](t){return this[LA("0xe")](t),t.destroy(),this.comments[LA("0x2e")](t)}_findOptimalIndex(t){const e=this[LA("0x5e")].find((e=>new Date(e[LA("0x0")])[LA("0x4")]()>new Date(t[LA("0x0")])[LA("0x4")]()));return e?this[LA("0x5e")][LA("0x76")](e):this[LA("0xf")]}}(0,_u.mix)(FA,_u.ObservableMixin);class VA{constructor(t,e){const n=t[LA("0x4f")][LA("0x2f")][LA("0x7f")]("Users").me,i=t[LA("0x95")](e[LA("0x3b")]),o=0===i[LA("0x5e")][LA("0xf")],r=n===e.author;this.id=e.id,this[LA("0x3b")]=e[LA("0x3b")],this[LA("0x64")]=e[LA("0x64")],this[LA("0x87")]=e.creator,this[LA("0x3e")]=Boolean(e[LA("0x32")]&&e[LA("0x32")]["@external"]),this[LA("0x14")](LA("0x69"),e[LA("0x69")]),this.createdAt=e[LA("0x4b")]||new Date,this[LA("0x14")]("authoredAt",e[LA("0x0")]||new Date),this[LA("0x14")](LA("0x32"),e[LA("0x32")]||{}),this[LA("0x14")](LA("0x5"),r),this[LA("0x8c")]("isRemovable").to(i,LA("0x1c"),(t=>t&&o||r)),this.bind(LA("0x15")).to(i,LA("0x15")),this[LA("0x2b")]=t}get weight(){return Math.max(function(t){const e=document[LA("0x59")](LA("0x5a"));return e[LA("0xd")]=t,e[LA("0x2a")][LA("0xf")]}(this[LA("0x69")]),200)}[LA("0x66")](t){const{threadId:e,id:n}=this;if(!this._repository[LA("0x1f")](e))throw new _u.CKEditorError(LA("0x22"),this);const{channelId:i}=this._repository[LA("0x95")](e);this[LA("0x2b")].fire(HA("updateComment",i,e),Object[LA("0x77")]({channelId:i,threadId:e,commentId:n},t))}setAttribute(t,e){const n=Ks(this[LA("0x32")]);Mi(n,t,e),this[LA("0x66")]({attributes:n})}[LA("0x4d")](t){const e=Ks(this.attributes);li(e,t),this[LA("0x66")]({attributes:e})}remove(t={}){if(!t[LA("0x89")]&&!this[LA("0x1c")])return;const{threadId:e,id:n}=this;if(!this._repository.hasCommentThread(e))throw new _u.CKEditorError(LA("0x45"),this);const{channelId:i}=this[LA("0x2b")][LA("0x95")](e);this._repository.fire(HA(LA("0x7b"),i,e),Object[LA("0x77")]({channelId:i,threadId:e,commentId:n},t))}[LA("0x38")](){return{commentId:this.id,content:this[LA("0x69")],createdAt:this[LA("0x4b")],authorId:this[LA("0x87")].id,attributes:this[LA("0x32")]}}[LA("0x39")](){this.stopListening()}}function HA(t,...e){for(const n of e)void 0!==n&&(t+=":"+String(n));return t}(0,_u.mix)(VA,_u.ObservableMixin);const UA=["createRange","tableCell","selection","start","getLastMatchingPosition","execute","textProxy","model","isObject","push","element","refresh","getRanges","backward","comment:","_hasContent","document","isEnabled","_itemIsContent","editor","getItems","_trimToContent","change"];var qA,WA;qA=UA,WA=349,function(t){for(;--t;)qA.push(qA.shift())}(++WA);const ZA=function(t,e){return UA[t-=0]};class GA extends i{[ZA("0x7")](){const t=this[ZA("0xf")][ZA("0x3")][ZA("0xc")][ZA("0x15")];for(const e of t[ZA("0x8")]())if(this._hasContent(e))return void(this[ZA("0xd")]=!0);this.isEnabled=!1}[ZA("0x1")]({threadId:t=(0,_u.uid)()}={}){const e=this[ZA("0xf")][ZA("0x3")],n=[];for(const t of e[ZA("0xc")][ZA("0x15")][ZA("0x8")]())this[ZA("0xb")](t)&&n[ZA("0x5")](this[ZA("0x11")](t));e[ZA("0x12")]((e=>{for(const i of n){const n=(0,_u.uid)().substr(1,5),o=ZA("0xa")+t+":"+n;e.addMarker(o,{range:i,usingOperation:!1,affectData:!1})}}))}[ZA("0xb")](t){for(const e of t[ZA("0x10")]())if(this[ZA("0xe")](e))return!0;return!1}[ZA("0xe")](t){return t.is(ZA("0x2"))||this[ZA("0xf")][ZA("0x3")].schema[ZA("0x4")](t)&&!t.is(ZA("0x6"),ZA("0x14"))}[ZA("0x11")](t){const e=t=>!this[ZA("0xe")](t.item),n=t[ZA("0x16")][ZA("0x0")](e),i=t.end[ZA("0x0")](e,{direction:ZA("0x9")});return this.editor[ZA("0x3")][ZA("0x13")](n,i)}}const KA=["annotation","getByInnerView","element","requires","fire","has","set","selection","editing","change:isFocused","push","listenTo","getOrderedSelectedAnnotations","model","hasDomSelection","uiUpdate","registerAnnotation","pluginName","isCollapsed","containsRange","focusTracker","_dataCollectors","refreshSelectedViews","EditorAnnotations","function","change:range","innerView","range","update","init","delete","remove","view","directChange","from","add","refresh","isReadOnly","isEqual","_editorAnnotations","sort","document","getRanges","editor"];var $A,YA;$A=KA,YA=165,function(t){for(;--t;)$A.push($A.shift())}(++YA);const JA=function(t,e){return KA[t-=0]};class QA extends e{static get[JA("0xe")](){return[NA]}static get[JA("0x1c")](){return JA("0x22")}constructor(t){super(t),this[JA("0x20")]=new Set,this[JA("0x6")]=new Set}[JA("0x28")](){const t=this.editor,e=t[JA("0x18")].document[JA("0x12")],n=Mr((()=>this.refreshSelectedViews()),10);e.on(JA("0x24"),((t,e)=>{e[JA("0x0")]&&(n.cancel(),this[JA("0x21")]())})),this[JA("0x16")](t.editing[JA("0x2b")][JA("0x8")],JA("0x14"),((t,e,i)=>{i&&n()})),this[JA("0x16")](t.ui.focusTracker,"change:isFocused",((e,n,i)=>{i||t[JA("0x4")]||this[JA("0xf")]("blur",{isAnnotationTracked:t=>this._editorAnnotationsData[JA("0x10")](t[JA("0x25")])})})),this[JA("0x16")](this[JA("0xa")].ui,JA("0x27"),(()=>this[JA("0xf")](JA("0x1a"))))}[JA("0x1b")](t){if(this[JA("0x6")][JA("0x10")](t))return;this[JA("0x6")].add(t.view),this[JA("0xa")].ui[JA("0x1f")][JA("0x2")](t[JA("0x2b")][JA("0xd")]);const e=this.editor.plugins.get(NA);this[JA("0x16")](e.collection,JA("0x2a"),((t,e)=>{this[JA("0xa")].ui.focusTracker.remove(e[JA("0x2b")][JA("0xd")]),this._editorAnnotations[JA("0x29")](e.view)}))}[JA("0x19")](){return this[JA("0xa")][JA("0x13")][JA("0x2b")][JA("0x19")]}addSourceCollector(t){if(JA("0x23")!=typeof t)throw new _u.CKEditorError("editorannotations-invalid-source-callback");this[JA("0x20")][JA("0x2")](t)}refreshSelectedViews(){this[JA("0xf")](JA("0x3"))}[JA("0x17")]({activeAnnotation:t,annotations:e}){const n=[],i=this[JA("0xa")][JA("0x18")][JA("0x8")][JA("0x12")],o=Array[JA("0x1")](i[JA("0x9")]());for(const[t,i]of this._editorAnnotationsData){const o=r(i),s=e[JA("0xc")](t);o&&s&&n[JA("0x15")]({annotation:s,range:o})}function r(t){for(const e of t)for(const t of o)if(e[JA("0x1e")](t,!i[JA("0x1d")]))return e;return null}return n[JA("0x7")](((e,n)=>{const i=e.range,o=n[JA("0x26")];if(!i[JA("0x5")](o)){if(i.containsRange(o,!0))return 1;if(o[JA("0x1e")](i,!0))return-1}return e[JA("0xb")]==t?-1:n.annotation==t?1:0})).map((t=>t[JA("0xb")]))}get _editorAnnotationsData(){const t=new Map;for(const e of Array[JA("0x1")](this[JA("0x20")]))for(const[n,i]of e())t[JA("0x11")](n,i);return t}}const XA=["get","RestrictedEditingModeEditing","has","addCommentThread","enableCommand","plugins"];var tv,ev;tv=XA,ev=199,function(t){for(;--t;)tv.push(tv.shift())}(++ev);const nv=function(t,e){return XA[t-=0]};class iv extends e{afterInit(){const t=this.editor;t[nv("0x4")][nv("0x1")]("RestrictedEditingModeEditing")&&t[nv("0x4")][nv("0x5")](nv("0x0"))[nv("0x3")](nv("0x2"))}}var ov=__webpack_require__(5743),rv={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(ov.Z,rv);ov.Z.locals;const sv=["collaboration.channelId","execute","plugins","Users","map","config","high","_handleImportedData","editor","commands","importWord","dataInsert","get","afterInit"];var av,cv;av=sv,cv=130,function(t){for(;--t;)av.push(av.shift())}(++cv);const lv=function(t,e){return sv[t-=0]};class dv extends e{[lv("0x9")](){const t=this[lv("0x4")],e=t[lv("0x5")][lv("0x8")](lv("0x6")),n=t[lv("0xc")].get(lv("0xd"));e&&(e.on(lv("0xb"),((t,[,e])=>{e.collaboration_features={comments:!0,user_id:n.me.id}}),{priority:_u.priorities[lv("0x2")]+10}),this.listenTo(e,lv("0x7"),this[lv("0x3")]))}[lv("0x3")](t,e){const{comment_threads:n}=e;n&&n.forEach((({thread_id:t,comments:e})=>{const n=e[lv("0x0")]((({author:t,content:e,created_at:n})=>({content:e,authorId:this[lv("0x4")][lv("0xc")][lv("0x8")](lv("0xd")).me.id,createdAt:new Date,attributes:{"@external":{authorName:t,createdAt:n?new Date(n):new Date,source:lv("0x6")}}}))),i=this[lv("0x4")][lv("0x1")][lv("0x8")](lv("0xa"));this.editor[lv("0xc")][lv("0x8")](jA).addCommentThread({channelId:i,threadId:t,comments:n})}))}}const uv=["comment:","map","addCommentThread","model","change:isReadOnly","left","_attachedThreads","collaboration.channelId","_attachMarkerToThread","_threadToController","low","newRange","view","destroyed","markers","EditorAnnotations","activeMarker","getWalker","end","hasCommentThread","includes","sort","pluginName","attachTo","upcast","hasContent","updateMarker","reconvertMarker","state","hasMarkerForId","change","dataDowncast","CommentsRepository","_threads","removeMarker","removeCommentThread","editing","_handleMarkerAddAndRemove","switchReadOnly","for","Annotations","CommentsEditing","conversion","document","ck-comment-marker","elementToElement","getCommentThreads","editingDowncast","high","ck-comment-marker--active","managedUsingOperations","addComment","editor","once","_detachCommentThread","delete","isThreadsLoadingPaused","get","push","markerName","$marker","update:comment","destroy","markerToData","registerAnnotation","has","plugins","set","getChangedMarkers","getAllMarkersForId","config","registerPostFixer","ready","isEqual","length","affectsData","createRange","listenTo","_initializeMarkerConverters","top","add","stop","render","start","getCommentThread","comment","split","change:activeMarker","init"];var hv,mv;hv=uv,mv=281,function(t){for(;--t;)hv.push(hv.shift())}(++mv);const gv=function(t,e){return uv[t-=0]};class pv extends e{static get requires(){return[jA,QA,iv,dv]}static get[gv("0x8")](){return gv("0x1b")}constructor(t){super(t),this.set(gv("0x2a"),!0),t.data.once(gv("0x3a"),(()=>this[gv("0x2a")]=!1)),this[gv("0x35")](gv("0x2"),null),this.on(gv("0x49"),((e,n,i,o)=>{t[gv("0x4e")].change((()=>{if(i){const{id:e}=bv(i),n=this[gv("0x37")](e);for(const e of n)t[gv("0x16")].reconvertMarker(e)}if(o){const{id:e}=bv(o),n=this.getAllMarkersForId(e);for(const e of n)t.editing[gv("0xd")](e)}}))})),this[gv("0x51")]=new Map}[gv("0x4a")](){const t=this[gv("0x26")],e=t[gv("0x34")][gv("0x2b")](gv("0x12")),n=t[gv("0x38")][gv("0x2b")](gv("0x52"));t.commands[gv("0x42")](gv("0x4d"),new GA(t)),this[gv("0x3f")](t,gv("0x4f"),((n,i,o)=>{e[gv("0x18")](o,t[gv("0x38")][gv("0x2b")](gv("0x52")))})),this.listenTo(e,fv(gv("0x15"),n),((n,{threadId:i})=>{t[gv("0x4e")][gv("0x10")]((t=>{for(const e of this[gv("0x37")](i))t.removeMarker(e)}));const o=e.getCommentThread(i);e[gv("0x5")](i)&&!o[gv("0x3c")]||n[gv("0x43")]()}),{priority:gv("0x22")}),this[gv("0x3f")](e,fv(gv("0x25"),n),((n,{threadId:i,isFromAdapter:o})=>{const r=this[gv("0x37")](i);!o&&0!=r[gv("0x3c")]&&e[gv("0x5")](i)&&1===e[gv("0x46")](i).length&&t[gv("0x4e")][gv("0x10")]((t=>{for(const e of r)t.updateMarker(e,{usingOperation:!0,affectsData:!0})}))}),{priority:gv("0x55")}),this[gv("0x40")](),this[gv("0x17")]()}[gv("0x30")](){const t=this[gv("0x26")][gv("0x34")][gv("0x2b")](gv("0x12")),e=this[gv("0x26")][gv("0x38")].get("collaboration.channelId");for(const n of t[gv("0x20")]({channelId:e}))t._detachCommentThread(n.id),t[gv("0x13")][gv("0x29")](n.id);super[gv("0x30")]()}[gv("0xf")](t){return this[gv("0x37")](t)[gv("0x3c")]>0}[gv("0x37")](t){return(this[gv("0x51")][gv("0x2b")](t)||[])[gv("0x4c")]((t=>this[gv("0x26")].model.markers[gv("0x2b")](t))).filter((t=>t))}[gv("0x40")](){const t=this.editor;t[gv("0x1c")][gv("0x19")](gv("0x21")).markerToHighlight({model:gv("0x47"),view:t=>{const{id:e}=bv(t[gv("0x2d")]),n=[gv("0x1e")];return this[gv("0x2")]&&bv(this.activeMarker).id===e&&n[gv("0x2c")](gv("0x23")),{classes:n,attributes:{"data-comment":e}}}}),t[gv("0x1c")][gv("0x19")](gv("0x11"))[gv("0x31")]({model:gv("0x47"),view:e=>{const n=t.model[gv("0x0")][gv("0x2b")](e),{id:i,part:o}=bv(e);return n&&!n[gv("0x3d")]?null:{group:"comment",name:o?i+":"+o:i}}}),t[gv("0x1c")][gv("0x19")]("upcast")[gv("0x1f")]({view:{name:gv("0x47"),attribute:{id:/^\w/}},model:(t,{writer:e})=>e.createElement(gv("0x2e"),{"data-name":gv("0x4b")+t.getAttribute("id")})}),t[gv("0x1c")][gv("0x19")](gv("0xa")).dataToMarker({view:gv("0x47")})}[gv("0x17")](){const t=this[gv("0x26")],e=t[gv("0x34")].get(gv("0x12")),n=new Set;t.model[gv("0x1d")][gv("0x39")]((e=>{let i=!1;for(const{name:o,data:r}of t[gv("0x4e")].document.differ[gv("0x36")]()){const{group:s,id:a}=bv(o);let c=r[gv("0x56")];if(gv("0x47")!==s||!c)continue;const l="$graveyard"===c.root.rootName;l||(c=kv(c,t.model),!c||c[gv("0x3b")](r[gv("0x56")]))?!c||!t[gv("0x4e")][gv("0xb")](c)||this[gv("0x51")][gv("0x33")](a)&&l?(e[gv("0x14")](o),i=!0):l||(this[gv("0x2a")]?n.add(o):this[gv("0x53")](o,a)):(e[gv("0xc")](o,{range:c}),i=!0)}return i})),this.on("change:isThreadsLoadingPaused",((e,i,o)=>{if(!o&&n.size)for(const e of n){const{id:i}=bv(e);n.delete(i),t[gv("0x4e")][gv("0x0")].get(e)&&this[gv("0x53")](e,i)}})),this[gv("0x3f")](t[gv("0x4e")].markers,gv("0x2f"),((i,o,r,s)=>{if(s)return;const{id:a}=bv(o.name),c=t[gv("0x34")][gv("0x2b")](gv("0x12")).getCommentThread(a);n[gv("0x29")](a),c&&!this[gv("0xf")](a)&&(this._attachedThreads[gv("0x29")](a),e[gv("0x28")](a))}))}[gv("0x53")](t,e){if(this[gv("0x51")][gv("0x33")](e)){const n=this[gv("0x51")][gv("0x2b")](e);return void(n[gv("0x6")](t)||n[gv("0x2c")](t))}this[gv("0x51")][gv("0x35")](e,[t]);const n=this[gv("0x26")],i=n[gv("0x34")][gv("0x2b")](gv("0x12")),o=n.config[gv("0x2b")](gv("0x52")),r=n.plugins[gv("0x2b")](gv("0x1")),s=()=>{const t=this.getAllMarkersForId(e);if(0===t.length)return null;if(1===t[gv("0x3c")])return Fk(n[gv("0x16")],t[0]);const i=t[gv("0x4c")]((t=>Fk(n[gv("0x16")],t)));return i[gv("0x7")](((t,e)=>{const n=new _u.Rect(t),i=new _u.Rect(e),o=n[gv("0x41")]-i[gv("0x41")];return 0==o?n.left-i[gv("0x50")]:o})),i[0]};this.getAllMarkersForId(e)[0][gv("0x24")]?i.fetchCommentThread({channelId:o,threadId:e}).then((t=>{if(gv("0x58")!==n[gv("0xe")])if(t){const e=t[gv("0x9")](s);r[gv("0x32")](e)}else{const t=this[gv("0x37")](e);n[gv("0x4e")][gv("0x10")]((e=>{for(const n of t)e[gv("0x14")](n)}))}})):n[gv("0x16")][gv("0x57")][gv("0x27")](gv("0x44"),(()=>{const t=n[gv("0x34")][gv("0x2b")](gv("0x1a")),a=i.openNewCommentThread({channelId:o,threadId:e,target:s}),c=i[gv("0x54")][gv("0x2b")](a)[gv("0x57")],l=t.getByInnerView(c);r.registerAnnotation(l)}),{priority:gv("0x55")})}}function fv(t,e){return e?t+":"+e:t}function bv(t){const e=t[gv("0x48")](":");return{group:e[0],id:e[1],part:e[2]}}function kv(t,e){const n=e.schema,i=e[gv("0x3e")](t[gv("0x45")]);for(const o of t[gv("0x3")]()){const{type:t,item:r,nextPosition:s}=o;if("text"===t||n.isObject(r)){const t=e.createPositionBefore(r);i.isCollapsed&&(i.start=t),i[gv("0x4")]=s}}return i.isCollapsed?null:i}const xv='\x3c!--\n\n What you\'re currently looking at is the source code of a legally protected, proprietary software.\n CKEditor 5 Collaboration is licensed under a commercial license and protected by copyright law. Where not otherwise indicated,\n all CKEditor 5 Collaboration content is authored by CKSource engineers and consists of CKSource-owned intellectual property.\n\n Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n\n!--\x3e\n\n\n',wv=["focus","innerView","bind","map","locale","focusTracker","get","highest","plugins","editor","listenTo","_viewToController","push","model","addSourceCollector","length","pluginName","CommentsListView","execute","comment:","view","Comment","hasMarkerForId","_createUIButton","init","addCommentThread","tooltip","activeMarker","comment","_threadToController","CommentThreadInputView","CommentsUI","icon","change:activeAnnotations","isFocused","add"];var _v,Av;_v=wv,Av=195,function(t){for(;--t;)_v.push(_v.shift())}(++Av);const vv=function(t,e){return wv[t-=0]};class Cv extends e{static get[vv("0x1")](){return vv("0x10")}static get requires(){return[jA,pv,QA,NA]}get[vv("0x2")](){return E_}get[vv("0xf")](){return f_}[vv("0x9")](){const t=this[vv("0x1e")],e=t[vv("0x1d")][vv("0x1b")](jA),n=t.plugins[vv("0x1b")](pv),i=t[vv("0x1d")][vv("0x1b")](NA),o=t[vv("0x1d")][vv("0x1b")](QA);t.ui.componentFactory[vv("0x14")](vv("0xd"),(()=>this[vv("0x8")]())),o[vv("0x23")]((()=>{const t=[];for(const[i,o]of e[vv("0xe")]){const e=n.getAllMarkersForId(i.id),r=e[vv("0x18")]((t=>t.getRange()));e[vv("0x0")]>0&&t[vv("0x21")]([o[vv("0x5")],r])}return t})),this[vv("0x1f")](i,vv("0x12"),((t,i,o)=>{const r=Array.from(o)[vv("0x18")]((t=>t[vv("0x16")])).find((t=>e[vv("0x20")].has(t)));if(!r)return void(n.activeMarker=null);const s=e._viewToController[vv("0x1b")](r)[vv("0x22")].id,a=vv("0x4")+s;n[vv("0x7")](s)?n[vv("0xc")]=a:n[vv("0xc")]&&(n.activeMarker=null)})),this.listenTo(e,"removeCommentThread",((e,{threadId:i,isFromAdapter:o})=>{!o&&t.ui[vv("0x1a")][vv("0x13")]&&n[vv("0x7")](i)&&t.editing[vv("0x5")][vv("0x15")]()}),{priority:vv("0x1c")}),this[vv("0x1f")](e,"addComment",((i,{threadId:o,isFromAdapter:r})=>{!r&&n[vv("0x7")](o)&&e.hasCommentThread(o)&&1===e.getCommentThread(o)[vv("0x0")]&&(t.editing[vv("0x5")][vv("0x15")](),i.stop())}),{priority:"low"})}[vv("0x8")](){const t=this[vv("0x1e")],e=new Nu(t[vv("0x19")]),n=t.commands.get(vv("0xa"));return e.label=Ox(t.locale,vv("0x6")),e[vv("0xb")]=Ox(t[vv("0x19")],vv("0x6")),e[vv("0x11")]=xv,e[vv("0x17")]("isEnabled").to(n),this[vv("0x1f")](e,vv("0x3"),(()=>n[vv("0x3")]())),e}}const yv=["affectsData","_enableCommentsOnlyMode","has","delete","pluginName","config","requires","document","editor","view","set","stop","plugins","clipboardInput","get","commentsOnly","clearForceDisabled","commands","forceDisabled","commentsOnlyMode","isEnabled","highest","_disableCommentsOnlyMode","listenTo","stopListening","addCommentThread","DragDrop","CommentsOnly","editing","cut","afterInit"];var Ev,Tv;Ev=yv,Tv=318,function(t){for(;--t;)Ev.push(Ev.shift())}(++Tv);const Dv=function(t,e){return yv[t-=0]};class Sv extends e{static get[Dv("0x1b")](){return Dv("0x13")}static get[Dv("0x1d")](){return[pv]}constructor(t){super(t),this[Dv("0x2")](Dv("0xc"),null),this.on("change:isEnabled",((t,e,n)=>{n?this[Dv("0x18")]():this[Dv("0xe")]()}))}[Dv("0x16")](){null===this[Dv("0xc")]&&(this[Dv("0xc")]=!!this[Dv("0x0")][Dv("0x1c")].get(Dv("0x7")))}[Dv("0x18")](){for(const[t,e]of this[Dv("0x0")][Dv("0x9")])e[Dv("0x17")]&&Dv("0x11")!==t&&e[Dv("0xa")](Dv("0xb"));this[Dv("0x0")][Dv("0x4")][Dv("0x19")](Dv("0x12"))&&this[Dv("0x0")][Dv("0x4")][Dv("0x6")](Dv("0x12")).forceDisabled(Dv("0xb"));const t=this[Dv("0x0")][Dv("0x14")][Dv("0x1")][Dv("0x1e")];this[Dv("0xf")](t,Dv("0x15"),(t=>t[Dv("0x3")]()),{priority:Dv("0xd")}),this[Dv("0xf")](t,Dv("0x5"),(t=>t[Dv("0x3")]()),{priority:Dv("0xd")}),this.listenTo(t,Dv("0x1a"),(t=>t[Dv("0x3")]()),{priority:"highest"})}_disableCommentsOnlyMode(){for(const[t,e]of this[Dv("0x0")].commands)e[Dv("0x17")]&&Dv("0x11")!==t&&e[Dv("0x8")](Dv("0xb"));this[Dv("0x10")](this.editor.editing[Dv("0x1")].document)}}const Iv=["length","delete","_uisData","listenTo","activeAnnotations","get","destroy","annotationsuis-activate-missing-ui","filter","size","add","register","hasActive","annotationsuis-register-invalid-interface","setActiveAnnotation","_activateAnnotation","AnnotationsUIs","stopListening","_setSelectedAnnotations","remove","function","_assertAnnotationDoesNotBelongToMultipleUIs","deactivateAll","detach","context","isActive","activate","_removeActiveAnnotation","collection","has","from","_addActiveAnnotation","plugins","push","pluginName","attach","_uis","set","_visibleAnnotations","change:activeAnnotation","switchTo","requires","activeUIs","deactivate"];var Bv,Mv;Bv=Iv,Mv=381,function(t){for(;--t;)Bv.push(Bv.shift())}(++Mv);const Nv=function(t,e){return Iv[t-=0]};class Ov extends Dn{static get[Nv("0xc")](){return[NA]}static get[Nv("0x5")](){return Nv("0x1f")}constructor(t){super(t),this.activeUIs=new Set,this[Nv("0x7")]=new Map,this[Nv("0x11")]=new Map}init(){const t=this[Nv("0x27")][Nv("0x3")][Nv("0x14")](NA);this[Nv("0x12")](t,Nv("0x1e"),((t,e)=>{for(const t of this[Nv("0xd")]){const n=this._uis[Nv("0x14")](t);(0,this._uisData.get(t)[Nv("0x17")])(e)&&n[Nv("0x1d")](e)}})),this[Nv("0x12")](t,"_deactivateAllAnnotations",(()=>{for(const t of this.activeUIs)this._uis[Nv("0x14")](t)[Nv("0x1d")](null)})),this[Nv("0x12")](t[Nv("0x9")],Nv("0x19"),((t,e)=>{this[Nv("0x24")](e)}))}[Nv("0x1b")](){return this[Nv("0xd")][Nv("0x18")]>0}[Nv("0x28")](t){return this[Nv("0xd")][Nv("0x0")](t)}[Nv("0x29")](t,e=(()=>!0)){const n=this.context[Nv("0x3")][Nv("0x14")](NA);if(!this[Nv("0x7")][Nv("0x0")](t))throw new _u.CKEditorError(Nv("0x16"),this,{uiName:t});this[Nv("0x28")](t)&&this.deactivate(t),this.activeUIs[Nv("0x19")](t);const i=new TA;(function({source:t,target:e,filter:n}){for(const i of t)n(i)&&e[EA("0x2")](i);e.listenTo(t,EA("0x2"),((t,i)=>{n(i)&&e.add(i)})),e[EA("0x1e")](t,EA("0xf"),((t,n)=>{e.has(n)&&e.remove(n)}))})({source:n._visibleAnnotations,target:i,filter:e}),this[Nv("0x11")][Nv("0x8")](t,{collection:i,filter:e});const o=this[Nv("0x7")].get(t);o[Nv("0x6")](i),this[Nv("0x12")](o,Nv("0xa"),((t,e,i,o)=>{o&&n[Nv("0x2a")](o),i&&n[Nv("0x2")](i)}))}[Nv("0xe")](t){this[Nv("0xd")][Nv("0x10")](t);const e=this._uis[Nv("0x14")](t);e.detach(),this[Nv("0x20")](e),this[Nv("0x11")][Nv("0x14")](t)[Nv("0x2b")][Nv("0x15")](),this._uisData.delete(t)}[Nv("0xb")](t){const e=this[Nv("0x27")][Nv("0x3")].get(NA),n=Array[Nv("0x1")](e[Nv("0x13")])[0]||null;this[Nv("0x25")](),this[Nv("0x29")](t);const i=this[Nv("0x7")].get(t);i[Nv("0x1d")](n),i[Nv("0x21")]&&n&&i._setSelectedAnnotations([n])}[Nv("0x25")](){for(const t of this.activeUIs)this[Nv("0xe")](t)}[Nv("0x1a")](t,e){if(this._uis.has(t))throw new _u.CKEditorError("annotationsuis-register-already-registered");if(Nv("0x23")!=typeof e.attach||Nv("0x23")!=typeof e[Nv("0x26")]||Nv("0x23")!=typeof e[Nv("0x1d")])throw new _u.CKEditorError(Nv("0x1c"),null);this[Nv("0x7")][Nv("0x8")](t,e)}refilterAnnotations(){const t=this[Nv("0x27")].plugins.get(NA).collection,e=new Map,n=Array[Nv("0x1")](this[Nv("0xd")]);for(const t of this[Nv("0xd")]){const n=this[Nv("0x11")].get(t)[Nv("0x2b")];for(const i of n)e[Nv("0x8")](i,t)}for(const i of t){const t=e[Nv("0x14")](i);this[Nv("0x24")](i);const o=n.find((t=>this[Nv("0x11")][Nv("0x14")](t).filter(i)));t!==o&&(t&&this[Nv("0x11")][Nv("0x14")](t)[Nv("0x2b")][Nv("0x22")](i),o&&this[Nv("0x11")][Nv("0x14")](o)[Nv("0x2b")][Nv("0x19")](i))}}[Nv("0x15")](){this[Nv("0x25")](),super[Nv("0x15")]()}[Nv("0x24")](t){const e=[];for(const n of this[Nv("0xd")])(0,this[Nv("0x11")].get(n)[Nv("0x17")])(t)&&e[Nv("0x4")](n);if(e[Nv("0xf")]>1)throw new _u.CKEditorError("annotationsuis-annotation-mismatch",null,{matchedUIs:e,annotationType:t.type})}}var Pv=__webpack_require__(5745),Rv={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Pv.Z,Rv);Pv.Z.locals;const Lv=["class","minHeight","div","createCollection","list","bindTemplate","ck-sidebar","setTemplate","set"];var zv,jv;zv=Lv,jv=229,function(t){for(;--t;)zv.push(zv.shift())}(++jv);const Fv=function(t,e){return Lv[t-=0]},Vv=(0,_u.toUnit)("px");class Hv extends Hd{constructor(t){super(t);const e=this[Fv("0x1")];this[Fv("0x4")]("minHeight",0),this.set(Fv("0x5"),""),this.list=this[Fv("0x8")](),this[Fv("0x3")]({tag:Fv("0x7"),attributes:{class:["ck",Fv("0x2"),"ck-reset",e.to(Fv("0x5"))],style:{minHeight:e.to(Fv("0x6"),(t=>t?Vv(t+10):null))}},children:this[Fv("0x0")]})}}const Uv=["ck-sidebar-item--no-animation","height","attach","setTemplate","updateHeight","content","render","element","detach","_mutationObserver","isAnimationDisabled","ck-sidebar-item","set","bindTemplate","_targetTop","bottom","createCollection","top","bind"];var qv,Wv;qv=Uv,Wv=457,function(t){for(;--t;)qv.push(qv.shift())}(++Wv);const Zv=function(t,e){return Uv[t-=0]},Gv=(0,_u.toUnit)("px");class Kv extends Hd{constructor(t){super(t),this[Zv("0xb")]("top"),this[Zv("0xb")](Zv("0x0"),0),this[Zv("0x11")](Zv("0xe")).to(this,Zv("0x10"),this,"height",((t,e)=>(t||0)+e)),this[Zv("0xb")](Zv("0x9"),!1),this._mutationObserver=lA((()=>this[Zv("0x3")]())),this[Zv("0xd")]=null,this[Zv("0x4")]=this[Zv("0xf")]();const e=this[Zv("0xc")];this[Zv("0x2")]({tag:"div",attributes:{class:[Zv("0xa"),e.to(Zv("0x9"),(t=>t?Zv("0x12"):""))],style:{top:e.to(Zv("0x10"),Gv)}},children:this[Zv("0x4")]})}[Zv("0x5")](){super.render(),this[Zv("0x8")][Zv("0x1")](this[Zv("0x6")])}[Zv("0x3")](){const t=this[Zv("0x6")].clientHeight;t&&(this.height=t)}destroy(){this.content.clear(),this[Zv("0x8")][Zv("0x7")](),super.destroy()}}const $v=["change:targetRect","config","sidebar.preventScrollOutOfView","_destroySidebarItemView","_createSidebarView","_annotations","target","getIndex","_alignAfterItem","_spaceBetweenItems","minHeight","change:_lastItem","list","element","_lastItem","context","_getItemAfter","_setItemTop","targetRect","pluginName","updateHeight","setContainer","_sidebarItemViewToAnnotation","object","container","_recalculate","nodeType","view","class","_targetTop","get","isAnimationDisabled","_alignForTopChange","_updateLastItem","init","Sidebar","set","_activeAnnotation","refresh","content","isActive","push","sidebar.container","_recalculateBuffer","define","destroy","addAnnotation","_annotationToSidebarItemView","change:top","_detachFromContainer","bind","_alignToTargetRect","top","bottom","_getItemBefore","max","listenTo","length","getSidebarItemView","_alignForBottomChange","_alignBeforeItem","unbind","clear","render","stopListening","height","add","locale","remove","_getTargetTop","sidebar-setcontainer-invalid-element","_getMaxAvailableTop"];var Yv,Jv;Yv=$v,Jv=486,function(t){for(;--t;)Yv.push(Yv.shift())}(++Jv);const Qv=function(t,e){return $v[t-=0]};class Xv extends Dn{static get[Qv("0x25")](){return Qv("0x35")}constructor(t){super(t),this[Qv("0x36")]("_lastItem"),this[Qv("0x2d")]=this[Qv("0x16")](),this.set("container",null),this[Qv("0x1b")]=25,this[Qv("0x28")]=new Map,this[Qv("0x41")]=new Map,this[Qv("0x21")][Qv("0x13")][Qv("0x3e")]("sidebar.preventScrollOutOfView",!1),this._annotations=null,this[Qv("0x37")]=null,this._recalculateBuffer=[]}[Qv("0x34")](){const t=this.context[Qv("0x13")][Qv("0x30")](Qv("0x3c"));t&&this[Qv("0x27")](t)}[Qv("0x27")](t){if(!eC(t))throw new _u.CKEditorError(Qv("0x10"));this[Qv("0x2a")]=t}_attachToContainer({viewClass:t="",spaceBetweenItems:e=25}={}){if(!eC(this.container))throw new _u.CKEditorError("sidebar-attachtocontainer-missing-container",this);this.container.appendChild(this[Qv("0x2d")].element),this[Qv("0x2d")].class=t,this[Qv("0x1b")]=e}rearrange({removedAnnotation:t,previousAnnotation:e,nextAnnotation:n}){const i=this.getSidebarItemView(t);this[Qv("0x2d")].list[Qv("0xe")](i),this[Qv("0x15")](t),e&&this[Qv("0x45")](this[Qv("0x4")](e)),n&&this[Qv("0x45")](this[Qv("0x4")](n)),this[Qv("0x33")]()}[Qv("0x38")]({blurredAnnotation:t,activatedAnnotation:e,disableAnimationOnActivatedAnnotation:n}){if(this._activeAnnotation=e,t){t[Qv("0x3a")]=!1;const e=this[Qv("0x4")](t);e&&n&&(e[Qv("0x31")]=!1)}if(e){const t=this[Qv("0x4")](e);t&&(e[Qv("0x3a")]=!0,n&&(t[Qv("0x31")]=!0,t[Qv("0x46")]+=1),this._alignToTargetRect(t))}}[Qv("0x43")](t){this[Qv("0xa")](),this.view[Qv("0x1f")][Qv("0xe")]();for(const e of t)this[Qv("0x15")](e);this[Qv("0x2d")][Qv("0x1e")][Qv("0x8")](),this[Qv("0x2d")][Qv("0x2e")]="",this[Qv("0x20")]=null}[Qv("0x40")](t,e){e||(e=t.view);const n=new Kv(this.context[Qv("0xd")]);this[Qv("0x28")][Qv("0x36")](n,t),this[Qv("0x41")][Qv("0x36")](t,n),n[Qv("0x39")][Qv("0xc")](e),this[Qv("0x2")](t[Qv("0x2d")],Qv("0x12"),((e,i,o)=>{const r=this[Qv("0xf")](t,o);n[Qv("0x2f")]!=r&&(n._targetTop=r,this[Qv("0x23")](n,r))})),this[Qv("0x2")](n,Qv("0x42"),(()=>{this[Qv("0x2b")](n,Qv("0x46"))})),this.listenTo(n,"change:bottom",(()=>{this[Qv("0x2b")](n,Qv("0x47"))})),this._alignToTargetRect(n);const i=this[Qv("0x0")](n);return i&&this[Qv("0x1a")](i,n)||this[Qv("0x45")](n),this[Qv("0x33")](),this[Qv("0x2d")][Qv("0x1e")][Qv("0xc")](n),n}[Qv("0x32")](t){if(!t[Qv("0x39")][Qv("0x3")])return;const e=this[Qv("0x0")](t);if(!e)return;const n=this[Qv("0x28")].get(e),i=this[Qv("0x37")];i&&i===n?this[Qv("0x1a")](e,t):this[Qv("0x6")](t,e)}[Qv("0x5")](t){if(!t[Qv("0x39")].length)return;const e=this[Qv("0x22")](t);if(!e)return;const n=this._sidebarItemViewToAnnotation.get(e),i=this[Qv("0x21")][Qv("0x13")].get(Qv("0x14")),o=this._activeAnnotation;o&&o===n&&i?(this._alignBeforeItem(e,t),this[Qv("0x1a")](t,e)):o&&o===n?this[Qv("0x6")](e,t):this._alignAfterItem(t,e)}[Qv("0x2b")](t,e){0===this[Qv("0x3d")][Qv("0x3")]&&setTimeout((()=>{for(const{sidebarItemView:t,changedProp:e}of this[Qv("0x3d")])"top"===e?this[Qv("0x32")](t):this._alignForBottomChange(t);this[Qv("0x3d")]=[]}),10),this[Qv("0x3d")][Qv("0x3b")]({sidebarItemView:t,changedProp:e})}getSidebarItemView(t){return this[Qv("0x41")][Qv("0x30")](t)}[Qv("0x3f")](){this[Qv("0x2d")][Qv("0x3f")]()}[Qv("0x15")](t){const e=this[Qv("0x4")](t);this[Qv("0xa")](e),this[Qv("0xa")](t[Qv("0x2d")]),e[Qv("0x3f")](),this[Qv("0x41")].delete(t),this._sidebarItemViewToAnnotation.delete(e)}[Qv("0x16")](){const t=new Hv(this[Qv("0x21")][Qv("0xd")]);return t[Qv("0x9")](),this.on(Qv("0x1d"),((e,n,i,o)=>{o&&t[Qv("0x7")](Qv("0x1c")),i?t[Qv("0x44")](Qv("0x1c")).to(i,"bottom"):t[Qv("0x1c")]=null})),t}[Qv("0x33")](){this._lastItem=this[Qv("0x4")](this._annotations.last)}[Qv("0x0")](t){const e=this[Qv("0x28")][Qv("0x30")](t),n=this[Qv("0x17")][Qv("0x30")](this[Qv("0x17")][Qv("0x19")](e)-1);return n&&this[Qv("0x4")](n)}[Qv("0x22")](t){const e=this[Qv("0x28")][Qv("0x30")](t),n=this[Qv("0x17")][Qv("0x30")](this[Qv("0x17")][Qv("0x19")](e)+1);return n&&this.getSidebarItemView(n)}[Qv("0x6")](t,e){t[Qv("0x26")]();const n=tC(e[Qv("0x47")]+this[Qv("0x1b")],t[Qv("0x46")]);return!!n&&(this._setItemTop(e,e[Qv("0x46")]-n),!0)}_alignAfterItem(t,e){t[Qv("0x26")]();const n=tC(t[Qv("0x47")]+this[Qv("0x1b")],e[Qv("0x46")]);return!!n&&(this[Qv("0x23")](e,e.top+n,!1),!0)}[Qv("0x45")](t){const e=this[Qv("0x28")].get(t);if(!e||!e.target)return;const n=this[Qv("0xf")](e,e[Qv("0x24")]);this[Qv("0x23")](t,n)}[Qv("0xf")](t,e){if(null===e)return 0;if(t[Qv("0x18")]instanceof _u.Rect)return e.top;{const t=new _u.Rect(this[Qv("0x2d")][Qv("0x1f")])[Qv("0x46")];return e[Qv("0x46")]-t}}[Qv("0x23")](t,e,n=this[Qv("0x21")][Qv("0x13")].get(Qv("0x14"))){n&&(e=Math.max(e,this[Qv("0x11")](t))),t.top=e}[Qv("0x11")](t){let e=this[Qv("0x0")](t),n=0;for(;e;)e.updateHeight(),n+=this[Qv("0x1b")]+e[Qv("0xb")],e=this[Qv("0x0")](e);return n}}function tC(t,e){return Math[Qv("0x1")](t-e,0)}function eC(t){return null!==t&&Qv("0x29")==typeof t&&1===t[Qv("0x2c")]}const nC=["off","setActiveAnnotation","plugins","resize","focus","addAnnotation","_editorAnnotations","_refreshPositioningDebounced","hasDomSelection","set","activeAnnotation","annotations","getOrderedSelectedAnnotations","editors","isAttached","refreshPositioning","_integrateWithEditorAnnotations","set:container","detach","listenTo","from","_attachToContainer","init","rearrange","stop","WideSidebar","blur","stopListening","refresh","EditorAnnotations","removeEventListener","_activeAnnotation","_annotations","pluginName","remove","add","widesidebar-detach-not-attached","destroy","context","has","high","container","Sidebar","get","change:container","_destroyEditorAnnotationsIntegration"];var iC,oC;iC=nC,oC=250,function(t){for(;--t;)iC.push(iC.shift())}(++oC);const rC=function(t,e){return nC[t-=0]};class sC extends Dn{static get requires(){return[Xv,Ov]}static get[rC("0xd")](){return rC("0x5")}constructor(t){super(t),this[rC("0x28")]=!1,this[rC("0x23")](rC("0x24"),null),this[rC("0x25")]=null,this[rC("0x20")]=new _u.Collection,this[rC("0x21")]=Mr((()=>{this[rC("0x25")][rC("0x29")]()}),250,{leading:!1})}[rC("0x2")](){const t=this[rC("0x12")][rC("0x1c")].get(Ov),e=this[rC("0x12")][rC("0x1c")][rC("0x17")](Xv);t.register("wideSidebar",this),e[rC("0x15")]&&t.switchTo("wideSidebar")}[rC("0x1b")](t){if(t===this.activeAnnotation)return;const e=this[rC("0x12")][rC("0x1c")][rC("0x17")](Xv);e[rC("0xb")]=t;const n=this[rC("0x24")];this[rC("0x24")]=t,e[rC("0x8")]({blurredAnnotation:n,activatedAnnotation:this[rC("0x24")]})}attach(t){this[rC("0x25")]=t;const e=this.context[rC("0x1c")][rC("0x17")](rC("0x16"));if(e[rC("0xc")]=t,this[rC("0x28")])throw new _u.CKEditorError("widesidebar-attach-already-attached",this);this[rC("0x28")]=!0,this[rC("0x2d")](e,rC("0x2b"),(()=>{this[rC("0x2c")](),this[rC("0x2d")](e,rC("0x18"),(e=>{e[rC("0x1a")](),this.attach(t)}))})),e[rC("0x1")]({viewClass:"ck-sidebar--wide"});const n=t=>{t.updateTargetRect(),e[rC("0x1f")](t)};for(const e of t)n(e);this[rC("0x2d")](t,rC("0xf"),((t,e)=>{n(e)})),this[rC("0x2d")](t,rC("0xe"),((n,i,o)=>{e[rC("0x3")]({removedAnnotation:i,previousAnnotation:t.get(o-1),nextAnnotation:t[rC("0x17")](o+1)}),i===this[rC("0x24")]&&this[rC("0x1b")](null)}),{priority:rC("0x14")}),this[rC("0x2d")](t,rC("0x1e"),((t,e)=>{this[rC("0x1b")](e)})),this[rC("0x2d")](t,rC("0x6"),(()=>{this[rC("0x1b")](null)}));const i=this[rC("0x12")].editors?this[rC("0x12")][rC("0x27")]:new _u.Collection([this[rC("0x12")]]);for(const t of i)this._integrateWithEditorAnnotations(t);this[rC("0x2d")](i,rC("0xf"),((t,e)=>{this[rC("0x2d")](e,"ready",(()=>{this[rC("0x2a")](e)}))})),this[rC("0x2d")](i,rC("0xe"),((t,e)=>{e[rC("0x1c")][rC("0x13")](rC("0x9"))&&this[rC("0x19")](e[rC("0x1c")][rC("0x17")](rC("0x9")))})),window.addEventListener(rC("0x1d"),this[rC("0x21")]),this[rC("0x25")][rC("0x29")]()}[rC("0x2c")](){if(!this[rC("0x28")])throw new _u.CKEditorError(rC("0x10"),this);this[rC("0x1b")](null);const t=this[rC("0x12")][rC("0x1c")][rC("0x17")](Xv);t._detachFromContainer(this[rC("0x25")]),this[rC("0x7")](t),this[rC("0x7")](this[rC("0x25")]),this[rC("0x7")](this[rC("0x12")][rC("0x27")]);for(const t of Array[rC("0x0")](this[rC("0x20")]))this[rC("0x19")](t);window[rC("0xa")](rC("0x1d"),this._refreshPositioningDebounced),this[rC("0x21")].cancel(),this[rC("0x24")]=null,this[rC("0x28")]=!1,this.annotations=null}[rC("0x11")](){this[rC("0x28")]&&this[rC("0x2c")]()}_integrateWithEditorAnnotations(t){const e=t[rC("0x1c")][rC("0x17")]("EditorAnnotations");if(!e)return;const n=()=>{const t=e[rC("0x26")]({annotations:this[rC("0x25")],activeAnnotation:this[rC("0x24")]});this[rC("0x1b")](t[0]||null)};this[rC("0x2d")](e,rC("0x8"),n),this[rC("0x2d")](e,"blur",((t,{isAnnotationTracked:e})=>{this.activeAnnotation&&e(this.activeAnnotation)&&this[rC("0x1b")](null)})),this.listenTo(e,"uiUpdate",(()=>{this[rC("0x21")]()})),this[rC("0x2d")](this[rC("0x25")],"blur",(t=>{e[rC("0x22")]()&&(n(),t[rC("0x4")]())}),{priority:rC("0x14")}),this[rC("0x20")][rC("0xf")](e)}_destroyEditorAnnotationsIntegration(t){t&&(this[rC("0x7")](t),this[rC("0x20")].remove(t))}}const aC=["icon","isDirty","ck-annotation-counter__badge--edit-mode","children","_badge","...","annotationType","extendTemplate","number","set","bind","add"];var cC,lC;cC=aC,lC=413,function(t){for(;--t;)cC.push(cC.shift())}(++lC);const dC=function(t,e){return aC[t-=0]};class uC extends Nu{constructor(t){super(t);const e=this.bindTemplate;this.set(dC("0x8"),!1),this[dC("0x4")](dC("0x3"),0),this[dC("0x5")](dC("0xb")).to(this,"isDirty",this,dC("0x3"),((t,e)=>t?dC("0x0"):e)),this[dC("0x4")](dC("0x1"),""),this[dC("0x7")]=xv,this[dC("0x2")]({attributes:{class:["ck-annotation-counter"]}}),this.counterView=new Hd,this.counterView.setTemplate({tag:"span",attributes:{class:["ck-annotation-counter__badge",e.to(dC("0x1"),(t=>"ck-annotation-counter__badge--"+t)),e.if("isDirty",dC("0x9"))]},children:[{text:e.to(dC("0xb"))}]}),this[dC("0xa")][dC("0x6")](this.counterView)}}var hC=__webpack_require__(659),mC={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(hC.Z,mC);hC.Z.locals;const gC=["isDirty","has","register","southArrowNorth","change:container","pluginName","activeAnnotation","narrowsidebar-detach-not-attached","number","high","_manuallyClosedAnnotationViews","preventDefault","_showBalloon","includes","_refreshPositioning","rearrange","keyCode","locale","northArrowSouth","isAttached","type","_hideBalloon","_annotationToNarrowView","_integrateWithEditorAnnotations","attachToDom","off","listenTo","create","getOrderedSelectedAnnotations","target","element","add","narrowSidebar","bind","attach","contains","refresh","_setSelectedAnnotations","editors","_attachToContainer","northArrowSouthWest","setActiveAnnotation","stop","set:container","destroy","_attachListeners","getSidebarItemView","southArrowNorthWest","getByView","_updateBalloonPosition","resize","view","defaultPositions","context","preventClosingBalloon","cancel","clear","southArrowNorthEast","_destroyEditorAnnotationsIntegration","blur","values","bodyCollection","get","hasDomSelection","addEventListener","removeEventListener","stopPropagation","delete","Esc","_refreshPositioningDebounced","mousedown","pin","addAnnotation","stopListening","execute","focus","isVisible","_annotations","ready","_editorAnnotations","detach","refreshPositioning","first","remove","annotationType","_domEmitter","_selectedAnnotations","content","init","low","annotations","set","plugins","_detachListeners","change:height","northArrowSouthEast","unpin","balloonPanelView","EditorAnnotations","length"];var pC,fC;pC=gC,fC=233,function(t){for(;--t;)pC.push(pC.shift())}(++fC);const bC=function(t,e){return gC[t-=0]};class kC extends Dn{static get requires(){return[Xv,Ov]}static get[bC("0x48")](){return"NarrowSidebar"}constructor(t){super(t),this[bC("0x56")]=!1,this[bC("0x4d")]=new Set,this._domEmitter=Object[bC("0x5e")](_u.DomEmitterMixin),this[bC("0x59")]=new Map,this[bC("0x3a")](bC("0x49"),null),this[bC("0x39")]=null,this[bC("0x35")]=[],this._editorAnnotations=new _u.Collection,this[bC("0x24")]=Mr((()=>{this[bC("0x51")]()}),250,{leading:!1})}[bC("0x37")](){this.context.plugins[bC("0x1d")](Ov)[bC("0x45")](bC("0x63"),this),this.bodyCollection=new Tu(this[bC("0x14")][bC("0x54")]),this[bC("0x40")]=new tu(this[bC("0x14")][bC("0x54")]),this[bC("0x1c")][bC("0x5b")](),this[bC("0x1c")][bC("0x62")](this[bC("0x40")])}[bC("0x1")](t){this[bC("0x39")]=t;const e=this[bC("0x14")].plugins[bC("0x1d")](Xv),n=this[bC("0x40")];if(e[bC("0x2c")]=t,this[bC("0x56")])throw new _u.CKEditorError("narrowsidebar-attach-already-attached",this);this.isAttached=!0,this.listenTo(e,bC("0xa"),(()=>{this[bC("0x2f")](),this[bC("0x5d")](e,bC("0x47"),(e=>{e[bC("0x5c")](),this[bC("0x1")](t)}))})),e[bC("0x6")]({viewClass:"ck-sidebar--narrow",spaceBetweenItems:5});const i=t=>{const i=new uC(this[bC("0x14")][bC("0x54")]);e[bC("0x27")](t,i),this._annotationToNarrowView.set(t,i),i[bC("0x0")](bC("0x43"),bC("0x33"),bC("0x4b")).to(t[bC("0x12")],bC("0x43"),bC("0x57"),bC("0x42")),i.on(bC("0x29"),(()=>{this[bC("0x4d")].clear(),n.content[bC("0x31")]!==t[bC("0x12")]?(this._showBalloon(t),t.view[bC("0x61")][bC("0x2a")](),this.setActiveAnnotation(t)):this[bC("0x8")](null)}))};for(const e of t)i(e);this[bC("0x5d")](t,bC("0x62"),((t,e)=>{i(e)})),this[bC("0x5d")](t,bC("0x32"),((n,i,o)=>{this[bC("0x59")][bC("0x1d")](i).destroy(),this._annotationToNarrowView[bC("0x22")](i),e[bC("0x52")]({removedAnnotation:i,previousAnnotation:t[bC("0x1d")](o-1),nextAnnotation:t.get(o+1)}),i===this.activeAnnotation&&this[bC("0x8")](null)}),{priority:bC("0x38")}),this[bC("0x5d")](t,"focus",((t,e)=>{this[bC("0x8")](e)})),this[bC("0x5d")](t,"blur",(()=>{this[bC("0x8")](null)})),this[bC("0x34")][bC("0x5d")](document,"keydown",((t,e)=>{e[bC("0x53")]===_u.keyCodes.esc&&n[bC("0x2b")]&&(this[bC("0x4d")][bC("0x62")](n.content[bC("0x31")]),this[bC("0x58")](),e[bC("0x21")](),e[bC("0x4e")]())})),this[bC("0x34")][bC("0x5d")](document,"mousedown",((t,i)=>{const o=i.target;n[bC("0x2b")]&&n[bC("0x61")][bC("0x2")](o)||e.view[bC("0x61")][bC("0x2")](o)||t[bC("0x15")]||(this[bC("0x4d")][bC("0x17")](),this[bC("0x58")](),this[bC("0x8")](null))}));const o=this[bC("0x14")][bC("0x5")]?this[bC("0x14")][bC("0x5")]:new _u.Collection([this[bC("0x14")]]);for(const t of o)this[bC("0x5a")](t);this[bC("0x5d")](o,bC("0x62"),((t,e)=>{this[bC("0x5d")](e,bC("0x2d"),(()=>{this[bC("0x5a")](e)}))})),this[bC("0x5d")](o,bC("0x32"),((t,e)=>{e[bC("0x3b")][bC("0x44")](bC("0x41"))&&this[bC("0x19")](e[bC("0x3b")][bC("0x1d")]("EditorAnnotations"))})),window[bC("0x1f")](bC("0x11"),this[bC("0x24")]),this[bC("0x51")]()}[bC("0x8")](t){if(t===this[bC("0x49")])return;const e=this[bC("0x14")][bC("0x3b")][bC("0x1d")]("Sidebar");e[bC("0x3")]({blurredAnnotation:this[bC("0x49")],activatedAnnotation:t,disableAnimationOnActivatedAnnotation:!0}),t?e[bC("0xd")](t)?this[bC("0x4f")](t):this._hideBalloon():this[bC("0x58")](),this[bC("0x49")]=t}[bC("0x2f")](){if(!this.isAttached)throw new _u.CKEditorError(bC("0x4a"),this);this.setActiveAnnotation(null);const t=this[bC("0x14")].plugins[bC("0x1d")]("Sidebar");this[bC("0x58")](),Array.from(this[bC("0x59")][bC("0x1b")](),(t=>t[bC("0xb")]())),this[bC("0x59")].clear(),t._detachFromContainer(this[bC("0x39")]),this[bC("0x28")](),this._domEmitter[bC("0x28")](),this[bC("0x28")](this[bC("0x14")][bC("0x5")]);for(const t of Array.from(this[bC("0x2e")]))this[bC("0x19")](t);window[bC("0x20")](bC("0x11"),this[bC("0x24")]),this[bC("0x24")][bC("0x16")](),this[bC("0x35")]=[],this[bC("0x56")]=!1,this[bC("0x39")]=null}[bC("0xb")](){this[bC("0x56")]&&this[bC("0x2f")](),this[bC("0x1c")].detachFromDom()}[bC("0x5a")](t){const e=t[bC("0x3b")].get(bC("0x41")),n=this[bC("0x14")].plugins[bC("0x1d")](Xv),i=this[bC("0x39")],o=this.balloonPanelView,r=()=>{const t=e[bC("0x5f")]({activeAnnotation:this[bC("0x49")],annotations:this[bC("0x39")]});this[bC("0x4")](t),this[bC("0x8")](t[0]||null)};this.listenTo(e,"refresh",r),this[bC("0x5d")](e,"blur",((t,{isAnnotationTracked:e})=>{this.activeAnnotation&&e(this[bC("0x49")])&&(this[bC("0x4")]([]),this.setActiveAnnotation(null))})),this.listenTo(e,"uiUpdate",(()=>{this[bC("0x24")]()})),this[bC("0x5d")](i,bC("0x1a"),(t=>{e[bC("0x1e")]()&&t[bC("0x9")]()}),{priority:"high"}),this[bC("0x34")][bC("0x5d")](document,bC("0x25"),((t,i)=>{const s=i[bC("0x60")];o[bC("0x2b")]&&o.element[bC("0x2")](s)||n[bC("0x12")][bC("0x61")][bC("0x2")](s)||this[bC("0x49")]&&e[bC("0x1e")]()&&(r(),t[bC("0x15")]=!0)}),{priority:bC("0x4c")}),this[bC("0x2e")][bC("0x62")](e)}[bC("0x19")](t){t&&(this[bC("0x28")](t),this[bC("0x2e")][bC("0x32")](t))}[bC("0x4")](t){for(const e of this[bC("0x35")])t[bC("0x50")](e)||this[bC("0x4d")].delete(e[bC("0x12")]);this[bC("0x35")]=t}[bC("0x51")](){const t=this[bC("0x40")];this[bC("0x39")][bC("0x30")](),t[bC("0x2b")]&&this[bC("0x10")]()}[bC("0x4f")](t){if(this[bC("0x4d")].has(t[bC("0x12")]))return;const e=this.balloonPanelView.content[bC("0x31")];e!==t[bC("0x12")]?(e&&this[bC("0x3c")](e),this[bC("0xc")](t[bC("0x12")]),this[bC("0x40")].content.clear(),this[bC("0x40")][bC("0x36")][bC("0x62")](t[bC("0x12")]),this._updateBalloonPosition()):this[bC("0x10")]()}[bC("0x10")](){const t=this.balloonPanelView[bC("0x36")][bC("0x31")],e=this[bC("0x39")][bC("0xf")](t);if(!this._annotationToNarrowView[bC("0x44")](e))return;const n=this._annotationToNarrowView[bC("0x1d")](e)[bC("0x61")],i=function(){const t=tu[bC("0x13")];return[t[bC("0x18")],t[bC("0x3e")],t[bC("0x46")],t[bC("0x55")],t[bC("0xe")],t[bC("0x7")]]}();this[bC("0x40")][bC("0x26")]({target:n,positions:i})}[bC("0x58")](){const t=this.balloonPanelView,e=t[bC("0x36")][bC("0x31")];e&&(this[bC("0x3c")](e),t[bC("0x3f")](),t.content.clear())}[bC("0xc")](t){this.listenTo(t,bC("0x3d"),(()=>this[bC("0x10")]())),this[bC("0x5d")](t,bC("0x23"),((e,n)=>{this[bC("0x4d")][bC("0x62")](t),this._hideBalloon(),n()}))}[bC("0x3c")](t){this[bC("0x28")](t)}}var xC=__webpack_require__(6610),wC={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(xC.Z,wC);xC.Z.locals;const _C=["view","focus","listenTo","change:isFocused","focusTracker","plugins","context","clear","isAttached","getOrderedSelectedAnnotations","getSelection","_forceRefresh","_manuallyClosed","isFocused","annotations","target","hasActive","init","delete","_balloon","editing","register","stopListening","inlineannotations-not-allowed-with-context","has","destroy","add","editor","pluginName","getRangeAt","keystrokes","attach","isActive","change:visibleView","_addedAnnotations","updatePosition","afterInit","activeAnnotation","document","requires","includes","length","blur","_selectedAnnotations","get","inlineannotations-detach-not-attached","targetRect","_setSelectedAnnotations","set","Esc","_closeAnnotation","showStack","selection","setActiveAnnotation","every","_removeAnnotationFromBalloon","getByView","InlineAnnotations","remove","inline","hasView","addObserver","detach","visibleView","switchTo"];var AC,vC;AC=_C,vC=226,function(t){for(;--t;)AC.push(AC.shift())}(++vC);const CC=function(t,e){return _C[t-=0]};class yC extends e{static get[CC("0x8")](){return[QA,im,Ov]}static get[CC("0x3e")](){return CC("0x1a")}constructor(t){super(t),t[CC("0x36")].view[CC("0x1e")](fl),this[CC("0x2a")]=!1,this[CC("0x11")](CC("0x6"),null),this[CC("0x30")]=null,this[CC("0x2e")]=new Set,this[CC("0x35")]=t[CC("0x27")].get(im),this[CC("0x3")]=new Set,this[CC("0xc")]=[],this[CC("0x2d")]=!1}[CC("0x33")](){const t=this[CC("0x3d")].plugins.get(Ov);t[CC("0x28")]===this[CC("0x3d")]&&(t[CC("0x37")](CC("0x1c"),this),this.editor[CC("0x40")][CC("0x11")](CC("0x12"),((t,e)=>{const n=this[CC("0x35")];if(this[CC("0x2a")]&&n[CC("0x20")]){const t=this.annotations.getByView(n[CC("0x20")]);this[CC("0x13")](t),e()}})))}[CC("0x5")](){const t=this[CC("0x3d")].plugins[CC("0xd")](Ov);t[CC("0x28")]===this[CC("0x3d")]&&(t[CC("0x32")]()||t[CC("0x21")]("inline"))}[CC("0x16")](t){t!==this[CC("0x6")]&&(this[CC("0x6")]&&(this.activeAnnotation[CC("0x1")]=!1),t&&this[CC("0x3d")].ui[CC("0x26")][CC("0x2f")]&&(this._addAnnotationToBalloon(t,!0),t[CC("0x1")]=!0),t||this[CC("0x10")]([]),this.activeAnnotation=t)}[CC("0x0")](t){this[CC("0x30")]=t;const e=this[CC("0x3d")][CC("0x27")][CC("0xd")](Ov),n=this._balloon;if(this[CC("0x2a")])throw new _u.CKEditorError("inlineannotations-attach-already-attached",this);if(e[CC("0x28")]!==this.editor)throw new _u.CKEditorError(CC("0x39"),this);const i=this.editor.plugins[CC("0xd")]("EditorAnnotations");this[CC("0x24")](i,"refresh",function(){const t=i[CC("0x2b")]({activeAnnotation:this[CC("0x6")],annotations:this[CC("0x30")]});var e,n;!this[CC("0x2d")]&&(e=t,n=this[CC("0xc")],e[CC("0xa")]===n.length&&e[CC("0x17")]((t=>n.includes(t))))||(this[CC("0x2d")]=!1,this[CC("0x10")](t),this.setActiveAnnotation(t[0]||null))}.bind(this)),this[CC("0x24")](i,CC("0xb"),((t,{isAnnotationTracked:e})=>{this[CC("0x6")]&&e(this.activeAnnotation)&&(this[CC("0x10")]([]),this[CC("0x16")](null))})),this[CC("0x24")](this.editor.ui[CC("0x26")],CC("0x25"),((t,e,n)=>{n||this.setActiveAnnotation(null)})),this.listenTo(t,CC("0x1b"),((t,e)=>{this[CC("0x18")](e),e===this.activeAnnotation&&this[CC("0x16")](null)})),this[CC("0x24")](n,CC("0x2"),((e,i,o,r)=>{if(r&&this[CC("0x38")](r),!o||!t.getByView(o))return;const s=t.getByView(o);this[CC("0x24")](o,"change:height",(()=>{n[CC("0x4")]()})),this[CC("0x24")](o,"Esc",(()=>{this[CC("0x13")](s),this[CC("0x3d")][CC("0x36")][CC("0x22")][CC("0x23")]()})),this[CC("0x6")]!==s&&this[CC("0x16")](s)})),this[CC("0x24")](this.editor.ui,"update",(()=>{n.visibleView&&t[CC("0x19")](n[CC("0x20")])&&n[CC("0x4")]()})),this[CC("0x24")](this[CC("0x3d")][CC("0x36")][CC("0x22")][CC("0x7")],"mousedown",(()=>{this._forceRefresh=!0,this[CC("0x2e")][CC("0x29")]()})),this[CC("0x3d")].editing[CC("0x22")][CC("0x7")][CC("0x15")].editableElement&&this[CC("0x3d")][CC("0x36")][CC("0x22")][CC("0x23")](),this[CC("0x2a")]=!0}detach(){if(!this.isAttached)throw new _u.CKEditorError(CC("0xe"),this);this[CC("0x16")](null);for(const t of this[CC("0x3")])this[CC("0x18")](t);this[CC("0x38")](),this[CC("0x2a")]=!1,this[CC("0x30")]=null}[CC("0x3b")](){this[CC("0x2a")]&&this[CC("0x1f")]()}[CC("0x10")](t){for(const e of this[CC("0xc")])t[CC("0x9")](e)||this[CC("0x2e")][CC("0x34")](e);for(const e of this[CC("0x30")])t[CC("0x9")](e)||this[CC("0x18")](e);if(this[CC("0x3d")].ui.focusTracker[CC("0x2f")])for(const e of t)this._addAnnotationToBalloon(e);this[CC("0xc")]=t}_addAnnotationToBalloon(t,e){this._manuallyClosed[CC("0x3a")](t)||(this._addedAnnotations.has(t)||this._balloon.hasView(t[CC("0x22")])||(this[CC("0x3")][CC("0x3c")](t),this[CC("0x35")][CC("0x3c")]({stackId:t[CC("0x22")].id,view:t.view,position:{target:()=>t[CC("0x31")]||t[CC("0xf")]||document[CC("0x2c")]()[CC("0x3f")](0)}})),e&&this._balloon[CC("0x14")](t[CC("0x22")].id))}[CC("0x18")](t){this[CC("0x3")][CC("0x3a")](t)&&this[CC("0x35")][CC("0x1d")](t[CC("0x22")])&&(this[CC("0x3")][CC("0x34")](t),this._balloon.remove(t[CC("0x22")]))}[CC("0x13")](t){this[CC("0x2e")][CC("0x3c")](t),this._removeAnnotationFromBalloon(t)}}var EC,TC,DC=["requires","pluginName"];EC=DC,TC=162,function(t){for(;--t;)EC.push(EC.shift())}(++TC);var SC=function(t,e){return DC[t-=0]};class IC extends e{static get[SC("0x0")](){return[jA,pv,Cv,Sv,sC,kC,yC]}static get[SC("0x1")](){return"Comments"}}class BC extends e{static get pluginName(){return"CloudServicesUploadAdapter"}static get requires(){return["CloudServices",Im]}init(){const t=this.editor,e=t.plugins.get("CloudServices"),n=e.token,i=e.uploadUrl;n&&(this._uploadGateway=t.plugins.get("CloudServicesCore").createUploadGateway(n,i),t.plugins.get(Im).createUploadAdapter=t=>new MC(this._uploadGateway,t))}}class MC{constructor(t,e){this.uploadGateway=t,this.loader=e}upload(){return this.loader.file.then((t=>(this.fileUploader=this.uploadGateway.upload(t),this.fileUploader.on("progress",((t,e)=>{this.loader.uploadTotal=e.total,this.loader.uploaded=e.uploaded})),this.fileUploader.send())))}abort(){this.fileUploader.abort()}}class NC extends e{static get requires(){return[BC,"ImageUpload"]}init(){const t=this.editor;t.plugins.has("ImageBlockEditing")||t.plugins.has("ImageInlineEditing")||(0,_u.logWarning)("easy-image-image-feature-missing",t)}static get pluginName(){return"EasyImage"}}class OC extends e{static get requires(){return[Pw,Tp,Vw,Bp,ug,Jw]}static get pluginName(){return"Essentials"}}const PC=["join","then","push","ownerNode","fetch","indexOf","The editor stylesheet could not be found in the document. Check your webpack config – style-loader should use data-cke=true attribute for the editor stylesheet.","length","warn","hasAttribute","text",".ck-content",":root","trim","EDITOR_STYLES","cssText"];var RC,LC;RC=PC,LC=428,function(t){for(;--t;)RC.push(RC.shift())}(++LC);const zC=function(t,e){return PC[t-=0]};function jC(){const t=[],e=[];for(const n of document.styleSheets)if(n[zC("0x7")][zC("0xd")]("data-cke"))for(const i of n.cssRules)-1!==i[zC("0x3")][zC("0x9")](zC("0xf"))?t[zC("0x6")](i[zC("0x3")]):-1!==i[zC("0x3")][zC("0x9")](zC("0x0"))&&e.push(i[zC("0x3")]);return t[zC("0xb")]||console[zC("0xc")](zC("0xa")),[...e,...t][zC("0x4")](" ").trim()}class FC extends i{constructor(t){super(t),this.set("isBusy",!1),this.affectsData=!1}refresh(){this.isEnabled=!this.isBusy,this.value=this.isBusy?"pending":void 0}execute(t={}){const e=this.editor,n=e.t,i=t.converterUrl||"https://pdf-converter.cke-cs.com/v1/convert/",o=t.dataCallback||(t=>t.getData()),r=e.plugins.get("ExportPdf"),s=t.token||r._token;return this.isBusy=!0,this.refresh(),function(t){if(!t)return new Promise((t=>t("")));const e=[];for(const n of t)zC("0x2")!==n?e[zC("0x6")](window[zC("0x8")](n)[zC("0x5")]((t=>t[zC("0xe")]()))):e[zC("0x6")](jC());return Promise.all(e)[zC("0x5")]((t=>t[zC("0x4")](" ")[zC("0x1")]()))}(t.stylesheets||["EDITOR_STYLES"]).then((async n=>{const r={html:'\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t'+await o(e)+"\n\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t",css:n,options:t.converterOptions},a={method:"POST",headers:{"Content-Type":"application/json",Accept:"application/pdf",...s?{Authorization:s.value}:null,"x-cs-app-id":t.appID||"cke5"},body:JSON.stringify(r)};return window.fetch(i,a).then((t=>{if(200!==t.status)throw t;return t.blob()})).then((e=>{this.o(e,t.fileName||"document.pdf")}))})).catch((t=>{throw e.plugins.get("Notification").showWarning(n("An error occurred while generating the PDF.")),t})).finally((()=>{this.isBusy=!1,this.refresh()}))}o(t,e){const n=document.createElement("a");n.href=window.URL.createObjectURL(t),n.download=e,n.click(),n.remove()}}var VC=__webpack_require__(6491),HC={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(VC.Z,HC);VC.Z.locals;class UC extends e{static get pluginName(){return"ExportPdf"}static get requires(){return["CloudServices",$h]}init(){const t=this.editor,e=t.t,n=t.config.get("exportPdf")||{};t.commands.add("exportPdf",new FC(t)),t.ui.componentFactory.add("exportPdf",(i=>{const o=t.commands.get("exportPdf"),r=new Nu(i);r.set({label:e("Export to PDF"),icon:'',tooltip:!0}),r.bind("isOn","isEnabled").to(o,"isBusy","isEnabled"),r.extendTemplate({attributes:{class:[r.bindTemplate.if("isOn","ck-exportpdf_status-pending")]}});const s=new Hd;return s.setTemplate({tag:"span",attributes:{class:["ck","ck-exportpdf__spinner-container"]},children:[{tag:"span",attributes:{class:["ck","ck-exportpdf__spinner"]}}]}),r.children.add(s),this.listenTo(r,"execute",(()=>{t.execute("exportPdf",n),t.editing.view.focus()})),r}));const i=t.plugins.get("CloudServices");if(!1===n.tokenUrl)this._token=null;else{if(n.tokenUrl)return i.registerTokenUrl(n.tokenUrl).then((t=>{this._token=t}));this._token=i.token}}}const qC=["TrackChanges","push","cssText","has","text","plugins",".ck-content","trim","indexOf","name","join","styleSheets","length","map","keys","timezone","content",":root","get","getCommentThreads","Users","warn","authorId","comments","then","suggestions","createdAt"];var WC,ZC;WC=qC,ZC=402,function(t){for(;--t;)WC.push(WC.shift())}(++ZC);const GC=function(t,e){return qC[t-=0]};function KC(){const t=[],e=[];for(const n of document[GC("0xe")])if(n.ownerNode.hasAttribute("data-cke"))for(const i of n.cssRules)-1!==i[GC("0x5")][GC("0xb")](GC("0x9"))?t[GC("0x4")](i.cssText):-1!==i[GC("0x5")].indexOf(GC("0x14"))&&e.push(i[GC("0x5")]);return t[GC("0xf")]||console[GC("0x18")]("The editor stylesheet could not be found in the document. Check your webpack config – style-loader should use data-cke=true attribute for the editor stylesheet."),[...e,...t][GC("0xd")](" ").trim()}function $C(t){const e=t[GC("0x8")][GC("0x6")](GC("0x17")),n=t[GC("0x8")][GC("0x6")]("CommentsRepository"),i=t[GC("0x8")][GC("0x6")](GC("0x3")),o={};if(e&&n){const e=function(t){const e={};if(!t.length)return e;for(const n of t)n[GC("0x1a")][GC("0x10")]((t=>{void 0===e[n.id]&&(e[n.id]=[]),e[n.id][GC("0x4")]({author:t.author[GC("0xc")],content:t[GC("0x13")],created:t[GC("0x2")]})}));return e}(t[GC("0x8")][GC("0x15")]("CommentsRepository")[GC("0x16")]({skipNotAttached:!0,skipEmpty:!0}));Object.keys(e)[GC("0xf")]&&(o.comments=e)}if(e&&i){const e=t[GC("0x8")][GC("0x15")]("TrackChanges"),n=t[GC("0x8")][GC("0x15")](GC("0x17")),i=function(t,e){const n={};if(!t[GC("0xf")]||!e.length)return n;for(const i of t)n[i.id]={author:e[GC("0x15")](i[GC("0x19")])[GC("0xc")],created:i.createdAt};return n}(e.getSuggestions({toJSON:!0}),n.users);Object[GC("0x11")](i)[GC("0xf")]&&(o[GC("0x1")]=i)}return(o[GC("0x1")]||o[GC("0x1a")])&&(o[GC("0x12")]=(new Intl.DateTimeFormat).resolvedOptions().timeZone),o}class YC extends i{constructor(t){super(t),this.set("isBusy",!1),this.affectsData=!1}refresh(){this.isEnabled=!this.isBusy,this.value=this.isBusy?"pending":void 0}execute(t={}){const e=this.editor,n=e.t,i=t.converterUrl||"https://docx-converter.cke-cs.com/v1/convert",o=t.converterOptions||{},r=e.plugins.get("ExportWord"),s=t.token||r._token,a=!1!==o.auto_pagination,c=t.dataCallback||(t=>t.getData({pagination:a}));return this.isBusy=!0,this.refresh(),function(t){if(!t)return new Promise((t=>t("")));const e=[];for(const n of t)"EDITOR_STYLES"!==n?e.push(window.fetch(n)[GC("0x0")]((t=>t[GC("0x7")]()))):e.push(KC());return Promise.all(e)[GC("0x0")]((t=>t.join(" ")[GC("0xa")]()))}(t.stylesheets||["EDITOR_STYLES"]).then((async n=>{const r=await c(e),a={html:'
    '+r+"
    ",css:n,options:{...o,...$C(e)}},l={method:"POST",headers:{"Content-Type":"application/json",Accept:"application/docx",...s?{Authorization:s.value}:null},body:JSON.stringify(a)};return window.fetch(i,l).then((t=>{if(200!==t.status)throw t;return t.blob()})).then((e=>{this.o(e,t.fileName||"document.docx")}))})).catch((t=>{throw e.plugins.get("Notification").showWarning(n("An error occurred while generating the Word file.")),t})).finally((()=>{this.isBusy=!1,this.refresh()}))}o(t,e){const n=document.createElement("a");n.href=window.URL.createObjectURL(t),n.download=e,n.click(),n.remove()}}var JC=__webpack_require__(160),QC={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(JC.Z,QC);JC.Z.locals;class XC extends e{static get pluginName(){return"ExportWord"}static get requires(){return["CloudServices",$h]}init(){const t=this.editor,e=t.t,n=t.config.get("exportWord")||{};t.commands.add("exportWord",new YC(t)),t.ui.componentFactory.add("exportWord",(i=>{const o=t.commands.get("exportWord"),r=new Nu(i);r.set({label:e("Export to Word"),icon:'',tooltip:!0}),r.bind("isOn","isEnabled").to(o,"isBusy","isEnabled"),r.extendTemplate({attributes:{class:[r.bindTemplate.if("isOn","ck-exportword_status-pending")]}});const s=new Hd;return s.setTemplate({tag:"span",attributes:{class:["ck","ck-exportword__spinner-container"]},children:[{tag:"span",attributes:{class:["ck","ck-exportword__spinner"]}}]}),r.children.add(s),this.listenTo(r,"execute",(()=>{t.execute("exportWord",n),t.editing.view.focus()})),r}));const i=t.plugins.get("CloudServices");if(!1===n.tokenUrl)this._token=null;else{if(n.tokenUrl)return i.registerTokenUrl(n.tokenUrl).then((t=>{this._token=t}));this._token=i.token}}}class ty extends i{constructor(t,e){super(t),this.modelElements=e}refresh(){const t=(0,_u.first)(this.editor.model.document.selection.getSelectedBlocks());this.value=!!t&&this.modelElements.includes(t.name)&&t.name,this.isEnabled=!!t&&this.modelElements.some((e=>ey(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=>ey(t,i,e.schema)));for(const e of o)e.is("element",i)||t.rename(e,i)}))}}function ey(t,e,n){return n.checkChild(t.parent,e)&&!n.isObject(t)}const ny="paragraph";class iy extends e{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[e_]}init(){const t=this.editor,e=t.config.get("heading.options"),n=[];for(const i of e)i.model!==ny&&(t.model.schema.register(i.model,{inheritAllFrom:"$block"}),t.conversion.elementToElement(i),n.push(i.model));this._addDefaultH1Conversion(t),t.commands.add("heading",new ty(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",ny)&&0===o.childCount&&i.writer.rename(o,ny)}))}_addDefaultH1Conversion(t){t.conversion.for("upcast").elementToElement({model:"heading1",view:"h1",converterPriority:_u.priorities.get("low")+1})}}var oy=__webpack_require__(3230),ry={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(oy.Z,ry);oy.Z.locals;class sy extends e{static get pluginName(){return"HeadingUI"}init(){const t=this.editor,e=t.t,n=function(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}))}(t),i=e("Choose heading"),o=e("Heading");t.ui.componentFactory.add("heading",(e=>{const r={},s=new _u.Collection,a=t.commands.get("heading"),c=t.commands.get("paragraph"),l=[a];for(const t of n){const e={type:"button",model:new Yh({label:t.title,class:t.class,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=Ah(e);return Ch(d,s),d.buttonView.set({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=t||e&&"paragraph";return r[n]?r[n]:i})),this.listenTo(d,"execute",(e=>{t.execute(e.source.commandName,e.source.commandValue?{value:e.source.commandValue}:void 0),t.editing.view.focus()})),d}))}}class ay extends e{static get requires(){return[iy,sy]}static get pluginName(){return"Heading"}}new Set(["paragraph","heading1","heading2","heading3","heading4","heading5","heading6"]);class cy extends e{static get requires(){return[im]}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||!ew(e))})(t.editing.view.document.selection)&&e.stop()}),{priority:"high"})}this._toolbarDefinitions=new Map,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(0,vn.KE)("widget-toolbar-no-items",{toolbarId:t});const r=this.editor,s=r.t,a=new lh(r.locale);if(a.ariaLabel=e||s("Widget toolbar"),this._toolbarDefinitions.has(t))throw new vn.ZP("widget-toolbar-duplicated",this,{toolbarId:t});a.fillFromConfig(n,r.ui.componentFactory);const c={view:a,getRelatedElement:i,balloonClassName:o};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)?ly(this.editor,e):this._isToolbarInBalloon(t)||(this._balloon.add({view:t.view,position:dy(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);ly(this.editor,e)}})))}_isToolbarVisible(t){return this._balloon.visibleView===t.view}_isToolbarInBalloon(t){return this._balloon.hasView(t.view)}}function ly(t,e){const n=t.plugins.get("ContextualBalloon"),i=dy(t,e);n.updatePosition(i)}function dy(t,e){const n=t.editing.view,i=tu.defaultPositions;return{target:n.domConverter.mapViewToDom(e),positions:[i.northArrowSouth,i.northArrowSouthWest,i.northArrowSouthEast,i.southArrowNorth,i.southArrowNorthWest,i.southArrowNorthEast,i.viewportStickyNorth]}}class uy extends t.y{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 Ud.Z(e);this.activeHandlePosition=function(t){const e=["top-left","top-right","bottom-right","bottom-left"];for(const n of e)if(t.classList.contains(hy(n)))return n}(t),this._referenceCoordinates=function(t,e){const n=new Ud.Z(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){const n=t.parentElement,i=parseFloat(n.ownerDocument.defaultView.getComputedStyle(n).width);return e.width/i*100}(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 hy(t){return`ck-widget__resizer__handle-${t}`}class my extends Hd{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}}class gy extends t.y{constructor(t){super(),this._options=t,this._viewResizerWrapper=null,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 uy(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 Ud.Z(n),o=Math.round(i.width),r=Math.round(i.height),s=new Ud.Z(n);e.width=Math.round(s.width),e.height=Math.round(s.height),this.redraw(i),this.state.update({...e,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 Ud.Z(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"!==In(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 xd({tag:"div",attributes:{class:"ck-widget__resizer__handle "+(n=i,`ck-widget__resizer__handle-${n}`)}}).render());var n}_appendSizeUI(t){this._sizeView=new my,this._sizeView.render(),t.appendChild(this._sizeView.element)}}var py=__webpack_require__(2263),fy={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(py.Z,fy);py.Z.locals;class by extends e{static get pluginName(){return"WidgetResize"}init(){const t=this.editor.editing,e=nr.Z.window.document;this.set("selectedResizer",null),this.set("_activeResizer",null),this._resizers=new Map,t.view.addObserver(fl),this._observer=new gr.Q,this.listenTo(t.view.document,"mousedown",this._mouseDownListener.bind(this),{priority:"high"}),this._observer.listenTo(e,"mousemove",this._mouseMoveListener.bind(this)),this._observer.listenTo(e,"mouseup",this._mouseUpListener.bind(this)),this._redrawSelectedResizerThrottled=Ew((()=>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(nr.Z.window,"resize",this._redrawSelectedResizerThrottled);const n=this.editor.editing.view.document.selection;n.on("change",(()=>{const t=n.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 gy(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;gy.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)}}function ky(t){return t.createContainerElement("figure",{class:"image"},[t.createEmptyElement("img"),t.createSlot()])}function xy(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(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 wy(t,e){const n=(0,_u.first)(e.getSelectedBlocks());return!n||t.isObject(n)||n.isEmpty&&"listItem"!=n.name?"imageBlock":"imageInline"}class _y extends e{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){const i=this.editor,o=i.model,r=o.document.selection;n=Ay(i,e||r,n),t={...Object.fromEntries(r.getAttributes()),...t};for(const e in t)o.schema.checkAttribute(n,e)||delete t[e];return o.change((i=>{const r=i.createElement(n,t);return o.insertObject(r,e,null,{setSelection:"on",findOptimalPosition:!e&&"imageInline"!=n}),r.parent?r:null}))}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")}isImageAllowed(){const t=this.editor.model.document.selection;return function(t,e){if("imageBlock"==Ay(t,e)){const n=function(t,e){const n=cw(t,e).start.parent;if(n.isEmpty&&!n.is("element","$root"))return n.parent;return n}(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 nw(t,e,{label:()=>{const e=this.findViewImgElement(t).getAttribute("alt");return e?`${e} ${n}`:n}})}isImageWidget(t){return!!t.getCustomProperty("image")&&ew(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}}function Ay(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":"block"===o?"imageBlock":e.is("selection")?wy(i,e):i.checkChild(e,"imageInline")?"imageInline":"imageBlock"):"imageBlock":"imageInline"}const vy=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 Cy extends e{static get requires(){return[Pw,_y,Jw,dg]}static get pluginName(){return"AutoImage"}constructor(t){super(t),this._timeoutId=null,this._positionToInsert=null}init(){const t=this.editor,e=t.model.document;this.listenTo(t.plugins.get("ClipboardPipeline"),"inputTransformation",(()=>{const t=e.selection.getFirstRange(),n=Fc.fromPosition(t.start);n.stickiness="toPrevious";const i=Fc.fromPosition(t.end);i.stickiness="toNext",e.once("change:data",(()=>{this._embedImageBetweenPositions(n,i),n.detach(),i.detach()}),{priority:"high"})})),t.commands.get("undo").on("execute",(()=>{this._timeoutId&&(_u.global.window.clearTimeout(this._timeoutId),this._positionToInsert.detach(),this._timeoutId=null,this._positionToInsert=null)}),{priority:"high"})}_embedImageBetweenPositions(t,e){const n=this.editor,i=new js(t,e),o=i.getWalker({ignoreElementEnd:!0}),r=Object.fromEntries(n.model.document.selection.getAttributes()),s=this.editor.plugins.get("ImageUtils");let a="";for(const t of o)t.item.is("$textProxy")&&(a+=t.item.data);a=a.trim(),a.match(vy)?(this._positionToInsert=Fc.fromPosition(t),this._timeoutId=_u.global.window.setTimeout((()=>{n.commands.get("insertImage").isEnabled?(n.model.change((t=>{let e;this._timeoutId=null,t.remove(i),i.detach(),"$graveyard"!==this._positionToInsert.root.rootName&&(e=this._positionToInsert.toPosition()),s.insertImage({...r,src:a},e),this._positionToInsert.detach(),this._positionToInsert=null})),n.plugins.get("Delete").requestUndoOnBackspace()):i.detach()}),100)):i.detach()}}class yy extends i{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 Ey extends e{static get requires(){return[_y]}static get pluginName(){return"ImageTextAlternativeEditing"}init(){this.editor.commands.add("imageTextAlternative",new yy(this.editor))}}var Ty=__webpack_require__(6831),Dy={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Ty.Z,Dy);Ty.Z.locals;var Sy=__webpack_require__(1590),Iy={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Sy.Z,Iy);Sy.Z.locals;class By extends Hd{constructor(t){super(t);const e=this.locale.t;this.focusTracker=new _u.FocusTracker,this.keystrokes=new _u.KeystrokeHandler,this.labeledInput=this._createLabeledInputView(),this.saveButtonView=this._createButton(e("Save"),wu.check,"ck-button-save"),this.saveButtonView.type="submit",this.cancelButtonView=this._createButton(e("Cancel"),wu.cancel,"ck-button-cancel","cancel"),this._focusables=new kd,this._focusCycler=new Xu({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]}),vu(this)}render(){super.render(),this.keystrokes.listenTo(this.element),Cu({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 Nu(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 Wh(this.locale,Zh);return e.label=t("Text alternative"),e}}function My(t){const e=t.editing.view,n=tu.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 Ny extends e{static get requires(){return[im]}static get pluginName(){return"ImageTextAlternativeUI"}init(){this._createButton(),this._createForm()}destroy(){super.destroy(),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 Nu(n);return o.set({label:e("Change image text alternative"),icon:wu.lowVision,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 By(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=My(t);e.updatePosition(n)}}(t):this._hideForm(!0)})),Au({emitter:this._form,activator:()=>this._isVisible,contextElements:[this._balloon.view.element],callback:()=>this._hideForm()})}_showForm(){if(this._isVisible)return;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:My(t)}),n.fieldView.value=n.fieldView.element.value=e.value||"",this._form.labeledInput.fieldView.select(),this._form.enableCssTransitions()}_hideForm(t){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.visibleView===this._form}get _isInBalloon(){return this._balloon.hasView(this._form)}}class Oy extends e{static get requires(){return[Ey,Ny]}static get pluginName(){return"ImageTextAlternative"}}function Py(t,e){return t=>{t.on(`attribute:srcset:${e}`,n)};function 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);if(null===n.attributeNewValue){const t=n.attributeOldValue;t.data&&(o.removeAttribute("srcset",s),o.removeAttribute("sizes",s),t.width&&o.removeAttribute("width",s))}else{const t=n.attributeNewValue;t.data&&(o.setAttribute("srcset",t.data,s),o.setAttribute("sizes","100vw",s),t.width&&o.setAttribute("width",t.width,s))}}}function Ry(t,e,n){return t=>{t.on(`attribute:${n}:${e}`,i)};function 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)}}class Ly extends pr{observe(t){this.listenTo(t,"load",((t,e)=>{const n=e.target;this.checkShouldIgnoreEventFromTarget(n)||"IMG"==n.tagName&&this._fireEvents(e)}),{useCapture:!0})}_fireEvents(t){this.isEnabled&&(this.document.fire("layoutChanged"),this.document.fire("imageLoaded",t))}}class zy extends i{constructor(t){super(t);const e=t.config.get("image.insert.type");t.plugins.has("ImageBlockEditing")||"block"===e&&(0,_u.logWarning)("image-block-plugin-required"),t.plugins.has("ImageInlineEditing")||"inline"===e&&(0,_u.logWarning)("image-inline-plugin-required")}refresh(){this.isEnabled=this.editor.plugins.get("ImageUtils").isImageAllowed()}execute(t){const e=(0,_u.toArray)(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({...t,...o},e)}else i.insertImage({...t,...o})}))}}class jy extends e{static get requires(){return[_y]}static get pluginName(){return"ImageEditing"}init(){const t=this.editor,e=t.conversion;t.editing.view.addObserver(Ly),e.for("upcast").attributeToAttribute({view:{name:"img",key:"alt"},model:"alt"}).attributeToAttribute({view:{name:"img",key:"srcset"},model:{key:"srcset",value:t=>{const e={data:t.getAttribute("srcset")};return t.hasAttribute("width")&&(e.width=t.getAttribute("width")),e}}});const n=new zy(t);t.commands.add("insertImage",n),t.commands.add("imageInsert",n)}}class Fy extends i{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(){const t=this.editor,e=this.editor.model,n=t.plugins.get("ImageUtils"),i=n.getClosestSelectedImageElement(e.document.selection),o=Object.fromEntries(i.getAttributes());return o.src||o.uploadId?e.change((t=>{const r=Array.from(e.markers).filter((t=>t.getRange().containsItem(i))),s=n.insertImage(o,e.createSelection(i,"on"),this._modelElementName);if(!s)return null;const a=t.createRangeOn(s);for(const e of r){const n=e.getRange(),i="$graveyard"!=n.root.rootName?n.getJoined(a,!0):a;t.updateMarker(e,{range:i})}return{oldElement:i,newElement:s}})):null}}class Vy extends e{static get requires(){return[jy,_y,Kx]}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 Fy(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})=>ky(e)}),n.for("editingDowncast").elementToStructure({model:"imageBlock",view:(t,{writer:n})=>i.toImageWidget(ky(n),n,e("image widget"))}),n.for("downcast").add(Ry(i,"imageBlock","src")).add(Ry(i,"imageBlock","alt")).add(Py(i,"imageBlock")),n.for("upcast").elementToElement({view:xy(t,"imageBlock"),model:(t,{writer:e})=>e.createElement("imageBlock",t.hasAttribute("src")?{src:t.getAttribute("src")}:null)}).add(function(t){return t=>{t.on("element:figure",e)};function 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=i.convertItem(o,n.modelCursor),s=(0,_u.first)(r.modelRange.getItems());s?(i.convertChildren(n.viewItem,s),i.updateConversionResult(s,n)):i.consumable.revert(n.viewItem,{name:!0,classes:"image"})}}(i))}_setupClipboardIntegration(){const t=this.editor,e=t.model,n=t.editing.view,i=t.plugins.get("ImageUtils");this.listenTo(t.plugins.get("ClipboardPipeline"),"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"===wy(e.schema,c)){const t=new bl(n.document),e=s.map((e=>t.createElement("figure",{class:"image"},e)));r.content=t.createDocumentFragment(e)}}))}}var Hy=__webpack_require__(9048),Uy={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Hy.Z,Uy);Hy.Z.locals;class qy extends e{static get requires(){return[Vy,Cw,Oy]}static get pluginName(){return"ImageBlock"}}class Wy extends e{static get requires(){return[jy,_y,Kx]}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 Fy(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(Ry(i,"imageInline","src")).add(Ry(i,"imageInline","alt")).add(Py(i,"imageInline")),n.for("upcast").elementToElement({view:xy(t,"imageInline"),model:(t,{writer:e})=>e.createElement("imageInline",t.hasAttribute("src")?{src:t.getAttribute("src")}:null)})}_setupClipboardIntegration(){const t=this.editor,e=t.model,n=t.editing.view,i=t.plugins.get("ImageUtils");this.listenTo(t.plugins.get("ClipboardPipeline"),"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"===wy(e.schema,c)){const t=new bl(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)}}))}}class Zy extends e{static get requires(){return[Wy,Cw,Oy]}static get pluginName(){return"ImageInline"}}class Gy extends e{static get requires(){return[qy,Zy]}static get pluginName(){return"Image"}}class Ky extends e{static get pluginName(){return"ImageCaptionUtils"}static get requires(){return[_y]}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 $y extends i{refresh(){const t=this.editor,e=t.plugins.get("ImageCaptionUtils");if(!t.plugins.has(Vy))return this.isEnabled=!1,void(this.value=!1);const n=t.model.document.selection,i=n.getSelectedElement();if(!i){const t=e.getCaptionFromModelSelection(n);return this.isEnabled=!!t,void(this.value=!!t)}this.isEnabled=this.editor.plugins.get("ImageUtils").isImage(i),this.isEnabled?this.value=!!e.getCaptionFromImageModelElement(i):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");let o=n.getSelectedElement();const r=i._getSavedCaption(o);this.editor.plugins.get("ImageUtils").isInlineImage(o)&&(this.editor.execute("imageTypeBlock"),o=n.getSelectedElement());const s=r||t.createElement("caption");t.append(s,o),e&&t.setSelection(s,"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 Yy extends e{static get requires(){return[_y,Ky]}static get pluginName(){return"ImageCaptionEditing"}constructor(t){super(t),this._savedCaptionsMap=new WeakMap}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 $y(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),Xc({view:e,element:r,text:o("Enter image caption"),keepOnFocus:!0});const s=t.parent.getAttribute("alt");return aw(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?ks.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 Jy extends e{static get requires(){return[Ky]}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 Nu(o);return s.set({icon:wu.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 Qy=__webpack_require__(8662),Xy={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(Qy.Z,Xy);Qy.Z.locals;class tE extends e{static get requires(){return[Yy,Jy]}static get pluginName(){return"ImageCaption"}}function eE(t){const e=t.map((t=>t.replace("+","\\+")));return new RegExp(`^image\\/(${e.join("|")})$`)}function nE(t){return new Promise(((e,n)=>{const i=t.getAttribute("src");fetch(i).then((t=>t.blob())).then((t=>{const n=iE(t,i),o=n.replace("image/",""),r=new File([t],`image.${o}`,{type:n});e(r)})).catch((t=>t&&"TypeError"===t.name?function(t){return function(t){return new Promise(((e,n)=>{const i=_u.global.document.createElement("img");i.addEventListener("load",(()=>{const t=_u.global.document.createElement("canvas");t.width=i.width,t.height=i.height;t.getContext("2d").drawImage(i,0,0),t.toBlob((t=>t?e(t):n()))})),i.addEventListener("error",(()=>n())),i.src=t}))}(t).then((e=>{const n=iE(e,t),i=n.replace("image/","");return new File([e],`image.${i}`,{type:n})}))}(i).then(e).catch(n):n(t)))}))}function iE(t,e){return t.type?t.type:e.match(/data:(image\/\w+);base64/)?e.match(/data:(image\/\w+);base64/)[1].toLowerCase():"image/jpeg"}class oE extends e{static get pluginName(){return"ImageUploadUI"}init(){const t=this.editor,e=t.t,n=n=>{const i=new Mm(n),o=t.commands.get("uploadImage"),r=t.config.get("image.upload.types"),s=eE(r);return i.set({acceptedType:r.map((t=>`image/${t}`)).join(","),allowMultipleFiles:!0}),i.buttonView.set({label:e("Insert image"),icon:wu.image,tooltip:!0}),i.buttonView.bind("isEnabled").to(o),i.on("done",((e,n)=>{const i=Array.from(n).filter((t=>s.test(t.type)));i.length&&(t.execute("uploadImage",{file:i}),t.editing.view.focus())})),i};t.ui.componentFactory.add("uploadImage",n),t.ui.componentFactory.add("imageUpload",n)}}var rE=__webpack_require__(5870),sE={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(rE.Z,sE);rE.Z.locals;var aE=__webpack_require__(9899),cE={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(aE.Z,cE);aE.Z.locals;var lE=__webpack_require__(9825),dE={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(lE.Z,dE);lE.Z.locals;class uE extends e{static get pluginName(){return"ImageUploadProgress"}constructor(t){super(t),this.placeholder="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="}init(){const t=this.editor;t.plugins.has("ImageBlockEditing")&&t.editing.downcastDispatcher.on("attribute:uploadStatus:imageBlock",((...t)=>this.uploadStatusChange(...t))),t.plugins.has("ImageInlineEditing")&&t.editing.downcastDispatcher.on("attribute:uploadStatus:imageInline",((...t)=>this.uploadStatusChange(...t)))}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(Im),c=r?e.attributeNewValue:null,l=this.placeholder,d=i.editing.mapper.toViewElement(o),u=n.writer;if("reading"==c)return hE(d,u),void mE(s,l,d,u);if("uploading"==c){const t=a.loaders.get(r);return hE(d,u),void(t?(gE(d,u),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,u,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,u,t)):mE(s,l,d,u))}"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,u,i.editing.view),function(t,e){fE(t,e,"progressBar")}(d,u),gE(d,u),function(t,e){e.removeClass("ck-appear",t)}(d,u)}}function hE(t,e){t.hasClass("ck-appear")||e.addClass("ck-appear",t)}function mE(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),pE(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 gE(t,e){t.hasClass("ck-image-upload-placeholder")&&e.removeClass("ck-image-upload-placeholder",t),fE(t,e,"placeholder")}function pE(t,e){for(const n of t.getChildren())if(n.getCustomProperty(e))return n}function fE(t,e,n){const i=pE(t,n);i&&e.remove(e.createRangeOn(i))}class bE extends i{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=(0,_u.toArray)(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(Im).createLoader(t),r=i.plugins.get("ImageUtils");o&&r.insertImage({...e,uploadId:o.id},n)}}class kE extends e{static get requires(){return[Im,$h,Kx,_y]}static get pluginName(){return"ImageUploadEditing"}constructor(t){super(t),t.config.define("image",{upload:{types:["jpeg","png","gif","bmp","webp","tiff"]}}),this._uploadImageElements=new Map}init(){const t=this.editor,e=t.model.document,n=t.conversion,i=t.plugins.get(Im),o=t.plugins.get("ImageUtils"),r=eE(t.config.get("image.upload.types")),s=new bE(t);t.commands.add("uploadImage",s),t.commands.add("imageUpload",s),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&&r.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.model.enqueueChange((()=>{t.execute("uploadImage",{file:o})}))})))})),this.listenTo(t.plugins.get("ClipboardPipeline"),"inputTransformation",((e,n)=>{const r=Array.from(t.editing.view.createRangeIn(n.content)).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.item)&&!t.item.getAttribute("uploadProcessed"))).map((t=>({promise:nE(t.item),imageElement:t.item})));if(!r.length)return;const s=new bl(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 xE(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)}))}),{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(Im),r=e.plugins.get($h),s=e.plugins.get("ImageUtils"),a=this._uploadImageElements;return n.enqueueChange({isUndoable:!1},(e=>{e.setAttribute("uploadStatus","reading",a.get(t.id))})),t.read().then((()=>{const i=t.upload(),o=a.get(t.id);if(_u.env.isSafari){const t=e.editing.mapper.toViewElement(o),n=s.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 n.enqueueChange({isUndoable:!1},(t=>{t.setAttribute("uploadStatus","uploading",o)})),i})).then((e=>{n.enqueueChange({isUndoable:!1},(n=>{const i=a.get(t.id);n.setAttribute("uploadStatus","complete",i),this.fire("uploadComplete",{data:e,imageElement:i})})),c()})).catch((e=>{if("error"!==t.status&&"aborted"!==t.status)throw e;"error"==t.status&&e&&r.showWarning(e,{title:i("Upload failed"),namespace:"upload"}),n.enqueueChange({isUndoable:!1},(e=>{e.remove(a.get(t.id))})),c()}));function c(){n.enqueueChange({isUndoable:!1},(e=>{const n=a.get(t.id);e.removeAttribute("uploadId",n),e.removeAttribute("uploadStatus",n),a.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(", ");""!=o&&n.setAttribute("srcset",{data:o,width:i},e)}}function xE(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))}class wE extends e{static get pluginName(){return"ImageUpload"}static get requires(){return[kE,oE,uE]}}var _E=__webpack_require__(5150),AE={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(_E.Z,AE);_E.Z.locals;class vE extends Hd{constructor(t,e={}){super(t);const n=this.bindTemplate;this.set("class",e.class||null),this.children=this.createCollection(),e.children&&e.children.forEach((t=>this.children.add(t))),this.set("_role",null),this.set("_ariaLabelledBy",null),e.labelView&&this.set({_role:"group",_ariaLabelledBy:e.labelView.id}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-form__row",n.to("class")],role:n.to("_role"),"aria-labelledby":n.to("_ariaLabelledBy")},children:this.children})}}var CE=__webpack_require__(9292),yE={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(CE.Z,yE);CE.Z.locals;class EE extends Hd{constructor(t,e){super(t);const{insertButtonView:n,cancelButtonView:i}=this._createActionButtons(t);if(this.insertButtonView=n,this.cancelButtonView=i,this.set("imageURLInputValue",""),this.focusTracker=new _u.FocusTracker,this.keystrokes=new _u.KeystrokeHandler,this._focusables=new kd,this._focusCycler=new Xu({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.set("_integrations",new _u.Collection),e)for(const[t,n]of Object.entries(e))"insertImageViaUrl"===t&&(n.fieldView.bind("value").to(this,"imageURLInputValue",(t=>t||"")),n.fieldView.on("input",(()=>{this.imageURLInputValue=n.fieldView.element.value.trim()}))),n.name=t,this._integrations.add(n);this.setTemplate({tag:"form",attributes:{class:["ck","ck-image-insert-form"],tabindex:"-1"},children:[...this._integrations,new vE(t,{children:[this.insertButtonView,this.cancelButtonView],class:"ck-image-insert-form__action-row"})]})}render(){super.render(),Cu({view:this});const t=[...this._integrations,this.insertButtonView,this.cancelButtonView];t.forEach((t=>{this._focusables.add(t),this.focusTracker.add(t.element)})),this.keystrokes.listenTo(this.element);const e=t=>t.stopPropagation();this.keystrokes.set("arrowright",e),this.keystrokes.set("arrowleft",e),this.keystrokes.set("arrowup",e),this.keystrokes.set("arrowdown",e),this.listenTo(t[0].element,"selectstart",((t,e)=>{e.stopPropagation()}),{priority:"high"})}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}getIntegration(t){return this._integrations.find((e=>e.name===t))}_createActionButtons(t){const e=t.t,n=new Nu(t),i=new Nu(t);return n.set({label:e("Insert"),icon:wu.check,class:"ck-button-save",type:"submit",withText:!0,isEnabled:this.imageURLInputValue}),i.set({label:e("Cancel"),icon:wu.cancel,class:"ck-button-cancel",withText:!0}),n.bind("isEnabled").to(this,"imageURLInputValue",(t=>!!t)),n.delegate("execute").to(this,"submit"),i.delegate("execute").to(this,"cancel"),{insertButtonView:n,cancelButtonView:i}}focus(){this._focusCycler.focusFirst()}}function TE(t){const e=t.t,n=new Wh(t,Zh);return n.set({label:e("Insert image via URL")}),n.fieldView.placeholder="https://example.com/image.png",n}class DE extends e{static get pluginName(){return"ImageInsertUI"}init(){const t=this.editor,e=t=>this._createDropdownView(t);t.ui.componentFactory.add("insertImage",e),t.ui.componentFactory.add("imageInsert",e)}_createDropdownView(t){const e=this.editor,n=t.t,i=e.commands.get("uploadImage"),o=e.commands.get("insertImage");this.dropdownView=Ah(t,i?Ku:void 0);const r=this.dropdownView.buttonView,s=this.dropdownView.panelView;if(r.set({label:n("Insert image"),icon:wu.image,tooltip:!0}),s.extendTemplate({attributes:{class:"ck-image-insert__panel"}}),i){const t=this.dropdownView.buttonView;t.actionView=e.ui.componentFactory.create("uploadImage"),t.actionView.extendTemplate({attributes:{class:"ck ck-button ck-splitbutton__action"}})}return this._setUpDropdown(i||o)}_setUpDropdown(t){const e=this.editor,n=e.t,i=new EE(e.locale,function(t){const e=t.config.get("image.insert.integrations"),n=t.plugins.get("ImageInsertUI"),i={insertImageViaUrl:TE(t.locale)};if(!e)return i;if(e.find((t=>"openCKFinder"===t))&&t.ui.componentFactory.has("ckfinder")){const e=t.ui.componentFactory.create("ckfinder");e.set({withText:!0,class:"ck-image-insert__ck-finder-button"}),e.delegate("execute").to(n,"cancel"),i.openCKFinder=e}return e.reduce(((e,n)=>(i[n]?e[n]=i[n]:t.ui.componentFactory.has(n)&&(e[n]=t.ui.componentFactory.create(n)),e)),{})}(e)),o=i.insertButtonView,r=i.getIntegration("insertImageViaUrl"),s=this.dropdownView,a=s.panelView,c=this.editor.plugins.get("ImageUtils");function l(){e.editing.view.focus(),s.isOpen=!1}return s.bind("isEnabled").to(t),s.once("change:isOpen",(()=>{a.children.add(i)})),s.on("change:isOpen",(()=>{const t=e.model.document.selection.getSelectedElement();s.isOpen&&(c.isImage(t)?(i.imageURLInputValue=t.getAttribute("src"),o.label=n("Update"),r.label=n("Update image URL")):(i.imageURLInputValue="",o.label=n("Insert"),r.label=n("Insert image via URL")))}),{priority:"low"}),i.delegate("submit","cancel").to(s),this.delegate("cancel").to(s),s.on("submit",(()=>{l(),function(){const t=e.model.document.selection.getSelectedElement();c.isImage(t)?e.model.change((e=>{e.setAttribute("src",i.imageURLInputValue,t),e.removeAttribute("srcset",t),e.removeAttribute("sizes",t)})):e.execute("insertImage",{source:i.imageURLInputValue})}()})),s.on("cancel",(()=>{l()})),s}}class SE extends e{static get pluginName(){return"ImageInsertViaUrl"}static get requires(){return[DE]}}class IE extends e{static get pluginName(){return"ImageInsert"}static get requires(){return[wE,SE,DE]}}class BE extends i{refresh(){const t=this.editor,e=t.plugins.get("ImageUtils").getClosestSelectedImageElement(t.model.document.selection);this.isEnabled=!!e,e&&e.hasAttribute("width")?this.value={width:e.getAttribute("width"),height:null}:this.value=null}execute(t){const e=this.editor,n=e.model,i=e.plugins.get("ImageUtils").getClosestSelectedImageElement(n.document.selection);this.value={width:t.width,height:null},i&&n.change((e=>{e.setAttribute("width",t.width,i)}))}}class ME extends e{static get requires(){return[_y]}static get pluginName(){return"ImageResizeEditing"}constructor(t){super(t),t.config.define("image",{resizeUnit:"%",resizeOptions:[{name:"resizeImage:original",value:null,icon:"original"},{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 BE(t);this._registerSchema(),this._registerConverters("imageBlock"),this._registerConverters("imageInline"),t.commands.add("resizeImage",e),t.commands.add("imageResize",e)}_registerSchema(){this.editor.plugins.has("ImageBlockEditing")&&this.editor.model.schema.extend("imageBlock",{allowAttributes:"width"}),this.editor.plugins.has("ImageInlineEditing")&&this.editor.model.schema.extend("imageInline",{allowAttributes:"width"})}_registerConverters(t){const e=this.editor;e.conversion.for("downcast").add((e=>e.on(`attribute:width:${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("upcast").attributeToAttribute({view:{name:"imageBlock"===t?"figure":"img",styles:{width:/.+/}},model:{key:"width",value:t=>t.getStyle("width")}})}}const NE={small:wu.objectSizeSmall,medium:wu.objectSizeMedium,large:wu.objectSizeLarge,original:wu.objectSizeFull};class OE extends e{static get requires(){return[ME]}static get pluginName(){return"ImageResizeButtons"}constructor(t){super(t),this._resizeUnit=t.config.get("image.resizeUnit")}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,r=i?i+this._resizeUnit:null;e.ui.componentFactory.add(n,(n=>{const i=new Nu(n),s=e.commands.get("resizeImage"),a=this._getOptionLabelValue(t,!0);if(!NE[o])throw new _u.CKEditorError("imageresizebuttons-missing-icon",e,t);return i.set({label:a,icon:NE[o],tooltip:a,isToggleable:!0}),i.bind("isEnabled").to(this),i.bind("isOn").to(s,"value",PE(r)),this.listenTo(i,"execute",(()=>{e.execute("resizeImage",{width:r})})),i}))}_registerImageResizeDropdown(t){const e=this.editor,n=e.t,i=t.find((t=>!t.value)),o=o=>{const r=e.commands.get("resizeImage"),s=Ah(o,Wu),a=s.buttonView;return a.set({tooltip:n("Resize image"),commandValue:i.value,icon:NE.medium,isToggleable:!0,label:this._getOptionLabelValue(i),withText:!0,class:"ck-resize-image-button"}),a.bind("label").to(r,"value",(t=>t&&t.width?t.width:this._getOptionLabelValue(i))),s.bind("isOn").to(r),s.bind("isEnabled").to(this),Ch(s,this._getResizeDropdownListItemDefinitions(t,r)),s.listView.ariaLabel=n("Image resize list"),this.listenTo(s,"execute",(t=>{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){const n=this.editor.t;return t.label?t.label:e?t.value?n("Resize image to %0",t.value+this._resizeUnit):n("Resize image to the original size"):t.value?t.value+this._resizeUnit:n("Original")}_getResizeDropdownListItemDefinitions(t,e){const n=new _u.Collection;return t.map((t=>{const i=t.value?t.value+this._resizeUnit:null,o={type:"button",model:new Yh({commandName:"resizeImage",commandValue:i,label:this._getOptionLabelValue(t),withText:!0,icon:null})};o.model.bind("isOn").to(e,"value",PE(i)),n.add(o)})),n}}function PE(t){return e=>null===t&&e===t||e&&e.width===t}const RE=/(image|image-inline)/,LE="image_resized";class zE extends e{static get requires(){return[by]}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;e.addObserver(Ly),this.listenTo(e.document,"imageLoaded",((n,i)=>{if(!i.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 o=t.editing.view.domConverter,r=o.domToView(i.target).findAncestor({classes:RE});let s=this.editor.plugins.get(by).getResizerByViewElement(r);if(s)return void s.redraw();const a=t.editing.mapper,c=a.toModelElement(r);s=t.plugins.get(by).attachTo({unit:t.config.get("image.resizeUnit"),modelElement:c,viewElement:r,editor:t,getHandleHost:t=>t.querySelector("img"),getResizeHost:()=>o.mapViewToDom(a.toViewElement(c.parent)),isCentered(){const t=c.getAttribute("imageStyle");return!t||"block"==t||"alignCenter"==t},onCommit(n){e.change((t=>{t.removeClass(LE,r)})),t.execute("resizeImage",{width:n})}}),s.on("updateSize",(()=>{r.hasClass(LE)||e.change((t=>{t.addClass(LE,r)}))})),s.bind("isEnabled").to(this)}))}}var jE=__webpack_require__(1043),FE={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(jE.Z,FE);jE.Z.locals;class VE extends e{static get requires(){return[ME,zE,OE]}static get pluginName(){return"ImageResize"}}class HE extends i{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;let r=i.getClosestSelectedImageElement(n.document.selection);o&&this.shouldConvertImageType(o,r)&&(this.editor.execute(i.isBlockImage(r)?"imageTypeInline":"imageTypeBlock"),r=i.getClosestSelectedImageElement(n.document.selection)),!o||this._styles.get(o).isDefault?e.removeAttribute("imageStyle",r):e.setAttribute("imageStyle",o,r)}))}shouldConvertImageType(t,e){return!this._styles.get(t).modelElements.includes(e.name)}}const{objectFullWidth:UE,objectInline:qE,objectLeft:WE,objectRight:ZE,objectCenter:GE,objectBlockLeft:KE,objectBlockRight:$E}=wu,YE={get inline(){return{name:"inline",title:"In line",icon:qE,modelElements:["imageInline"],isDefault:!0}},get alignLeft(){return{name:"alignLeft",title:"Left aligned image",icon:WE,modelElements:["imageBlock","imageInline"],className:"image-style-align-left"}},get alignBlockLeft(){return{name:"alignBlockLeft",title:"Left aligned image",icon:KE,modelElements:["imageBlock"],className:"image-style-block-align-left"}},get alignCenter(){return{name:"alignCenter",title:"Centered image",icon:GE,modelElements:["imageBlock"],className:"image-style-align-center"}},get alignRight(){return{name:"alignRight",title:"Right aligned image",icon:ZE,modelElements:["imageBlock","imageInline"],className:"image-style-align-right"}},get alignBlockRight(){return{name:"alignBlockRight",title:"Right aligned image",icon:$E,modelElements:["imageBlock"],className:"image-style-block-align-right"}},get block(){return{name:"block",title:"Centered image",icon:GE,modelElements:["imageBlock"],isDefault:!0}},get side(){return{name:"side",title:"Side image",icon:ZE,modelElements:["imageBlock"],className:"image-style-side"}}},JE={full:UE,left:KE,right:$E,center:GE,inlineLeft:WE,inlineRight:ZE,inline:qE},QE=[{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 XE(t){(0,_u.logWarning)("image-style-configuration-definition-invalid",t)}const tT={normalizeStyles:function(t){const e=(t.configuredStyles.options||[]).map((t=>function(t){t="string"==typeof t?YE[t]?{...YE[t]}:{name:t}:function(t,e){const n={...e};for(const i in t)Object.prototype.hasOwnProperty.call(e,i)||(n[i]=t[i]);return n}(YE[t.name],t);"string"==typeof t.icon&&(t.icon=JE[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 XE({style:t}),!1;{const o=[e?"imageBlock":null,n?"imageInline":null];if(!i.some((t=>o.includes(t))))return(0,_u.logWarning)("image-style-missing-dependency",{style:t,missingPlugins:i.map((t=>"imageBlock"===t?"ImageBlockEditing":"ImageInlineEditing"))}),!1}return!0}(e,t)));return e},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")?[...QE]:[]},warnInvalidStyle:XE,DEFAULT_OPTIONS:YE,DEFAULT_ICONS:JE,DEFAULT_DROPDOWN_DEFINITIONS:QE};function eT(t,e){for(const n of e)if(n.name===t)return n}class nT extends e{static get pluginName(){return"ImageStyleEditing"}static get requires(){return[_y]}init(){const{normalizeStyles:t,getDefaultStylesConfiguration:e}=tT,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 HE(n,this.normalizedStyles))}_setupConversion(t,e){const n=this.editor,i=n.model.schema,o=function(t){return(e,n,i)=>{if(!i.consumable.consume(n.item,e.name))return;const o=eT(n.attributeNewValue,t),r=eT(n.attributeOldValue,t),s=i.mapper.toViewElement(n.item),a=i.writer;r&&a.removeClass(r.className,s),o&&a.addClass(o.className,s)}}(this.normalizedStyles),r=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=(0,_u.first)(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",r,{priority:"low"})),e&&(i.extend("imageInline",{allowAttributes:"imageStyle"}),n.data.upcastDispatcher.on("element:img",r,{priority:"low"}))}_setupPostFixer(){const t=this.editor,e=t.model.document,n=t.plugins.get(_y),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 iT=__webpack_require__(4622),oT={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(iT.Z,oT);iT.Z.locals;class rT extends e{static get requires(){return[nT]}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=sT(t.get("ImageStyleEditing").normalizedStyles,this.localizedDefaultStylesTitles);for(const t of n)this._createButton(t);const i=sT([...e.filter(B.Z),...tT.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})=>aT(e)===t)))).map((t=>{const e=n.create(t);return t===r&&(o=e),e}));s.length!==c.length&&tT.warnInvalidStyle({dropdown:t});const l=Ah(i,Ku),d=l.buttonView,u=d.arrowView;return vh(l,c,{enableActiveItemFocusOnDropdownOpen:!0}),d.set({label:cT(a,o.label),class:null,tooltip:!0}),u.unbind("label"),u.set({label:a}),d.bind("icon").toMany(c,"isOn",((...t)=>{const e=t.findIndex(ki);return e<0?o.icon:c[e].icon})),d.bind("label").toMany(c,"isOn",((...t)=>{const e=t.findIndex(ki);return cT(a,e<0?o.label:c[e].label)})),d.bind("isOn").toMany(c,"isOn",((...t)=>t.some(ki))),d.bind("class").toMany(c,"isOn",((...t)=>t.some(ki)?"ck-splitbutton_flatten":null)),d.on("execute",(()=>{c.some((({isOn:t})=>t))?l.isOpen=!l.isOpen:o.fire("execute")})),l.bind("isEnabled").toMany(c,"isEnabled",((...t)=>t.some(ki))),this.listenTo(l,"execute",(()=>{this.editor.editing.view.focus()})),l}))}_createButton(t){const e=t.name;this.editor.ui.componentFactory.add(aT(e),(n=>{const i=this.editor.commands.get("imageStyle"),o=new Nu(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 sT(t,e){for(const n of t)e[n.title]&&(n.title=e[n.title]);return t}function aT(t){return`imageStyle:${t}`}function cT(t,e){return(t?t+": ":"")+e}class lT extends e{static get requires(){return[nT,rT]}static get pluginName(){return"ImageStyle"}}class dT extends e{static get requires(){return[cy,_y]}static get pluginName(){return"ImageToolbar"}afterInit(){const t=this.editor,e=t.t,n=t.plugins.get(cy),i=t.plugins.get("ImageUtils");var o;n.register("image",{ariaLabel:e("Image toolbar"),items:(o=t.config.get("image.toolbar")||[],o.map((t=>(0,B.Z)(t)?t.name:t))),getRelatedElement:t=>i.getClosestSelectedImageWidget(t)})}}class uT extends e{static get requires(){return[jy,_y]}static get pluginName(){return"PictureEditing"}afterInit(){const t=this.editor;t.plugins.has("ImageBlockEditing")&&t.model.schema.extend("imageBlock",{allowAttributes:["sources"]}),t.plugins.has("ImageInlineEditing")&&t.model.schema.extend("imageInline",{allowAttributes:["sources"]}),this._setupConversion(),this._setupImageUploadEditingIntegration()}_setupConversion(){const t=this.editor,e=t.conversion,n=t.plugins.get("ImageUtils");e.for("upcast").add(function(t){const e=["srcset","media","type","sizes"];return t=>{t.on("element:picture",n)};function n(n,i,o){const r=i.viewItem;if(!o.consumable.test(r,{name:!0}))return;const s=new Map;for(const t of r.getChildren())if(t.is("element","source")){const n={};for(const i of e)t.hasAttribute(i)&&o.consumable.test(t,{attributes:i})&&(n[i]=t.getAttribute(i));Object.keys(n).length&&s.set(t,n)}const a=t.findViewImgElement(r);if(!a)return;let c=i.modelCursor.parent;if(!c.is("element","imageBlock")){const t=o.convertItem(a,i.modelCursor);i.modelRange=t.modelRange,i.modelCursor=t.modelCursor,c=(0,_u.first)(t.modelRange.getItems())}o.consumable.consume(r,{name:!0});for(const[t,e]of s)o.consumable.consume(t,{attributes:Object.keys(e)});s.size&&o.writer.setAttribute("sources",Array.from(s.values()),c),o.convertChildren(r,c)}}(n)),e.for("downcast").add(function(t){return t=>{t.on("attribute:sources:imageBlock",e),t.on("attribute:sources:imageInline",e)};function e(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);if(n.attributeNewValue&&n.attributeNewValue.length){const t=o.createContainerElement("picture",null,n.attributeNewValue.map((t=>o.createEmptyElement("source",t)))),e=[];let i=s.parent;for(;i&&i.is("attributeElement");){const t=i.parent;o.unwrap(o.createRangeOn(s),i),e.unshift(i),i=t}o.insert(o.createPositionBefore(s),t),o.move(o.createRangeOn(s),o.createPositionAt(t,"end"));for(const n of e)o.wrap(o.createRangeOn(t),n)}else if(s.parent.is("element","picture")){const t=s.parent;o.move(o.createRangeOn(s),o.createPositionBefore(t)),o.remove(t)}}}(n))}_setupImageUploadEditingIntegration(){const t=this.editor;t.plugins.has("ImageUploadEditing")&&this.listenTo(t.plugins.get("ImageUploadEditing"),"uploadComplete",((e,{imageElement:n,data:i})=>{const o=i.sources;o&&t.model.change((t=>{t.setAttributes({sources:o},n)}))}))}}class hT extends e{static get pluginName(){return"IndentEditing"}init(){const t=this.editor;t.commands.add("indent",new s(t)),t.commands.add("outdent",new s(t))}}const mT='',gT='';class pT extends e{static get pluginName(){return"IndentUI"}init(){const t=this.editor,e=t.locale,n=t.t,i="ltr"==e.uiLanguageDirection?mT:gT,o="ltr"==e.uiLanguageDirection?gT:mT;this._defineButton("indent",n("Increase indent"),i),this._defineButton("outdent",n("Decrease indent"),o)}_defineButton(t,e,n){const i=this.editor;i.ui.componentFactory.add(t,(o=>{const r=i.commands.get(t),s=new Nu(o);return s.set({label:e,icon:n,tooltip:!0}),s.bind("isOn","isEnabled").to(r,"value","isEnabled"),this.listenTo(s,"execute",(()=>{i.execute(t),i.editing.view.focus()})),s}))}}class fT extends e{static get pluginName(){return"Indent"}static get requires(){return[hT,pT]}}class bT extends i{constructor(t,e){super(t),this._indentBehavior=e}refresh(){const t=this.editor.model,e=(0,_u.first)(t.document.selection.getSelectedBlocks());e&&t.schema.checkAttribute(e,"blockIndent")?this.isEnabled=this._indentBehavior.checkEnabled(e.getAttribute("blockIndent")):this.isEnabled=!1}execute(){const t=this.editor.model,e=function(t){const e=t.document.selection,n=t.schema;return Array.from(e.getSelectedBlocks()).filter((t=>n.checkAttribute(t,"blockIndent")))}(t);t.change((t=>{for(const n of e){const e=n.getAttribute("blockIndent"),i=this._indentBehavior.getNextIndent(e);i?t.setAttribute("blockIndent",i,n):t.removeAttribute("blockIndent",n)}}))}}class kT{constructor(t){this.isForward="forward"===t.direction,this.offset=t.offset,this.unit=t.unit}checkEnabled(t){const e=parseFloat(t||0);return this.isForward||e>0}getNextIndent(t){const e=parseFloat(t||0);if(!(!t||t.endsWith(this.unit)))return this.isForward?this.offset+this.unit:void 0;const n=e+(this.isForward?this.offset:-this.offset);return n>0?n+this.unit:void 0}}class xT{constructor(t){this.isForward="forward"===t.direction,this.classes=t.classes}checkEnabled(t){const e=this.classes.indexOf(t);return this.isForward?e=0}getNextIndent(t){const e=this.classes.indexOf(t),n=this.isForward?1:-1;return this.classes[e+n]}}const wT=["paragraph","heading1","heading2","heading3","heading4","heading5","heading6"];class _T extends e{constructor(t){super(t),t.config.define("indentBlock",{offset:40,unit:"px"})}static get pluginName(){return"IndentBlock"}init(){const t=this.editor,e=t.config.get("indentBlock"),n=!e.classes||!e.classes.length,i=Object.assign({direction:"forward"},e),o=Object.assign({direction:"backward"},e);n?(t.data.addStyleProcessorRules(ed),this._setupConversionUsingOffset(t.conversion),t.commands.add("indentBlock",new bT(t,new kT(i))),t.commands.add("outdentBlock",new bT(t,new kT(o)))):(this._setupConversionUsingClasses(e.classes),t.commands.add("indentBlock",new bT(t,new xT(i))),t.commands.add("outdentBlock",new bT(t,new xT(o))))}afterInit(){const t=this.editor,e=t.model.schema,n=t.commands.get("indent"),i=t.commands.get("outdent"),o=t.config.get("heading.options");(o&&o.map((t=>t.model))||wT).forEach((t=>{e.isRegistered(t)&&e.extend(t,{allowAttributes:"blockIndent"})})),e.setAttributeProperties("blockIndent",{isFormatting:!0}),n.registerChildCommand(t.commands.get("indentBlock")),i.registerChildCommand(t.commands.get("outdentBlock"))}_setupConversionUsingOffset(){const t=this.editor.conversion,e="rtl"===this.editor.locale.contentLanguageDirection?"margin-right":"margin-left";t.for("upcast").attributeToAttribute({view:{styles:{[e]:/[\s\S]+/}},model:{key:"blockIndent",value:t=>t.getStyle(e)}}),t.for("downcast").attributeToAttribute({model:"blockIndent",view:t=>({key:"style",value:{[e]:t}})})}_setupConversionUsingClasses(t){const e={model:{key:"blockIndent",values:[]},view:{}};for(const n of t)e.model.values.push(n),e.view[n]={key:"class",value:[n]};this.editor.conversion.attributeToAttribute(e)}}function AT(t,e){return`${t}:${e=e||(0,_u.getLanguageDirection)(t)}`}class vT extends i{refresh(){const t=this.editor.model,e=t.document;this.value=this._getValueFromFirstAllowedNode(),this.isEnabled=t.schema.checkAttributeInSelection(e.selection,"language")}execute({languageCode:t,textDirection:e}={}){const n=this.editor.model,i=n.document.selection,o=!!t&&AT(t,e);n.change((t=>{if(i.isCollapsed)o?t.setSelectionAttribute("language",o):t.removeSelectionAttribute("language");else{const e=n.schema.getValidRanges(i.getRanges(),"language");for(const n of e)o?t.setAttribute("language",o,n):t.removeAttribute("language",n)}}))}_getValueFromFirstAllowedNode(){const t=this.editor.model,e=t.schema,n=t.document.selection;if(n.isCollapsed)return n.getAttribute("language")||!1;for(const t of n.getRanges())for(const n of t.getItems())if(e.checkAttribute(n,"language"))return n.getAttribute("language")||!1;return!1}}class CT extends e{static get pluginName(){return"TextPartLanguageEditing"}constructor(t){super(t),t.config.define("language",{textPartLanguage:[{title:"Arabic",languageCode:"ar"},{title:"French",languageCode:"fr"},{title:"Spanish",languageCode:"es"}]})}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:"language"}),t.model.schema.setAttributeProperties("language",{copyOnEnter:!0}),this._defineConverters(),t.commands.add("textPartLanguage",new vT(t))}_defineConverters(){const t=this.editor.conversion;t.for("upcast").elementToAttribute({model:{key:"language",value:t=>AT(t.getAttribute("lang"),t.getAttribute("dir"))},view:{name:"span",attributes:{lang:/[\s\S]+/}}}),t.for("downcast").attributeToElement({model:"language",view:(t,{writer:e},n)=>{if(!t)return;if(!n.item.is("$textProxy")&&!n.item.is("documentSelection"))return;const{languageCode:i,textDirection:o}=function(t){const[e,n]=t.split(":");return{languageCode:e,textDirection:n}}(t);return e.createAttributeElement("span",{lang:i,dir:o})}})}}var yT=__webpack_require__(4704),ET={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(yT.Z,ET);yT.Z.locals;class TT extends e{static get pluginName(){return"TextPartLanguageUI"}init(){const t=this.editor,e=t.t,n=t.config.get("language.textPartLanguage"),i=e("Choose language"),o=e("Remove language"),r=e("Language");t.ui.componentFactory.add("textPartLanguage",(e=>{const s=new _u.Collection,a={},c=t.commands.get("textPartLanguage");s.add({type:"button",model:new Yh({label:o,languageCode:!1,withText:!0})}),s.add({type:"separator"});for(const t of n){const e={type:"button",model:new Yh({label:t.title,languageCode:t.languageCode,textDirection:t.textDirection,withText:!0})},n=AT(t.languageCode,t.textDirection);e.model.bind("isOn").to(c,"value",(t=>t===n)),s.add(e),a[n]=t.title}const l=Ah(e);return Ch(l,s),l.buttonView.set({isOn:!1,withText:!0,tooltip:r}),l.extendTemplate({attributes:{class:["ck-text-fragment-language-dropdown"]}}),l.bind("isEnabled").to(c,"isEnabled"),l.buttonView.bind("label").to(c,"value",(t=>a[t]||i)),this.listenTo(l,"execute",(e=>{c.execute({languageCode:e.source.languageCode,textDirection:e.source.textDirection}),t.editing.view.focus()})),l}))}}class DT extends e{static get requires(){return[CT,TT]}static get pluginName(){return"TextPartLanguage"}}class ST{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=>"a"===t.name));for(const t of this._definitions){const i=(0,_u.toMap)(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 IT=function(t,e,n){var i=t.length;return n=void 0===n?i:n,!e&&n>=i?t:si(t,e,n)};var BT=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");const MT=function(t){return BT.test(t)};const NT=function(t){return t.split("")};var OT="[\\ud800-\\udfff]",PT="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",RT="\\ud83c[\\udffb-\\udfff]",LT="[^\\ud800-\\udfff]",zT="(?:\\ud83c[\\udde6-\\uddff]){2}",jT="[\\ud800-\\udbff][\\udc00-\\udfff]",FT="(?:"+PT+"|"+RT+")"+"?",VT="[\\ufe0e\\ufe0f]?",HT=VT+FT+("(?:\\u200d(?:"+[LT,zT,jT].join("|")+")"+VT+FT+")*"),UT="(?:"+[LT+PT+"?",PT,zT,jT,OT].join("|")+")",qT=RegExp(RT+"(?="+RT+")|"+UT+HT,"g");const WT=function(t){return t.match(qT)||[]};const ZT=function(t){return MT(t)?WT(t):NT(t)};const GT=function(t){return function(e){e=ei(e);var n=MT(e)?ZT(e):void 0,i=n?n[0]:e.charAt(0),o=n?IT(n,1).join(""):e.slice(1);return i[t]()+o}}("toUpperCase"),KT=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205f\u3000]/g,$T=/^(?:(?:https?|ftps?|mailto):|[^a-z]|[a-z+.-]+(?:[^a-z+.:-]|$))/i,YT=/^[\S]+@((?![-_])(?:[-\w\u00a1-\uffff]{0,63}[^-_]\.))+(?:[a-z\u00a1-\uffff]{2,})$/i,JT=/^((\w+:(\/{2,})?)|(\W))/i,QT="Ctrl+K";function XT(t,{writer:e}){const n=e.createAttributeElement("a",{href:t},{priority:5});return e.setCustomProperty("link",!0,n),n}function tD(t){return function(t){return t.replace(KT,"").match($T)}(t=String(t))?t:"#"}function eD(t,e){return!!t&&e.checkAttribute(t.name,"linkHref")}function nD(t,e){const n=(i=t,YT.test(i)?"mailto:":e);var i;const o=!!n&&!iD(t);return t&&o?n+t:t}function iD(t){return JT.test(t)}function oD(t){window.open(t,"_blank","noopener")}class rD extends i{constructor(t){super(t),this.manualDecorators=new _u.Collection,this.automaticDecorators=new ST}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()||(0,_u.first)(e.getSelectedBlocks());eD(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=Ig(s,"linkHref",i.getAttribute("linkHref"),n);e.setAttribute("linkHref",t,a),o.forEach((t=>{e.setAttribute(t,!0,a)})),r.forEach((t=>{e.removeAttribute(t,a)})),e.setSelection(e.createPositionAfter(a.end.nodeBefore))}else if(""!==t){const r=(0,_u.toMap)(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 n of c)e.setAttribute("linkHref",t,n),o.forEach((t=>{e.setAttribute(t,!0,n)})),r.forEach((t=>{e.removeAttribute(t,n)}))}}))}_getDecoratorStateFromModel(t){const e=this.editor.model,n=e.document.selection,i=n.getSelectedElement();return eD(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}}class sD extends i{refresh(){const t=this.editor.model,e=t.document.selection,n=e.getSelectedElement();eD(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?[Ig(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 aD{constructor({id:t,label:e,attributes:n,classes:i,styles:o,defaultValue:r}){this.id=t,this.set("value"),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}}}(0,_u.mix)(aD,_u.ObservableMixin);var cD=__webpack_require__(399),lD={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(cD.Z,lD);cD.Z.locals;const dD="automatic",uD=/^(https?:)?\/\//;class hD extends e{static get pluginName(){return"LinkEditing"}static get requires(){return[gg,eg,Kx]}constructor(t){super(t),t.config.define("link",{addTargetToExternalLinks:!1})}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:"linkHref"}),t.conversion.for("dataDowncast").attributeToElement({model:"linkHref",view:XT}),t.conversion.for("editingDowncast").attributeToElement({model:"linkHref",view:(t,e)=>XT(tD(t),e)}),t.conversion.for("upcast").elementToAttribute({view:{name:"a",attributes:{href:!0}},model:{key:"linkHref",value:t=>t.getAttribute("href")}}),t.commands.add("link",new rD(t)),t.commands.add("unlink",new sD(t));const e=function(t,e){const n={"Open in a new tab":t("Open in a new tab"),Downloadable:t("Downloadable")};return e.forEach((t=>(t.label&&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${GT(n)}`});e.push(t)}return e}(t.config.get("link.decorators")));this._enableAutomaticDecorators(e.filter((t=>t.mode===dD))),this._enableManualDecorators(e.filter((t=>"manual"===t.mode)));t.plugins.get(gg).registerAttribute("linkHref"),Mg(t,"linkHref","a","ck-link_selected"),this._enableLinkOpen(),this._enableInsertContentSelectionAttributesFixer(),this._enableClickingAfterLink(),this._enableTypingOverLink(),this._handleDeleteContentAfterLink()}_enableAutomaticDecorators(t){const e=this.editor,n=e.commands.get("link").automaticDecorators;e.config.get("link.addTargetToExternalLinks")&&n.add({id:"linkIsExternal",mode:dD,callback:t=>uD.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}),t=new aD(t),n.add(t),e.conversion.for("downcast").attributeToElement({model:t.id,view:(e,{writer:n,schema:i},{item:o})=>{if((o.is("selection")||i.isInline(o))&&e){const e=n.createAttributeElement("a",t.attributes,{priority:5});t.classes&&n.addClass(t.classes,e);for(const i in t.styles)n.setStyle(i,t.styles[i],e);return n.setCustomProperty("link",!0,e),e}}}),e.conversion.for("upcast").elementToAttribute({view:{name:"a",...t._createPattern()},model:{key:t.id}})}))}_enableLinkOpen(){const t=this.editor,e=t.editing.view.document;this.listenTo(e,"click",((t,e)=>{if(!(_u.env.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(),oD(i))}),{context:"$capture"}),this.listenTo(e,"keydown",((e,n)=>{const i=t.commands.get("link").value;i&&n.keyCode===_u.keyCodes.enter&&n.altKey&&(e.stop(),oD(i))}))}_enableInsertContentSelectionAttributesFixer(){const t=this.editor.model,e=t.document.selection;this.listenTo(t,"insertContent",(()=>{const n=e.anchor.nodeBefore,i=e.anchor.nodeAfter;e.hasAttribute("linkHref")&&n&&n.hasAttribute("linkHref")&&(i&&i.hasAttribute("linkHref")||t.change((e=>{mD(e,pD(t.schema))})))}),{priority:"low"})}_enableClickingAfterLink(){const t=this.editor,e=t.model;t.editing.view.addObserver(fl);let n=!1;this.listenTo(t.editing.view.document,"mousedown",(()=>{n=!0})),this.listenTo(t.editing.view.document,"selectionChange",(()=>{if(!n)return;n=!1;const t=e.document.selection;if(!t.isCollapsed)return;if(!t.hasAttribute("linkHref"))return;const i=t.getFirstPosition(),o=Ig(i,"linkHref",t.getAttribute("linkHref"),e);(i.isTouching(o.start)||i.isTouching(o.end))&&e.change((t=>{mD(t,pD(e.schema))}))}))}_enableTypingOverLink(){const t=this.editor,e=t.editing.view;let n,i;this.listenTo(e.document,"delete",(()=>{i=!0}),{priority:"high"}),this.listenTo(t.model,"deleteContent",(()=>{const e=t.model.document.selection;e.isCollapsed||(i?i=!1:gD(t)&&function(t){const e=t.document.selection,n=e.getFirstPosition(),i=e.getLastPosition(),o=n.nodeAfter;if(!o)return!1;if(!o.is("$text"))return!1;if(!o.hasAttribute("linkHref"))return!1;const r=i.textNode||i.nodeBefore;if(o===r)return!0;return Ig(n,"linkHref",o.getAttribute("linkHref"),t).containsRange(t.createRange(n,i),!0)}(t.model)&&(n=e.getAttributes()))}),{priority:"high"}),this.listenTo(t.model,"insertContent",((e,[o])=>{i=!1,gD(t)&&n&&(t.model.change((t=>{for(const[e,i]of n)t.setAttribute(e,i,o)})),n=null)}),{priority:"high"})}_handleDeleteContentAfterLink(){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)=>{r="backward"===e.direction}),{priority:"high"}),this.listenTo(e,"deleteContent",(()=>{o=!1;const t=n.getFirstPosition(),i=n.getAttribute("linkHref");if(!i)return;const r=Ig(t,"linkHref",i,e);o=r.containsPosition(t)||r.end.isEqual(t)}),{priority:"high"}),this.listenTo(e,"deleteContent",(()=>{r&&(r=!1,o||t.model.enqueueChange((t=>{mD(t,pD(e.schema))})))}),{priority:"low"})}}function mD(t,e){t.removeSelectionAttribute("linkHref");for(const n of e)t.removeSelectionAttribute(n)}function gD(t){return t.model.change((t=>t.batch)).isTyping}function pD(t){return t.getDefinition("$text").allowAttributes.filter((t=>t.startsWith("link")))}var fD=__webpack_require__(4827),bD={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(fD.Z,bD);fD.Z.locals;class kD extends Hd{constructor(t,e){super(t);const n=t.t;this.focusTracker=new _u.FocusTracker,this.keystrokes=new _u.KeystrokeHandler,this.urlInputView=this._createUrlInput(),this.saveButtonView=this._createButton(n("Save"),wu.check,"ck-button-save"),this.saveButtonView.type="submit",this.cancelButtonView=this._createButton(n("Cancel"),wu.cancel,"ck-button-cancel","cancel"),this._manualDecoratorSwitches=this._createManualDecoratorSwitches(e),this.children=this._createFormChildren(e.manualDecorators),this._focusables=new kd,this._focusCycler=new Xu({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}});const i=["ck","ck-link-form","ck-responsive-form"];e.manualDecorators.length&&i.push("ck-link-form_layout-vertical","ck-vertical-form"),this.setTemplate({tag:"form",attributes:{class:i,tabindex:"-1"},children:this.children}),vu(this)}getDecoratorSwitchesState(){return Array.from(this._manualDecoratorSwitches).reduce(((t,e)=>(t[e.name]=e.isOn,t)),{})}render(){super.render(),Cu({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()}_createUrlInput(){const t=this.locale.t,e=new Wh(this.locale,Zh);return e.label=t("Link URL"),e}_createButton(t,e,n,i){const o=new Nu(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 Ru(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 Hd;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}}var xD=__webpack_require__(9465),wD={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(xD.Z,wD);xD.Z.locals;class _D extends Hd{constructor(t){super(t);const e=t.t;this.focusTracker=new _u.FocusTracker,this.keystrokes=new _u.KeystrokeHandler,this.previewButtonView=this._createPreviewButton(),this.unlinkButtonView=this._createButton(e("Unlink"),'',"unlink"),this.editButtonView=this._createButton(e("Edit link"),wu.pencil,"edit"),this.set("href"),this._focusables=new kd,this._focusCycler=new Xu({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 Nu(this.locale);return i.set({label:t,icon:e,tooltip:!0}),i.delegate("execute").to(this,n),i}_createPreviewButton(){const t=new Nu(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&&tD(t))),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 AD='',vD="link-ui";class CD extends e{static get requires(){return[im]}static get pluginName(){return"LinkUI"}init(){const t=this.editor;t.editing.view.addObserver(pl),this.actionsView=this._createActionsView(),this.formView=this._createFormView(),this._balloon=t.plugins.get(im),this._createToolbarLinkButton(),this._enableUserBalloonInteractions(),t.conversion.for("editingDowncast").markerToHighlight({model:vD,view:{classes:["ck-fake-link-selection"]}}),t.conversion.for("editingDowncast").markerToElement({model:vD,view:{name:"span",classes:["ck-fake-link-selection","ck-fake-link-selection_collapsed"]}})}destroy(){super.destroy(),this.formView.destroy()}_createActionsView(){const t=this.editor,e=new _D(t.locale),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(QT,((t,e)=>{this._addFormView(),e()})),e}_createFormView(){const t=this.editor,e=t.commands.get("link"),n=t.config.get("link.defaultProtocol"),i=new kD(t.locale,e);return i.urlInputView.fieldView.bind("value").to(e,"value"),i.urlInputView.bind("isReadOnly").to(e,"isEnabled",(t=>!t)),i.saveButtonView.bind("isEnabled").to(e),this.listenTo(i,"submit",(()=>{const{value:e}=i.urlInputView.fieldView.element,o=nD(e,n);t.execute("link",o,i.getDecoratorSwitchesState()),this._closeFormView()})),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"),n=t.t;t.keystrokes.set(QT,((t,n)=>{n(),e.isEnabled&&this._showUI(!0)})),t.ui.componentFactory.add("link",(t=>{const i=new Nu(t);return i.isEnabled=!0,i.label=n("Link"),i.icon=AD,i.keystroke=QT,i.tooltip=!0,i.isToggleable=!0,i.bind("isEnabled").to(e,"isEnabled"),i.bind("isOn").to(e,"value",(t=>!!t)),this.listenTo(i,"execute",(()=>this._showUI(!0))),i}))}_enableUserBalloonInteractions(){const t=this.editor.editing.view.document;this.listenTo(t,"click",(()=>{this._getSelectedLinkElement()&&this._showUI()})),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())})),Au({emitter:this.formView,activator:()=>this._isUIInPanel,contextElements:[this._balloon.view.element],callback:()=>this._hideUI()})}_addActionsView(){this._areActionsInPanel||this._balloon.add({view:this.actionsView,position:this._getBalloonPositionData()})}_addFormView(){if(this._isFormInPanel)return;const t=this.editor.commands.get("link");this.formView.disableCssTransitions(),this._balloon.add({view:this.formView,position:this._getBalloonPositionData()}),this._balloon.visibleView===this.formView&&this.formView.urlInputView.fieldView.select(),this.formView.enableCssTransitions(),this.formView.urlInputView.fieldView.element.value=t.value||""}_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._balloon.remove(this.formView),this.editor.editing.view.focus(),this._hideFakeVisualSelection())}_showUI(t=!1){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._balloon.hasView(this.formView)}get _areActionsInPanel(){return this._balloon.hasView(this.actionsView)}get _areActionsVisible(){return this._balloon.visibleView===this.actionsView}get _isUIInPanel(){return this._isFormInPanel||this._areActionsInPanel}get _isUIVisible(){return this._balloon.visibleView==this.formView||this._areActionsVisible}_getBalloonPositionData(){const t=this.editor.editing.view,e=this.editor.model,n=t.document;let i=null;if(e.markers.has(vD)){const e=Array.from(this.editor.editing.mapper.markerNameToElements(vD)),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&&ew(n))return yD(e.getFirstPosition());{const n=e.getFirstRange().getTrimmed(),i=yD(n.start),o=yD(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(vD))e.updateMarker(vD,{range:n});else if(n.start.isAtEnd){const i=n.start.getLastMatchingPosition((({item:e})=>!t.schema.isContent(e)),{boundaries:n});e.addMarker(vD,{usingOperation:!1,affectsData:!1,range:e.createRange(i,n.end)})}else e.addMarker(vD,{usingOperation:!1,affectsData:!1,range:n})}))}_hideFakeVisualSelection(){const t=this.editor.model;t.markers.has(vD)&&t.change((t=>{t.removeMarker(vD)}))}}function yD(t){return t.getAncestors().find((t=>{return(e=t).is("attributeElement")&&!!e.getCustomProperty("link");var e}))}const ED=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 TD extends e{static get requires(){return[dg]}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()}_enableTypingHandling(){const t=this.editor,e=new mg(t.model,(t=>{if(!function(t){return t.length>4&&" "===t[t.length-1]&&" "!==t[t.length-2]}(t))return;const e=DD(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}=hg(t,e),o=DD(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=nD(t,this.editor.config.get("link.defaultProtocol"));this.isEnabled&&function(t,e){return e.schema.checkAttributeInSelection(e.createSelection(t),"linkHref")}(e,n)&&iD(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 DD(t){const e=ED.exec(t);return e?e[2]:null}class SD extends e{static get requires(){return[hD,CD,TD]}static get pluginName(){return"Link"}}class ID extends e{static get requires(){return["ImageEditing","ImageUtils",hD]}static get pluginName(){return"LinkImageEditing"}init(){const t=this.editor,e=t.model.schema;t.plugins.has("ImageBlockEditing")&&e.extend("imageBlock",{allowAttributes:["linkHref"]}),t.conversion.for("upcast").add(function(t){const e=t.plugins.has("ImageInlineEditing"),n=t.plugins.get("ImageUtils");return t=>{t.on("element:a",((t,i,o)=>{const r=i.viewItem,s=n.findViewImgElement(r);if(!s)return;const a=s.findAncestor((t=>n.isBlockImageView(t)));if(e&&!a)return;const c={attributes:["href"]};if(!o.consumable.consume(r,c))return;const l=r.getAttribute("href");if(!l)return;let d=i.modelCursor.parent;if(!d.is("element","imageBlock")){const t=o.convertItem(s,i.modelCursor);i.modelRange=t.modelRange,i.modelCursor=t.modelCursor,d=i.modelCursor.nodeBefore}d&&d.is("element","imageBlock")&&o.writer.setAttribute("linkHref",l,d)}),{priority:"high"})}}(t)),t.conversion.for("downcast").add(function(t){const e=t.plugins.get("ImageUtils");return t=>{t.on("attribute:linkHref:imageBlock",((t,n,i)=>{if(!i.consumable.consume(n.item,t.name))return;const o=i.mapper.toViewElement(n.item),r=i.writer,s=Array.from(o.getChildren()).find((t=>"a"===t.name)),a=e.findViewImgElement(o),c=a.parent.is("element","picture")?a.parent:a;if(s)n.attributeNewValue?r.setAttribute("href",n.attributeNewValue,s):(r.move(r.createRangeOn(c),r.createPositionAt(o,0)),r.remove(s));else{const t=r.createContainerElement("a",{href:n.attributeNewValue});r.insert(r.createPositionAt(o,0),t),r.move(r.createRangeOn(c),r.createPositionAt(t,0))}}),{priority:"high"})}}(t)),this._enableAutomaticDecorators(),this._enableManualDecorators()}_enableAutomaticDecorators(){const t=this.editor,e=t.commands.get("link").automaticDecorators;e.length&&t.conversion.for("downcast").add(e.getDispatcherForLinkedImage())}_enableManualDecorators(){const t=this.editor,e=t.commands.get("link");for(const n of e.manualDecorators)t.plugins.has("ImageBlockEditing")&&t.model.schema.extend("imageBlock",{allowAttributes:n.id}),t.plugins.has("ImageInlineEditing")&&t.model.schema.extend("imageInline",{allowAttributes:n.id}),t.conversion.for("downcast").add(BD(n)),t.conversion.for("upcast").add(MD(t,n))}}function BD(t){return e=>{e.on(`attribute:${t.id}:imageBlock`,((e,n,i)=>{const o=i.mapper.toViewElement(n.item),r=Array.from(o.getChildren()).find((t=>"a"===t.name));if(r){for(const[e,n]of(0,_u.toMap)(t.attributes))i.writer.setAttribute(e,n,r);t.classes&&i.writer.addClass(t.classes,r);for(const e in t.styles)i.writer.setStyle(e,t.styles[e],r)}}))}}function MD(t,e){const n=t.plugins.has("ImageInlineEditing"),i=t.plugins.get("ImageUtils");return t=>{t.on("element:a",((t,o,r)=>{const s=o.viewItem,a=i.findViewImgElement(s);if(!a)return;const c=a.findAncestor((t=>i.isBlockImageView(t)));if(n&&!c)return;const l=new zn(e._createPattern()).match(s);if(!l)return;if(!r.consumable.consume(s,l.match))return;const d=o.modelCursor.nodeBefore||o.modelCursor.parent;r.writer.setAttribute(e.id,!0,d)}),{priority:"high"})}}class ND extends e{static get requires(){return[hD,CD,"ImageBlockEditing"]}static get pluginName(){return"LinkImageUI"}init(){const t=this.editor,e=t.editing.view.document;this.listenTo(e,"click",((e,n)=>{this._isSelectedLinkedImage(t.model.document.selection)&&(n.preventDefault(),e.stop())}),{priority:"high"}),this._createToolbarLinkImageButton()}_createToolbarLinkImageButton(){const t=this.editor,e=t.t;t.ui.componentFactory.add("linkImage",(n=>{const i=new Nu(n),o=t.plugins.get("LinkUI"),r=t.commands.get("link");return i.set({isEnabled:!0,label:e("Link image"),icon:AD,keystroke:QT,tooltip:!0,isToggleable:!0}),i.bind("isEnabled").to(r,"isEnabled"),i.bind("isOn").to(r,"value",(t=>!!t)),this.listenTo(i,"execute",(()=>{this._isSelectedLinkedImage(t.model.document.selection)?o._addActionsView():o._showUI(!0)})),i}))}_isSelectedLinkedImage(t){const e=t.getSelectedElement();return this.editor.plugins.get("ImageUtils").isImage(e)&&e.hasAttribute("linkHref")}}var OD=__webpack_require__(3858),PD={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(OD.Z,PD);OD.Z.locals;class RD extends e{static get requires(){return[ID,ND]}static get pluginName(){return"LinkImage"}}class LD{constructor(t,e){this._startElement=t,this._referenceIndent=t.getAttribute("listIndent"),this._isForward="forward"==e.direction,this._includeSelf=!!e.includeSelf,this._sameAttributes=toArray(e.sameAttributes||[]),this._sameIndent=!!e.sameIndent,this._lowerIndent=!!e.lowerIndent,this._higherIndent=!!e.higherIndent}static first(t,e){const n=new this(t,e)[Symbol.iterator]();return first(n)}*[Symbol.iterator](){const t=[];for(const{node:e}of zD(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*zD(t,e="forward"){const n="forward"==e;let i=null;for(;isListItemBlock(t);)yield{node:t,previous:i},i=t,t=n?t.nextSibling:t.previousSibling}class jD{constructor(t){this._listHead=t}[Symbol.iterator](){return zD(this._listHead,"forward")}}var FD=__webpack_require__(8676),VD={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(FD.Z,VD);FD.Z.locals;function HD(t,e){const n=e.mapper,i=e.writer,o="numbered"==t.getAttribute("listType")?"ol":"ul",r=function(t){const e=t.createContainerElement("li");return e.getFillerOffset=XD,e}(i),s=i.createContainerElement(o,null);return i.insert(i.createPositionAt(s,0),r),n.bindElements(t,r),r}function UD(t,e,n,i){const o=e.parent,r=n.mapper,s=n.writer;let a=r.toViewPosition(i.createPositionBefore(t));const c=ZD(t.previousSibling,{sameIndent:!0,smallerIndent:!0,listIndent:t.getAttribute("listIndent")}),l=t.previousSibling;if(c&&c.getAttribute("listIndent")==t.getAttribute("listIndent")){const t=r.toViewElement(c);a=s.breakContainer(s.createPositionAfter(t))}else if(l&&"listItem"==l.name){a=r.toViewPosition(i.createPositionAt(l,"end"));const t=r.findMappedViewAncestor(a),e=KD(t);a=e?s.createPositionBefore(e):s.createPositionAt(t,"end")}else a=r.toViewPosition(i.createPositionBefore(t));if(a=WD(a),s.insert(a,o),l&&"listItem"==l.name){const t=r.toViewElement(l),n=s.createRange(s.createPositionAt(t,0),a).getWalker({ignoreElementEnd:!0});for(const t of n)if(t.item.is("element","li")){const i=s.breakContainer(s.createPositionBefore(t.item)),o=t.item.parent,r=s.createPositionAt(e,"end");qD(s,r.nodeBefore,r.nodeAfter),s.move(s.createRangeOn(o),r),n.position=i}}else{const n=o.nextSibling;if(n&&(n.is("element","ul")||n.is("element","ol"))){let i=null;for(const e of n.getChildren()){const n=r.toModelElement(e);if(!(n&&n.getAttribute("listIndent")>t.getAttribute("listIndent")))break;i=e}i&&(s.breakContainer(s.createPositionAfter(i)),s.move(s.createRangeOn(i.parent),s.createPositionAt(e,"end")))}}qD(s,o,o.nextSibling),qD(s,o.previousSibling,o)}function qD(t,e,n){return!e||!n||"ul"!=e.name&&"ol"!=e.name||e.name!=n.name||e.getAttribute("class")!==n.getAttribute("class")?null:t.mergeContainers(t.createPositionAfter(e))}function WD(t){return t.getLastMatchingPosition((t=>t.item.is("uiElement")))}function ZD(t,e){const n=!!e.sameIndent,i=!!e.smallerIndent,o=e.listIndent;let r=t;for(;r&&"listItem"==r.name;){const t=r.getAttribute("listIndent");if(n&&o==t||i&&o>t)return r;r="forward"===e.direction?r.nextSibling:r.previousSibling}return null}function GD(t,e,n,i){t.ui.componentFactory.add(e,(o=>{const r=t.commands.get(e),s=new Nu(o);return s.set({label:n,icon:i,tooltip:!0,isToggleable:!0}),s.bind("isOn","isEnabled").to(r,"value","isEnabled"),s.on("execute",(()=>{t.execute(e),t.editing.view.focus()})),s}))}function KD(t){for(const e of t.getChildren())if("ul"==e.name||"ol"==e.name)return e;return null}function $D(t,e){const n=[],i=t.parent,o={ignoreElementEnd:!1,startPosition:t,shallow:!0,direction:e},r=i.getAttribute("listIndent"),s=[...new xs(o)].filter((t=>t.item.is("element"))).map((t=>t.item));for(const t of s){if(!t.is("element","listItem"))break;if(t.getAttribute("listIndent")r)){if(t.getAttribute("listType")!==i.getAttribute("listType"))break;if(t.getAttribute("listStyle")!==i.getAttribute("listStyle"))break;if(t.getAttribute("listReversed")!==i.getAttribute("listReversed"))break;if(t.getAttribute("listStart")!==i.getAttribute("listStart"))break;"backward"===e?n.unshift(t):n.push(t)}}return n}function YD(t){let e=[...t.document.selection.getSelectedBlocks()].filter((t=>t.is("element","listItem"))).map((e=>{const n=t.change((t=>t.createPositionAt(e,0)));return[...$D(n,"backward"),...$D(n,"forward")]})).flat();return e=[...new Set(e)],e}const JD=["disc","circle","square"],QD=["decimal","decimal-leading-zero","lower-roman","upper-roman","lower-latin","upper-latin"];function XD(){const t=!this.isEmpty&&("ul"==this.getChild(0).name||"ol"==this.getChild(0).name);return this.isEmpty||t?0:Fi.call(this)}const tS='',eS='';class nS extends e{static get pluginName(){return"ListUI"}init(){const t=this.editor.t;GD(this.editor,"numberedList",t("Numbered List"),tS),GD(this.editor,"bulletedList",t("Bulleted List"),eS)}}const iS={},oS={},rS={},sS=[{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 sS)iS[t]=n,oS[t]=e,e&&(rS[e]=t);var aS=__webpack_require__(3195),cS={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(aS.Z,cS);aS.Z.locals;class lS extends Hd{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"),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}_createButtonView(){const t=new Nu(this.locale),e=t.bindTemplate;return t.set({withText:!0,icon:qu}),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}}var dS=__webpack_require__(7133),uS={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(dS.Z,uS);dS.Z.locals;class hS extends Hd{constructor(t,{enabledProperties:e,styleButtonViews:n,styleGridAriaLabel:i}){super(t);const o=["ck","ck-list-properties"];this.children=this.createCollection(),this.stylesView=null,this.additionalPropertiesCollapsibleView=null,this.startIndexFieldView=null,this.reversedSwitchButtonView=null,this.focusTracker=new _u.FocusTracker,this.keystrokes=new _u.KeystrokeHandler,this.focusables=new kd,this.focusCycler=new Xu({focusables:this.focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),e.styles?(this.stylesView=this._createStylesView(n,i),this.children.add(this.stylesView)):o.push("ck-list-properties_without-styles"),(e.startIndex||e.reversed)&&(this._addNumberedListPropertyViews(e,n),o.push("ck-list-properties_with-numbered-properties")),this.setTemplate({tag:"div",attributes:{class:o},children:this.children})}render(){if(super.render(),this.stylesView){this.focusables.add(this.stylesView),this.focusTracker.add(this.stylesView.element),(this.startIndexFieldView||this.reversedSwitchButtonView)&&(this.focusables.add(this.children.last.buttonView),this.focusTracker.add(this.children.last.buttonView.element));for(const t of this.stylesView.children)this.stylesView.focusTracker.add(t.element);yu({keystrokeHandler:this.stylesView.keystrokes,focusTracker:this.stylesView.focusTracker,gridItems:this.stylesView.children,numberOfColumns:()=>_u.global.window.getComputedStyle(this.stylesView.element).getPropertyValue("grid-template-columns").split(" ").length})}if(this.startIndexFieldView){this.focusables.add(this.startIndexFieldView),this.focusTracker.add(this.startIndexFieldView.element),this.listenTo(this.startIndexFieldView.element,"selectstart",((t,e)=>{e.stopPropagation()}),{priority:"high"});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)}this.reversedSwitchButtonView&&(this.focusables.add(this.reversedSwitchButtonView),this.focusTracker.add(this.reversedSwitchButtonView.element)),this.keystrokes.listenTo(this.element)}focus(){this.focusCycler.focusFirst()}focusLast(){this.focusCycler.focusLast()}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}_createStylesView(t,e){const n=new Hd(this.locale);return n.children=n.createCollection(this.locale),n.children.addMany(t),n.setTemplate({tag:"div",attributes:{"aria-label":e,class:["ck","ck-list-styles-list"]},children:n.children}),n.children.delegate("execute").to(this),n.focus=function(){this.children.first.focus()},n.focusTracker=new _u.FocusTracker,n.keystrokes=new _u.KeystrokeHandler,n.render(),n.keystrokes.listenTo(n.element),n}_addNumberedListPropertyViews(t){const e=this.locale.t,n=[];t.startIndex&&(this.startIndexFieldView=this._createStartIndexField(),n.push(this.startIndexFieldView)),t.reversed&&(this.reversedSwitchButtonView=this._createReversedSwitchButton(),n.push(this.reversedSwitchButtonView)),t.styles?(this.additionalPropertiesCollapsibleView=new lS(this.locale,n),this.additionalPropertiesCollapsibleView.set({label:e("List properties"),isCollapsed:!0}),this.additionalPropertiesCollapsibleView.buttonView.bind("isEnabled").toMany(n,"isEnabled",((...t)=>t.some((t=>t)))),this.additionalPropertiesCollapsibleView.buttonView.on("change:isEnabled",((t,e,n)=>{n||(this.additionalPropertiesCollapsibleView.isCollapsed=!0)})),this.children.add(this.additionalPropertiesCollapsibleView)):this.children.addMany(n)}_createStartIndexField(){const t=this.locale.t,e=new Wh(this.locale,Gh);return e.set({label:t("Start at"),class:"ck-numbered-list-properties__start-index"}),e.fieldView.set({min:1,step:1,value:1,inputMode:"numeric"}),e.fieldView.on("input",(()=>{const n=e.fieldView.element,i=n.valueAsNumber;Number.isNaN(i)||(n.checkValidity()?this.fire("listStart",{startIndex:i}):e.errorText=t("Start index must be greater than 0."))})),e}_createReversedSwitchButton(){const t=this.locale.t,e=new Ru(this.locale);return e.set({withText:!0,label:t("Reversed order"),class:"ck-numbered-list-properties__reversed-order"}),e.delegate("execute").to(this,"listReversed"),e}}var mS=__webpack_require__(4553),gS={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(mS.Z,gS);mS.Z.locals;class pS extends e{static get pluginName(){return"ListPropertiesUI"}init(){const t=this.editor,e=t.locale.t,n=t.config.get("list.properties");n.styles&&t.ui.componentFactory.add("bulletedList",fS({editor:t,parentCommandName:"bulletedList",buttonLabel:e("Bulleted List"),buttonIcon:eS,styleGridAriaLabel:e("Bulleted list styles toolbar"),styleDefinitions:[{label:e("Toggle the disc list style"),tooltip:e("Disc"),type:"disc",icon:''},{label:e("Toggle the circle list style"),tooltip:e("Circle"),type:"circle",icon:''},{label:e("Toggle the square list style"),tooltip:e("Square"),type:"square",icon:''}]})),(n.styles||n.startIndex||n.reversed)&&t.ui.componentFactory.add("numberedList",fS({editor:t,parentCommandName:"numberedList",buttonLabel:e("Numbered List"),buttonIcon:tS,styleGridAriaLabel:e("Numbered list styles toolbar"),styleDefinitions:[{label:e("Toggle the decimal list style"),tooltip:e("Decimal"),type:"decimal",icon:''},{label:e("Toggle the decimal with leading zero list style"),tooltip:e("Decimal with leading zero"),type:"decimal-leading-zero",icon:''},{label:e("Toggle the lower–roman list style"),tooltip:e("Lower–roman"),type:"lower-roman",icon:''},{label:e("Toggle the upper–roman list style"),tooltip:e("Upper-roman"),type:"upper-roman",icon:''},{label:e("Toggle the lower–latin list style"),tooltip:e("Lower-latin"),type:"lower-latin",icon:''},{label:e("Toggle the upper–latin list style"),tooltip:e("Upper-latin"),type:"upper-latin",icon:''}]}))}}function fS({editor:t,parentCommandName:e,buttonLabel:n,buttonIcon:i,styleGridAriaLabel:o,styleDefinitions:r}){const s=t.commands.get(e);return a=>{const c=Ah(a,Ku),l=c.buttonView;c.bind("isEnabled").to(s),c.class="ck-list-styles-dropdown",l.on("execute",(()=>{t.execute(e),t.editing.view.focus()})),l.set({label:n,icon:i,tooltip:!0,isToggleable:!0}),l.bind("isOn").to(s,"value",(t=>!!t));const d=function({editor:t,dropdownView:e,parentCommandName:n,styleDefinitions:i,styleGridAriaLabel:o}){const r=t.locale,s=t.config.get("list.properties");let a;"numberedList"!=n&&(s.startIndex=!1,s.reversed=!1);if(s.styles){const e=t.commands.get("listStyle"),o=function({editor:t,listStyleCommand:e,parentCommandName:n}){const i=t.locale,o=t.commands.get(n);return({label:n,type:r,icon:s,tooltip:a})=>{const c=new Nu(i);return c.set({label:n,icon:s,tooltip:a}),e.on("change:value",(()=>{c.isOn=e.value===r})),c.on("execute",(()=>{o.value?e.value!==r?t.execute("listStyle",{type:r}):t.execute("listStyle",{type:e._defaultType}):t.model.change((()=>{t.execute("listStyle",{type:r})}))})),c}}({editor:t,parentCommandName:n,listStyleCommand:e}),r="function"==typeof e.isStyleTypeSupported?t=>e.isStyleTypeSupported(t.type):()=>!0;a=i.filter(r).map(o)}const c=new hS(r,{styleGridAriaLabel:o,enabledProperties:s,styleButtonViews:a});s.styles&&yh(e,(()=>c.stylesView.children.find((t=>t.isOn))));if(s.startIndex){const e=t.commands.get("listStart");c.startIndexFieldView.bind("isEnabled").to(e),c.startIndexFieldView.fieldView.bind("value").to(e),c.on("listStart",((e,n)=>t.execute("listStart",n)))}if(s.reversed){const e=t.commands.get("listReversed");c.reversedSwitchButtonView.bind("isEnabled").to(e),c.reversedSwitchButtonView.bind("isOn").to(e,"value"),c.on("listReversed",(()=>{const n=e.value;t.execute("listReversed",{reversed:!n})}))}return c.delegate("execute").to(e),c}({editor:t,dropdownView:c,parentCommandName:e,styleGridAriaLabel:o,styleDefinitions:r});return c.panelView.children.add(d),c.on("execute",(()=>{t.editing.view.focus()})),c}}class bS extends i{constructor(t,e){super(t),this.type=e}refresh(){this.value=this._getValue(),this.isEnabled=this._checkEnabled()}execute(t={}){const e=this.editor.model,n=e.document,i=Array.from(n.selection.getSelectedBlocks()).filter((t=>xS(t,e.schema))),o=void 0!==t.forceValue?!t.forceValue:this.value;e.change((t=>{if(o){let e=i[i.length-1].nextSibling,n=Number.POSITIVE_INFINITY,o=[];for(;e&&"listItem"==e.name&&0!==e.getAttribute("listIndent");){const t=e.getAttribute("listIndent");t=n;)r>o.getAttribute("listIndent")&&(r=o.getAttribute("listIndent")),o.getAttribute("listIndent")==r&&t[e?"unshift":"push"](o),o=o[e?"previousSibling":"nextSibling"]}}function xS(t,e){return e.checkChild(t.parent,"listItem")&&!e.isObject(t)}class wS extends i{constructor(t,e){super(t),this._indentBy="forward"==e?1:-1}refresh(){this.isEnabled=this._checkEnabled()}execute(){const t=this.editor.model,e=t.document;let n=Array.from(e.selection.getSelectedBlocks());t.change((t=>{const e=n[n.length-1];let i=e.nextSibling;for(;i&&"listItem"==i.name&&i.getAttribute("listIndent")>e.getAttribute("listIndent");)n.push(i),i=i.nextSibling;this._indentBy<0&&(n=n.reverse());for(const e of n){const n=e.getAttribute("listIndent")+this._indentBy;n<0?t.rename(e,"paragraph"):t.setAttribute("listIndent",n,e)}this.fire("_executeCleanup",n)}))}_checkEnabled(){const t=(0,_u.first)(this.editor.model.document.selection.getSelectedBlocks());if(!t||!t.is("element","listItem"))return!1;if(this._indentBy>0){const e=t.getAttribute("listIndent"),n=t.getAttribute("listType");let i=t.previousSibling;for(;i&&i.is("element","listItem")&&i.getAttribute("listIndent")>=e;){if(i.getAttribute("listIndent")==e)return i.getAttribute("listType")==n;i=i.previousSibling}return!1}return!0}}function _S(t){return(e,n,i)=>{const o=i.consumable;if(!o.test(n.item,"insert")||!o.test(n.item,"attribute:listType")||!o.test(n.item,"attribute:listIndent"))return;o.consume(n.item,"insert"),o.consume(n.item,"attribute:listType"),o.consume(n.item,"attribute:listIndent");const r=n.item;UD(r,HD(r,i),i,t)}}function AS(t,e,n){if(!n.consumable.test(e.item,t.name))return;const i=n.mapper.toViewElement(e.item),o=n.writer;o.breakContainer(o.createPositionBefore(i)),o.breakContainer(o.createPositionAfter(i));const r=i.parent,s="numbered"==e.attributeNewValue?"ol":"ul";o.rename(s,r)}function vS(t,e,n){n.consumable.consume(e.item,t.name);const i=n.mapper.toViewElement(e.item).parent,o=n.writer;qD(o,i,i.nextSibling),qD(o,i.previousSibling,i)}function CS(t,e,n){if(n.consumable.test(e.item,t.name)&&"listItem"!=e.item.name){let t=n.mapper.toViewPosition(e.range.start);const i=n.writer,o=[];for(;("ul"==t.parent.name||"ol"==t.parent.name)&&(t=i.breakContainer(t),"li"==t.parent.name);){const e=t,n=i.createPositionAt(t.parent,"end");if(!e.isEqual(n)){const t=i.remove(i.createRange(e,n));o.push(t)}t=i.createPositionAfter(t.parent)}if(o.length>0){for(let e=0;e0){const e=qD(i,n,n.nextSibling);e&&e.parent==n&&t.offset--}}qD(i,t.nodeBefore,t.nodeAfter)}}}function yS(t,e,n){const i=n.mapper.toViewPosition(e.position),o=i.nodeBefore,r=i.nodeAfter;qD(n.writer,o,r)}function ES(t,e,n){if(n.consumable.consume(e.viewItem,{name:!0})){const t=n.writer,i=t.createElement("listItem"),o=function(t){let e=0,n=t.parent;for(;n;){if(n.is("element","li"))e++;else{const t=n.previousSibling;t&&t.is("element","li")&&e++}n=n.parent}return e}(e.viewItem);t.setAttribute("listIndent",o,i);const r=e.viewItem.parent&&"ol"==e.viewItem.parent.name?"numbered":"bulleted";if(t.setAttribute("listType",r,i),!n.safeInsert(i,e.modelCursor))return;const s=function(t,e,n){const{writer:i,schema:o}=n;let r=i.createPositionAfter(t);for(const s of e)if("ul"==s.name||"ol"==s.name)r=n.convertItem(s,r).modelCursor;else{const e=n.convertItem(s,i.createPositionAt(t,"end")),a=e.modelRange.start.nodeAfter;a&&a.is("element")&&!o.checkChild(t,a.name)&&(t=e.modelCursor.parent.is("element","listItem")?e.modelCursor.parent:BS(e.modelCursor),r=i.createPositionAfter(t))}return r}(i,e.viewItem.getChildren(),n);e.modelRange=t.createRange(e.modelCursor,s),n.updateConversionResult(i,e)}}function TS(t,e,n){if(n.consumable.test(e.viewItem,{name:!0})){const t=Array.from(e.viewItem.getChildren());for(const e of t){!(e.is("element","li")||NS(e))&&e._remove()}}}function DS(t,e,n){if(n.consumable.test(e.viewItem,{name:!0})){if(0===e.viewItem.childCount)return;const t=[...e.viewItem.getChildren()];let n=!1;for(const e of t)n&&!NS(e)&&e._remove(),NS(e)&&(n=!0)}}function SS(t){return(e,n)=>{if(n.isPhantom)return;const i=n.modelPosition.nodeBefore;if(i&&i.is("element","listItem")){const e=n.mapper.toViewElement(i),o=e.getAncestors().find(NS),r=t.createPositionAt(e,0).getWalker();for(const t of r){if("elementStart"==t.type&&t.item.is("element","li")){n.viewPosition=t.previousPosition;break}if("elementEnd"==t.type&&t.item==o){n.viewPosition=t.nextPosition;break}}}}}function IS(t,[e,n,i]){let o,r=e.is("documentFragment")?e.getChild(0):e;if(o=n?this.createSelection(n,i):this.document.selection,r&&r.is("element","listItem")){const t=o.getFirstPosition();let e=null;if(t.parent.is("element","listItem")?e=t.parent:t.nodeBefore&&t.nodeBefore.is("element","listItem")&&(e=t.nodeBefore),e){const t=e.getAttribute("listIndent");if(t>0)for(;r&&r.is("element","listItem");)r._setAttribute("listIndent",r.getAttribute("listIndent")+t),r=r.nextSibling}}}function BS(t){const e=new xs({startPosition:t});let n;do{n=e.next()}while(!n.value.item.is("element","listItem"));return n.value.item}function MS(t,e,n,i,o,r){const s=ZD(e.nodeBefore,{sameIndent:!0,smallerIndent:!0,listIndent:t,foo:"b"}),a=o.mapper,c=o.writer,l=s?s.getAttribute("listIndent"):null;let d;if(s)if(l==t){const t=a.toViewElement(s).parent;d=c.createPositionAfter(t)}else{const t=r.createPositionAt(s,"end");d=a.toViewPosition(t)}else d=n;d=WD(d);for(const t of[...i.getChildren()])NS(t)&&(d=c.move(c.createRangeOn(t),d).end,qD(c,t,t.nextSibling),qD(c,t.previousSibling,t))}function NS(t){return t.is("element","ol")||t.is("element","ul")}class OS extends e{static get pluginName(){return"ListEditing"}static get requires(){return[Tp,dg]}init(){const t=this.editor;t.model.schema.register("listItem",{inheritAllFrom:"$block",allowAttributes:["listType","listIndent"]});const e=t.data,n=t.editing;var i;t.model.document.registerPostFixer((e=>function(t,e){const n=t.document.differ.getChanges(),i=new Map;let o=!1;for(const i of n)if("insert"==i.type&&"listItem"==i.name)r(i.position);else if("insert"==i.type&&"listItem"!=i.name){if("$text"!=i.name){const n=i.position.nodeAfter;n.hasAttribute("listIndent")&&(e.removeAttribute("listIndent",n),o=!0),n.hasAttribute("listType")&&(e.removeAttribute("listType",n),o=!0),n.hasAttribute("listStyle")&&(e.removeAttribute("listStyle",n),o=!0),n.hasAttribute("listReversed")&&(e.removeAttribute("listReversed",n),o=!0),n.hasAttribute("listStart")&&(e.removeAttribute("listStart",n),o=!0);for(const e of Array.from(t.createRangeIn(n)).filter((t=>t.item.is("element","listItem"))))r(e.previousPosition)}r(i.position.getShiftedBy(i.length))}else"remove"==i.type&&"listItem"==i.name?r(i.position):("attribute"==i.type&&"listIndent"==i.attributeKey||"attribute"==i.type&&"listType"==i.attributeKey)&&r(i.range.start);for(const t of i.values())s(t),a(t);return o;function r(t){const e=t.nodeBefore;if(e&&e.is("element","listItem")){let t=e;if(i.has(t))return;for(let e=t.previousSibling;e&&e.is("element","listItem");e=t.previousSibling)if(t=e,i.has(t))return;i.set(e,t)}else{const e=t.nodeAfter;e&&e.is("element","listItem")&&i.set(e,e)}}function s(t){let n=0,i=null;for(;t&&t.is("element","listItem");){const r=t.getAttribute("listIndent");if(r>n){let s;null===i?(i=r-n,s=n):(i>r&&(i=r),s=r-i),e.setAttribute("listIndent",s,t),o=!0}else i=null,n=t.getAttribute("listIndent")+1;t=t.nextSibling}}function a(t){let n=[],i=null;for(;t&&t.is("element","listItem");){const r=t.getAttribute("listIndent");if(i&&i.getAttribute("listIndent")>r&&(n=n.slice(0,r+1)),0!=r)if(n[r]){const i=n[r];t.getAttribute("listType")!=i&&(e.setAttribute("listType",i,t),o=!0)}else n[r]=t.getAttribute("listType");i=t,t=t.nextSibling}}}(t.model,e))),n.mapper.registerViewToModelLength("li",PS),e.mapper.registerViewToModelLength("li",PS),n.mapper.on("modelToViewPosition",SS(n.view)),n.mapper.on("viewToModelPosition",(i=t.model,(t,e)=>{const n=e.viewPosition,o=n.parent,r=e.mapper;if("ul"==o.name||"ol"==o.name){if(n.isAtEnd){const t=r.toModelElement(n.nodeBefore),o=r.getModelLength(n.nodeBefore);e.modelPosition=i.createPositionBefore(t).getShiftedBy(o)}else{const t=r.toModelElement(n.nodeAfter);e.modelPosition=i.createPositionBefore(t)}t.stop()}else if("li"==o.name&&n.nodeBefore&&("ul"==n.nodeBefore.name||"ol"==n.nodeBefore.name)){const s=r.toModelElement(o);let a=1,c=n.nodeBefore;for(;c&&NS(c);)a+=r.getModelLength(c),c=c.previousSibling;e.modelPosition=i.createPositionBefore(s).getShiftedBy(a),t.stop()}})),e.mapper.on("modelToViewPosition",SS(n.view)),t.conversion.for("editingDowncast").add((e=>{e.on("insert",CS,{priority:"high"}),e.on("insert:listItem",_S(t.model)),e.on("attribute:listType:listItem",AS,{priority:"high"}),e.on("attribute:listType:listItem",vS,{priority:"low"}),e.on("attribute:listIndent:listItem",function(t){return(e,n,i)=>{if(!i.consumable.consume(n.item,"attribute:listIndent"))return;const o=i.mapper.toViewElement(n.item),r=i.writer;r.breakContainer(r.createPositionBefore(o)),r.breakContainer(r.createPositionAfter(o));const s=o.parent,a=s.previousSibling,c=r.createRangeOn(s);r.remove(c),a&&a.nextSibling&&qD(r,a,a.nextSibling),MS(n.attributeOldValue+1,n.range.start,c.start,o,i,t),UD(n.item,o,i,t);for(const t of n.item.getChildren())i.consumable.consume(t,"insert")}}(t.model)),e.on("remove:listItem",function(t){return(e,n,i)=>{const o=i.mapper.toViewPosition(n.position).getLastMatchingPosition((t=>!t.item.is("element","li"))).nodeAfter,r=i.writer;r.breakContainer(r.createPositionBefore(o)),r.breakContainer(r.createPositionAfter(o));const s=o.parent,a=s.previousSibling,c=r.createRangeOn(s),l=r.remove(c);a&&a.nextSibling&&qD(r,a,a.nextSibling),MS(i.mapper.toModelElement(o).getAttribute("listIndent")+1,n.position,c.start,o,i,t);for(const t of r.createRangeIn(l).getItems())i.mapper.unbindViewElement(t);e.stop()}}(t.model)),e.on("remove",yS,{priority:"low"})})),t.conversion.for("dataDowncast").add((e=>{e.on("insert",CS,{priority:"high"}),e.on("insert:listItem",_S(t.model))})),t.conversion.for("upcast").add((t=>{t.on("element:ul",TS,{priority:"high"}),t.on("element:ol",TS,{priority:"high"}),t.on("element:li",DS,{priority:"high"}),t.on("element:li",ES)})),t.model.on("insertContent",IS,{priority:"high"}),t.commands.add("numberedList",new bS(t,"numbered")),t.commands.add("bulletedList",new bS(t,"bulleted")),t.commands.add("indentList",new wS(t,"forward")),t.commands.add("outdentList",new wS(t,"backward"));const o=n.view.document;this.listenTo(o,"enter",((t,e)=>{const n=this.editor.model.document,i=n.selection.getLastPosition().parent;n.selection.isCollapsed&&"listItem"==i.name&&i.isEmpty&&(this.editor.execute("outdentList"),e.preventDefault(),t.stop())}),{context:"li"}),this.listenTo(o,"delete",((t,e)=>{if("backward"!==e.direction)return;const n=this.editor.model.document.selection;if(!n.isCollapsed)return;const i=n.getFirstPosition();if(!i.isAtStart)return;const o=i.parent;if("listItem"!==o.name)return;o.previousSibling&&"listItem"===o.previousSibling.name||(this.editor.execute("outdentList"),e.preventDefault(),t.stop())}),{context:"li"}),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"})}afterInit(){const t=this.editor.commands,e=t.get("indent"),n=t.get("outdent");e&&e.registerChildCommand(t.get("indentList")),n&&n.registerChildCommand(t.get("outdentList"))}}function PS(t){let e=1;for(const n of t.getChildren())if("ul"==n.name||"ol"==n.name)for(const t of n.getChildren())e+=PS(t);return e}class RS extends e{static get requires(){return[OS,nS]}static get pluginName(){return"List"}}class LS extends i{constructor(t,e){super(t),this._defaultType=e}refresh(){this.value=this._getValue(),this.isEnabled=this._checkEnabled()}execute(t={}){this._tryToConvertItemsToList(t);const e=this.editor.model,n=YD(e);n.length&&e.change((e=>{for(const i of n)e.setAttribute("listStyle",t.type||this._defaultType,i)}))}_getValue(){const t=this.editor.model.document.selection.getFirstPosition().parent;return t&&t.is("element","listItem")?t.getAttribute("listStyle"):null}_checkEnabled(){const t=this.editor,e=t.commands.get("numberedList"),n=t.commands.get("bulletedList");return e.isEnabled||n.isEnabled}_tryToConvertItemsToList(t){if(!t.type)return;const e=(n=t.type,JD.includes(n)?"bulleted":QD.includes(n)?"numbered":null);var n;if(!e)return;const i=this.editor,o=e+"List";i.commands.get(o).value||i.execute(o)}}class zS extends i{refresh(){const t=this._getValue();this.value=t,this.isEnabled=null!=t}execute(t={}){const e=this.editor.model,n=YD(e).filter((t=>"numbered"==t.getAttribute("listType")));e.change((e=>{for(const i of n)e.setAttribute("listReversed",!!t.reversed,i)}))}_getValue(){const t=this.editor.model.document.selection.getFirstPosition().parent;return t&&t.is("element","listItem")&&"numbered"==t.getAttribute("listType")?t.getAttribute("listReversed"):null}}class jS extends i{refresh(){const t=this._getValue();this.value=t,this.isEnabled=null!=t}execute(t={}){const e=this.editor.model,n=YD(e).filter((t=>"numbered"==t.getAttribute("listType")));e.change((e=>{for(const i of n)e.setAttribute("listStart",t.startIndex||1,i)}))}_getValue(){const t=this.editor.model.document.selection.getFirstPosition().parent;return t&&t.is("element","listItem")&&"numbered"==t.getAttribute("listType")?t.getAttribute("listStart"):null}}const FS="default";class VS extends e{static get requires(){return[OS]}static get pluginName(){return"ListPropertiesEditing"}constructor(t){super(t),t.config.define("list",{properties:{styles:!0,startIndex:!1,reversed:!1}})}init(){const t=this.editor,e=t.model,n=function(t){const e=[];t.styles&&e.push({attributeName:"listStyle",defaultValue:FS,addCommand(t){t.commands.add("listStyle",new LS(t,FS))},appliesToListItem:()=>!0,setAttributeOnDowncast(t,e,n){e&&e!==FS?t.setStyle("list-style-type",e,n):t.removeStyle("list-style-type",n)},getAttributeOnUpcast:t=>t.getStyle("list-style-type")||FS});t.reversed&&e.push({attributeName:"listReversed",defaultValue:!1,addCommand(t){t.commands.add("listReversed",new zS(t))},appliesToListItem:t=>"numbered"==t.getAttribute("listType"),setAttributeOnDowncast(t,e,n){e?t.setAttribute("reversed","reversed",n):t.removeAttribute("reversed",n)},getAttributeOnUpcast:t=>t.hasAttribute("reversed")});t.startIndex&&e.push({attributeName:"listStart",defaultValue:1,addCommand(t){t.commands.add("listStart",new jS(t))},appliesToListItem:t=>"numbered"==t.getAttribute("listType"),setAttributeOnDowncast(t,e,n){1!=e?t.setAttribute("start",e,n):t.removeAttribute("start",n)},getAttributeOnUpcast:t=>t.getAttribute("start")||1});return e}(t.config.get("list.properties"));e.schema.extend("listItem",{allowAttributes:n.map((t=>t.attributeName))});for(const e of n)e.addCommand(t);var i;this.listenTo(t.commands.get("indentList"),"_executeCleanup",function(t,e){return(n,i)=>{const o=i[0],r=o.getAttribute("listIndent"),s=i.filter((t=>t.getAttribute("listIndent")===r));let a=null;o.previousSibling.getAttribute("listIndent")+1!==r&&(a=ZD(o.previousSibling,{sameIndent:!0,direction:"backward",listIndent:r})),t.model.change((t=>{for(const n of s)for(const i of e)if(i.appliesToListItem(n)){const e=null==a?i.defaultValue:a.getAttribute(i.attributeName);t.setAttribute(i.attributeName,e,n)}}))}}(t,n)),this.listenTo(t.commands.get("outdentList"),"_executeCleanup",function(t,e){return(n,i)=>{if(!(i=i.reverse().filter((t=>t.is("element","listItem")))).length)return;const o=i[0].getAttribute("listIndent"),r=i[0].getAttribute("listType");let s=i[0].previousSibling;if(s.is("element","listItem"))for(;s.getAttribute("listIndent")!==o;)s=s.previousSibling;else s=null;s||(s=i[i.length-1].nextSibling),s&&s.is("element","listItem")&&s.getAttribute("listType")===r&&t.model.change((t=>{const n=i.filter((t=>t.getAttribute("listIndent")===o));for(const i of n)for(const n of e)if(n.appliesToListItem(i)){const e=n.attributeName,o=s.getAttribute(e);t.setAttribute(e,o,i)}}))}}(t,n)),this.listenTo(t.commands.get("bulletedList"),"_executeCleanup",qS(t)),this.listenTo(t.commands.get("numberedList"),"_executeCleanup",qS(t)),e.document.registerPostFixer(function(t,e){return n=>{let i=!1;const o=WS(t.model.document.differ.getChanges()).filter((t=>"todo"!==t.getAttribute("listType")));if(!o.length)return i;let r=o[o.length-1].nextSibling;if((!r||!r.is("element","listItem"))&&(r=o[0].previousSibling,r)){const t=o[0].getAttribute("listIndent");for(;r.is("element","listItem")&&r.getAttribute("listIndent")!==t&&(r=r.previousSibling,r););}for(const t of e){const e=t.attributeName;for(const s of o)if(t.appliesToListItem(s))if(s.hasAttribute(e)){const o=s.previousSibling;US(o,s,t.attributeName)&&(n.setAttribute(e,o.getAttribute(e),s),i=!0)}else HS(r,s,t)?n.setAttribute(e,r.getAttribute(e),s):n.setAttribute(e,t.defaultValue,s),i=!0;else n.removeAttribute(e,s)}return i}}(t,n)),t.conversion.for("upcast").add((i=n,t=>{t.on("element:li",((t,e,n)=>{const o=e.viewItem.parent,r=e.modelRange.start.nodeAfter||e.modelRange.end.nodeBefore;for(const t of i)if(t.appliesToListItem(r)){const e=t.getAttributeOnUpcast(o);n.writer.setAttribute(t.attributeName,e,r)}}),{priority:"low"})})),t.conversion.for("downcast").add(function(t){return n=>{for(const i of t)n.on(`attribute:${i.attributeName}:listItem`,((t,n,o)=>{const r=o.writer,s=n.item,a=ZD(s.previousSibling,{sameIndent:!0,listIndent:s.getAttribute("listIndent"),direction:"backward"}),c=o.mapper.toViewElement(s);e(s,a)||r.breakContainer(r.createPositionBefore(c)),i.setAttributeOnDowncast(r,n.attributeNewValue,c.parent)}),{priority:"low"})};function e(t,e){return e&&t.getAttribute("listType")===e.getAttribute("listType")&&t.getAttribute("listIndent")===e.getAttribute("listIndent")&&t.getAttribute("listStyle")===e.getAttribute("listStyle")&&t.getAttribute("listReversed")===e.getAttribute("listReversed")&&t.getAttribute("listStart")===e.getAttribute("listStart")}}(n)),this._mergeListAttributesWhileMergingLists(n)}afterInit(){const t=this.editor;t.commands.get("todoList")&&t.model.document.registerPostFixer(function(t){return e=>{const n=WS(t.model.document.differ.getChanges()).filter((t=>"todo"===t.getAttribute("listType")&&(t.hasAttribute("listStyle")||t.hasAttribute("listReversed")||t.hasAttribute("listStart"))));if(!n.length)return!1;for(const t of n)e.removeAttribute("listStyle",t),e.removeAttribute("listReversed",t),e.removeAttribute("listStart",t);return!0}}(t))}_mergeListAttributesWhileMergingLists(t){const e=this.editor.model;let n;this.listenTo(e,"deleteContent",((t,[e])=>{const i=e.getFirstPosition(),o=e.getLastPosition();if(i.parent===o.parent)return;if(!i.parent.is("element","listItem"))return;const r=o.parent.nextSibling;if(!r||!r.is("element","listItem"))return;const s=ZD(i.parent,{sameIndent:!0,listIndent:r.getAttribute("listIndent")});s&&s.getAttribute("listType")===r.getAttribute("listType")&&(n=s)}),{priority:"high"}),this.listenTo(e,"deleteContent",(()=>{n&&(e.change((e=>{const i=ZD(n.nextSibling,{sameIndent:!0,listIndent:n.getAttribute("listIndent"),direction:"forward"});if(!i)return void(n=null);const o=[i,...$D(e.createPositionAt(i,0),"forward")];for(const i of o)for(const o of t)if(o.appliesToListItem(i)){const t=o.attributeName,r=n.getAttribute(t);e.setAttribute(t,r,i)}})),n=null)}),{priority:"low"})}}function HS(t,e,n){if(!t)return!1;const i=t.getAttribute(n.attributeName);return!!i&&(i!=n.defaultValue&&t.getAttribute("listType")===e.getAttribute("listType"))}function US(t,e,n){if(!t||!t.is("element","listItem"))return!1;if(e.getAttribute("listType")!==t.getAttribute("listType"))return!1;const i=t.getAttribute("listIndent");if(i<1||i!==e.getAttribute("listIndent"))return!1;const o=t.getAttribute(n);return!(!o||o===e.getAttribute(n))}function qS(t){return(e,n)=>{n=n.filter((t=>t.is("element","listItem"))),t.model.change((t=>{for(const e of n)t.removeAttribute("listStyle",e)}))}}function WS(t){const e=[];for(const n of t){const t=ZS(n);t&&t.is("element","listItem")&&e.push(t)}return e}function ZS(t){return"attribute"===t.type?t.range.start.nodeAfter:"insert"===t.type?t.position.nodeAfter:null}class GS extends e{static get requires(){return[VS,pS]}static get pluginName(){return"ListProperties"}}const KS="todoListChecked";class $S extends i{constructor(t){super(t),this._selectedElements=[],this.on("execute",(()=>{this.refresh()}),{priority:"highest"})}refresh(){this._selectedElements=this._getSelectedItems(),this.value=this._selectedElements.every((t=>!!t.getAttribute("todoListChecked"))),this.isEnabled=!!this._selectedElements.length}_getSelectedItems(){const t=this.editor.model,e=t.schema,n=t.document.selection.getFirstRange(),i=n.start.parent,o=[];e.checkAttribute(i,KS)&&o.push(i);for(const t of n.getItems())e.checkAttribute(t,KS)&&!o.includes(t)&&o.push(t);return o}execute(t={}){this.editor.model.change((e=>{for(const n of this._selectedElements){(void 0===t.forceValue?!this.value:t.forceValue)?e.setAttribute(KS,!0,n):e.removeAttribute(KS,n)}}))}}function YS(t,e,n){const i=e.modelCursor,o=i.parent,r=e.viewItem;if("checkbox"!=r.getAttribute("type")||"listItem"!=o.name||!i.isAtStart)return;if(!n.consumable.consume(r,{name:!0}))return;const s=n.writer;s.setAttribute("listType","todo",o),e.viewItem.hasAttribute("checked")&&s.setAttribute("todoListChecked",!0,o),e.modelRange=s.createRange(i)}function JS(t){return(e,n)=>{const i=n.modelPosition,o=i.parent;if(!o.is("element","listItem")||"todo"!=o.getAttribute("listType"))return;const r=XS(n.mapper.toViewElement(o),t);r&&(n.viewPosition=n.mapper.findPositionIn(r,i.offset))}}function QS(t,e,n,i){return e.createUIElement("label",{class:"todo-list__label",contenteditable:!1},(function(e){const o=(0,_u.createElement)(document,"input",{type:"checkbox",tabindex:-1});n&&o.setAttribute("checked","checked"),o.addEventListener("change",(()=>i(t)));const r=this.toDomElement(e);return r.appendChild(o),r}))}function XS(t,e){const n=e.createRangeIn(t);for(const t of n)if(t.item.is("containerElement","span")&&t.item.hasClass("todo-list__label__description"))return t.item}const tI=(0,_u.parseKeystroke)("Ctrl+Enter");class eI extends e{static get pluginName(){return"TodoListEditing"}static get requires(){return[OS]}init(){const t=this.editor,{editing:e,data:n,model:i}=t;i.schema.extend("listItem",{allowAttributes:["todoListChecked"]}),i.schema.addAttributeCheck(((t,e)=>{const n=t.last;if("todoListChecked"==e&&"listItem"==n.name&&"todo"!=n.getAttribute("listType"))return!1})),t.commands.add("todoList",new bS(t,"todo"));const o=new $S(t);var r,s;t.commands.add("checkTodoList",o),t.commands.add("todoListCheck",o),n.downcastDispatcher.on("insert:listItem",function(t){return(e,n,i)=>{const o=i.consumable;if(!o.test(n.item,"insert")||!o.test(n.item,"attribute:listType")||!o.test(n.item,"attribute:listIndent"))return;if("todo"!=n.item.getAttribute("listType"))return;const r=n.item;o.consume(r,"insert"),o.consume(r,"attribute:listType"),o.consume(r,"attribute:listIndent"),o.consume(r,"attribute:todoListChecked");const s=i.writer,a=HD(r,i);s.addClass("todo-list",a.parent);const c=s.createContainerElement("label",{class:"todo-list__label"}),l=s.createEmptyElement("input",{type:"checkbox",disabled:"disabled"}),d=s.createContainerElement("span",{class:"todo-list__label__description"});r.getAttribute("todoListChecked")&&s.setAttribute("checked","checked",l),s.insert(s.createPositionAt(a,0),c),s.insert(s.createPositionAt(c,0),l),s.insert(s.createPositionAfter(l),d),UD(r,a,i,t)}}(i),{priority:"high"}),n.upcastDispatcher.on("element:input",YS,{priority:"high"}),e.downcastDispatcher.on("insert:listItem",function(t,e){return(n,i,o)=>{const r=o.consumable;if(!r.test(i.item,"insert")||!r.test(i.item,"attribute:listType")||!r.test(i.item,"attribute:listIndent"))return;if("todo"!=i.item.getAttribute("listType"))return;const s=i.item;r.consume(s,"insert"),r.consume(s,"attribute:listType"),r.consume(s,"attribute:listIndent"),r.consume(s,"attribute:todoListChecked");const a=o.writer,c=HD(s,o),l=!!s.getAttribute("todoListChecked"),d=QS(s,a,l,e),u=a.createContainerElement("span",{class:"todo-list__label__description"});a.addClass("todo-list",c.parent),a.insert(a.createPositionAt(c,0),d),a.insert(a.createPositionAfter(d),u),UD(s,c,o,t)}}(i,(t=>this._handleCheckmarkChange(t))),{priority:"high"}),e.downcastDispatcher.on("attribute:listType:listItem",(r=t=>this._handleCheckmarkChange(t),s=e.view,(t,e,n)=>{if(!n.consumable.consume(e.item,t.name))return;const i=n.mapper.toViewElement(e.item),o=n.writer,a=function(t,e){const n=e.createRangeIn(t);for(const t of n)if(t.item.is("uiElement","label"))return t.item}(i,s);if("todo"==e.attributeNewValue){const t=!!e.item.getAttribute("todoListChecked"),n=QS(e.item,o,t,r),s=o.createContainerElement("span",{class:"todo-list__label__description"}),a=o.createRangeIn(i),c=KD(i),l=WD(a.start),d=c?o.createPositionBefore(c):a.end,u=o.createRange(l,d);o.addClass("todo-list",i.parent),o.move(u,o.createPositionAt(s,0)),o.insert(o.createPositionAt(i,0),n),o.insert(o.createPositionAfter(n),s)}else if("todo"==e.attributeOldValue){const t=XS(i,s);o.removeClass("todo-list",i.parent),o.remove(a),o.move(o.createRangeIn(t),o.createPositionBefore(t)),o.remove(t)}})),e.downcastDispatcher.on("attribute:todoListChecked:listItem",function(t){return(e,n,i)=>{if("todo"!=n.item.getAttribute("listType"))return;if(!i.consumable.consume(n.item,"attribute:todoListChecked"))return;const{mapper:o,writer:r}=i,s=!!n.item.getAttribute("todoListChecked"),a=o.toViewElement(n.item).getChild(0),c=QS(n.item,r,s,t);r.insert(r.createPositionAfter(a),c),r.remove(a)}}((t=>this._handleCheckmarkChange(t)))),e.mapper.on("modelToViewPosition",JS(e.view)),n.mapper.on("modelToViewPosition",JS(e.view)),this.listenTo(e.view.document,"arrowKey",function(t,e){return(n,i)=>{if("left"!=(0,_u.getLocalizedArrowKeyCodeDirection)(i.keyCode,e.contentLanguageDirection))return;const o=t.schema,r=t.document.selection;if(!r.isCollapsed)return;const s=r.getFirstPosition(),a=s.parent;if("listItem"===a.name&&"todo"==a.getAttribute("listType")&&s.isAtStart){const e=o.getNearestSelectionRange(t.createPositionBefore(a),"backward");e&&t.change((t=>t.setSelection(e))),i.preventDefault(),i.stopPropagation(),n.stop()}}}(i,t.locale),{context:"li"}),this.listenTo(e.view.document,"keydown",((e,n)=>{(0,_u.getCode)(n)===tI&&(t.execute("checkTodoList"),e.stop())}),{priority:"high"});const a=new Set;this.listenTo(i,"applyOperation",((t,e)=>{const n=e[0];if("rename"==n.type&&"listItem"==n.oldName){const t=n.position.nodeAfter;t.hasAttribute("todoListChecked")&&a.add(t)}else if("changeAttribute"==n.type&&"listType"==n.key&&"todo"===n.oldValue)for(const t of n.range.getItems())t.hasAttribute("todoListChecked")&&"todo"!==t.getAttribute("listType")&&a.add(t)})),i.document.registerPostFixer((t=>{let e=!1;for(const n of a)t.removeAttribute("todoListChecked",n),e=!0;return a.clear(),e}))}_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)}))}}class nI extends e{static get pluginName(){return"TodoListUI"}init(){const t=this.editor.t;GD(this.editor,"todoList",t("To-do List"),'')}}var iI=__webpack_require__(1588),oI={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(iI.Z,oI);iI.Z.locals;class rI extends e{static get requires(){return[eI,nI]}static get pluginName(){return"TodoList"}}function sI(t,e){return t=>{t.on("attribute:url:media",n)};function n(n,i,o){if(!o.consumable.consume(i.item,n.name))return;const r=i.attributeNewValue,s=o.writer,a=o.mapper.toViewElement(i.item),c=[...a.getChildren()].find((t=>t.getCustomProperty("media-content")));s.remove(c);const l=t.getMediaViewElement(s,r,e);s.insert(s.createPositionAt(a,0),l)}}function aI(t,e,n,i){return t.createContainerElement("figure",{class:"media"},[e.getMediaViewElement(t,n,i),t.createSlot()])}function cI(t){const e=t.getSelectedElement();return e&&e.is("element","media")?e:null}function lI(t,e,n,i){t.change((o=>{const r=o.createElement("media",{url:e});t.insertObject(r,n,null,{setSelection:"on",findOptimalPosition:i})}))}class dI extends i{refresh(){const t=this.editor.model,e=t.document.selection,n=cI(e);this.value=n?n.getAttribute("url"):null,this.isEnabled=function(t){const e=t.getSelectedElement();return!!e&&"media"===e.name}(e)||function(t,e){let n=cw(t,e).start.parent;n.isEmpty&&!e.schema.isLimit(n)&&(n=n.parent);return e.schema.checkChild(n,"media")}(e,t)}execute(t){const e=this.editor.model,n=e.document.selection,i=cI(n);i?e.change((e=>{e.setAttribute("url",t,i)})):lI(e,t,n,!0)}}class uI{constructor(t,e){const n=e.providers,i=e.extraProviders||[],o=new Set(e.removeProviders),r=n.concat(i).filter((t=>{const e=t.name;return e?!o.has(e):((0,_u.logWarning)("media-embed-no-provider-name",{provider:t}),!1)}));this.locale=t,this.providerDefinitions=r}hasMedia(t){return!!this._getMedia(t)}getMediaViewElement(t,e,n){return this._getMedia(e).getViewElement(t,n)}_getMedia(t){if(!t)return new hI(this.locale);t=t.trim();for(const e of this.providerDefinitions){const n=e.html,i=(0,_u.toArray)(e.url);for(const e of i){const i=this._getUrlMatches(t,e);if(i)return new hI(this.locale,t,i,n)}}return null}_getUrlMatches(t,e){let n=t.match(e);if(n)return n;let i=t.replace(/^https?:\/\//,"");return n=i.match(e),n||(i=i.replace(/^www\./,""),n=i.match(e),n||null)}}class hI{constructor(t,e,n,i){this.url=this._getValidUrl(e),this._locale=t,this._match=n,this._previewRenderer=i}getViewElement(t,e){const n={};let i;if(e.renderForEditingView||e.renderMediaPreview&&this.url&&this._previewRenderer){this.url&&(n["data-oembed-url"]=this.url),e.renderForEditingView&&(n.class="ck-media__wrapper");const o=this._getPreviewHtml(e);i=t.createRawElement("div",n,((t,e)=>{e.setContentOf(t,o)}))}else this.url&&(n.url=this.url),i=t.createEmptyElement(e.elementName,n);return t.setCustomProperty("media-content",!0,i),i}_getPreviewHtml(t){return this._previewRenderer?this._previewRenderer(this._match):this.url&&t.renderForEditingView?this._getPlaceholderHtml():""}_getPlaceholderHtml(){const t=new Iu,e=this._locale.t;t.content='',t.viewBox="0 0 64 42";return new xd({tag:"div",attributes:{class:"ck ck-reset_all ck-media__placeholder"},children:[{tag:"div",attributes:{class:"ck-media__placeholder__icon"},children:[t]},{tag:"a",attributes:{class:"ck-media__placeholder__url",target:"_blank",rel:"noopener noreferrer",href:this.url,"data-cke-tooltip-text":e("Open media in new tab")},children:[{tag:"span",attributes:{class:"ck-media__placeholder__url__text"},children:[this.url]}]}]}).render().outerHTML}_getValidUrl(t){return t?t.match(/^https?/)?t:"https://"+t:null}}var mI=__webpack_require__(952),gI={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(mI.Z,gI);mI.Z.locals;class pI extends e{static get pluginName(){return"MediaEmbedEditing"}constructor(t){super(t),t.config.define("mediaEmbed",{elementName:"oembed",providers:[{name:"dailymotion",url:/^dailymotion\.com\/video\/(\w+)/,html:t=>`
    `},{name:"spotify",url:[/^open\.spotify\.com\/(artist\/\w+)/,/^open\.spotify\.com\/(album\/\w+)/,/^open\.spotify\.com\/(track\/\w+)/],html:t=>`
    `},{name:"youtube",url:[/^(?:m\.)?youtube\.com\/watch\?v=([\w-]+)(?:&t=(\d+))?/,/^(?:m\.)?youtube\.com\/v\/([\w-]+)(?:\?t=(\d+))?/,/^youtube\.com\/embed\/([\w-]+)(?:\?start=(\d+))?/,/^youtu\.be\/([\w-]+)(?:\?t=(\d+))?/],html:t=>{const e=t[1],n=t[2];return`
    `}},{name:"vimeo",url:[/^vimeo\.com\/(\d+)/,/^vimeo\.com\/[^/]+\/[^/]+\/video\/(\d+)/,/^vimeo\.com\/album\/[^/]+\/video\/(\d+)/,/^vimeo\.com\/channels\/[^/]+\/(\d+)/,/^vimeo\.com\/groups\/[^/]+\/videos\/(\d+)/,/^vimeo\.com\/ondemand\/[^/]+\/(\d+)/,/^player\.vimeo\.com\/video\/(\d+)/],html:t=>`
    `},{name:"instagram",url:/^instagram\.com\/p\/(\w+)/},{name:"twitter",url:/^twitter\.com/},{name:"googleMaps",url:[/^google\.com\/maps/,/^goo\.gl\/maps/,/^maps\.google\.com/,/^maps\.app\.goo\.gl/]},{name:"flickr",url:/^flickr\.com/},{name:"facebook",url:/^facebook\.com/}]}),this.registry=new uI(t.locale,t.config.get("mediaEmbed"))}init(){const t=this.editor,e=t.model.schema,n=t.t,i=t.conversion,o=t.config.get("mediaEmbed.previewsInData"),r=t.config.get("mediaEmbed.elementName"),s=this.registry;t.commands.add("mediaEmbed",new dI(t)),e.register("media",{inheritAllFrom:"$blockObject",allowAttributes:["url"]}),i.for("dataDowncast").elementToStructure({model:"media",view:(t,{writer:e})=>{const n=t.getAttribute("url");return aI(e,s,n,{elementName:r,renderMediaPreview:n&&o})}}),i.for("dataDowncast").add(sI(s,{elementName:r,renderMediaPreview:o})),i.for("editingDowncast").elementToStructure({model:"media",view:(t,{writer:e})=>{const i=t.getAttribute("url");return function(t,e,n){return e.setCustomProperty("media",!0,t),nw(t,e,{label:n})}(aI(e,s,i,{elementName:r,renderForEditingView:!0}),e,n("media widget"))}}),i.for("editingDowncast").add(sI(s,{elementName:r,renderForEditingView:!0})),i.for("upcast").elementToElement({view:t=>["oembed",r].includes(t.name)&&t.getAttribute("url")?{name:!0}:null,model:(t,{writer:e})=>{const n=t.getAttribute("url");if(s.hasMedia(n))return e.createElement("media",{url:n})}}).elementToElement({view:{name:"div",attributes:{"data-oembed-url":!0}},model:(t,{writer:e})=>{const n=t.getAttribute("data-oembed-url");if(s.hasMedia(n))return e.createElement("media",{url:n})}}).add((t=>{t.on("element:figure",(function(t,e,n){if(!n.consumable.consume(e.viewItem,{name:!0,classes:"media"}))return;const{modelRange:i,modelCursor:o}=n.convertChildren(e.viewItem,e.modelCursor);e.modelRange=i,e.modelCursor=o;(0,_u.first)(i.getItems())||n.consumable.revert(e.viewItem,{name:!0,classes:"media"})}))}))}}const fI=/^(?:http(s)?:\/\/)?[\w-]+\.[\w-.~:/?#[\]@!$&'()*+,;=%]+$/;class bI extends e{static get requires(){return[Pw,dg,Jw]}static get pluginName(){return"AutoMediaEmbed"}constructor(t){super(t),this._timeoutId=null,this._positionToInsert=null}init(){const t=this.editor,e=t.model.document;this.listenTo(t.plugins.get("ClipboardPipeline"),"inputTransformation",(()=>{const t=e.selection.getFirstRange(),n=Fc.fromPosition(t.start);n.stickiness="toPrevious";const i=Fc.fromPosition(t.end);i.stickiness="toNext",e.once("change:data",(()=>{this._embedMediaBetweenPositions(n,i),n.detach(),i.detach()}),{priority:"high"})})),t.commands.get("undo").on("execute",(()=>{this._timeoutId&&(_u.global.window.clearTimeout(this._timeoutId),this._positionToInsert.detach(),this._timeoutId=null,this._positionToInsert=null)}),{priority:"high"})}_embedMediaBetweenPositions(t,e){const n=this.editor,i=n.plugins.get(pI).registry,o=new js(t,e),r=o.getWalker({ignoreElementEnd:!0});let s="";for(const t of r)t.item.is("$textProxy")&&(s+=t.item.data);if(s=s.trim(),!s.match(fI))return void o.detach();if(!i.hasMedia(s))return void o.detach();n.commands.get("mediaEmbed").isEnabled?(this._positionToInsert=Fc.fromPosition(t),this._timeoutId=_u.global.window.setTimeout((()=>{n.model.change((t=>{let e;this._timeoutId=null,t.remove(o),o.detach(),"$graveyard"!==this._positionToInsert.root.rootName&&(e=this._positionToInsert),lI(n.model,s,e,!1),this._positionToInsert.detach(),this._positionToInsert=null})),n.plugins.get("Delete").requestUndoOnBackspace()}),100)):o.detach()}}var kI=__webpack_require__(3525),xI={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(kI.Z,xI);kI.Z.locals;class wI extends Hd{constructor(t,e){super(e);const n=e.t;this.focusTracker=new _u.FocusTracker,this.keystrokes=new _u.KeystrokeHandler,this.set("mediaURLInputValue",""),this.urlInputView=this._createUrlInput(),this.saveButtonView=this._createButton(n("Save"),wu.check,"ck-button-save"),this.saveButtonView.type="submit",this.saveButtonView.bind("isEnabled").to(this,"mediaURLInputValue",(t=>!!t)),this.cancelButtonView=this._createButton(n("Cancel"),wu.cancel,"ck-button-cancel","cancel"),this._focusables=new kd,this._focusCycler=new Xu({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this._validators=t,this.setTemplate({tag:"form",attributes:{class:["ck","ck-media-form","ck-responsive-form"],tabindex:"-1"},children:[this.urlInputView,this.saveButtonView,this.cancelButtonView]}),vu(this)}render(){super.render(),Cu({view:this});[this.urlInputView,this.saveButtonView,this.cancelButtonView].forEach((t=>{this._focusables.add(t),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),this.listenTo(this.urlInputView.element,"selectstart",((t,e)=>{e.stopPropagation()}),{priority:"high"})}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}get url(){return this.urlInputView.fieldView.element.value.trim()}set url(t){this.urlInputView.fieldView.element.value=t.trim()}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,this.urlInputView.infoText=this._urlInputViewInfoDefault}_createUrlInput(){const t=this.locale.t,e=new Wh(this.locale,Zh),n=e.fieldView;return this._urlInputViewInfoDefault=t("Paste the media URL in the input."),this._urlInputViewInfoTip=t("Tip: Paste the URL into the content to embed faster."),e.label=t("Media URL"),e.infoText=this._urlInputViewInfoDefault,n.on("input",(()=>{e.infoText=n.element.value?this._urlInputViewInfoTip:this._urlInputViewInfoDefault,this.mediaURLInputValue=n.element.value.trim()})),e}_createButton(t,e,n,i){const o=new Nu(this.locale);return o.set({label:t,icon:e,tooltip:!0}),o.extendTemplate({attributes:{class:n}}),i&&o.delegate("execute").to(this,i),o}}class _I extends e{static get requires(){return[pI]}static get pluginName(){return"MediaEmbedUI"}init(){const t=this.editor,e=t.commands.get("mediaEmbed"),n=t.plugins.get(pI).registry;t.ui.componentFactory.add("mediaEmbed",(i=>{const o=Ah(i),r=new wI(function(t,e){return[e=>{if(!e.url.length)return t("The URL must not be empty.")},n=>{if(!e.hasMedia(n.url))return t("This media URL is not supported.")}]}(t.t,n),t.locale);return this._setUpDropdown(o,r,e,t),this._setUpForm(o,r,e),o}))}_setUpDropdown(t,e,n){const i=this.editor,o=i.t,r=t.buttonView;t.bind("isEnabled").to(n),t.panelView.children.add(e),r.set({label:o("Insert media"),icon:'',tooltip:!0}),r.on("open",(()=>{e.disableCssTransitions(),e.url=n.value||"",e.urlInputView.fieldView.select(),e.enableCssTransitions()}),{priority:"low"}),t.on("submit",(()=>{e.isValid()&&(i.execute("mediaEmbed",e.url),i.editing.view.focus())})),t.on("change:isOpen",(()=>e.resetFormStatus())),t.on("cancel",(()=>{i.editing.view.focus()}))}_setUpForm(t,e,n){e.delegate("submit","cancel").to(t),e.urlInputView.bind("value").to(n,"value"),e.urlInputView.bind("isReadOnly").to(n,"isEnabled",(t=>!t))}}var AI=__webpack_require__(5777),vI={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(AI.Z,vI);AI.Z.locals;class CI extends e{static get requires(){return[pI,_I,bI,Cw]}static get pluginName(){return"MediaEmbed"}}var yI=__webpack_require__(9289),EI={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(yI.Z,EI);yI.Z.locals;class TI extends Hd{constructor(t){super(t);const e=t.t;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._replaceInputView=this._createInputField(e("Replace with…")),this._findButtonView=this._createButton({label:e("Find"),class:"ck-button-find ck-button-action",withText:!0}),this._findPrevButtonView=this._createButton({label:e("Previous result"),class:"ck-button-prev",icon:Jh,keystroke:"Shift+F3",tooltip:!0}),this._findNextButtonView=this._createButton({label:e("Next result"),class:"ck-button-next",icon:Jh,keystroke:"F3",tooltip:!0}),this._optionsDropdown=this._createOptionsDropdown(),this._replaceButtonView=this._createButton({label:e("Replace"),class:"ck-button-replace",withText:!0}),this._replaceAllButtonView=this._createButton({label:e("Replace all"),class:"ck-button-replaceall",withText:!0}),this._findFieldsetView=this._createFindFieldset(),this._replaceFieldsetView=this._createReplaceFieldset(),this._focusTracker=new _u.FocusTracker,this._keystrokes=new _u.KeystrokeHandler,this._focusables=new kd,this._focusCycler=new Xu({focusables:this._focusables,focusTracker:this._focusTracker,keystrokeHandler:this._keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"form",attributes:{class:["ck","ck-find-and-replace-form"],tabindex:"-1"},children:[new Lh(t,{label:e("Find and replace")}),this._findFieldsetView,this._replaceFieldsetView]}),vu(this)}render(){super.render(),Cu({view:this}),this._initFocusCycling(),this._initKeystrokeHandling()}destroy(){super.destroy(),this._focusTracker.destroy(),this._keystrokes.destroy()}focus(){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}_createFindFieldset(){const t=this.locale,e=new Hd(t);return this._findInputView.fieldView.on("input",(()=>{this.isDirty=!0})),this._findButtonView.on("execute",this._onFindButtonExecute.bind(this)),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(),e.setTemplate({tag:"fieldset",attributes:{class:["ck","ck-find-and-replace-form__find"]},children:[this._findInputView,this._findButtonView,this._findPrevButtonView,this._findNextButtonView]}),e}_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 Hd(t);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||!(0,_u.isVisible)(e))return;const n=new _u.Rect(i.element).width,o="ltr"===t.uiLanguageDirection?"paddingRight":"paddingLeft";e.style[o]=n?`calc( 2 * var(--ck-spacing-standard) + ${n}px )`:null};this.on("change:_resultsCounterText",o,{priority:"low"}),this.on("change:isDirty",o,{priority:"low"}),this._findInputView.template.children[0].children.push(i)}_createReplaceFieldset(){const t=this.locale,e=t.t,n=new Hd(t);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._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."))),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()})),n.setTemplate({tag:"fieldset",attributes:{class:["ck","ck-find-and-replace-form__replace"]},children:[this._replaceInputView,this._optionsDropdown,this._replaceButtonView,this._replaceAllButtonView]}),n}_createOptionsDropdown(){const t=this.locale,e=t.t,n=Ah(t);n.class="ck-options-dropdown",n.buttonView.set({withText:!1,label:e("Show options"),icon:wu.cog,tooltip:!0});const i=new Yh({withText:!0,label:e("Match case"),_isMatchCaseSwitch:!0}),o=new Yh({withText:!0,label:e("Whole words only")});return i.bind("isOn").to(this,"_matchCase"),o.bind("isOn").to(this,"_wholeWordsOnly"),n.on("execute",(t=>{t.source._isMatchCaseSwitch?this._matchCase=!this._matchCase:this._wholeWordsOnly=!this._wholeWordsOnly,this.isDirty=!0})),Ch(n,new _u.Collection([{type:"switchbutton",model:i},{type:"switchbutton",model:o}])),n}_initFocusCycling(){[this._findInputView,this._findButtonView,this._findPrevButtonView,this._findNextButtonView,this._replaceInputView,this._optionsDropdown,this._replaceButtonView,this._replaceAllButtonView].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),this.listenTo(this._findInputView.element,"selectstart",((t,e)=>{e.stopPropagation()}),{priority:"high"}),this.listenTo(this._replaceInputView.element,"selectstart",((t,e)=>{e.stopPropagation()}),{priority:"high"})}_createButton(t){const e=new Nu(this.locale);return e.set(t),e}_createInputField(t){const e=new Wh(this.locale,Zh);return e.label=t,e}}class DI extends e{static get pluginName(){return"FindAndReplaceUI"}constructor(t){super(t),this.formView=null}init(){const t=this.editor;t.ui.componentFactory.add("findAndReplace",(e=>{const n=Ah(e),i=this.formView=new TI(t.locale);return n.bind("isEnabled").to(t.commands.get("find")),n.panelView.children.add(i),n.on("change:isOpen",((t,e,n)=>{n?(i.disableCssTransitions(),i.reset(),i._findInputView.fieldView.select(),i.enableCssTransitions()):this.fire("searchReseted")}),{priority:"low"}),this._setupDropdownButton(n),this._setupFormView(i),n}))}_setupDropdownButton(t){const e=this.editor,n=e.locale.t;t.buttonView.set({icon:'',label:n("Find and replace"),keystroke:"CTRL+F",tooltip:!0}),e.keystrokes.set("Ctrl+F",((e,n)=>{t.isOpen=!0,n()}))}_setupFormView(t){const e=this.editor.commands,n=this.editor.plugins.get("FindAndReplaceEditing").state,i={before:-1,same:0,after:1};t.bind("highlightOffset").to(n,"highlightedResult",(t=>t?Array.from(n.results).sort(((t,e)=>i[t.marker.getStart().compareWith(e.marker.getStart())])).indexOf(t)+1:0)),t.listenTo(n.results,"change",(()=>{t.matchCount=n.results.length})),t.bind("_areCommandsEnabled").to(e.get("findNext"),"isEnabled",e.get("findPrevious"),"isEnabled",e.get("replace"),"isEnabled",e.get("replaceAll"),"isEnabled",((t,e,n,i)=>({findNext:t,findPrevious:e,replace:n,replaceAll:i}))),t.delegate("findNext","findPrevious","replace","replaceAll").to(this),t.on("change:isDirty",((t,e,n)=>{n&&this.fire("searchReseted")}))}}function SI(t,e,n,i){const o=i||new _u.Collection;return e.change((i=>{[...t].forEach((({type:t,item:r})=>{if("elementStart"===t&&e.schema.checkChild(r,"$text")){const t=n({item:r,text:II(e.createRangeIn(r))});if(!t)return;t.forEach((t=>{const e=`findResult:${(0,_u.uid)()}`,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);o.add({id:e,label:t.label,marker:n},s)}))}}))})),o}function II(t){return Array.from(t.getItems()).reduce(((t,e)=>e.is("text")||e.is("textProxy")?t+e.data:`${t}\n`),"")}function BI(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}}function MI(t,e){let n="gu";e.matchCase||(n+="i");let i=`(${_g(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(BI)}}class NI extends i{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;let r;"string"==typeof t?(r=MI(t,{matchCase:e,wholeWords:n}),this._state.searchText=t):r=t;const s=o.document.getRootNames().reduce(((t,e)=>SI(o.createRangeIn(o.document.getRoot(e)),o,r,t)),null);return this._state.clear(o),this._state.results.addMany(Array.from(s)),this._state.highlightedResult=s.get(0),"string"==typeof t&&(this._state.searchText=t),this._state.matchCase=!!e,this._state.matchWholeWords=!!n,{results:s,findCallback:r}}}class OI extends i{constructor(t,e){super(t),this.isEnabled=!0,this._state=e}execute(t,e){const{model:n}=this.editor;n.change((i=>{const o=e.marker.getRange();if("$graveyard"===o.root.rootName)return void this._state.results.remove(e);let r={};for(const t of o.getItems())if(t.is("$text")||t.is("$textProxy")){r=t.getAttributes();break}n.insertContent(i.createText(t,r),o),this._state.results.has(e)&&this._state.results.remove(e)}))}}class PI extends OI{execute(t,e){const{editor:n}=this,{model:i}=n,o=e instanceof _u.Collection?e:i.document.getRootNames().reduce(((t,n)=>SI(i.createRangeIn(i.document.getRoot(n)),i,MI(e,this._state),t)),null);o.length&&i.change((()=>{[...o].forEach((e=>{super.execute(t,e)}))}))}}class RI extends i{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 LI extends RI{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 zI{constructor(t){this.set("results",new _u.Collection),this.set("highlightedResult",null),this.set("searchText",""),this.set("replaceText",""),this.set("matchCase",!1),this.set("matchWholeWords",!1),this.results.on("change",((e,{removed:n,index:i})=>{if((n=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)}}}))}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()}}(0,_u.mix)(zI,_u.ObservableMixin);var jI=__webpack_require__(5436),FI={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(jI.Z,FI);jI.Z.locals;class VI extends e{static get pluginName(){return"FindAndReplaceEditing"}init(){this._activeResults=null,this.state=new zI(this.editor.model),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=Mr(function(t,e,n){if(n){const t=this.editor.editing.view.domConverter,e=this.editor.editing.mapper.toViewRange(n.marker.getRange());(0,us.m)({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)}find(t){const{editor:e}=this,{model:n}=e,{findCallback:i,results:o}=e.execute("find",t);return this._activeResults=o,this.listenTo(n.document,"change:data",(()=>function(t,e,n){const i=new Set,o=new Set;e.document.differ.getChanges().forEach((t=>{"$text"===t.name||e.schema.isInline(t.position.nodeAfter)?(i.add(t.position.parent),[...e.markers.getMarkersAtPosition(t.position)].forEach((t=>{o.add(t.name)}))):"insert"===t.type&&i.add(t.position.nodeAfter)})),e.document.differ.getChangedMarkers().forEach((({name:t,data:{newRange:e}})=>{e&&"$graveyard"===e.start.root.rootName&&o.add(t)})),i.forEach((t=>{[...e.markers.getMarkersIntersectingRange(e.createRangeIn(t))].forEach((t=>o.add(t.name)))})),e.change((e=>{o.forEach((n=>{t.has(n)&&t.remove(n),e.removeMarker(n)}))})),i.forEach((i=>{SI(e.createRangeOn(i),e,n,t)}))}(this._activeResults,n,i))),this._activeResults}stop(){this._activeResults&&(this.stopListening(this.editor.model.document),this.state.clear(this.editor.model),this._activeResults=null)}_defineCommands(){this.editor.commands.add("find",new NI(this.editor,this.state)),this.editor.commands.add("findNext",new RI(this.editor,this.state)),this.editor.commands.add("findPrevious",new LI(this.editor,this.state)),this.editor.commands.add("replace",new OI(this.editor,this.state)),this.editor.commands.add("replaceAll",new PI(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 HI extends e{static get requires(){return[VI,DI]}static get pluginName(){return"FindAndReplace"}init(){const t=this.editor.plugins.get("FindAndReplaceUI"),e=this.editor.plugins.get("FindAndReplaceEditing"),n=e.state;t.on("findNext",((t,e)=>{e?(n.searchText=e.searchText,this.editor.execute("find",e.searchText,e)):this.editor.execute("findNext")})),t.on("findPrevious",((t,e)=>{e&&n.searchText!==e.searchText?this.editor.execute("find",e.searchText):this.editor.execute("findPrevious")})),t.on("replace",((t,e)=>{n.searchText!==e.searchText&&this.editor.execute("find",e.searchText);const i=n.highlightedResult;i&&this.editor.execute("replace",e.replaceText,i)})),t.on("replaceAll",((t,e)=>{n.searchText!==e.searchText&&this.editor.execute("find",e.searchText),this.editor.execute("replaceAll",e.replaceText,n.results)})),t.on("searchReseted",(()=>{n.clear(this.editor.model),e.stop()}))}}class UI extends i{constructor(t,e){super(t),this.attributeKey=e}refresh(){const t=this.editor.model,e=t.document;this.value=e.selection.getAttribute(this.attributeKey),this.isEnabled=t.schema.checkAttributeInSelection(e.selection,this.attributeKey)}execute(t={}){const e=this.editor.model,n=e.document.selection,i=t.value;e.change((t=>{if(n.isCollapsed)i?t.setSelectionAttribute(this.attributeKey,i):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)}}))}}class qI extends _u.Collection{constructor(t){super(t),this.set("isEmpty",!0),this.on("change",(()=>{this.set("isEmpty",0===this.length)}))}add(t,e){this.find((e=>e.color===t.color))||super.add(t,e)}hasColor(t){return!!this.find((e=>e.color===t))}}(0,_u.mix)(qI,_u.ObservableMixin);var WI=__webpack_require__(2585),ZI={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(WI.Z,ZI);WI.Z.locals;class GI extends Hd{constructor(t,{colors:e,columns:n,removeButtonLabel:i,documentColorsLabel:o,documentColorsCount:r}){super(t),this.items=this.createCollection(),this.colorDefinitions=e,this.focusTracker=new _u.FocusTracker,this.keystrokes=new _u.KeystrokeHandler,this.set("selectedColor"),this.removeButtonLabel=i,this.columns=n,this.documentColors=new qI,this.documentColorsCount=r,this._focusables=new kd,this._focusCycler=new Xu({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this._documentColorsLabel=o,this.setTemplate({tag:"div",attributes:{class:["ck","ck-color-table"]},children:this.items}),this.items.add(this._createRemoveColorButton())}updateDocumentColors(t,e){const n=t.document,i=this.documentColorsCount;this.documentColors.clear();for(const o of n.getRootNames()){const r=n.getRoot(o),s=t.createRangeIn(r);for(const t of s.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(){super.render(),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}appendGrids(){if(!this.staticColorsGrid&&(this.staticColorsGrid=this._createStaticColorsGrid(),this.items.add(this.staticColorsGrid),this.focusTracker.add(this.staticColorsGrid.element),this._focusables.add(this.staticColorsGrid),this.documentColorsCount)){const t=xd.bind(this.documentColors,this.documentColors),e=new Bh(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.focusTracker.add(this.documentColorsGrid.element),this._focusables.add(this.documentColorsGrid)}}focus(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}_createRemoveColorButton(){const t=new Nu;return t.set({withText:!0,icon:wu.eraser,label:this.removeButtonLabel}),t.class="ck-color-table__remove-color",t.on("execute",(()=>{this.fire("execute",{value:null})})),t.render(),this.focusTracker.add(t.element),this._focusables.add(t),t}_createStaticColorsGrid(){const t=new Uu(this.locale,{colorDefinitions:this.colorDefinitions,columns:this.columns});return t.delegate("execute").to(this),t}_createDocumentColorsGrid(){const t=xd.bind(this.documentColors,this.documentColors),e=new Uu(this.locale,{columns:this.columns});return e.delegate("execute").to(this),e.extendTemplate({attributes:{class:t.if("isEmpty","ck-hidden")}}),e.items.bindTo(this.documentColors).using((t=>{const e=new Fu;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})})),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}})}}const KI="fontSize",$I="fontFamily",YI="fontColor",JI="fontBackgroundColor";function QI(t,e){const n={model:{key:t,values:[]},view:{},upcastAlso:{}};for(const t of e)n.model.values.push(t.model),n.view[t.model]=t.view,t.upcastAlso&&(n.upcastAlso[t.model]=t.upcastAlso);return n}function XI(t){return e=>e.getStyle(t).replace(/\s/g,"")}function tB(t){return(e,{writer:n})=>n.createAttributeElement("span",{style:`${t}:${e}`},{priority:7})}class eB extends UI{constructor(t){super(t,$I)}}function nB(t){return t.map(iB).filter((t=>!!t))}function iB(t){return"object"==typeof t?t:"default"===t?{title:"Default",model:void 0}:"string"==typeof t?function(t){const e=t.replace(/"|'/g,"").split(","),n=e[0],i=e.map(oB).join(", ");return{title:n,model:i,view:{name:"span",styles:{"font-family":i},priority:7}}}(t):void 0}function oB(t){return(t=t.trim()).indexOf(" ")>0&&(t=`'${t}'`),t}class rB extends e{static get pluginName(){return"FontFamilyEditing"}constructor(t){super(t),t.config.define($I,{options:["default","Arial, Helvetica, sans-serif","Courier New, Courier, monospace","Georgia, serif","Lucida Sans Unicode, Lucida Grande, sans-serif","Tahoma, Geneva, sans-serif","Times New Roman, Times, serif","Trebuchet MS, Helvetica, sans-serif","Verdana, Geneva, sans-serif"],supportAllValues:!1})}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:$I}),t.model.schema.setAttributeProperties($I,{isFormatting:!0,copyOnEnter:!0});const e=nB(t.config.get("fontFamily.options")).filter((t=>t.model)),n=QI($I,e);t.config.get("fontFamily.supportAllValues")?(this._prepareAnyValueConverters(),this._prepareCompatibilityConverter()):t.conversion.attributeToElement(n),t.commands.add($I,new eB(t))}_prepareAnyValueConverters(){const t=this.editor;t.conversion.for("downcast").attributeToElement({model:$I,view:(t,{writer:e})=>e.createAttributeElement("span",{style:"font-family:"+t},{priority:7})}),t.conversion.for("upcast").elementToAttribute({model:{key:$I,value:t=>t.getStyle("font-family")},view:{name:"span",styles:{"font-family":/.*/}}})}_prepareCompatibilityConverter(){this.editor.conversion.for("upcast").elementToAttribute({view:{name:"font",attributes:{face:/.*/}},model:{key:$I,value:t=>t.getAttribute("face")}})}}class sB extends e{static get pluginName(){return"FontFamilyUI"}init(){const t=this.editor,e=t.t,n=this._getLocalizedOptions(),i=t.commands.get($I);t.ui.componentFactory.add($I,(o=>{const r=Ah(o);return Ch(r,function(t,e){const n=new _u.Collection;for(const i of t){const t={type:"button",model:new Yh({commandName:$I,commandParam:i.model,label:i.title,withText:!0})};t.model.bind("isOn").to(e,"value",(t=>t===i.model||!(!t||!i.model)&&t.split(",")[0].replace(/'/g,"").toLowerCase()===i.model.toLowerCase())),i.view&&i.view.styles&&t.model.set("labelStyle",`font-family: ${i.view.styles["font-family"]}`),n.add(t)}return n}(n,i)),r.buttonView.set({label:e("Font Family"),icon:'',tooltip:!0}),r.extendTemplate({attributes:{class:"ck-font-family-dropdown"}}),r.bind("isEnabled").to(i),this.listenTo(r,"execute",(e=>{t.execute(e.source.commandName,{value:e.source.commandParam}),t.editing.view.focus()})),r}))}_getLocalizedOptions(){const t=this.editor,e=t.t;return nB(t.config.get($I).options).map((t=>("Default"===t.title&&(t.title=e("Default")),t)))}}class aB extends e{static get requires(){return[rB,sB]}static get pluginName(){return"FontFamily"}}class cB extends UI{constructor(t){super(t,KI)}}function lB(t){return t.map((t=>function(t){if(e=t,"object"==typeof e&&e.title&&e.model&&e.view)return uB(t);var e;const n=function(t){return dB[t]||dB[t.model]}(t);if(n)return uB(n);if("default"===t)return{model:void 0,title:"Default"};if(function(t){let e;if("object"==typeof t){if(!t.model)throw new _u.CKEditorError("font-size-invalid-definition",null,t);e=parseFloat(t.model)}else e=parseFloat(t);return isNaN(e)}(t))return;return function(t){"number"!=typeof t&&"string"!=typeof t||(t={title:String(t),model:`${parseFloat(t)}px`});return t.view={name:"span",styles:{"font-size":t.model}},uB(t)}(t)}(t))).filter((t=>!!t))}const dB={get tiny(){return{title:"Tiny",model:"tiny",view:{name:"span",classes:"text-tiny",priority:7}}},get small(){return{title:"Small",model:"small",view:{name:"span",classes:"text-small",priority:7}}},get big(){return{title:"Big",model:"big",view:{name:"span",classes:"text-big",priority:7}}},get huge(){return{title:"Huge",model:"huge",view:{name:"span",classes:"text-huge",priority:7}}}};function uB(t){return t.view.priority||(t.view.priority=7),t}const hB=["x-small","x-small","small","medium","large","x-large","xx-large","xxx-large"];class mB extends e{static get pluginName(){return"FontSizeEditing"}constructor(t){super(t),t.config.define(KI,{options:["tiny","small","default","big","huge"],supportAllValues:!1})}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:KI}),t.model.schema.setAttributeProperties(KI,{isFormatting:!0,copyOnEnter:!0});const e=t.config.get("fontSize.supportAllValues"),n=lB(this.editor.config.get("fontSize.options")).filter((t=>t.model)),i=QI(KI,n);e?(this._prepareAnyValueConverters(i),this._prepareCompatibilityConverter()):t.conversion.attributeToElement(i),t.commands.add(KI,new cB(t))}_prepareAnyValueConverters(t){const e=this.editor,n=t.model.values.filter((t=>!Dl(String(t))&&!Il(String(t))));if(n.length)throw new _u.CKEditorError("font-size-invalid-use-of-named-presets",null,{presets:n});e.conversion.for("downcast").attributeToElement({model:KI,view:(t,{writer:e})=>{if(t)return e.createAttributeElement("span",{style:"font-size:"+t},{priority:7})}}),e.conversion.for("upcast").elementToAttribute({model:{key:KI,value:t=>t.getStyle("font-size")},view:{name:"span",styles:{"font-size":/.*/}}})}_prepareCompatibilityConverter(){this.editor.conversion.for("upcast").elementToAttribute({view:{name:"font",attributes:{size:/^[+-]?\d{1,3}$/}},model:{key:KI,value:t=>{const e=t.getAttribute("size"),n="-"===e[0]||"+"===e[0];let i=parseInt(e,10);n&&(i=3+i);const o=hB.length-1,r=Math.min(Math.max(i,0),o);return hB[r]}}})}}var gB=__webpack_require__(6203),pB={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(gB.Z,pB);gB.Z.locals;class fB extends e{static get pluginName(){return"FontSizeUI"}init(){const t=this.editor,e=t.t,n=this._getLocalizedOptions(),i=t.commands.get(KI);t.ui.componentFactory.add(KI,(o=>{const r=Ah(o);return Ch(r,function(t,e){const n=new _u.Collection;for(const i of t){const t={type:"button",model:new Yh({commandName:KI,commandParam:i.model,label:i.title,class:"ck-fontsize-option",withText:!0})};i.view&&i.view.styles&&t.model.set("labelStyle",`font-size:${i.view.styles["font-size"]}`),i.view&&i.view.classes&&t.model.set("class",`${t.model.class} ${i.view.classes}`),t.model.bind("isOn").to(e,"value",(t=>t===i.model)),n.add(t)}return n}(n,i)),r.buttonView.set({label:e("Font Size"),icon:'',tooltip:!0}),r.extendTemplate({attributes:{class:["ck-font-size-dropdown"]}}),r.bind("isEnabled").to(i),this.listenTo(r,"execute",(e=>{t.execute(e.source.commandName,{value:e.source.commandParam}),t.editing.view.focus()})),r}))}_getLocalizedOptions(){const t=this.editor,e=t.t,n={Default:e("Default"),Tiny:e("Tiny"),Small:e("Small"),Big:e("Big"),Huge:e("Huge")};return lB(t.config.get(KI).options).map((t=>{const e=n[t.title];return e&&e!=t.title&&(t=Object.assign({},t,{title:e})),t}))}}class bB extends e{static get requires(){return[mB,fB]}static get pluginName(){return"FontSize"}normalizeSizeOptions(t){return lB(t)}}class kB extends UI{constructor(t){super(t,YI)}}class xB extends e{static get pluginName(){return"FontColorEditing"}constructor(t){super(t),t.config.define(YI,{colors:[{color:"hsl(0, 0%, 0%)",label:"Black"},{color:"hsl(0, 0%, 30%)",label:"Dim grey"},{color:"hsl(0, 0%, 60%)",label:"Grey"},{color:"hsl(0, 0%, 90%)",label:"Light grey"},{color:"hsl(0, 0%, 100%)",label:"White",hasBorder:!0},{color:"hsl(0, 75%, 60%)",label:"Red"},{color:"hsl(30, 75%, 60%)",label:"Orange"},{color:"hsl(60, 75%, 60%)",label:"Yellow"},{color:"hsl(90, 75%, 60%)",label:"Light green"},{color:"hsl(120, 75%, 60%)",label:"Green"},{color:"hsl(150, 75%, 60%)",label:"Aquamarine"},{color:"hsl(180, 75%, 60%)",label:"Turquoise"},{color:"hsl(210, 75%, 60%)",label:"Light blue"},{color:"hsl(240, 75%, 60%)",label:"Blue"},{color:"hsl(270, 75%, 60%)",label:"Purple"}],columns:5}),t.conversion.for("upcast").elementToAttribute({view:{name:"span",styles:{color:/[\s\S]+/}},model:{key:YI,value:XI("color")}}),t.conversion.for("upcast").elementToAttribute({view:{name:"font",attributes:{color:/^#?\w+$/}},model:{key:YI,value:t=>t.getAttribute("color")}}),t.conversion.for("downcast").attributeToElement({model:YI,view:tB("color")}),t.commands.add(YI,new kB(t)),t.model.schema.extend("$text",{allowAttributes:YI}),t.model.schema.setAttributeProperties(YI,{isFormatting:!0,copyOnEnter:!0})}}class wB extends e{constructor(t,{commandName:e,icon:n,componentName:i,dropdownLabel:o}){super(t),this.commandName=e,this.componentName=i,this.icon=n,this.dropdownLabel=o,this.columns=t.config.get(`${this.componentName}.columns`),this.colorTableView=void 0}init(){const t=this.editor,e=t.locale,n=e.t,i=t.commands.get(this.commandName),o=Lu(e,zu(t.config.get(this.componentName).colors)),r=t.config.get(`${this.componentName}.documentColors`);t.ui.componentFactory.add(this.componentName,(e=>{const s=Ah(e);return this.colorTableView=function({dropdownView:t,colors:e,columns:n,removeButtonLabel:i,documentColorsLabel:o,documentColorsCount:r}){const s=t.locale,a=new GI(s,{colors:e,columns:n,removeButtonLabel:i,documentColorsLabel:o,documentColorsCount:r});return t.colorTableView=a,t.panelView.children.add(a),a.delegate("execute").to(t,"execute"),a}({dropdownView:s,colors:o.map((t=>({label:t.label,color:t.model,options:{hasBorder:t.hasBorder}}))),columns:this.columns,removeButtonLabel:n("Remove color"),documentColorsLabel:0!==r?n("Document colors"):void 0,documentColorsCount:void 0===r?this.columns:r}),this.colorTableView.bind("selectedColor").to(i,"value"),s.buttonView.set({label:this.dropdownLabel,icon:this.icon,tooltip:!0}),s.extendTemplate({attributes:{class:"ck-color-ui-dropdown"}}),s.bind("isEnabled").to(i),s.on("execute",((e,n)=>{t.execute(this.commandName,n),t.editing.view.focus()})),s.on("change:isOpen",((e,n,i)=>{s.colorTableView.appendGrids(),i&&(0!==r&&this.colorTableView.updateDocumentColors(t.model,this.componentName),this.colorTableView.updateSelectedColors())})),yh(s,(()=>s.colorTableView.staticColorsGrid.items.find((t=>t.isOn)))),s}))}}class _B extends wB{constructor(t){const e=t.locale.t;super(t,{commandName:YI,componentName:YI,icon:'',dropdownLabel:e("Font Color")})}static get pluginName(){return"FontColorUI"}}class AB extends e{static get requires(){return[xB,_B]}static get pluginName(){return"FontColor"}}class vB extends UI{constructor(t){super(t,JI)}}class CB extends e{static get pluginName(){return"FontBackgroundColorEditing"}constructor(t){super(t),t.config.define(JI,{colors:[{color:"hsl(0, 0%, 0%)",label:"Black"},{color:"hsl(0, 0%, 30%)",label:"Dim grey"},{color:"hsl(0, 0%, 60%)",label:"Grey"},{color:"hsl(0, 0%, 90%)",label:"Light grey"},{color:"hsl(0, 0%, 100%)",label:"White",hasBorder:!0},{color:"hsl(0, 75%, 60%)",label:"Red"},{color:"hsl(30, 75%, 60%)",label:"Orange"},{color:"hsl(60, 75%, 60%)",label:"Yellow"},{color:"hsl(90, 75%, 60%)",label:"Light green"},{color:"hsl(120, 75%, 60%)",label:"Green"},{color:"hsl(150, 75%, 60%)",label:"Aquamarine"},{color:"hsl(180, 75%, 60%)",label:"Turquoise"},{color:"hsl(210, 75%, 60%)",label:"Light blue"},{color:"hsl(240, 75%, 60%)",label:"Blue"},{color:"hsl(270, 75%, 60%)",label:"Purple"}],columns:5}),t.data.addStyleProcessorRules(ql),t.conversion.for("upcast").elementToAttribute({view:{name:"span",styles:{"background-color":/[\s\S]+/}},model:{key:JI,value:XI("background-color")}}),t.conversion.for("downcast").attributeToElement({model:JI,view:tB("background-color")}),t.commands.add(JI,new vB(t)),t.model.schema.extend("$text",{allowAttributes:JI}),t.model.schema.setAttributeProperties(JI,{isFormatting:!0,copyOnEnter:!0})}}class yB extends wB{constructor(t){const e=t.locale.t;super(t,{commandName:JI,componentName:JI,icon:'',dropdownLabel:e("Font Background Color")})}static get pluginName(){return"FontBackgroundColorUI"}}class EB extends e{static get requires(){return[CB,yB]}static get pluginName(){return"FontBackgroundColor"}}class TB extends i{refresh(){const t=this.editor.model,e=t.document;this.value=e.selection.getAttribute("highlight"),this.isEnabled=t.schema.checkAttributeInSelection(e.selection,"highlight")}execute(t={}){const e=this.editor.model,n=e.document.selection,i=t.value;e.change((t=>{if(n.isCollapsed){const e=n.getFirstPosition();if(n.hasAttribute("highlight")){const n=t=>t.item.hasAttribute("highlight")&&t.item.getAttribute("highlight")===this.value,o=e.getLastMatchingPosition(n,{direction:"backward"}),r=e.getLastMatchingPosition(n),s=t.createRange(o,r);i&&this.value!==i?(e.isEqual(r)||t.setAttribute("highlight",i,s),t.setSelectionAttribute("highlight",i)):(e.isEqual(r)||t.removeAttribute("highlight",s),t.removeSelectionAttribute("highlight"))}else i&&t.setSelectionAttribute("highlight",i)}else{const o=e.schema.getValidRanges(n.getRanges(),"highlight");for(const e of o)i?t.setAttribute("highlight",i,e):t.removeAttribute("highlight",e)}}))}}class DB extends e{static get pluginName(){return"HighlightEditing"}constructor(t){super(t),t.config.define("highlight",{options:[{model:"yellowMarker",class:"marker-yellow",title:"Yellow marker",color:"var(--ck-highlight-marker-yellow)",type:"marker"},{model:"greenMarker",class:"marker-green",title:"Green marker",color:"var(--ck-highlight-marker-green)",type:"marker"},{model:"pinkMarker",class:"marker-pink",title:"Pink marker",color:"var(--ck-highlight-marker-pink)",type:"marker"},{model:"blueMarker",class:"marker-blue",title:"Blue marker",color:"var(--ck-highlight-marker-blue)",type:"marker"},{model:"redPen",class:"pen-red",title:"Red pen",color:"var(--ck-highlight-pen-red)",type:"pen"},{model:"greenPen",class:"pen-green",title:"Green pen",color:"var(--ck-highlight-pen-green)",type:"pen"}]})}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:"highlight"});const e=t.config.get("highlight.options");t.conversion.attributeToElement(function(t){const e={model:{key:"highlight",values:[]},view:{}};for(const n of t)e.model.values.push(n.model),e.view[n.model]={name:"mark",classes:n.class};return e}(e)),t.commands.add("highlight",new TB(t))}}var SB=__webpack_require__(713),IB={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(SB.Z,IB);SB.Z.locals;class BB extends e{get localizedOptionTitles(){const t=this.editor.t;return{"Yellow marker":t("Yellow marker"),"Green marker":t("Green marker"),"Pink marker":t("Pink marker"),"Blue marker":t("Blue marker"),"Red pen":t("Red pen"),"Green pen":t("Green pen")}}static get pluginName(){return"HighlightUI"}init(){const t=this.editor.config.get("highlight.options");for(const e of t)this._addHighlighterButton(e);this._addRemoveHighlightButton(),this._addDropdown(t)}_addRemoveHighlightButton(){const t=this.editor.t,e=this.editor.commands.get("highlight");this._addButton("removeHighlight",t("Remove highlight"),wu.eraser,null,(t=>{t.bind("isEnabled").to(e,"isEnabled")}))}_addHighlighterButton(t){const e=this.editor.commands.get("highlight");this._addButton("highlight:"+t.model,t.title,MB(t.type),t.model,(function(n){n.bind("isEnabled").to(e,"isEnabled"),n.bind("isOn").to(e,"value",(e=>e===t.model)),n.iconView.fillColor=t.color,n.isToggleable=!0}))}_addButton(t,e,n,i,o){const r=this.editor;r.ui.componentFactory.add(t,(t=>{const s=new Nu(t),a=this.localizedOptionTitles[e]?this.localizedOptionTitles[e]:e;return s.set({label:a,icon:n,tooltip:!0}),s.on("execute",(()=>{r.execute("highlight",{value:i}),r.editing.view.focus()})),o(s),s}))}_addDropdown(t){const e=this.editor,n=e.t,i=e.ui.componentFactory,o=t[0],r=t.reduce(((t,e)=>(t[e.model]=e,t)),{});i.add("highlight",(s=>{const a=e.commands.get("highlight"),c=Ah(s,Ku),l=c.buttonView;l.set({label:n("Highlight"),tooltip:!0,lastExecuted:o.model,commandValue:o.model,isToggleable:!0}),l.bind("icon").to(a,"value",(t=>MB(u(t,"type")))),l.bind("color").to(a,"value",(t=>u(t,"color"))),l.bind("commandValue").to(a,"value",(t=>u(t,"model"))),l.bind("isOn").to(a,"value",(t=>!!t)),l.delegate("execute").to(c);const d=t.map((t=>{const e=i.create("highlight:"+t.model);return this.listenTo(e,"execute",(()=>{c.buttonView.set({lastExecuted:t.model})})),e}));function u(t,e){const n=t&&t!==l.lastExecuted?t:l.lastExecuted;return r[n][e]}return c.bind("isEnabled").toMany(d,"isEnabled",((...t)=>t.some((t=>t)))),d.push(new eh),d.push(i.create("removeHighlight")),vh(c,d,{enableActiveItemFocusOnDropdownOpen:!0}),function(t){t.buttonView.actionView.iconView.bind("fillColor").to(t.buttonView,"color")}(c),c.toolbarView.ariaLabel=n("Text highlight toolbar"),l.on("execute",(()=>{e.execute("highlight",{value:l.commandValue})})),this.listenTo(c,"execute",(()=>{e.editing.view.focus()})),c}))}}function MB(t){return"marker"===t?'':''}class NB extends e{static get requires(){return[DB,BB]}static get pluginName(){return"Highlight"}}class OB extends i{refresh(){const t=this.editor.model,e=t.schema,n=t.document.selection;this.isEnabled=function(t,e,n){const i=function(t,e){const n=cw(t,e).start.parent;if(n.isEmpty&&!n.is("element","$root"))return n.parent;return n}(t,n);return e.checkChild(i,"horizontalLine")}(n,e,t)}execute(){const t=this.editor.model;t.change((e=>{const n=e.createElement("horizontalLine");t.insertObject(n,null,null,{setSelection:"after"})}))}}var PB=__webpack_require__(2536),RB={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(PB.Z,RB);PB.Z.locals;class LB extends e{static get pluginName(){return"HorizontalLineEditing"}init(){const t=this.editor,e=t.model.schema,n=t.t,i=t.conversion;e.register("horizontalLine",{inheritAllFrom:"$blockObject"}),i.for("dataDowncast").elementToElement({model:"horizontalLine",view:(t,{writer:e})=>e.createEmptyElement("hr")}),i.for("editingDowncast").elementToStructure({model:"horizontalLine",view:(t,{writer:e})=>{const i=n("Horizontal line"),o=e.createContainerElement("div",null,e.createEmptyElement("hr"));return e.addClass("ck-horizontal-line",o),e.setCustomProperty("hr",!0,o),function(t,e,n){return e.setCustomProperty("horizontalLine",!0,t),nw(t,e,{label:n})}(o,e,i)}}),i.for("upcast").elementToElement({view:"hr",model:"horizontalLine"}),t.commands.add("horizontalLine",new OB(t))}}class zB extends e{static get pluginName(){return"HorizontalLineUI"}init(){const t=this.editor,e=t.t;t.ui.componentFactory.add("horizontalLine",(n=>{const i=t.commands.get("horizontalLine"),o=new Nu(n);return o.set({label:e("Horizontal line"),icon:'',tooltip:!0}),o.bind("isEnabled").to(i,"isEnabled"),this.listenTo(o,"execute",(()=>{t.execute("horizontalLine"),t.editing.view.focus()})),o}))}}class jB extends e{static get requires(){return[LB,zB,Cw]}static get pluginName(){return"HorizontalLine"}}class FB extends i{refresh(){const t=this.editor.model,e=t.schema,n=t.document.selection,i=VB(n);this.isEnabled=function(t,e,n){const i=function(t,e){const n=cw(t,e).start.parent;if(n.isEmpty&&!n.is("element","$root"))return n.parent;return n}(t,n);return e.checkChild(i,"rawHtml")}(n,e,t),this.value=i?i.getAttribute("value")||"":null}execute(t){const e=this.editor.model,n=e.document.selection;e.change((i=>{let o;null!==this.value?o=VB(n):(o=i.createElement("rawHtml"),e.insertObject(o,null,null,{setSelection:"on"})),i.setAttribute("value",t,o)}))}}function VB(t){const e=t.getSelectedElement();return e&&e.is("element","rawHtml")?e:null}var HB=__webpack_require__(3403),UB={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(HB.Z,UB);HB.Z.locals;class qB extends e{static get pluginName(){return"HtmlEmbedEditing"}constructor(t){super(t),t.config.define("htmlEmbed",{showPreviews:!1,sanitizeHtml:t=>((0,_u.logWarning)("html-embed-provide-sanitize-function"),{html:t,hasChanged:!1})}),this._widgetButtonViewReferences=new Set}init(){const t=this.editor;t.model.schema.register("rawHtml",{inheritAllFrom:"$blockObject",allowAttributes:["value"]}),t.commands.add("htmlEmbed",new FB(t)),this._setupConversion()}_setupConversion(){const t=this.editor,e=t.t,n=t.editing.view,i=this._widgetButtonViewReferences,o=t.config.get("htmlEmbed");function r({domElement:t,editor:n,state:o,props:r}){t.textContent="";const a=t.ownerDocument;let c;if(o.isEditable){const e={isDisabled:!1,placeholder:r.textareaPlaceholder};c=s({domDocument:a,state:o,props:e}),t.append(c)}else if(o.showPreviews){const i={sanitizeHtml:r.sanitizeHtml};t.append(function({domDocument:t,state:n,props:i,editor:o}){const r=i.sanitizeHtml(n.getRawHtmlValue()),s=n.getRawHtmlValue().length>0?e("No preview available"):e("Empty snippet content"),a=(0,_u.createElement)(t,"div",{class:"ck ck-reset_all raw-html-embed__preview-placeholder"},s),c=(0,_u.createElement)(t,"div",{class:"raw-html-embed__preview-content",dir:o.locale.contentLanguageDirection}),l=t.createRange().createContextualFragment(r.html);c.appendChild(l);return(0,_u.createElement)(t,"div",{class:"raw-html-embed__preview"},[a,c])}({domDocument:a,state:o,props:i,editor:n}))}else{const e={isDisabled:!0,placeholder:r.textareaPlaceholder};t.append(s({domDocument:a,state:o,props:e}))}const l={onEditClick:r.onEditClick,onSaveClick:()=>{r.onSaveClick(c.value)},onCancelClick:r.onCancelClick};t.prepend(function({editor:t,domDocument:e,state:n,props:o}){const r=(0,_u.createElement)(e,"div",{class:"raw-html-embed__buttons-wrapper"});if(n.isEditable){const e=WB(t,"save",o.onSaveClick),n=WB(t,"cancel",o.onCancelClick);r.append(e.element,n.element),i.add(e).add(n)}else{const e=WB(t,"edit",o.onEditClick);r.append(e.element),i.add(e)}return r}({editor:n,domDocument:a,state:o,props:l}))}function s({domDocument:t,state:e,props:n}){const i=(0,_u.createElement)(t,"textarea",{placeholder:n.placeholder,class:"ck ck-reset ck-input ck-input-text raw-html-embed__source"});return i.disabled=n.isDisabled,i.value=e.getRawHtmlValue(),i}this.editor.editing.view.on("render",(()=>{for(const t of i){if(t.element.isConnected)return;t.destroy(),i.delete(t)}}),{priority:"lowest"}),t.data.registerRawContentMatcher({name:"div",classes:"raw-html-embed"}),t.conversion.for("upcast").elementToElement({view:{name:"div",classes:"raw-html-embed"},model:(t,{writer:e})=>e.createElement("rawHtml",{value:t.getCustomProperty("$rawContent")})}),t.conversion.for("dataDowncast").elementToElement({model:"rawHtml",view:(t,{writer:e})=>e.createRawElement("div",{class:"raw-html-embed"},(function(e){e.innerHTML=t.getAttribute("value")||""}))}),t.conversion.for("editingDowncast").elementToStructure({model:{name:"rawHtml",attributes:["value"]},view:(i,{writer:s})=>{let a,c,l;const d=s.createRawElement("div",{class:"raw-html-embed__content-wrapper"},(function(e){a=e,r({domElement:e,editor:t,state:c,props:l}),a.addEventListener("mousedown",(()=>{if(c.isEditable){const e=t.model;e.document.selection.getSelectedElement()!==i&&e.change((t=>t.setSelection(i,"on")))}}),!0)})),u={makeEditable(){c=Object.assign({},c,{isEditable:!0}),r({domElement:a,editor:t,state:c,props:l}),n.change((t=>{t.setAttribute("data-cke-ignore-events","true",d)})),a.querySelector("textarea").focus()},save(e){e!==c.getRawHtmlValue()?(t.execute("htmlEmbed",e),t.editing.view.focus()):this.cancel()},cancel(){c=Object.assign({},c,{isEditable:!1}),r({domElement:a,editor:t,state:c,props:l}),t.editing.view.focus(),n.change((t=>{t.removeAttribute("data-cke-ignore-events",d)}))}};c={showPreviews:o.showPreviews,isEditable:!1,getRawHtmlValue:()=>i.getAttribute("value")||""},l={sanitizeHtml:o.sanitizeHtml,textareaPlaceholder:e("Paste raw HTML here..."),onEditClick(){u.makeEditable()},onSaveClick(t){u.save(t)},onCancelClick(){u.cancel()}};const h=s.createContainerElement("div",{class:"raw-html-embed","data-html-embed-label":e("HTML snippet"),dir:t.locale.uiLanguageDirection},d);return s.setCustomProperty("rawHtmlApi",u,h),s.setCustomProperty("rawHtml",!0,h),nw(h,s,{widgetLabel:e("HTML snippet"),hasSelectionHandle:!0})}})}}function WB(t,e,n){const i=t.locale.t,o=new Nu(t.locale),r=t.commands.get("htmlEmbed");return o.set({class:`raw-html-embed__${e}-button`,icon:wu.pencil,tooltip:!0,tooltipPosition:"rtl"===t.locale.uiLanguageDirection?"e":"w"}),o.render(),"edit"===e?(o.set({icon:wu.pencil,label:i("Edit source")}),o.bind("isEnabled").to(r)):"save"===e?(o.set({icon:wu.check,label:i("Save changes")}),o.bind("isEnabled").to(r)):o.set({icon:wu.cancel,label:i("Cancel")}),o.on("execute",n),o}class ZB extends e{static get pluginName(){return"HtmlEmbedUI"}init(){const t=this.editor,e=t.t;t.ui.componentFactory.add("htmlEmbed",(n=>{const i=t.commands.get("htmlEmbed"),o=new Nu(n);return o.set({label:e("Insert HTML"),icon:'',tooltip:!0}),o.bind("isEnabled").to(i,"isEnabled"),this.listenTo(o,"execute",(()=>{t.execute("htmlEmbed"),t.editing.view.focus();t.editing.view.document.selection.getSelectedElement().getCustomProperty("rawHtmlApi").makeEditable()})),o}))}}class GB extends e{static get requires(){return[qB,ZB,Cw]}static get pluginName(){return"HtmlEmbed"}}const KB=[{model:"codeBlock",view:"pre"},{model:"paragraph",view:"p"},{model:"blockQuote",view:"blockquote"},{model:"listItem",view:"li"},{model:"pageBreak",view:"div"},{model:"rawHtml",view:"div"},{model:"table",view:"table"},{model:"tableRow",view:"tr"},{model:"tableCell",view:"td"},{model:"tableCell",view:"th"},{model:"caption",view:"caption"},{model:"caption",view:"figcaption"},{model:"imageBlock",view:"img"},{model:"imageInline",view:"img"},{model:"htmlP",view:"p",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlBlockquote",view:"blockquote",modelSchema:{inheritAllFrom:"$container"}},{model:"htmlTable",view:"table",modelSchema:{allowWhere:"$block",isBlock:!0}},{model:"htmlTbody",view:"tbody",modelSchema:{allowIn:"htmlTable",isBlock:!1}},{model:"htmlThead",view:"thead",modelSchema:{allowIn:"htmlTable",isBlock:!1}},{model:"htmlTfoot",view:"tfoot",modelSchema:{allowIn:"htmlTable",isBlock:!1}},{model:"htmlCaption",view:"caption",modelSchema:{allowIn:"htmlTable",allowChildren:"$text",isBlock:!1}},{model:"htmlColgroup",view:"colgroup",modelSchema:{allowIn:"htmlTable",allowChildren:"col",isBlock:!1}},{model:"htmlCol",view:"col",modelSchema:{allowIn:"htmlColgroup",isBlock:!1}},{model:"htmlTr",view:"tr",modelSchema:{allowIn:["htmlTable","htmlThead","htmlTbody"],isLimit:!0}},{model:"htmlTd",view:"td",modelSchema:{allowIn:"htmlTr",allowContentOf:"$container",isLimit:!0,isBlock:!1}},{model:"htmlTh",view:"th",modelSchema:{allowIn:"htmlTr",allowContentOf:"$container",isLimit:!0,isBlock:!1}},{model:"htmlFigure",view:"figure",modelSchema:{inheritAllFrom:"$container",isBlock:!1}},{model:"htmlFigcaption",view:"figcaption",modelSchema:{allowIn:"htmlFigure",allowChildren:"$text",isBlock:!1}},{model:"htmlAddress",view:"address",modelSchema:{inheritAllFrom:"$container",isBlock:!1}},{model:"htmlAside",view:"aside",modelSchema:{inheritAllFrom:"$container",isBlock:!1}},{model:"htmlMain",view:"main",modelSchema:{inheritAllFrom:"$container",isBlock:!1}},{model:"htmlDetails",view:"details",modelSchema:{inheritAllFrom:"$container",isBlock:!1}},{model:"htmlSummary",view:"summary",modelSchema:{allowChildren:"$text",allowIn:"htmlDetails",isBlock:!1}},{model:"htmlDiv",view:"div",paragraphLikeModel:"htmlDivParagraph",modelSchema:{inheritAllFrom:"$container"}},{model:"htmlFieldset",view:"fieldset",modelSchema:{inheritAllFrom:"$container",isBlock:!1}},{model:"htmlLegend",view:"legend",modelSchema:{allowIn:"htmlFieldset",allowChildren:"$text"}},{model:"htmlHeader",view:"header",modelSchema:{inheritAllFrom:"$container",isBlock:!1}},{model:"htmlFooter",view:"footer",modelSchema:{inheritAllFrom:"$container",isBlock:!1}},{model:"htmlForm",view:"form",modelSchema:{inheritAllFrom:"$container",isBlock:!0}},{model:"htmlHgroup",view:"hgroup",modelSchema:{allowChildren:["htmlH1","htmlH2","htmlH3","htmlH4","htmlH5","htmlH6"],isBlock:!1}},{model:"htmlH1",view:"h1",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlH2",view:"h2",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlH3",view:"h3",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlH4",view:"h4",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlH5",view:"h5",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlH6",view:"h6",modelSchema:{inheritAllFrom:"$block"}},{model:"$htmlList",modelSchema:{allowWhere:"$container",allowChildren:["$htmlList","htmlLi"],isBlock:!1}},{model:"htmlDir",view:"dir",modelSchema:{inheritAllFrom:"$htmlList"}},{model:"htmlMenu",view:"menu",modelSchema:{inheritAllFrom:"$htmlList"}},{model:"htmlUl",view:"ul",modelSchema:{inheritAllFrom:"$htmlList"}},{model:"htmlOl",view:"ol",modelSchema:{inheritAllFrom:"$htmlList"}},{model:"htmlLi",view:"li",modelSchema:{allowIn:"$htmlList",allowChildren:"$text",isBlock:!1}},{model:"htmlPre",view:"pre",modelSchema:{inheritAllFrom:"$block"}},{model:"htmlArticle",view:"article",modelSchema:{inheritAllFrom:"$container",isBlock:!1}},{model:"htmlSection",view:"section",modelSchema:{inheritAllFrom:"$container",isBlock:!1}},{model:"htmlNav",view:"nav",modelSchema:{inheritAllFrom:"$container",isBlock:!1}},{model:"htmlDl",view:"dl",modelSchema:{allowWhere:"$container",allowChildren:["htmlDt","htmlDd"],isBlock:!1}},{model:"htmlDt",view:"dt",modelSchema:{allowChildren:"$block",isBlock:!1}},{model:"htmlDd",view:"dd",modelSchema:{allowChildren:"$block",isBlock:!1}},{model:"htmlCenter",view:"center",modelSchema:{inheritAllFrom:"$container",isBlock:!1}}],$B=[{model:"htmlAcronym",view:"acronym",attributeProperties:{copyOnEnter:!0}},{model:"htmlTt",view:"tt",attributeProperties:{copyOnEnter:!0}},{model:"htmlFont",view:"font",attributeProperties:{copyOnEnter:!0}},{model:"htmlTime",view:"time",attributeProperties:{copyOnEnter:!0}},{model:"htmlVar",view:"var",attributeProperties:{copyOnEnter:!0}},{model:"htmlBig",view:"big",attributeProperties:{copyOnEnter:!0}},{model:"htmlSmall",view:"small",attributeProperties:{copyOnEnter:!0}},{model:"htmlSamp",view:"samp",attributeProperties:{copyOnEnter:!0}},{model:"htmlQ",view:"q",attributeProperties:{copyOnEnter:!0}},{model:"htmlOutput",view:"output",attributeProperties:{copyOnEnter:!0}},{model:"htmlKbd",view:"kbd",attributeProperties:{copyOnEnter:!0}},{model:"htmlBdi",view:"bdi",attributeProperties:{copyOnEnter:!0}},{model:"htmlBdo",view:"bdo",attributeProperties:{copyOnEnter:!0}},{model:"htmlAbbr",view:"abbr",attributeProperties:{copyOnEnter:!0}},{model:"htmlA",view:"a",priority:5,coupledAttribute:"linkHref",attributeProperties:{copyOnEnter:!0}},{model:"htmlStrong",view:"strong",coupledAttribute:"bold",attributeProperties:{copyOnEnter:!0}},{model:"htmlB",view:"b",coupledAttribute:"bold",attributeProperties:{copyOnEnter:!0}},{model:"htmlI",view:"i",coupledAttribute:"italic",attributeProperties:{copyOnEnter:!0}},{model:"htmlEm",view:"em",coupledAttribute:"italic",attributeProperties:{copyOnEnter:!0}},{model:"htmlS",view:"s",coupledAttribute:"strikethrough",attributeProperties:{copyOnEnter:!0}},{model:"htmlDel",view:"del",coupledAttribute:"strikethrough",attributeProperties:{copyOnEnter:!0}},{model:"htmlIns",view:"ins",attributeProperties:{copyOnEnter:!0}},{model:"htmlU",view:"u",coupledAttribute:"underline",attributeProperties:{copyOnEnter:!0}},{model:"htmlSub",view:"sub",coupledAttribute:"subscript",attributeProperties:{copyOnEnter:!0}},{model:"htmlSup",view:"sup",coupledAttribute:"superscript",attributeProperties:{copyOnEnter:!0}},{model:"htmlCode",view:"code",coupledAttribute:"code",attributeProperties:{copyOnEnter:!0}},{model:"htmlMark",view:"mark",attributeProperties:{copyOnEnter:!0}},{model:"htmlSpan",view:"span",attributeProperties:{copyOnEnter:!0}},{model:"htmlCite",view:"cite",attributeProperties:{copyOnEnter:!0}},{model:"htmlLabel",view:"label",attributeProperties:{copyOnEnter:!0}},{model:"htmlDfn",view:"dfn",attributeProperties:{copyOnEnter:!0}},{model:"htmlObject",view:"object",isObject:!0,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlIframe",view:"iframe",isObject:!0,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlInput",view:"input",isObject:!0,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlButton",view:"button",isObject:!0,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlTextarea",view:"textarea",isObject:!0,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlSelect",view:"select",isObject:!0,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlVideo",view:"video",isObject:!0,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlEmbed",view:"embed",isObject:!0,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlOembed",view:"oembed",isObject:!0,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlAudio",view:"audio",isObject:!0,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlImg",view:"img",isObject:!0,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlCanvas",view:"canvas",isObject:!0,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlMeter",view:"meter",isObject:!0,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlProgress",view:"progress",isObject:!0,modelSchema:{inheritAllFrom:"$inlineObject"}},{model:"htmlScript",view:"script",modelSchema:{allowWhere:["$text","$block"],isInline:!0}},{model:"htmlStyle",view:"style",modelSchema:{allowWhere:["$text","$block"],isInline:!0}},{model:"htmlCustomElement",view:"$customElement",modelSchema:{allowWhere:["$text","$block"],isInline:!0}}];const YB=Si((function(t,e,n,i){bi(t,e,n,i)}));class JB extends e{constructor(t){super(t),this._definitions=new Map}static get pluginName(){return"DataSchema"}init(){for(const t of KB)this.registerBlockElement(t);for(const t of $B)this.registerInlineElement(t)}registerBlockElement(t){this._definitions.set(t.model,{...t,isBlock:!0})}registerInlineElement(t){this._definitions.set(t.model,{...t,isInline:!0})}extendBlockElement(t){this._extendDefinition({...t,isBlock:!0})}extendInlineElement(t){this._extendDefinition({...t,isInline:!0})}getDefinitionsForView(t,e){const n=new Set;for(const i of this._getMatchingViewDefinitions(t)){if(e)for(const t of this._getReferences(i.model))n.add(t);n.add(i)}return n}_getMatchingViewDefinitions(t){return Array.from(this._definitions.values()).filter((e=>e.view&&function(t,e){if("string"==typeof t)return t===e;if(t instanceof RegExp)return t.test(e);return!1}(t,e.view)))}*_getReferences(t){const{modelSchema:e}=this._definitions.get(t);if(!e)return;const n=["inheritAllFrom","inheritTypesFrom","allowWhere","allowContentOf","allowAttributesOf"];for(const i of n)for(const n of(0,_u.toArray)(e[i]||[])){const e=this._definitions.get(n);n!==t&&e&&(yield*this._getReferences(e.model),yield e)}}_extendDefinition(t){const e=this._definitions.get(t.model),n=YB({},e,t,((t,e)=>Array.isArray(t)?t.concat(e):void 0));this._definitions.set(t.model,n)}}function QB(t,e,n,i){e&&function(t,e,n){if(e.attributes)for(const[i]of Object.entries(e.attributes))t.removeAttribute(i,n);if(e.styles)for(const i of Object.keys(e.styles))t.removeStyle(i,n);e.classes&&t.removeClass(e.classes,n)}(t,e,i),n&&XB(t,n,i)}function XB(t,e,n){if(e.attributes)for(const[i,o]of Object.entries(e.attributes))t.setAttribute(i,o,n);e.styles&&t.setStyle(e.styles,n),e.classes&&t.addClass(e.classes,n)}function tM(t,e){const n=Ks(t);for(const i in e)Array.isArray(e[i])?n[i]=Array.from(new Set([...t[i]||[],...e[i]])):n[i]={...t[i],...e[i]};return n}function eM({model:t}){return(e,n)=>n.writer.createElement(t,{htmlContent:e.getCustomProperty("$rawContent")})}function nM(t,{view:e,isInline:n}){const i=t.t;return(t,{writer:o})=>{const r=i("HTML object"),s=iM(e,t,o),a=t.getAttribute("htmlAttributes");o.addClass("html-object-embed__content",s),a&&XB(o,a,s);return nw(o.createContainerElement(n?"span":"div",{class:"html-object-embed","data-html-object-embed-label":r},s),o,{widgetLabel:r})}}function iM(t,e,n){return n.createRawElement(t,null,((t,n)=>{n.setContentOf(t,e.getAttribute("htmlContent"))}))}function oM({priority:t,view:e}){return(n,i)=>{if(!n)return;const{writer:o}=i,r=o.createAttributeElement(e,null,{priority:t});return XB(o,n,r),r}}function rM({view:t},e){return n=>{n.on(`element:${t}`,((t,n,i)=>{if(!n.modelRange||n.modelRange.isCollapsed)return;const o=e.processViewAttributes(n.viewItem,i);o&&i.writer.setAttribute("htmlAttributes",o,n.modelRange)}),{priority:"low"})}}function sM({model:t}){return e=>{e.on(`attribute:htmlAttributes:${t}`,((t,e,n)=>{if(!n.consumable.consume(e.item,t.name))return;const{attributeOldValue:i,attributeNewValue:o}=e;QB(n.writer,i,o,n.mapper.toViewElement(e.item))}))}}const aM=function(t,e,n,i){for(var o=t.length,r=n+(i?1:-1);i?r--:++r-1;)a!==t&&hM.call(a,c,1),hM.call(t,c,1);return t};const gM=Ti((function(t,e){return t&&t.length&&e&&e.length?mM(t,e):t}));var pM=__webpack_require__(8468),fM={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(pM.Z,fM);pM.Z.locals;class bM extends e{constructor(t){super(t),this._dataSchema=t.plugins.get("DataSchema"),this._allowedAttributes=new zn,this._disallowedAttributes=new zn,this._allowedElements=new Set,this._disallowedElements=new Set,this._dataInitialized=!1,this._coupledAttributes=null,this._registerElementsAfterInit(),this._registerElementHandlers(),this._registerModelPostFixer()}static get pluginName(){return"DataFilter"}static get requires(){return[JB,Cw]}loadAllowedConfig(t){for(const e of t){const t=e.name||/[\s\S]+/,n=AM(e);this.allowElement(t),n.forEach((t=>this.allowAttributes(t)))}}loadDisallowedConfig(t){for(const e of t){const t=e.name||/[\s\S]+/,n=AM(e);0==n.length?this.disallowElement(t):n.forEach((t=>this.disallowAttributes(t)))}}allowElement(t){for(const e of this._dataSchema.getDefinitionsForView(t,!0))this._allowedElements.has(e)||(this._allowedElements.add(e),this._dataInitialized&&this.editor.data.once("set",(()=>{this._fireRegisterEvent(e)}),{priority:_u.priorities.get("highest")+1}),this._coupledAttributes=null)}disallowElement(t){for(const e of this._dataSchema.getDefinitionsForView(t,!1))this._disallowedElements.add(e.view)}allowAttributes(t){this._allowedAttributes.add(t)}disallowAttributes(t){this._disallowedAttributes.add(t)}processViewAttributes(t,e){return kM(t,e,this._disallowedAttributes),kM(t,e,this._allowedAttributes)}_registerElementsAfterInit(){this.editor.data.on("init",(()=>{this._dataInitialized=!0;for(const t of this._allowedElements)this._fireRegisterEvent(t)}),{priority:_u.priorities.get("highest")+1})}_registerElementHandlers(){this.on("register",((t,e)=>{const n=this.editor.model.schema;if(e.isObject&&!n.isRegistered(e.model))this._registerObjectElement(e);else if(e.isBlock)this._registerBlockElement(e);else{if(!e.isInline)throw new _u.CKEditorError("data-filter-invalid-definition",null,e);this._registerInlineElement(e)}t.stop()}),{priority:"lowest"})}_registerModelPostFixer(){const t=this.editor.model;t.document.registerPostFixer((e=>{const n=t.document.differ.getChanges();let i=!1;const o=this._getCoupledAttributesMap();for(const t of n){if("attribute"!=t.type||null!==t.attributeNewValue)continue;const n=o.get(t.attributeKey);if(n)for(const{item:o}of t.range.getWalker({shallow:!0}))for(const t of n)o.hasAttribute(t)&&(e.removeAttribute(t,o),i=!0)}return i}))}_getCoupledAttributesMap(){if(this._coupledAttributes)return this._coupledAttributes;this._coupledAttributes=new Map;for(const t of this._allowedElements)if(t.coupledAttribute&&t.model){const e=this._coupledAttributes.get(t.coupledAttribute);e?e.push(t.model):this._coupledAttributes.set(t.coupledAttribute,[t.model])}}_fireRegisterEvent(t){t.view&&this._disallowedElements.has(t.view)||this.fire(t.view?`register:${t.view}`:"register",t)}_registerObjectElement(t){const e=this.editor,n=e.model.schema,i=e.conversion,{view:o,model:r}=t;n.register(r,t.modelSchema),o&&(n.extend(t.model,{allowAttributes:["htmlAttributes","htmlContent"]}),e.data.registerRawContentMatcher({name:o}),i.for("upcast").elementToElement({view:o,model:eM(t),converterPriority:_u.priorities.get("low")+1}),i.for("upcast").add(rM(t,this)),i.for("editingDowncast").elementToStructure({model:{name:r,attributes:["htmlAttributes"]},view:nM(e,t)}),i.for("dataDowncast").elementToElement({model:r,view:(t,{writer:e})=>iM(o,t,e)}),i.for("dataDowncast").add(sM(t)))}_registerBlockElement(t){const e=this.editor,n=e.model.schema,i=e.conversion,{view:o,model:r}=t;if(!n.isRegistered(t.model)){if(n.register(t.model,t.modelSchema),!o)return;i.for("upcast").elementToElement({model:r,view:o,converterPriority:_u.priorities.get("low")+1}),i.for("downcast").elementToElement({model:r,view:o})}o&&(n.extend(t.model,{allowAttributes:"htmlAttributes"}),i.for("upcast").add(rM(t,this)),i.for("downcast").add(sM(t)))}_registerInlineElement(t){const e=this.editor,n=e.model.schema,i=e.conversion,o=t.model;n.extend("$text",{allowAttributes:o}),t.attributeProperties&&n.setAttributeProperties(o,t.attributeProperties),i.for("upcast").add(function({view:t,model:e},n){return i=>{i.on(`element:${t}`,((t,i,o)=>{let r=n.processViewAttributes(i.viewItem,o);if(r||o.consumable.test(i.viewItem,{name:!0})){r=r||{},o.consumable.consume(i.viewItem,{name:!0}),i.modelRange||(i=Object.assign(i,o.convertChildren(i.viewItem,i.modelCursor)));for(const t of i.modelRange.getItems())if(o.schema.checkAttribute(t,e)){const n=tM(r,t.getAttribute(e)||{});o.writer.setAttribute(e,n,t)}}}),{priority:"low"})}}(t,this)),i.for("downcast").attributeToElement({model:o,view:oM(t)})}}function kM(t,e,n){const i=function(t,{consumable:e},n){const i=n.matchAll(t)||[],o=[];for(const n of i)xM(e,t,n),delete n.match.name,e.consume(t,n.match),o.push(n);return o}(t,e,n),{attributes:o,styles:r,classes:s}=function(t){const e={attributes:new Set,classes:new Set,styles:new Set};for(const n of t)for(const t in e){(n.match[t]||[]).forEach((n=>e[t].add(n)))}return e}(i),a={};if(o.size)for(const t of o)vM(t)||o.delete(t);return o.size&&(a.attributes=wM(o,(e=>t.getAttribute(e)))),r.size&&(a.styles=wM(r,(e=>t.getStyle(e)))),s.size&&(a.classes=Array.from(s)),Object.keys(a).length?a:null}function xM(t,e,n){for(const i of["attributes","classes","styles"]){const o=n.match[i];if(o)for(const n of Array.from(o))t.test(e,{[i]:[n]})||gM(o,n)}}function wM(t,e){const n={};for(const i of t){void 0!==e(i)&&(n[i]=e(i))}return n}function _M(t,e){const{name:n}=t;return f(t[e])?Object.entries(t[e]).map((([t,i])=>({name:n,[e]:{[t]:i}}))):Array.isArray(t[e])?t[e].map((t=>({name:n,[e]:[t]}))):[t]}function AM(t){const{name:e,attributes:n,classes:i,styles:o}=t,r=[];return n&&r.push(..._M({name:e,attributes:n},"attributes")),i&&r.push(..._M({name:e,classes:i},"classes")),o&&r.push(..._M({name:e,styles:o},"styles")),r}function vM(t){try{document.createAttribute(t)}catch(t){return!1}return!0}class CM extends e{static get requires(){return[bM]}static get pluginName(){return"CodeBlockElementSupport"}init(){if(!this.editor.plugins.has("CodeBlockEditing"))return;const t=this.editor.plugins.get(bM);t.on("register:pre",((e,n)=>{if("codeBlock"!==n.model)return;const i=this.editor,o=i.model.schema,r=i.conversion;o.extend("codeBlock",{allowAttributes:["htmlAttributes","htmlContentAttributes"]}),r.for("upcast").add(function(t){return e=>{e.on("element:code",((e,n,i)=>{const o=n.viewItem,r=o.parent;function s(e,o){const r=t.processViewAttributes(e,i);r&&i.writer.setAttribute(o,r,n.modelRange)}r&&r.is("element","pre")&&(s(r,"htmlAttributes"),s(o,"htmlContentAttributes"))}),{priority:"low"})}}(t)),r.for("downcast").add((t=>{t.on("attribute:htmlAttributes:codeBlock",((t,e,n)=>{if(!n.consumable.consume(e.item,t.name))return;const{attributeOldValue:i,attributeNewValue:o}=e,r=n.mapper.toViewElement(e.item).parent;QB(n.writer,i,o,r)})),t.on("attribute:htmlContentAttributes:codeBlock",((t,e,n)=>{if(!n.consumable.consume(e.item,t.name))return;const{attributeOldValue:i,attributeNewValue:o}=e,r=n.mapper.toViewElement(e.item);QB(n.writer,i,o,r)}))})),e.stop()}))}}class yM extends e{static get requires(){return[bM]}static get pluginName(){return"DualContentModelElementSupport"}init(){this.editor.plugins.get(bM).on("register",((t,e)=>{const n=this.editor,i=n.model.schema,o=n.conversion;if(!e.paragraphLikeModel)return;if(i.isRegistered(e.model)||i.isRegistered(e.paragraphLikeModel))return;const r={model:e.paragraphLikeModel,view:e.view};i.register(e.model,e.modelSchema),i.register(r.model,{inheritAllFrom:"$block"}),o.for("upcast").elementToElement({view:e.view,model:(t,{writer:n})=>this._hasBlockContent(t)?n.createElement(e.model):n.createElement(r.model),converterPriority:_u.priorities.get("low")+1}),o.for("downcast").elementToElement({view:e.view,model:e.model}),this._addAttributeConversion(e),o.for("downcast").elementToElement({view:r.view,model:r.model}),this._addAttributeConversion(r),t.stop()}))}_hasBlockContent(t){const e=this.editor.editing.view,n=e.domConverter.blockElements;for(const i of e.createRangeIn(t).getItems())if(i.is("element")&&n.includes(i.name))return!0;return!1}_addAttributeConversion(t){const e=this.editor,n=e.conversion,i=e.plugins.get(bM);e.model.schema.extend(t.model,{allowAttributes:"htmlAttributes"}),n.for("upcast").add(rM(t,i)),n.for("downcast").add(sM(t))}}class EM extends e{static get requires(){return[JB]}static get pluginName(){return"HeadingElementSupport"}init(){const t=this.editor;if(!t.plugins.has("HeadingEditing"))return;const e=t.plugins.get(JB),n=t.config.get("heading.options"),i=[];for(const t of n)"model"in t&&"view"in t&&(e.registerBlockElement({view:t.view,model:t.model}),i.push(t.model));e.extendBlockElement({model:"htmlHgroup",modelSchema:{allowChildren:i}})}}class TM extends e{static get requires(){return[bM]}static get pluginName(){return"ImageElementSupport"}init(){const t=this.editor;if(!t.plugins.has("ImageInlineEditing")&&!t.plugins.has("ImageBlockEditing"))return;const e=t.model.schema,n=t.conversion,i=t.plugins.get(bM);i.on("register:figure",(()=>{n.for("upcast").add(function(t){return e=>{e.on("element:figure",((e,n,i)=>{const o=n.viewItem;if(!n.modelRange||!o.hasClass("image"))return;const r=t.processViewAttributes(o,i);r&&i.writer.setAttribute("htmlFigureAttributes",r,n.modelRange)}),{priority:"low"})}}(i))})),i.on("register:img",((t,o)=>{"imageBlock"!==o.model&&"imageInline"!==o.model||(e.isRegistered("imageBlock")&&e.extend("imageBlock",{allowAttributes:["htmlAttributes","htmlFigureAttributes","htmlLinkAttributes"]}),e.isRegistered("imageInline")&&e.extend("imageInline",{allowAttributes:["htmlA","htmlAttributes"]}),n.for("upcast").add(function(t){return e=>{e.on("element:img",((e,n,i)=>{if(!n.modelRange)return;const o=n.viewItem,r=o.parent;function s(e,o){const r=t.processViewAttributes(e,i);r&&i.writer.setAttribute(o,r,n.modelRange)}function a(t){n.modelRange&&n.modelRange.getContainedElement().is("element","imageBlock")&&s(t,"htmlLinkAttributes")}s(o,"htmlAttributes"),r.is("element","a")&&a(r)}),{priority:"low"})}}(i)),n.for("downcast").add((t=>{function e(e){t.on(`attribute:${e}:imageInline`,((t,e,n)=>{if(!n.consumable.consume(e.item,t.name))return;const{attributeOldValue:i,attributeNewValue:o}=e,r=n.mapper.toViewElement(e.item);QB(n.writer,i,o,r)}),{priority:"low"})}function n(e,n){t.on(`attribute:${n}:imageBlock`,((t,n,i)=>{if(!i.consumable.test(n.item,t.name))return;const{attributeOldValue:o,attributeNewValue:r}=n,s=i.mapper.toViewElement(n.item),a=DM(i.writer,s,e);a&&(QB(i.writer,o,r,a),i.consumable.consume(n.item,t.name))}),{priority:"low"}),"a"===e&&t.on("attribute:linkHref:imageBlock",((t,e,n)=>{if(!n.consumable.consume(e.item,"attribute:htmlLinkAttributes:imageBlock"))return;const i=n.mapper.toViewElement(e.item),o=DM(n.writer,i,"a");XB(n.writer,e.item.getAttribute("htmlLinkAttributes"),o)}),{priority:"low"})}e("htmlAttributes"),n("img","htmlAttributes"),n("figure","htmlFigureAttributes"),n("a","htmlLinkAttributes")})),t.stop())}))}}function DM(t,e,n){const i=t.createRangeOn(e);for(const{item:t}of i.getWalker())if(t.is("element",n))return t}class SM extends e{static get requires(){return[bM]}static get pluginName(){return"MediaEmbedElementSupport"}init(){const t=this.editor;if(!t.plugins.has("MediaEmbed")||t.config.get("mediaEmbed.previewsInData"))return;const e=t.model.schema,n=t.conversion,i=this.editor.plugins.get(bM),o=this.editor.plugins.get(JB),r=t.config.get("mediaEmbed.elementName");o.registerBlockElement({model:"media",view:r}),i.on("register:figure",(()=>{n.for("upcast").add(function(t){return e=>{e.on("element:figure",((e,n,i)=>{const o=n.viewItem;if(!n.modelRange||!o.hasClass("media"))return;const r=t.processViewAttributes(o,i);r&&i.writer.setAttribute("htmlFigureAttributes",r,n.modelRange)}),{priority:"low"})}}(i))})),i.on(`register:${r}`,((t,o)=>{"media"===o.model&&(e.extend("media",{allowAttributes:["htmlAttributes","htmlFigureAttributes"]}),n.for("upcast").add(function(t,e){return t=>{t.on(`element:${e}`,n)};function n(e,n,i){function o(e,o){const r=t.processViewAttributes(e,i);r&&i.writer.setAttribute(o,r,n.modelRange)}o(n.viewItem,"htmlAttributes")}}(i,r)),n.for("dataDowncast").add(function(t){return e=>{function n(t,n){e.on(`attribute:${n}:media`,((e,n,i)=>{if(!i.consumable.consume(n.item,e.name))return;const{attributeOldValue:o,attributeNewValue:r}=n,s=i.mapper.toViewElement(n.item),a=function(t,e,n){const i=t.createRangeOn(e);for(const{item:t}of i.getWalker())if(t.is("element",n))return t}(i.writer,s,t);QB(i.writer,o,r,a)}))}n(t,"htmlAttributes"),n("figure","htmlFigureAttributes")}}(r)),t.stop())}))}}class IM extends e{static get requires(){return[bM]}static get pluginName(){return"ScriptElementSupport"}init(){const t=this.editor.plugins.get(bM);t.on("register:script",((e,n)=>{const i=this.editor,o=i.model.schema,r=i.conversion;o.register("htmlScript",n.modelSchema),o.extend("htmlScript",{allowAttributes:["htmlAttributes","htmlContent"],isContent:!0}),i.data.registerRawContentMatcher({name:"script"}),r.for("upcast").elementToElement({view:"script",model:eM(n)}),r.for("upcast").add(rM(n,t)),r.for("downcast").elementToElement({model:"htmlScript",view:(t,{writer:e})=>iM("script",t,e)}),r.for("downcast").add(sM(n)),e.stop()}))}}class BM extends e{static get requires(){return[bM]}static get pluginName(){return"TableElementSupport"}init(){const t=this.editor;if(!t.plugins.has("TableEditing"))return;const e=t.model.schema,n=t.conversion,i=t.plugins.get(bM);i.on("register:figure",(()=>{n.for("upcast").add(function(t){return e=>{e.on("element:figure",((e,n,i)=>{const o=n.viewItem;if(!n.modelRange||!o.hasClass("table"))return;const r=t.processViewAttributes(o,i);r&&i.writer.setAttribute("htmlFigureAttributes",r,n.modelRange)}),{priority:"low"})}}(i))})),i.on("register:table",((t,o)=>{"table"===o.model&&(e.extend("table",{allowAttributes:["htmlAttributes","htmlFigureAttributes","htmlTheadAttributes","htmlTbodyAttributes"]}),n.for("upcast").add(function(t){return e=>{e.on("element:table",((e,n,i)=>{const o=n.viewItem;r(o,"htmlAttributes");for(const t of o.getChildren())t.is("element","thead")&&r(t,"htmlTheadAttributes"),t.is("element","tbody")&&r(t,"htmlTbodyAttributes");function r(e,o){const r=t.processViewAttributes(e,i);r&&i.writer.setAttribute(o,r,n.modelRange)}}))}}(i)),n.for("downcast").add((t=>{function e(e,n){t.on(`attribute:${n}:table`,((t,n,i)=>{if(!i.consumable.consume(n.item,t.name))return;const o=i.mapper.toViewElement(n.item),r=function(t,e,n){const i=t.createRangeOn(e);for(const{item:t}of i.getWalker())if(t.is("element",n))return t}(i.writer,o,e);XB(i.writer,n.attributeNewValue,r)}))}e("table","htmlAttributes"),e("figure","htmlFigureAttributes"),e("thead","htmlTheadAttributes"),e("tbody","htmlTbodyAttributes")})),t.stop())}))}}class MM extends e{static get requires(){return[bM]}static get pluginName(){return"StyleElementSupport"}init(){const t=this.editor.plugins.get(bM);t.on("register:style",((e,n)=>{const i=this.editor,o=i.model.schema,r=i.conversion;o.register("htmlStyle",n.modelSchema),o.extend("htmlStyle",{allowAttributes:["htmlAttributes","htmlContent"],isContent:!0}),i.data.registerRawContentMatcher({name:"style"}),r.for("upcast").elementToElement({view:"style",model:eM(n)}),r.for("upcast").add(rM(n,t)),r.for("downcast").elementToElement({model:"htmlStyle",view:(t,{writer:e})=>iM("style",t,e)}),r.for("downcast").add(sM(n)),e.stop()}))}}class NM extends e{static get requires(){return[bM]}static get pluginName(){return"DocumentListElementSupport"}init(){const t=this.editor;if(!t.plugins.has("DocumentListEditing"))return;const e=t.model.schema,n=t.conversion,i=t.plugins.get(bM),o=t.plugins.get("DocumentListEditing");o.registerDowncastStrategy({scope:"item",attributeName:"htmlLiAttributes",setAttributeOnDowncast(t,e,n){XB(t,e,n)}}),o.registerDowncastStrategy({scope:"list",attributeName:"htmlListAttributes",setAttributeOnDowncast(t,e,n){XB(t,e,n)}}),i.on("register",((t,o)=>{["ul","ol","li"].includes(o.view)&&(t.stop(),e.checkAttribute("$block","htmlListAttributes")||(e.extend("$block",{allowAttributes:["htmlListAttributes","htmlLiAttributes"]}),e.extend("$blockObject",{allowAttributes:["htmlListAttributes","htmlLiAttributes"]}),e.extend("$container",{allowAttributes:["htmlListAttributes","htmlLiAttributes"]}),n.for("upcast").add((t=>{t.on("element:ul",OM("htmlListAttributes",i),{priority:"low"}),t.on("element:ol",OM("htmlListAttributes",i),{priority:"low"}),t.on("element:li",OM("htmlLiAttributes",i),{priority:"low"})}))))})),o.on("postFixer",((t,{listNodes:e,writer:n})=>{const i=[];for(const{node:o,previous:r}of e){if(!r)continue;const e=o.getAttribute("listIndent"),s=r.getAttribute("listIndent");let a=null;if(e>s?i[s]=r:e{t.model.change((t=>{for(const e of n)t.setAttribute("htmlListAttributes",{},e)}))}))}}function OM(t,e){return(n,i,o)=>{const r=i.viewItem;i.modelRange||Object.assign(i,o.convertChildren(i.viewItem,i.modelCursor));const s=e.processViewAttributes(r,o);for(const e of i.modelRange.getItems({shallow:!0}))e.hasAttribute("listItemId")&&(e.hasAttribute(t)||o.writer.setAttribute(t,s||{},e))}}class PM extends e{static get requires(){return[bM,JB]}static get pluginName(){return"CustomElementSupport"}init(){const t=this.editor.plugins.get(bM),e=this.editor.plugins.get(JB);t.on("register:$customElement",((n,i)=>{n.stop();const o=this.editor,r=o.model.schema,s=o.conversion,a=o.editing.view.domConverter.unsafeElements,c=o.data.htmlProcessor.domConverter.preElements;r.register(i.model,i.modelSchema),r.extend(i.model,{allowAttributes:["htmlElementName","htmlAttributes","htmlContent"],isContent:!0}),s.for("upcast").elementToElement({view:/.*/,model:(n,r)=>{if("$comment"==n.name)return;if(!function(t){try{document.createElement(t)}catch(t){return!1}return!0}(n.name))return;if(e.getDefinitionsForView(n.name).size)return;a.includes(n.name)||a.push(n.name),c.includes(n.name)||c.push(n.name);const s=r.writer.createElement(i.model,{htmlElementName:n.name}),l=t.processViewAttributes(n,r);l&&r.writer.setAttribute("htmlAttributes",l,s);const d=new bl(n.document).createDocumentFragment(n),u=o.data.processor.toData(d);r.writer.setAttribute("htmlContent",u,s);for(const{item:t}of o.editing.view.createRangeIn(n))r.consumable.consume(t,{name:!0});return s},converterPriority:"low"}),s.for("editingDowncast").elementToElement({model:{name:i.model,attributes:["htmlElementName","htmlAttributes","htmlContent"]},view:(t,{writer:e})=>{const n=t.getAttribute("htmlElementName"),i=e.createRawElement(n);return t.hasAttribute("htmlAttributes")&&XB(e,t.getAttribute("htmlAttributes"),i),i}}),s.for("dataDowncast").elementToElement({model:{name:i.model,attributes:["htmlElementName","htmlAttributes","htmlContent"]},view:(t,{writer:e})=>{const n=t.getAttribute("htmlElementName"),i=t.getAttribute("htmlContent"),o=e.createRawElement(n,null,((t,e)=>{e.setContentOf(t,i);const n=t.firstChild;for(n.remove();n.firstChild;)t.appendChild(n.firstChild)}));return t.hasAttribute("htmlAttributes")&&XB(e,t.getAttribute("htmlAttributes"),o),o}})}))}}class RM extends e{static get pluginName(){return"GeneralHtmlSupport"}static get requires(){return[bM,CM,yM,EM,TM,SM,IM,BM,MM,NM,PM]}init(){const t=this.editor,e=t.plugins.get(bM);e.loadAllowedConfig(t.config.get("htmlSupport.allow")||[]),e.loadDisallowedConfig(t.config.get("htmlSupport.disallow")||[])}getGhsAttributeNameForElement(t){const e=this.editor.plugins.get("DataSchema"),n=Array.from(e.getDefinitionsForView(t,!1));return n&&n.length&&n[0].isInline&&!n[0].isObject?n[0].model:"htmlAttributes"}addModelHtmlClass(t,e,n){const i=this.editor.model,o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of LM(i,n,o))zM(t,r,o,"classes",(t=>{for(const n of(0,_u.toArray)(e))t.add(n)}))}))}removeModelHtmlClass(t,e,n){const i=this.editor.model,o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of LM(i,n,o))zM(t,r,o,"classes",(t=>{for(const n of(0,_u.toArray)(e))t.delete(n)}))}))}setModelHtmlAttributes(t,e,n){const i=this.editor.model,o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of LM(i,n,o))zM(t,r,o,"attributes",(t=>{for(const[n,i]of Object.entries(e))t.set(n,i)}))}))}removeModelHtmlAttributes(t,e,n){const i=this.editor.model,o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of LM(i,n,o))zM(t,r,o,"attributes",(t=>{for(const n of(0,_u.toArray)(e))t.delete(n)}))}))}setModelHtmlStyles(t,e,n){const i=this.editor.model,o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of LM(i,n,o))zM(t,r,o,"styles",(t=>{for(const[n,i]of Object.entries(e))t.set(n,i)}))}))}removeModelHtmlStyles(t,e,n){const i=this.editor.model,o=this.getGhsAttributeNameForElement(t);i.change((t=>{for(const r of LM(i,n,o))zM(t,r,o,"styles",(t=>{for(const n of(0,_u.toArray)(e))t.delete(n)}))}))}}function*LM(t,e,n){if(e.is("documentSelection")&&e.isCollapsed)t.schema.checkAttributeInSelection(e,n)&&(yield e);else for(const i of function(t,e,n){return e.is("node")||e.is("$text")||e.is("$textProxy")?t.schema.checkAttribute(e,n)?[t.createRangeOn(e)]:[]:t.schema.getValidRanges(t.createSelection(e).getRanges(),n)}(t,e,n))yield*i.getItems({shallow:!0})}function zM(t,e,n,i,o){const r=e.getAttribute(n),s={};for(const t of["attributes","styles","classes"])if(t!=i)r&&r[t]&&(s[t]=r[t]);else{const e="classes"==t?new Set(r&&r[t]||[]):new Map(Object.entries(r&&r[t]||{}));o(e),e.size&&(s[t]="classes"==t?Array.from(e):Object.fromEntries(e))}Object.keys(s).length?e.is("documentSelection")?t.setSelectionAttribute(n,s):t.setAttribute(n,s,e):r&&(e.is("documentSelection")?t.removeSelectionAttribute(n):t.removeAttribute(n,e))}class jM extends e{static get pluginName(){return"HtmlComment"}init(){const t=this.editor;t.model.schema.addAttributeCheck(((t,e)=>{if(t.endsWith("$root")&&e.startsWith("$comment"))return!0})),t.conversion.for("upcast").elementToMarker({view:"$comment",model:(t,{writer:e})=>{const n=this.editor.model.document.getRoot(),i=t.getCustomProperty("$rawContent"),o=`$comment:${(0,_u.uid)()}`;return e.setAttribute(o,i,n),o}}),t.conversion.for("dataDowncast").markerToElement({model:"$comment",view:(t,{writer:e})=>{const n=this.editor.model.document.getRoot(),i=t.markerName,o=n.getAttribute(i),r=e.createUIElement("$comment");return e.setCustomProperty("$rawContent",o,r),r}}),t.model.document.registerPostFixer((e=>{const n=t.model.document.getRoot(),i=t.model.document.differ.getChangedMarkers().filter((t=>t.name.startsWith("$comment"))),o=i.filter((t=>{const e=t.data.newRange;return e&&"$graveyard"===e.root.rootName}));if(0===o.length)return!1;for(const t of o)e.removeMarker(t.name),e.removeAttribute(t.name,n);return!0})),t.data.on("set",(()=>{for(const e of t.model.markers.getMarkersGroup("$comment"))this.removeHtmlComment(e.name)}),{priority:"high"}),t.model.on("deleteContent",((e,[n])=>{for(const e of n.getRanges()){const n=t.model.schema.getLimitElement(e),i=t.model.createPositionAt(n,0),o=t.model.createPositionAt(n,"end");let r;r=i.isTouching(e.start)&&o.isTouching(e.end)?this.getHtmlCommentsInRange(t.model.createRange(i,o)):this.getHtmlCommentsInRange(e,{skipBoundaries:!0});for(const t of r)this.removeHtmlComment(t)}}),{priority:"high"})}createHtmlComment(t,e){const n=(0,_u.uid)(),i=this.editor.model,o=i.document.getRoot(),r=`$comment:${n}`;return i.change((n=>{const i=n.createRange(t);return n.addMarker(r,{usingOperation:!0,affectsData:!0,range:i}),n.setAttribute(r,e,o),r}))}removeHtmlComment(t){const e=this.editor,n=e.model.document.getRoot(),i=e.model.markers.get(t);return!!i&&(e.model.change((e=>{e.removeMarker(i),e.removeAttribute(t,n)})),!0)}getHtmlCommentData(t){const e=this.editor,n=e.model.markers.get(t),i=e.model.document.getRoot();return n?{content:i.getAttribute(t),position:n.getStart()}:null}getHtmlCommentsInRange(t,{skipBoundaries:e=!1}={}){const n=!e;return Array.from(this.editor.model.markers.getMarkersGroup("$comment")).filter((e=>function(t,e){const i=t.getRange().start;return(i.isAfter(e.start)||n&&i.isEqual(e.start))&&(i.isBefore(e.end)||n&&i.isEqual(e.end))}(e,t))).map((t=>t.name))}}class FM extends i{refresh(){const t=this.editor.model,e=t.document;this.isEnabled=t.schema.checkAttributeInSelection(e.selection,"mention")}execute(t){const e=this.editor.model,n=e.document.selection,i="string"==typeof t.mention?{id:t.mention}:t.mention,o=i.id,r=t.range||n.getFirstRange(),s=t.text||o,a=HM({_text:s,id:o},i);if(1!=t.marker.length)throw new _u.CKEditorError("mentioncommand-incorrect-marker",this);if(o.charAt(0)!=t.marker)throw new _u.CKEditorError("mentioncommand-incorrect-id",this);e.change((t=>{const i=(0,_u.toMap)(n.getAttributes()),o=new Map(i.entries());o.set("mention",a),e.insertContent(t.createText(s,o),r),e.insertContent(t.createText(" ",i),r.start.getShiftedBy(s.length))}))}}class VM extends e{static get pluginName(){return"MentionEditing"}init(){const t=this.editor,e=t.model,n=e.document;e.schema.extend("$text",{allowAttributes:"mention"}),t.conversion.for("upcast").elementToAttribute({view:{name:"span",key:"data-mention",classes:"mention"},model:{key:"mention",value:t=>UM(t)}}),t.conversion.for("downcast").attributeToElement({model:"mention",view:WM}),t.conversion.for("downcast").add(qM),n.registerPostFixer((t=>function(t,e,n){const i=e.differ.getChanges();let o=!1;for(const e of i){const i=e.position;if("$text"==e.name){const e=i.textNode&&i.textNode.nextSibling;o=GM(i.textNode,t)||o,o=GM(e,t)||o,o=GM(i.nodeBefore,t)||o,o=GM(i.nodeAfter,t)||o}if("$text"!=e.name&&"insert"==e.type){const e=i.nodeAfter;for(const n of t.createRangeIn(e).getItems())o=GM(n,t)||o}if("insert"==e.type&&n.isInline(e.name)){const e=i.nodeAfter&&i.nodeAfter.nextSibling;o=GM(i.nodeBefore,t)||o,o=GM(e,t)||o}}return o}(t,n,e.schema))),n.registerPostFixer((t=>function(t,e){const n=e.differ.getChanges();let i=!1;for(const e of n)if("attribute"===e.type&&"mention"!=e.attributeKey){const n=e.range.start.nodeBefore,o=e.range.end.nodeAfter;for(const r of[n,o])ZM(r)&&r.getAttribute(e.attributeKey)!=e.attributeNewValue&&(t.setAttribute(e.attributeKey,e.attributeNewValue,r),i=!0)}return i}(t,n))),n.registerPostFixer((t=>function(t,e){const n=e.selection,i=n.focus;if(n.isCollapsed&&n.hasAttribute("mention")&&function(t){const e=t.isAtStart;return t.nodeBefore&&t.nodeBefore.is("$text")||e}(i))return t.removeSelectionAttribute("mention"),!0}(t,n))),t.commands.add("mention",new FM(t))}}function HM(t,e){return Object.assign({uid:(0,_u.uid)()},t,e||{})}function UM(t,e){const n=t.getAttribute("data-mention"),i=t.getChild(0);if(!i)return;return HM({id:n,_text:i.data},e)}function qM(t){t.on("attribute:mention",((t,e,n)=>{const i=e.attributeNewValue;if(!e.item.is("$textProxy")||!i)return;const o=e.range.start;(o.textNode||o.nodeAfter).data!=i._text&&n.consumable.consume(e.item,t.name)}),{priority:"highest"})}function WM(t,{writer:e}){if(!t)return;const n={class:"mention","data-mention":t.id},i={id:t.uid,priority:20};return e.createAttributeElement("span",n,i)}function ZM(t){if(!t||!t.is("$text")&&!t.is("$textProxy")||!t.hasAttribute("mention"))return!1;return t.data!=t.getAttribute("mention")._text}function GM(t,e){return!!ZM(t)&&(e.removeAttribute("mention",t),!0)}var KM=__webpack_require__(6391),$M={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(KM.Z,$M);KM.Z.locals;class YM extends ph{constructor(t){super(t),this.extendTemplate({attributes:{class:["ck-mentions"],tabindex:"-1"}})}selectFirst(){this.select(0)}selectNext(){const t=this.selected,e=this.items.getIndex(t);this.select(e+1)}selectPrevious(){const t=this.selected,e=this.items.getIndex(t);this.select(e-1)}select(t){let e=0;t>0&&t{n?(this.domElement.classList.add("ck-on"),this.domElement.classList.remove("ck-off")):(this.domElement.classList.add("ck-off"),this.domElement.classList.remove("ck-on"))})),this.listenTo(this.domElement,"click",(()=>{this.fire("execute")}))}render(){super.render(),this.element=this.domElement}}class QM extends fh{highlight(){this.children.first.isOn=!0}removeHighlight(){this.children.first.isOn=!1}}const XM=[_u.keyCodes.arrowup,_u.keyCodes.arrowdown,_u.keyCodes.esc],tN=[_u.keyCodes.enter,_u.keyCodes.tab];class eN extends e{static get pluginName(){return"MentionUI"}static get requires(){return[im]}constructor(t){super(t),this._mentionsView=this._createMentionView(),this._mentionsConfigurations=new Map,this._requestFeedDebounced=Mr(this._requestFeed,100),t.config.define("mention",{feeds:[]})}init(){const t=this.editor,e=t.config.get("mention.commitKeys")||tN,n=XM.concat(e);this._balloon=t.plugins.get(im),t.editing.view.document.on("keydown",((t,i)=>{var o;o=i.keyCode,n.includes(o)&&this._isUIVisible&&(i.preventDefault(),t.stop(),i.keyCode==_u.keyCodes.arrowdown&&this._mentionsView.selectNext(),i.keyCode==_u.keyCodes.arrowup&&this._mentionsView.selectPrevious(),e.includes(i.keyCode)&&this._mentionsView.executeSelected(),i.keyCode==_u.keyCodes.esc&&this._hideUIAndRemoveMarker())}),{priority:"highest"}),Au({emitter:this._mentionsView,activator:()=>this._isUIVisible,contextElements:[this._balloon.view.element],callback:()=>this._hideUIAndRemoveMarker()});const i=t.config.get("mention.feeds");for(const t of i){const e=t.feed,n=t.marker;if(!sN(n))throw new _u.CKEditorError("mentionconfig-incorrect-marker",null,{marker:n});const i={marker:n,feedCallback:"function"==typeof e?e.bind(this.editor):rN(e),itemRenderer:t.itemRenderer};this._mentionsConfigurations.set(n,i)}this._setupTextWatcher(i),this.listenTo(t,"change:isReadOnly",(()=>{this._hideUIAndRemoveMarker()})),this.on("requestFeed:response",((t,e)=>this._handleFeedResponse(e))),this.on("requestFeed:error",(()=>this._hideUIAndRemoveMarker()))}destroy(){super.destroy(),this._mentionsView.destroy()}get _isUIVisible(){return this._balloon.visibleView===this._mentionsView}_createMentionView(){const t=this.editor.locale,e=new YM(t);return this._items=new _u.Collection,e.items.bindTo(this._items).using((n=>{const{item:i,marker:o}=n,r=this.editor.config.get("mention.dropdownLimit")||10;if(e.items.length>=r)return;const s=new QM(t),a=this._renderItem(i,o);return a.delegate("execute").to(s),s.children.add(a),s.item=i,s.marker=o,s.on("execute",(()=>{e.fire("execute",{item:i,marker:o})})),s})),e.on("execute",((t,e)=>{const n=this.editor,i=n.model,o=e.item,r=e.marker,s=n.model.markers.get("mention"),a=i.createPositionAt(i.document.selection.focus),c=i.createPositionAt(s.getStart()),l=i.createRange(c,a);this._hideUIAndRemoveMarker(),n.execute("mention",{mention:o,text:o.text,marker:r,range:l}),n.editing.view.focus()})),e}_getItemRenderer(t){const{itemRenderer:e}=this._mentionsConfigurations.get(t);return e}_requestFeed(t,e){this._lastRequested=e;const{feedCallback:n}=this._mentionsConfigurations.get(t),i=n(e);i instanceof Promise?i.then((n=>{this._lastRequested==e?this.fire("requestFeed:response",{feed:n,marker:t,feedText:e}):this.fire("requestFeed:discarded",{feed:n,marker:t,feedText:e})})).catch((e=>{this.fire("requestFeed:error",{error:e}),(0,_u.logWarning)("mention-feed-callback-error",{marker:t})})):this.fire("requestFeed:response",{feed:i,marker:t,feedText:e})}_setupTextWatcher(t){const e=this.editor,n=t.map((t=>({...t,pattern:oN(t.marker,t.minimumCharacters||0)}))),i=new mg(e.model,function(t){return e=>{const n=iN(t,e);if(!n)return!1;let i=0;0!==n.position&&(i=n.position-1);const o=e.substring(i);return n.pattern.test(o)}}(n));i.on("matched",((t,i)=>{const o=iN(n,i.text),r=e.model.document.selection.focus,s=e.model.createPositionAt(r.parent,o.position);if(function(t){const e=t.textNode&&t.textNode.hasAttribute("mention"),n=t.nodeBefore;return e||n&&n.is("$text")&&n.hasAttribute("mention")}(r)||function(t){const e=t.nodeAfter;return e&&e.is("$text")&&e.hasAttribute("mention")}(s))return void this._hideUIAndRemoveMarker();const a=function(t,e){let n=0;0!==t.position&&(n=t.position-1);const i=oN(t.marker,0),o=e.substring(n);return o.match(i)[2]}(o,i.text),c=o.marker.length+a.length,l=r.getShiftedBy(-c),d=r.getShiftedBy(-a.length),u=e.model.createRange(l,d);if(aN(e)){const t=e.model.markers.get("mention");e.model.change((e=>{e.updateMarker(t,{range:u})}))}else e.model.change((t=>{t.addMarker("mention",{range:u,usingOperation:!1,affectsData:!1})}));this._requestFeedDebounced(o.marker,a)})),i.on("unmatched",(()=>{this._hideUIAndRemoveMarker()}));const o=e.commands.get("mention");return i.bind("isEnabled").to(o),i}_handleFeedResponse(t){const{feed:e,marker:n}=t;if(!aN(this.editor))return;this._items.clear();for(const t of e){const e="object"!=typeof t?{id:t,text:t}:t;this._items.add({item:e,marker:n})}const i=this.editor.model.markers.get("mention");this._items.length?this._showOrUpdateUI(i):this._hideUIAndRemoveMarker()}_showOrUpdateUI(t){this._isUIVisible?this._balloon.updatePosition(this._getBalloonPanelPositionData(t,this._mentionsView.position)):this._balloon.add({view:this._mentionsView,position:this._getBalloonPanelPositionData(t,this._mentionsView.position),singleViewMode:!0}),this._mentionsView.position=this._balloon.view.position,this._mentionsView.selectFirst()}_hideUIAndRemoveMarker(){this._balloon.hasView(this._mentionsView)&&this._balloon.remove(this._mentionsView),aN(this.editor)&&this.editor.model.change((t=>t.removeMarker("mention"))),this._mentionsView.position=void 0}_renderItem(t,e){const n=this.editor;let i,o=t.id;const r=this._getItemRenderer(e);if(r){const e=r(t);"string"!=typeof e?i=new JM(n.locale,e):o=e}if(!i){const t=new Nu(n.locale);t.label=o,t.withText=!0,i=t}return i}_getBalloonPanelPositionData(t,e){const n=this.editor,i=n.editing,o=i.view.domConverter,r=i.mapper;return{target:()=>{let e=t.getRange();"$graveyard"==e.start.root.rootName&&(e=n.model.document.selection.getFirstRange());const i=r.toViewRange(e);return _u.Rect.getDomRangeRects(o.viewRangeToDom(i)).pop()},limiter:()=>{const t=this.editor.editing.view,e=t.document.selection.editableElement;return e?t.domConverter.mapViewToDom(e.root):null},positions:nN(e)}}}function nN(t){const e={caret_se:t=>({top:t.bottom+3,left:t.right,name:"caret_se",config:{withArrow:!1}}),caret_ne:(t,e)=>({top:t.top-e.height-3,left:t.right,name:"caret_ne",config:{withArrow:!1}}),caret_sw:(t,e)=>({top:t.bottom+3,left:t.right-e.width,name:"caret_sw",config:{withArrow:!1}}),caret_nw:(t,e)=>({top:t.top-e.height-3,left:t.right-e.width,name:"caret_nw",config:{withArrow:!1}})};return Object.prototype.hasOwnProperty.call(e,t)?[e[t]]:[e.caret_se,e.caret_sw,e.caret_ne,e.caret_nw]}function iN(t,e){let n;for(const i of t){const t=e.lastIndexOf(i.marker);t>0&&!e.substring(t-1).match(i.pattern)||(!n||t>=n.position)&&(n={marker:i.marker,position:t,minimumCharacters:i.minimumCharacters,pattern:i.pattern})}return n}function oN(t,e){const n=0==e?"*":`{${e},}`,i=_u.env.features.isRegExpUnicodePropertySupported?"\\p{Ps}\\p{Pi}\"'":"\\(\\[{\"'";return new RegExp(`(?:^|[ ${i}])([${t}])(.${n})$`,"u")}function rN(t){return e=>t.filter((t=>("string"==typeof t?t:String(t.id)).toLowerCase().includes(e.toLowerCase())))}function sN(t){return t&&1==t.length}function aN(t){return t.model.markers.has("mention")}var cN=__webpack_require__(7583),lN={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(cN.Z,lN);cN.Z.locals;class dN extends e{toMentionAttribute(t,e){return UM(t,e)}static get pluginName(){return"Mention"}static get requires(){return[VM,eN]}}class uN extends i{refresh(){const t=this.editor.model,e=t.schema,n=t.document.selection;this.isEnabled=function(t,e,n){const i=function(t,e){const n=cw(t,e).start.parent;if(n.isEmpty&&!n.is("element","$root"))return n.parent;return n}(t,n);return e.checkChild(i,"pageBreak")}(n,e,t)}execute(){const t=this.editor.model;t.change((e=>{const n=e.createElement("pageBreak");t.insertObject(n,null,null,{setSelection:"after"})}))}}var hN=__webpack_require__(6448),mN={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};Go()(hN.Z,mN);hN.Z.locals;class gN extends e{static get pluginName(){return"PageBreakEditing"}init(){const t=this.editor,e=t.model.schema,n=t.t,i=t.conversion;e.register("pageBreak",{inheritAllFrom:"$blockObject"}),i.for("dataDowncast").elementToStructure({model:"pageBreak",view:(t,{writer:e})=>e.createContainerElement("div",{class:"page-break",style:"page-break-after: always"},e.createContainerElement("span",{style:"display: none"}))}),i.for("editingDowncast").elementToStructure({model:"pageBreak",view:(t,{writer:e})=>{const i=n("Page break"),o=e.createContainerElement("div"),r=e.createRawElement("span",{class:"page-break__label"},(function(t){t.innerText=n("Page break")}));return e.addClass("page-break",o),e.insert(e.createPositionAt(o,0),r),function(t,e,n){return e.setCustomProperty("pageBreak",!0,t),nw(t,e,{label:n})}(o,e,i)}}),i.for("upcast").elementToElement({view:t=>{const e="always"==t.getStyle("page-break-before"),n="always"==t.getStyle("page-break-after");if(e||n){if(1==t.childCount){const e=t.getChild(0);if(!e.is("element","span")||"none"!=e.getStyle("display"))return}else if(t.childCount>1)return;return{name:!0}}},model:"pageBreak",converterPriority:"high"}),t.commands.add("pageBreak",new uN(t))}}class pN extends e{static get pluginName(){return"PageBreakUI"}init(){const t=this.editor,e=t.t;t.ui.componentFactory.add("pageBreak",(n=>{const i=t.commands.get("pageBreak"),o=new Nu(n);return o.set({label:e("Page break"),icon:'',tooltip:!0}),o.bind("isEnabled").to(i,"isEnabled"),this.listenTo(o,"execute",(()=>{t.execute("pageBreak"),t.editing.view.focus()})),o}))}}class fN extends e{static get requires(){return[gN,pN,Cw]}static get pluginName(){return"PageBreak"}}function bN(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 kN(t,e){return!!t&&t.is("element")&&e.includes(t.name)}function xN(t,e){if(!t.childCount)return;const n=new bl(t.document),i=function(t,e){const n=e.createRangeIn(t),i=new zn({name:/^p|h\d+$/,styles:{"mso-list":/.*/}}),o=[];for(const t of n)if("elementStart"===t.type&&i.match(t.item)){const e=AN(t.item);o.push({element:t.item,id:e.id,order:e.order,indent:e.indent})}return o}(t,n);if(!i.length)return;let o=null,r=1;i.forEach(((t,s)=>{const a=function(t,e){if(!t)return!0;if(t.id!==e.id)return e.indent-t.indent!=1;const n=e.element.previousSibling;if(!n)return!0;return i=n,!(i.is("element","ol")||i.is("element","ul"));var i}(i[s-1],t),c=a?null:i[s-1],l=(u=t,(d=c)?u.indent-d.indent:u.indent-1);var d,u;if(a&&(o=null,r=1),!o||0!==l){const i=function(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=n.exec(e);let s="decimal",a="ol",c=null;if(r&&r[1]){const e=i.exec(r[1]);if(e&&e[1]&&(s=e[1].trim(),a="bullet"!==s&&"image"!==s?"ol":"ul"),"bullet"===s){const e=function(t){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);return t.is("$text")?t:t.getChild(0)}}(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&&(s=e)}else{const t=o.exec(r[1]);t&&t[1]&&(c=parseInt(t[1]))}}return{type:a,startIndex:c,style:wN(s)}}(t,e);if(o){if(t.indent>r){const t=o.getChild(o.childCount-1),e=t.getChild(t.childCount-1);o=_N(i,e,n),r+=1}else if(t.indent1&&n.setAttribute("start",t.startIndex,o),o}function AN(t){const e={},n=t.getStyle("mso-list");if(n){const t=n.match(/(^|\s{1,100})l(\d+)/i),i=n.match(/\s{0,100}lfo(\d+)/i),o=n.match(/\s{0,100}level(\d+)/i);t&&i&&o&&(e.id=t[2],e.order=i[1],e.indent=o[1])}return e}const vN=/id=("|')docs-internal-guid-[-0-9a-f]+("|')/i;class CN{constructor(t){this.document=t}isActive(t){return vN.test(t)}execute(t){const e=new bl(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 ro(e.document.stylesProcessor),i=new dr(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=bN(t,"forward",e,{blockElements:o,inlineObjectElements:r}),i=bN(t,"backward",e,{blockElements:o,inlineObjectElements:r}),a=kN(n,o);(kN(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}}function yN(t,e){if(!t.childCount)return;const n=new bl,i=function(t,e){const n=e.createRangeIn(t),i=new zn({name:/v:(.+)/}),o=[];for(const t of n){if("elementStart"!=t.type)continue;const e=t.item,n=e.previousSibling&&e.previousSibling.name||null;i.match(e)&&e.getAttribute("o:gfxdata")&&"v:shapetype"!==n&&o.push(t.item.getAttribute("id"))}return o}(t,n);!function(t,e,n){const i=n.createRangeIn(e),o=new zn({name:"img"}),r=[];for(const e of i)if(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){const n=e.createRangeIn(t),i=new zn({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 zn({name:"img"}),o=[];for(const t of n)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 TN=//i,DN=/xmlns:o="urn:schemas-microsoft-com/i;class SN{constructor(t){this.document=t}isActive(t){return TN.test(t)||DN.test(t)}execute(t){const{body:e,stylesString:n}=t._parsedData;xN(e,n),yN(e,t.dataTransfer.getData("text/rtf")),t.content=e}}function IN(t){return t.replace(/(\s+)<\/span>/g,((t,e)=>1===e.length?" ":Array(e.length+1).join("  ").substr(0,e.length)))}function BN(t,e){const n=new DOMParser,i=function(t){return IN(IN(t)).replace(/([^\S\r\n]*?)[\r\n]+([^\S\r\n]*<\/span>)/g,"$1$2").replace(/<\/span>/g,"").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.replace(/

    abc

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

    abc

    -->

    abc

    \n //

    abc

    -->

    abc

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

    abc

    -->

    abc

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

    abcxyz

    -->

    abcxyz

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

    abcxyz

    -->

    abcxyz

    \n //

    abcxyz

    -->

    abcxyz

    \n //\n if (this._unwrapAttributeElement(unwrapElement, child)) {\n unwrapPositions.push(new Position(parent, i), new Position(parent, i + 1));\n i++;\n continue;\n }\n //\n // If other nested attribute is found, look through it's children for elements to unwrap.\n //\n //

    abc

    -->

    abc

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

    foobar{}

    \n //

    foobar[]

    \n //

    foobar[]

    \n if (positionOffset == length) {\n const newPosition = new Position(positionParent.parent, positionParent.index + 1);\n return this._breakAttributes(newPosition, forceSplitText);\n }\n else {\n //

    foo{}bar

    \n //

    foo[]bar

    \n //

    foo{}bar

    \n if (positionOffset === 0) {\n const newPosition = new Position(positionParent.parent, positionParent.index);\n return this._breakAttributes(newPosition, forceSplitText);\n }\n //

    foob{}ar

    \n //

    foob[]ar

    \n //

    foob[]ar

    \n //

    foob[]ar

    \n else {\n const offsetAfter = positionParent.index + 1;\n // Break element.\n const clonedNode = positionParent._clone();\n // Insert cloned node to position's parent node.\n positionParent.parent._insertChild(offsetAfter, clonedNode);\n this._addToClonedElementsGroup(clonedNode);\n // Get nodes to move.\n const count = positionParent.childCount - positionOffset;\n const nodesToMove = positionParent._removeChildren(positionOffset, count);\n // Move nodes to cloned node.\n clonedNode._appendChild(nodesToMove);\n // Create new position to work on.\n const newPosition = new Position(positionParent.parent, offsetAfter);\n return this._breakAttributes(newPosition, forceSplitText);\n }\n }\n }\n /**\n * Stores the information that an {@link module:engine/view/attributeelement~AttributeElement attribute element} was\n * added to the tree. Saves the reference to the group in the given element and updates the group, so other elements\n * from the group now keep a reference to the given attribute element.\n *\n * The clones group can be obtained using {@link module:engine/view/attributeelement~AttributeElement#getElementsWithSameId}.\n *\n * Does nothing if added element has no {@link module:engine/view/attributeelement~AttributeElement#id id}.\n *\n * @private\n * @param {module:engine/view/attributeelement~AttributeElement} element Attribute element to save.\n */\n _addToClonedElementsGroup(element) {\n // Add only if the element is in document tree.\n if (!element.root.is('rootElement')) {\n return;\n }\n // Traverse the element's children recursively to find other attribute elements that also might got inserted.\n // The loop is at the beginning so we can make fast returns later in the code.\n if (element.is('element')) {\n for (const child of element.getChildren()) {\n this._addToClonedElementsGroup(child);\n }\n }\n const id = element.id;\n if (!id) {\n return;\n }\n let group = this._cloneGroups.get(id);\n if (!group) {\n group = new Set();\n this._cloneGroups.set(id, group);\n }\n group.add(element);\n element._clonesGroup = group;\n }\n /**\n * Removes all the information about the given {@link module:engine/view/attributeelement~AttributeElement attribute element}\n * from its clones group.\n *\n * 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 * This allows to reference the whole group even if the element was already removed from the tree.\n *\n * Does nothing if the element has no {@link module:engine/view/attributeelement~AttributeElement#id id}.\n *\n * @private\n * @param {module:engine/view/attributeelement~AttributeElement} element Attribute element to remove.\n */\n _removeFromClonedElementsGroup(element) {\n // Traverse the element's children recursively to find other attribute elements that also got removed.\n // The loop is at the beginning so we can make fast returns later in the code.\n if (element.is('element')) {\n for (const child of element.getChildren()) {\n this._removeFromClonedElementsGroup(child);\n }\n }\n const id = element.id;\n if (!id) {\n return;\n }\n const group = this._cloneGroups.get(id);\n if (!group) {\n return;\n }\n group.delete(element);\n // Not removing group from element on purpose!\n // If other parts of code have reference to this element, they will be able to get references to other elements from the group.\n }\n}\n// Helper function for `view.writer.wrap`. Checks if given element has any children that are not ui elements.\nfunction _hasNonUiChildren(parent) {\n return Array.from(parent.getChildren()).some(child => !child.is('uiElement'));\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// 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 {module:engine/view/position~Position} position Position used as a start point to locate parent container.\n// @returns {module:engine/view/containerelement~ContainerElement|module:engine/view/documentfragment~DocumentFragment|undefined}\n// Parent container element or `undefined` if container is not found.\nfunction getParentContainer(position) {\n let parent = position.parent;\n while (!isContainerOrFragment(parent)) {\n if (!parent) {\n return undefined;\n }\n parent = parent.parent;\n }\n return parent;\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//\n// @param {module:engine/view/attributeelement~AttributeElement} a\n// @param {module:engine/view/attributeelement~AttributeElement} b\n// @returns {Boolean}\nfunction shouldABeOutsideB(a, b) {\n if (a.priority < b.priority) {\n return true;\n }\n else if (a.priority > b.priority) {\n return false;\n }\n // When priorities are equal and names are different - use identities.\n return a.getIdentity() < b.getIdentity();\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//\t\t

    foo[]

    ->

    foo{}

    \n//\t\t

    []foo

    ->

    {}foo

    \n//\n// @param {module:engine/view/position~Position} position\n// @returns {module:engine/view/position~Position} Position located inside text node or same position if there is no text nodes\n// before or after position location.\nfunction movePositionToTextNode(position) {\n const nodeBefore = position.nodeBefore;\n if (nodeBefore && nodeBefore.is('$text')) {\n return new Position(nodeBefore, nodeBefore.data.length);\n }\n const nodeAfter = position.nodeAfter;\n if (nodeAfter && nodeAfter.is('$text')) {\n return new Position(nodeAfter, 0);\n }\n return position;\n}\n// Breaks text node into two text nodes when possible.\n//\n//\t\t

    foo{}bar

    ->

    foo[]bar

    \n//\t\t

    {}foobar

    ->

    []foobar

    \n//\t\t

    foobar{}

    ->

    foobar[]

    \n//\n// @param {module:engine/view/position~Position} position Position that need to be placed inside text node.\n// @returns {module:engine/view/position~Position} New position after breaking text node.\nfunction breakTextNode(position) {\n if (position.offset == position.parent.data.length) {\n return new Position(position.parent.parent, position.parent.index + 1);\n }\n if (position.offset === 0) {\n return new Position(position.parent.parent, position.parent.index);\n }\n // Get part of the text that need to be moved.\n const textToMove = position.parent.data.slice(position.offset);\n // Leave rest of the text in position's parent.\n position.parent._data = position.parent.data.slice(0, position.offset);\n // Insert new text node after position's parent text node.\n position.parent.parent._insertChild(position.parent.index + 1, new Text(position.root.document, textToMove));\n // Return new position between two newly created text nodes.\n return new Position(position.parent.parent, position.parent.index + 1);\n}\n// Merges two text nodes into first node. Removes second node and returns merge position.\n//\n// @param {module:engine/view/text~Text} t1 First text node to merge. Data from second text node will be moved at the end of\n// this text node.\n// @param {module:engine/view/text~Text} t2 Second text node to merge. This node will be removed after merging.\n// @returns {module:engine/view/position~Position} Position after merging text nodes.\nfunction mergeTextNodes(t1, t2) {\n // Merge text data into first text node and remove second one.\n const nodeBeforeLength = t1.data.length;\n t1._data += t2.data;\n t2._remove();\n return new Position(t1, nodeBeforeLength);\n}\nconst validNodesToInsert = [Text, AttributeElement, ContainerElement, EmptyElement, RawElement, UIElement];\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//\n// @param Iterable. nodes\n// @param {Object} errorContext\nfunction validateNodesToInsert(nodes, errorContext) {\n for (const node of nodes) {\n if (!validNodesToInsert.some((validNode => node instanceof validNode))) { // eslint-disable-line no-use-before-define\n /**\n * One of the nodes to be inserted is of an invalid type.\n *\n * Nodes to be inserted with {@link module:engine/view/downcastwriter~DowncastWriter#insert `DowncastWriter#insert()`} should be\n * of the following types:\n *\n * * {@link module:engine/view/attributeelement~AttributeElement AttributeElement},\n * * {@link module:engine/view/containerelement~ContainerElement ContainerElement},\n * * {@link module:engine/view/emptyelement~EmptyElement EmptyElement},\n * * {@link module:engine/view/uielement~UIElement UIElement},\n * * {@link module:engine/view/rawelement~RawElement RawElement},\n * * {@link module:engine/view/text~Text Text}.\n *\n * @error view-writer-insert-invalid-node-type\n */\n throw new CKEditorError('view-writer-insert-invalid-node-type', errorContext);\n }\n if (!node.is('$text')) {\n validateNodesToInsert(node.getChildren(), errorContext);\n }\n }\n}\n// Checks if node is ContainerElement or DocumentFragment, because in most cases they should be treated the same way.\n//\n// @param {module:engine/view/node~Node} node\n// @returns {Boolean} Returns `true` if node is instance of ContainerElement or DocumentFragment.\nfunction isContainerOrFragment(node) {\n return node && (node.is('containerElement') || node.is('documentFragment'));\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//\n// @param {module:engine/view/range~Range} range\n// @param {Object} errorContext\nfunction validateRangeContainer(range, errorContext) {\n const startContainer = getParentContainer(range.start);\n const endContainer = getParentContainer(range.end);\n if (!startContainer || !endContainer || startContainer !== endContainer) {\n /**\n * The container of the given range is invalid.\n *\n * This may happen if {@link module:engine/view/range~Range#start range start} and\n * {@link module:engine/view/range~Range#end range end} positions are not placed inside the same container element or\n * a parent container for these positions cannot be found.\n *\n * Methods like {@link module:engine/view/downcastwriter~DowncastWriter#wrap `DowncastWriter#remove()`},\n * {@link module:engine/view/downcastwriter~DowncastWriter#wrap `DowncastWriter#clean()`},\n * {@link module:engine/view/downcastwriter~DowncastWriter#wrap `DowncastWriter#wrap()`},\n * {@link module:engine/view/downcastwriter~DowncastWriter#wrap `DowncastWriter#unwrap()`} need to be called\n * on a range that has its start and end positions located in the same container element. Both positions can be\n * nested within other elements (e.g. an attribute element) but the closest container ancestor must be the same.\n *\n * @error view-writer-invalid-range-container\n */\n throw new CKEditorError('view-writer-invalid-range-container', errorContext);\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//\n// @private\n// @param {module:engine/view/element~Element} a\n// @param {module:engine/view/element~Element} b\n// @returns {Boolean}\nfunction canBeJoined(a, b) {\n return a.id === null && b.id === null;\n}\n","/**\n * @license Copyright (c) 2003-2022, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\nimport { keyCodes } from '@ckeditor/ckeditor5-utils/src/keyboard';\nimport isText from '@ckeditor/ckeditor5-utils/src/dom/istext';\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 * 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 * @function\n */\nexport const NBSP_FILLER = (domDocument) => domDocument.createTextNode('\\u00A0');\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 * @function\n */\nexport const MARKED_NBSP_FILLER = (domDocument) => {\n const span = domDocument.createElement('span');\n span.dataset.ckeFiller = 'true';\n span.innerText = '\\u00A0';\n return span;\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 * @function\n */\nexport const BR_FILLER = (domDocument) => {\n const fillerBr = domDocument.createElement('br');\n fillerBr.dataset.ckeFiller = 'true';\n return fillerBr;\n};\n/**\n * Length of the {@link module:engine/view/filler~INLINE_FILLER INLINE_FILLER}.\n */\nexport const INLINE_FILLER_LENGTH = 7;\n/**\n * Inline filler which is a sequence of the word joiners.\n *\n * @type {String}\n */\nexport const INLINE_FILLER = '\\u2060'.repeat(INLINE_FILLER_LENGTH);\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 *\t\tstartsWithFiller( document.createTextNode( INLINE_FILLER ) ); // true\n *\t\tstartsWithFiller( document.createTextNode( INLINE_FILLER + 'foo' ) ); // true\n *\t\tstartsWithFiller( document.createTextNode( 'foo' ) ); // false\n *\t\tstartsWithFiller( document.createElement( 'p' ) ); // false\n *\n * @param {Node} domNode DOM node.\n * @returns {Boolean} True if the text node starts with the {@link module:engine/view/filler~INLINE_FILLER inline filler}.\n */\nexport function startsWithFiller(domNode) {\n return isText(domNode) && (domNode.data.substr(0, INLINE_FILLER_LENGTH) === INLINE_FILLER);\n}\n/**\n * Checks if the text node contains only the {@link module:engine/view/filler~INLINE_FILLER inline filler}.\n *\n *\t\tisInlineFiller( document.createTextNode( INLINE_FILLER ) ); // true\n *\t\tisInlineFiller( document.createTextNode( INLINE_FILLER + 'foo' ) ); // false\n *\n * @param {Text} domText DOM text node.\n * @returns {Boolean} True if the text node contains only the {@link module:engine/view/filler~INLINE_FILLER inline filler}.\n */\nexport function isInlineFiller(domText) {\n return domText.data.length == INLINE_FILLER_LENGTH && startsWithFiller(domText);\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 *\t\tgetDataWithoutFiller( document.createTextNode( INLINE_FILLER + 'foo' ) ) == 'foo' // true\n *\t\tgetDataWithoutFiller( document.createTextNode( 'foo' ) ) == 'foo' // true\n *\n * @param {Text} domText DOM text node, possible with inline filler.\n * @returns {String} Data without filler.\n */\nexport function getDataWithoutFiller(domText) {\n if (startsWithFiller(domText)) {\n return domText.data.slice(INLINE_FILLER_LENGTH);\n }\n else {\n return domText.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 {module:engine/view/view~View} view View controller instance we should inject quirks handling on.\n */\nexport function injectQuirksHandling(view) {\n view.document.on('arrowKey', jumpOverInlineFiller, { priority: 'low' });\n}\n// Move cursor from the end of the inline filler to the beginning of it when, so the filler does not break navigation.\nfunction jumpOverInlineFiller(evt, data) {\n if (data.keyCode == keyCodes.arrowleft) {\n const domSelection = data.domTarget.ownerDocument.defaultView.getSelection();\n if (domSelection.rangeCount == 1 && domSelection.getRangeAt(0).collapsed) {\n const domParent = domSelection.getRangeAt(0).startContainer;\n const domOffset = domSelection.getRangeAt(0).startOffset;\n if (startsWithFiller(domParent) && domOffset <= INLINE_FILLER_LENGTH) {\n domSelection.collapse(domParent, 0);\n }\n }\n }\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 * @module utils/dom/insertat\n */\n/**\n * Inserts node to the parent at given index.\n *\n * @param {Element} parentElement Parent element.\n * @param {Number} index Insertions index.\n * @param {Node} nodeToInsert Node to insert.\n */\nexport default function insertAt(parentElement, index, nodeToInsert) {\n parentElement.insertBefore(nodeToInsert, parentElement.childNodes[index] || null);\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 * @module utils/dom/remove\n */\n/**\n * Removes given node from parent.\n *\n * @param {Node} node Node to remove.\n */\nexport default function remove(node) {\n const parent = node.parentNode;\n if (parent) {\n parent.removeChild(node);\n }\n}\n","/**\n * @license Copyright (c) 2003-2022, 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/* globals Node */\n/**\n * @module utils/dom/iscomment\n */\n/**\n * Checks whether the object is a native DOM Comment node.\n *\n * @param {*} obj\n * @returns {Boolean}\n */\nexport default function isComment(obj) {\n return obj && obj.nodeType === Node.COMMENT_NODE;\n}\n","import api from \"!../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../../css-loader/dist/cjs.js!../../../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-2022, 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 * @module engine/view/renderer\n */\nimport ViewText from './text';\nimport ViewPosition from './position';\nimport { INLINE_FILLER, INLINE_FILLER_LENGTH, startsWithFiller, isInlineFiller } from './filler';\nimport { default as diff } from '@ckeditor/ckeditor5-utils/src/diff';\nimport insertAt from '@ckeditor/ckeditor5-utils/src/dom/insertat';\nimport remove from '@ckeditor/ckeditor5-utils/src/dom/remove';\nimport { Observable } from '@ckeditor/ckeditor5-utils/src/observablemixin';\nimport CKEditorError from '@ckeditor/ckeditor5-utils/src/ckeditorerror';\nimport isText from '@ckeditor/ckeditor5-utils/src/dom/istext';\nimport isComment from '@ckeditor/ckeditor5-utils/src/dom/iscomment';\nimport isNode from '@ckeditor/ckeditor5-utils/src/dom/isnode';\nimport fastDiff from '@ckeditor/ckeditor5-utils/src/fastdiff';\nimport env from '@ckeditor/ckeditor5-utils/src/env';\nimport '../../theme/renderer.css';\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 Observable {\n /**\n * Creates a renderer instance.\n *\n * @param {module:engine/view/domconverter~DomConverter} domConverter Converter instance.\n * @param {module:engine/view/documentselection~DocumentSelection} selection View selection.\n */\n constructor(domConverter, selection) {\n super();\n /**\n * Set of DOM Documents instances.\n *\n * @readonly\n * @member {Set.}\n */\n this.domDocuments = new Set();\n /**\n * Converter instance.\n *\n * @readonly\n * @member {module:engine/view/domconverter~DomConverter}\n */\n this.domConverter = domConverter;\n /**\n * Set of nodes which attributes changed and may need to be rendered.\n *\n * @readonly\n * @member {Set.}\n */\n this.markedAttributes = new Set();\n /**\n * Set of elements which child lists changed and may need to be rendered.\n *\n * @readonly\n * @member {Set.}\n */\n this.markedChildren = new Set();\n /**\n * Set of text nodes which text data changed and may need to be rendered.\n *\n * @readonly\n * @member {Set.}\n */\n this.markedTexts = new Set();\n /**\n * View selection. Renderer updates DOM selection based on the view selection.\n *\n * @readonly\n * @member {module:engine/view/documentselection~DocumentSelection}\n */\n this.selection = selection;\n /**\n * Indicates if the view document is focused and selection can be rendered. Selection will not be rendered if\n * this is set to `false`.\n *\n * @member {Boolean}\n * @observable\n */\n this.set('isFocused', false);\n /**\n * Indicates whether the user is making a selection in the document (e.g. holding the mouse button and moving the cursor).\n * When they stop selecting, the property goes back to `false`.\n *\n * Note: In some browsers, the renderer will stop rendering the selection and inline fillers while the user is making\n * a selection to avoid glitches in DOM selection\n * (https://github.com/ckeditor/ckeditor5/issues/10562, https://github.com/ckeditor/ckeditor5/issues/10723).\n *\n * @member {Boolean}\n * @observable\n */\n this.set('isSelecting', false);\n // Rendering the selection and inline filler manipulation should be postponed in (non-Android) Blink until the user finishes\n // creating the selection in DOM to avoid accidental selection collapsing\n // (https://github.com/ckeditor/ckeditor5/issues/10562, https://github.com/ckeditor/ckeditor5/issues/10723).\n // When the user stops selecting, all pending changes should be rendered ASAP, though.\n if (env.isBlink && !env.isAndroid) {\n this.on('change:isSelecting', () => {\n if (!this.isSelecting) {\n this.render();\n }\n });\n }\n /**\n * True if composition is in progress inside the document.\n *\n * This property is bound to the {@link module:engine/view/document~Document#isComposing `Document#isComposing`} property.\n *\n * @member {Boolean}\n * @observable\n */\n this.set('isComposing', false);\n this.on('change:isComposing', () => {\n if (!this.isComposing) {\n this.render();\n }\n });\n /**\n * The text node in which the inline filler was rendered.\n *\n * @private\n * @member {Text}\n */\n this._inlineFiller = null;\n /**\n * DOM element containing fake selection.\n *\n * @private\n * @type {null|HTMLElement}\n */\n this._fakeSelectionContainer = null;\n }\n /**\n * Marks a view node to be updated in the DOM by {@link #render `render()`}.\n *\n * Note that only view nodes whose parents have corresponding DOM elements need to be marked to be synchronized.\n *\n * @see #markedAttributes\n * @see #markedChildren\n * @see #markedTexts\n *\n * @param {module:engine/view/document~ChangeType} type Type of the change.\n * @param {module:engine/view/node~ViewNode} node ViewNode to be marked.\n */\n markToSync(type, node) {\n if (type === 'text') {\n if (this.domConverter.mapViewToDom(node.parent)) {\n this.markedTexts.add(node);\n }\n }\n else {\n // If the node has no DOM element it is not rendered yet,\n // its children/attributes do not need to be marked to be sync.\n if (!this.domConverter.mapViewToDom(node)) {\n return;\n }\n if (type === 'attributes') {\n this.markedAttributes.add(node);\n }\n else if (type === 'children') {\n this.markedChildren.add(node);\n }\n else {\n /**\n * Unknown type passed to Renderer.markToSync.\n *\n * @error view-renderer-unknown-type\n */\n throw new CKEditorError('view-renderer-unknown-type', this);\n }\n }\n }\n /**\n * Renders all buffered changes ({@link #markedAttributes}, {@link #markedChildren} and {@link #markedTexts}) and\n * the current view selection (if needed) to the DOM by applying a minimal set of changes to it.\n *\n * Renderer tries not to break the text composition (e.g. IME) and x-index of the selection,\n * so it does as little as it is needed to update the DOM.\n *\n * Renderer also handles {@link module:engine/view/filler fillers}. Especially, it checks if the inline filler is needed\n * at the selection position and adds or removes it. To prevent breaking text composition inline filler will not be\n * removed as long as the selection is in the text node which needed it at first.\n */\n render() {\n // Ignore rendering while in the composition mode. Composition events are not cancellable and browser will modify the DOM tree.\n // All marked elements, attributes, etc. will wait until next render after the composition ends.\n // On Android composition events are immediately applied to the model, so we don't need to skip rendering,\n // and we should not do it because the difference between view and DOM could lead to position mapping problems.\n if (this.isComposing && !env.isAndroid) {\n // @if CK_DEBUG_TYPING // if ( window.logCKETyping ) {\n // @if CK_DEBUG_TYPING // \tconsole.info( '%c[Renderer]%c Rendering aborted while isComposing',\n // @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', ''\n // @if CK_DEBUG_TYPING // \t);\n // @if CK_DEBUG_TYPING // }\n return;\n }\n // @if CK_DEBUG_TYPING // if ( window.logCKETyping ) {\n // @if CK_DEBUG_TYPING // \tconsole.group( '%c[Renderer]%c Rendering',\n // @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', ''\n // @if CK_DEBUG_TYPING // \t);\n // @if CK_DEBUG_TYPING // }\n let inlineFillerPosition = null;\n const isInlineFillerRenderingPossible = env.isBlink && !env.isAndroid ? !this.isSelecting : true;\n // Refresh mappings.\n for (const element of this.markedChildren) {\n this._updateChildrenMappings(element);\n }\n // Don't manipulate inline fillers while the selection is being made in (non-Android) Blink to prevent accidental\n // DOM selection collapsing\n // (https://github.com/ckeditor/ckeditor5/issues/10562, https://github.com/ckeditor/ckeditor5/issues/10723).\n if (isInlineFillerRenderingPossible) {\n // There was inline filler rendered in the DOM but it's not\n // at the selection position any more, so we can remove it\n // (cause even if it's needed, it must be placed in another location).\n if (this._inlineFiller && !this._isSelectionInInlineFiller()) {\n this._removeInlineFiller();\n }\n // If we've got the filler, let's try to guess its position in the view.\n if (this._inlineFiller) {\n inlineFillerPosition = this._getInlineFillerPosition();\n }\n // Otherwise, if it's needed, create it at the selection position.\n else if (this._needsInlineFillerAtSelection()) {\n inlineFillerPosition = this.selection.getFirstPosition();\n // Do not use `markToSync` so it will be added even if the parent is already added.\n this.markedChildren.add(inlineFillerPosition.parent);\n }\n }\n // Make sure the inline filler has any parent, so it can be mapped to view position by DomConverter.\n else if (this._inlineFiller && this._inlineFiller.parentNode) {\n // While the user is making selection, preserve the inline filler at its original position.\n inlineFillerPosition = this.domConverter.domPositionToView(this._inlineFiller);\n // While down-casting the document selection attributes, all existing empty\n // attribute elements (for selection position) are removed from the view and DOM,\n // so make sure that we were able to map filler position.\n // https://github.com/ckeditor/ckeditor5/issues/12026\n if (inlineFillerPosition && inlineFillerPosition.parent.is('$text')) {\n // The inline filler position is expected to be before the text node.\n inlineFillerPosition = ViewPosition._createBefore(inlineFillerPosition.parent);\n }\n }\n for (const element of this.markedAttributes) {\n this._updateAttrs(element);\n }\n for (const element of this.markedChildren) {\n this._updateChildren(element, { inlineFillerPosition });\n }\n for (const node of this.markedTexts) {\n if (!this.markedChildren.has(node.parent) && this.domConverter.mapViewToDom(node.parent)) {\n this._updateText(node, { inlineFillerPosition });\n }\n }\n // * Check whether the inline filler is required and where it really is in the DOM.\n // At this point in most cases it will be in the DOM, but there are exceptions.\n // For example, if the inline filler was deep in the created DOM structure, it will not be created.\n // Similarly, if it was removed at the beginning of this function and then neither text nor children were updated,\n // it will not be present. Fix those and similar scenarios.\n // * Don't manipulate inline fillers while the selection is being made in (non-Android) Blink to prevent accidental\n // DOM selection collapsing\n // (https://github.com/ckeditor/ckeditor5/issues/10562, https://github.com/ckeditor/ckeditor5/issues/10723).\n if (isInlineFillerRenderingPossible) {\n if (inlineFillerPosition) {\n const fillerDomPosition = this.domConverter.viewPositionToDom(inlineFillerPosition);\n const domDocument = fillerDomPosition.parent.ownerDocument;\n if (!startsWithFiller(fillerDomPosition.parent)) {\n // Filler has not been created at filler position. Create it now.\n this._inlineFiller = addInlineFiller(domDocument, fillerDomPosition.parent, fillerDomPosition.offset);\n }\n else {\n // Filler has been found, save it.\n this._inlineFiller = fillerDomPosition.parent;\n }\n }\n else {\n // There is no filler needed.\n this._inlineFiller = null;\n }\n }\n // First focus the new editing host, then update the selection.\n // Otherwise, FF may throw an error (https://github.com/ckeditor/ckeditor5/issues/721).\n this._updateFocus();\n this._updateSelection();\n this.markedTexts.clear();\n this.markedAttributes.clear();\n this.markedChildren.clear();\n // @if CK_DEBUG_TYPING // if ( window.logCKETyping ) {\n // @if CK_DEBUG_TYPING // \tconsole.groupEnd();\n // @if CK_DEBUG_TYPING // }\n }\n /**\n * Updates mappings of view element's children.\n *\n * Children that were replaced in the view structure by similar elements (same tag name) are treated as 'replaced'.\n * This means that their mappings can be updated so the new view elements are mapped to the existing DOM elements.\n * Thanks to that these elements do not need to be re-rendered completely.\n *\n * @private\n * @param {module:engine/view/node~ViewNode} viewElement The view element whose children mappings will be updated.\n */\n _updateChildrenMappings(viewElement) {\n const domElement = this.domConverter.mapViewToDom(viewElement);\n if (!domElement) {\n // If there is no `domElement` it means that it was already removed from DOM and there is no need to process it.\n return;\n }\n // Removing nodes from the DOM as we iterate can cause `actualDomChildren`\n // (which is a live-updating `NodeList`) to get out of sync with the\n // indices that we compute as we iterate over `actions`.\n // This would produce incorrect element mappings.\n //\n // Converting live list to an array to make the list static.\n const actualDomChildren = Array.from(this.domConverter.mapViewToDom(viewElement).childNodes);\n const expectedDomChildren = Array.from(this.domConverter.viewChildrenToDom(viewElement, { withChildren: false }));\n const diff = this._diffNodeLists(actualDomChildren, expectedDomChildren);\n const actions = this._findReplaceActions(diff, actualDomChildren, expectedDomChildren);\n if (actions.indexOf('replace') !== -1) {\n const counter = { equal: 0, insert: 0, delete: 0 };\n for (const action of actions) {\n if (action === 'replace') {\n const insertIndex = counter.equal + counter.insert;\n const deleteIndex = counter.equal + counter.delete;\n const viewChild = viewElement.getChild(insertIndex);\n // UIElement and RawElement are special cases. Their children are not stored in a view (#799)\n // so we cannot use them with replacing flow (since they use view children during rendering\n // which will always result in rendering empty elements).\n if (viewChild && !(viewChild.is('uiElement') || viewChild.is('rawElement'))) {\n this._updateElementMappings(viewChild, actualDomChildren[deleteIndex]);\n }\n remove(expectedDomChildren[insertIndex]);\n counter.equal++;\n }\n else {\n counter[action]++;\n }\n }\n }\n }\n /**\n * Updates mappings of a given view element.\n *\n * @private\n * @param {module:engine/view/node~ViewNode} viewElement The view element whose mappings will be updated.\n * @param {ViewNode} domElement The DOM element representing the given view element.\n */\n _updateElementMappings(viewElement, domElement) {\n // Remap 'DomConverter' bindings.\n this.domConverter.unbindDomElement(domElement);\n this.domConverter.bindElements(domElement, viewElement);\n // View element may have children which needs to be updated, but are not marked, mark them to update.\n this.markedChildren.add(viewElement);\n // Because we replace new view element mapping with the existing one, the corresponding DOM element\n // will not be rerendered. The new view element may have different attributes than the previous one.\n // Since its corresponding DOM element will not be rerendered, new attributes will not be added\n // to the DOM, so we need to mark it here to make sure its attributes gets updated. See #1427 for more\n // detailed case study.\n // Also there are cases where replaced element is removed from the view structure and then has\n // its attributes changed or removed. In such cases the element will not be present in `markedAttributes`\n // and also may be the same (`element.isSimilar()`) as the reused element not having its attributes updated.\n // To prevent such situations we always mark reused element to have its attributes rerenderd (#1560).\n this.markedAttributes.add(viewElement);\n }\n /**\n * Gets the position of the inline filler based on the current selection.\n * Here, we assume that we know that the filler is needed and\n * {@link #_isSelectionInInlineFiller is at the selection position}, and, since it is needed,\n * it is somewhere at the selection position.\n *\n * Note: The filler position cannot be restored based on the filler's DOM text node, because\n * when this method is called (before rendering), the bindings will often be broken. View-to-DOM\n * bindings are only dependable after rendering.\n *\n * @private\n * @returns {module:engine/view/position~Position}\n */\n _getInlineFillerPosition() {\n const firstPos = this.selection.getFirstPosition();\n if (firstPos.parent.is('$text')) {\n return ViewPosition._createBefore(firstPos.parent);\n }\n else {\n return firstPos;\n }\n }\n /**\n * Returns `true` if the selection has not left the inline filler's text node.\n * If it is `true`, it means that the filler had been added for a reason and the selection did not\n * 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 *\n * @private\n * @returns {Boolean} `true` if the inline filler and selection are in the same place.\n */\n _isSelectionInInlineFiller() {\n if (this.selection.rangeCount != 1 || !this.selection.isCollapsed) {\n return false;\n }\n // Note, we can't check if selection's position equals position of the\n // this._inlineFiller node, because of #663. We may not be able to calculate\n // the filler's position in the view at this stage.\n // Instead, we check it the other way – whether selection is anchored in\n // that text node or next to it.\n // Possible options are:\n // \"FILLER{}\"\n // \"FILLERadded-text{}\"\n const selectionPosition = this.selection.getFirstPosition();\n const position = this.domConverter.viewPositionToDom(selectionPosition);\n if (position && isText(position.parent) && startsWithFiller(position.parent)) {\n return true;\n }\n return false;\n }\n /**\n * Removes the inline filler.\n *\n * @private\n */\n _removeInlineFiller() {\n const domFillerNode = this._inlineFiller;\n // Something weird happened and the stored node doesn't contain the filler's text.\n if (!startsWithFiller(domFillerNode)) {\n /**\n * The inline filler node was lost. Most likely, something overwrote the filler text node\n * in the DOM.\n *\n * @error view-renderer-filler-was-lost\n */\n throw new CKEditorError('view-renderer-filler-was-lost', this);\n }\n if (isInlineFiller(domFillerNode)) {\n domFillerNode.remove();\n }\n else {\n domFillerNode.data = domFillerNode.data.substr(INLINE_FILLER_LENGTH);\n }\n this._inlineFiller = null;\n }\n /**\n * Checks if the inline {@link module:engine/view/filler filler} should be added.\n *\n * @private\n * @returns {Boolean} `true` if the inline filler should be added.\n */\n _needsInlineFillerAtSelection() {\n if (this.selection.rangeCount != 1 || !this.selection.isCollapsed) {\n return false;\n }\n const selectionPosition = this.selection.getFirstPosition();\n const selectionParent = selectionPosition.parent;\n const selectionOffset = selectionPosition.offset;\n // If there is no DOM root we do not care about fillers.\n if (!this.domConverter.mapViewToDom(selectionParent.root)) {\n return false;\n }\n if (!(selectionParent.is('element'))) {\n return false;\n }\n // Prevent adding inline filler inside elements with contenteditable=false.\n // https://github.com/ckeditor/ckeditor5-engine/issues/1170\n if (!isEditable(selectionParent)) {\n return false;\n }\n // We have block filler, we do not need inline one.\n if (selectionOffset === selectionParent.getFillerOffset()) {\n return false;\n }\n const nodeBefore = selectionPosition.nodeBefore;\n const nodeAfter = selectionPosition.nodeAfter;\n if (nodeBefore instanceof ViewText || nodeAfter instanceof ViewText) {\n return false;\n }\n // Do not use inline filler while typing outside inline elements on Android.\n // The deleteContentBackward would remove part of the inline filler instead of removing last letter in a link.\n if (env.isAndroid && (nodeBefore || nodeAfter)) {\n return false;\n }\n return true;\n }\n /**\n * Checks if text needs to be updated and possibly updates it.\n *\n * @private\n * @param {module:engine/view/text~Text} viewText View text to update.\n * @param {Object} options\n * @param {module:engine/view/position~Position} options.inlineFillerPosition The position where the inline\n * filler should be rendered.\n */\n _updateText(viewText, options) {\n const domText = this.domConverter.findCorrespondingDomText(viewText);\n const newDomText = this.domConverter.viewToDom(viewText);\n let expectedText = newDomText.data;\n const filler = options.inlineFillerPosition;\n if (filler && filler.parent == viewText.parent && filler.offset == viewText.index) {\n expectedText = INLINE_FILLER + expectedText;\n }\n // @if CK_DEBUG_TYPING // if ( window.logCKETyping ) {\n // @if CK_DEBUG_TYPING // \tconsole.group( '%c[Renderer]%c Update text',\n // @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', ''\n // @if CK_DEBUG_TYPING // \t);\n // @if CK_DEBUG_TYPING // }\n updateTextNode(domText, expectedText);\n // @if CK_DEBUG_TYPING // if ( window.logCKETyping ) {\n // @if CK_DEBUG_TYPING // \tconsole.groupEnd();\n // @if CK_DEBUG_TYPING // }\n }\n /**\n * Checks if attribute list needs to be updated and possibly updates it.\n *\n * @private\n * @param {module:engine/view/element~Element} viewElement The view element to update.\n */\n _updateAttrs(viewElement) {\n const domElement = this.domConverter.mapViewToDom(viewElement);\n if (!domElement) {\n // If there is no `domElement` it means that 'viewElement' is outdated as its mapping was updated\n // in 'this._updateChildrenMappings()'. There is no need to process it as new view element which\n // replaced old 'viewElement' mapping was also added to 'this.markedAttributes'\n // in 'this._updateChildrenMappings()' so it will be processed separately.\n return;\n }\n const domAttrKeys = Array.from(domElement.attributes).map(attr => attr.name);\n const viewAttrKeys = viewElement.getAttributeKeys();\n // Add or overwrite attributes.\n for (const key of viewAttrKeys) {\n this.domConverter.setDomElementAttribute(domElement, key, viewElement.getAttribute(key), viewElement);\n }\n // Remove from DOM attributes which do not exists in the view.\n for (const key of domAttrKeys) {\n // All other attributes not present in the DOM should be removed.\n if (!viewElement.hasAttribute(key)) {\n this.domConverter.removeDomElementAttribute(domElement, key);\n }\n }\n }\n /**\n * Checks if elements child list needs to be updated and possibly updates it.\n *\n * Note that on Android, to reduce the risk of composition breaks, it tries to update data of an existing\n * child text nodes instead of replacing them completely.\n *\n * @private\n * @param {module:engine/view/element~Element} viewElement View element to update.\n * @param {Object} options\n * @param {module:engine/view/position~Position} options.inlineFillerPosition The position where the inline\n * filler should be rendered.\n */\n _updateChildren(viewElement, options) {\n const domElement = this.domConverter.mapViewToDom(viewElement);\n if (!domElement) {\n // If there is no `domElement` it means that it was already removed from DOM.\n // There is no need to process it. It will be processed when re-inserted.\n return;\n }\n // @if CK_DEBUG_TYPING // if ( window.logCKETyping ) {\n // @if CK_DEBUG_TYPING // \tconsole.group( '%c[Renderer]%c Update children',\n // @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', ''\n // @if CK_DEBUG_TYPING // \t);\n // @if CK_DEBUG_TYPING // }\n // IME on Android inserts a new text node while typing after a link\n // instead of updating an existing text node that follows the link.\n // We must normalize those text nodes so the diff won't get confused.\n // https://github.com/ckeditor/ckeditor5/issues/12574.\n if (env.isAndroid) {\n let previousDomNode = null;\n for (const domNode of Array.from(domElement.childNodes)) {\n if (previousDomNode && isText(previousDomNode) && isText(domNode)) {\n domElement.normalize();\n break;\n }\n previousDomNode = domNode;\n }\n }\n const inlineFillerPosition = options.inlineFillerPosition;\n const actualDomChildren = domElement.childNodes;\n const expectedDomChildren = Array.from(this.domConverter.viewChildrenToDom(viewElement, { bind: true }));\n // Inline filler element has to be created as it is present in the DOM, but not in the view. It is required\n // during diffing so text nodes could be compared correctly and also during rendering to maintain\n // proper order and indexes while updating the DOM.\n if (inlineFillerPosition && inlineFillerPosition.parent === viewElement) {\n addInlineFiller(domElement.ownerDocument, expectedDomChildren, inlineFillerPosition.offset);\n }\n const diff = this._diffNodeLists(actualDomChildren, expectedDomChildren);\n // The rendering is not disabled on Android in the composition mode.\n // Composition events are not cancellable and browser will modify the DOM tree.\n // On Android composition events are immediately applied to the model, so we don't need to skip rendering,\n // and we should not do it because the difference between view and DOM could lead to position mapping problems.\n // Since the composition is fragile and often breaks if the composed text node is replaced while composing\n // we need to make sure that we update the existing text node and not replace it with another one.\n // We don't want to change the behavior on other browsers for safety, but maybe one day cause it seems to make sense.\n // https://github.com/ckeditor/ckeditor5/issues/12455.\n const actions = env.isAndroid ?\n this._findReplaceActions(diff, actualDomChildren, expectedDomChildren, { replaceText: true }) :\n diff;\n let i = 0;\n const nodesToUnbind = new Set();\n // Handle deletions first.\n // This is to prevent a situation where an element that already exists in `actualDomChildren` is inserted at a different\n // index in `actualDomChildren`. Since `actualDomChildren` is a `NodeList`, this works like move, not like an insert,\n // and it disrupts the whole algorithm. See https://github.com/ckeditor/ckeditor5/issues/6367.\n //\n // 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 for (const action of actions) {\n if (action === 'delete') {\n // @if CK_DEBUG_TYPING // if ( window.logCKETyping ) {\n // @if CK_DEBUG_TYPING // \tconsole.info( '%c[Renderer]%c Remove node',\n // @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', '', actualDomChildren[ i ]\n // @if CK_DEBUG_TYPING // \t);\n // @if CK_DEBUG_TYPING // }\n nodesToUnbind.add(actualDomChildren[i]);\n remove(actualDomChildren[i]);\n }\n else if (action === 'equal' || action === 'replace') {\n i++;\n }\n }\n i = 0;\n for (const action of actions) {\n if (action === 'insert') {\n // @if CK_DEBUG_TYPING // if ( window.logCKETyping ) {\n // @if CK_DEBUG_TYPING // \tconsole.info( '%c[Renderer]%c Insert node',\n // @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', '', expectedDomChildren[ i ]\n // @if CK_DEBUG_TYPING // \t);\n // @if CK_DEBUG_TYPING // }\n insertAt(domElement, i, expectedDomChildren[i]);\n i++;\n }\n // Update the existing text node data. Note that replace action is generated only for Android for now.\n else if (action === 'replace') {\n // @if CK_DEBUG_TYPING // if ( window.logCKETyping ) {\n // @if CK_DEBUG_TYPING // \tconsole.group( '%c[Renderer]%c Update text node',\n // @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', ''\n // @if CK_DEBUG_TYPING // \t);\n // @if CK_DEBUG_TYPING // }\n updateTextNode(actualDomChildren[i], expectedDomChildren[i].data);\n i++;\n // @if CK_DEBUG_TYPING // if ( window.logCKETyping ) {\n // @if CK_DEBUG_TYPING // \tconsole.groupEnd();\n // @if CK_DEBUG_TYPING // }\n }\n else if (action === 'equal') {\n // Force updating text nodes inside elements which did not change and do not need to be re-rendered (#1125).\n // Do it here (not in the loop above) because only after insertions the `i` index is correct.\n this._markDescendantTextToSync(this.domConverter.domToView(expectedDomChildren[i]));\n i++;\n }\n }\n // Unbind removed nodes. When node does not have a parent it means that it was removed from DOM tree during\n // comparison with the expected DOM. We don't need to check child nodes, because if child node was reinserted,\n // it was moved to DOM tree out of the removed node.\n for (const node of nodesToUnbind) {\n if (!node.parentNode) {\n this.domConverter.unbindDomElement(node);\n }\n }\n // @if CK_DEBUG_TYPING // if ( window.logCKETyping ) {\n // @if CK_DEBUG_TYPING // \tconsole.groupEnd();\n // @if CK_DEBUG_TYPING // }\n }\n /**\n * Shorthand for diffing two arrays or node lists of DOM nodes.\n *\n * @private\n * @param {Array.|NodeList} actualDomChildren Actual DOM children\n * @param {Array.|NodeList} expectedDomChildren Expected DOM children.\n * @returns {Array.} The list of actions based on the {@link module:utils/diff~diff} function.\n */\n _diffNodeLists(actualDomChildren, expectedDomChildren) {\n actualDomChildren = filterOutFakeSelectionContainer(actualDomChildren, this._fakeSelectionContainer);\n return diff(actualDomChildren, expectedDomChildren, sameNodes.bind(null, this.domConverter));\n }\n /**\n * Finds DOM nodes that were replaced with the similar nodes (same tag name) in the view. All nodes are compared\n * within one `insert`/`delete` action group, for example:\n *\n * \t\tActual DOM:\t\t

    FooBarBazBax

    \n * \t\tExpected DOM:\t

    Bar123Baz456

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

    foo
    []

    \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.\nfunction fixGeckoSelectionAfterBr(focus, domSelection) {\n const parent = focus.parent;\n // This fix works only when the focus point is at the very end of an element.\n // There is no point in running it in cases unrelated to the browser bug.\n if (parent.nodeType != Node.ELEMENT_NODE || focus.offset != parent.childNodes.length - 1) {\n return;\n }\n const childAtOffset = parent.childNodes[focus.offset];\n // To stay on the safe side, the fix being as specific as possible, it targets only the\n // selection which is at the very end of the element and preceded by
    .\n if (childAtOffset && childAtOffset.tagName == 'BR') {\n domSelection.addRange(domSelection.getRangeAt(0));\n }\n}\nfunction filterOutFakeSelectionContainer(domChildList, fakeSelectionContainer) {\n const childList = Array.from(domChildList);\n if (childList.length == 0 || !fakeSelectionContainer) {\n return childList;\n }\n const last = childList[childList.length - 1];\n if (last == fakeSelectionContainer) {\n childList.pop();\n }\n return childList;\n}\n// Creates a fake selection container for a given document.\n//\n// @private\n// @param {Document} domDocument\n// @returns {HTMLElement}\nfunction createFakeSelectionContainer(domDocument) {\n const container = domDocument.createElement('div');\n container.className = 'ck-fake-selection-container';\n Object.assign(container.style, {\n position: 'fixed',\n top: 0,\n left: '-9999px',\n // See https://github.com/ckeditor/ckeditor5/issues/752.\n width: '42px'\n });\n // Fill it with a text node so we can update it later.\n container.textContent = '\\u00A0';\n return container;\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 {Text} domText DOM text node to update.\n// @param {String} expectedText The expected data of a text node.\nfunction updateTextNode(domText, expectedText) {\n const actualText = domText.data;\n if (actualText == expectedText) {\n // @if CK_DEBUG_TYPING // if ( window.logCKETyping ) {\n // @if CK_DEBUG_TYPING // \tconsole.info( '%c[Renderer]%c Text node does not need update:',\n // @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', '',\n // @if CK_DEBUG_TYPING // \t\t`\"${ domText.data }\" (${ domText.data.length })`\n // @if CK_DEBUG_TYPING // \t);\n // @if CK_DEBUG_TYPING // }\n return;\n }\n // @if CK_DEBUG_TYPING // if ( window.logCKETyping ) {\n // @if CK_DEBUG_TYPING // \tconsole.info( '%c[Renderer]%c Update text node:',\n // @if CK_DEBUG_TYPING // \t\t'color: green;font-weight: bold', '',\n // @if CK_DEBUG_TYPING // \t\t`\"${ domText.data }\" (${ domText.data.length }) -> \"${ expectedText }\" (${ expectedText.length })`\n // @if CK_DEBUG_TYPING // \t);\n // @if CK_DEBUG_TYPING // }\n const actions = fastDiff(actualText, expectedText);\n for (const action of actions) {\n if (action.type === 'insert') {\n domText.insertData(action.index, action.values.join(''));\n }\n else { // 'delete'\n domText.deleteData(action.index, action.howMany);\n }\n }\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 * @module utils/dom/indexof\n */\n/**\n * Returns index of the node in the parent element.\n *\n * @param {Node} node Node which index is tested.\n * @returns {Number} Index of the node in the parent element. Returns 0 if node has no parent.\n */\nexport default function indexOf(node) {\n let index = 0;\n while (node.previousSibling) {\n node = node.previousSibling;\n index++;\n }\n return index;\n}\n","/**\n * @license Copyright (c) 2003-2022, 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/* globals Node */\n/**\n * @module utils/dom/getancestors\n */\n/**\n * Returns all ancestors of given DOM node, starting from the top-most (root). Includes the given node itself. If the\n * node is a part of `DocumentFragment` that `DocumentFragment` will be returned. In contrary, if the node is\n * appended to a `Document`, that `Document` will not be returned (algorithms operating on DOM tree care for `Document#documentElement`\n * at most, which will be returned).\n *\n * @param {Node} node DOM node.\n * @returns {Array.} Array of given `node` parents.\n */\nexport default function getAncestors(node) {\n const nodes = [];\n let currentNode = node;\n // We are interested in `Node`s `DocumentFragment`s only.\n while (currentNode && currentNode.nodeType != Node.DOCUMENT_NODE) {\n nodes.unshift(currentNode);\n currentNode = currentNode.parentNode;\n }\n return nodes;\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 * @module engine/view/domconverter\n */\n/* globals Node, NodeFilter, DOMParser, Text */\nimport ViewText from './text';\nimport ViewElement from './element';\nimport ViewUIElement from './uielement';\nimport ViewPosition from './position';\nimport ViewRange from './range';\nimport ViewSelection from './selection';\nimport ViewDocumentFragment from './documentfragment';\nimport ViewTreeWalker from './treewalker';\nimport { default as Matcher } from './matcher';\nimport { BR_FILLER, INLINE_FILLER_LENGTH, NBSP_FILLER, MARKED_NBSP_FILLER, getDataWithoutFiller, isInlineFiller, startsWithFiller } from './filler';\nimport global from '@ckeditor/ckeditor5-utils/src/dom/global';\nimport { logWarning } from '@ckeditor/ckeditor5-utils/src/ckeditorerror';\nimport indexOf from '@ckeditor/ckeditor5-utils/src/dom/indexof';\nimport getAncestors from '@ckeditor/ckeditor5-utils/src/dom/getancestors';\nimport isText from '@ckeditor/ckeditor5-utils/src/dom/istext';\nimport isComment from '@ckeditor/ckeditor5-utils/src/dom/iscomment';\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 * `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 /**\n * Creates a DOM converter.\n *\n * @param {module:engine/view/document~Document} document The view document instance.\n * @param {Object} options An object with configuration options.\n * @param {module:engine/view/filler~BlockFillerMode} [options.blockFillerMode] The type of the block filler to use.\n * Default value depends on the options.renderingMode:\n * 'nbsp' when options.renderingMode == 'data',\n * 'br' when options.renderingMode == 'editing'.\n * @param {'data'|'editing'} [options.renderingMode='editing'] Whether to leave the View-to-DOM conversion result unchanged\n * or improve editing experience by filtering out interactive data.\n */\n constructor(document, options = {}) {\n /**\n * @readonly\n * @type {module:engine/view/document~Document}\n */\n this.document = document;\n /**\n * Whether to leave the View-to-DOM conversion result unchanged or improve editing experience by filtering out interactive data.\n *\n * @member {'data'|'editing'} module:engine/view/domconverter~DomConverter#renderingMode\n */\n this.renderingMode = options.renderingMode || 'editing';\n /**\n * The mode of a block filler used by the DOM converter.\n *\n * @member {'br'|'nbsp'|'markedNbsp'} module:engine/view/domconverter~DomConverter#blockFillerMode\n */\n this.blockFillerMode = options.blockFillerMode || (this.renderingMode === 'editing' ? 'br' : 'nbsp');\n /**\n * Elements which are considered pre-formatted elements.\n *\n * @readonly\n * @member {Array.} module:engine/view/domconverter~DomConverter#preElements\n */\n this.preElements = ['pre'];\n /**\n * Elements which are considered block elements (and hence should be filled with a\n * {@link #isBlockFiller block filler}).\n *\n * Whether an element is considered a block element also affects handling of trailing whitespaces.\n *\n * You can extend this array if you introduce support for block elements which are not yet recognized here.\n *\n * @readonly\n * @member {Array.} module:engine/view/domconverter~DomConverter#blockElements\n */\n this.blockElements = [\n 'address', 'article', 'aside', 'blockquote', 'caption', 'center', 'dd', 'details', 'dir', 'div',\n 'dl', 'dt', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'header',\n 'hgroup', 'legend', 'li', 'main', 'menu', 'nav', 'ol', 'p', 'pre', 'section', 'summary', 'table', 'tbody',\n 'td', 'tfoot', 'th', 'thead', 'tr', 'ul'\n ];\n /**\n * A list of elements that exist inline (in text) but their inner structure cannot be edited because\n * of the way they are rendered by the browser. They are mostly HTML form elements but there are other\n * elements such as `` or `' +\n\t\t\t\t\t\t\t''\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t},\n\n\t\t\t\t{\n\t\t\t\t\tname: 'spotify',\n\t\t\t\t\turl: [\n\t\t\t\t\t\t/^open\\.spotify\\.com\\/(artist\\/\\w+)/,\n\t\t\t\t\t\t/^open\\.spotify\\.com\\/(album\\/\\w+)/,\n\t\t\t\t\t\t/^open\\.spotify\\.com\\/(track\\/\\w+)/\n\t\t\t\t\t],\n\t\t\t\t\thtml: match => {\n\t\t\t\t\t\tconst id = match[ 1 ];\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t'
    ' +\n\t\t\t\t\t\t\t\t`' +\n\t\t\t\t\t\t\t'
    '\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t},\n\n\t\t\t\t{\n\t\t\t\t\tname: 'youtube',\n\t\t\t\t\turl: [\n\t\t\t\t\t\t/^(?:m\\.)?youtube\\.com\\/watch\\?v=([\\w-]+)(?:&t=(\\d+))?/,\n\t\t\t\t\t\t/^(?:m\\.)?youtube\\.com\\/v\\/([\\w-]+)(?:\\?t=(\\d+))?/,\n\t\t\t\t\t\t/^youtube\\.com\\/embed\\/([\\w-]+)(?:\\?start=(\\d+))?/,\n\t\t\t\t\t\t/^youtu\\.be\\/([\\w-]+)(?:\\?t=(\\d+))?/\n\t\t\t\t\t],\n\t\t\t\t\thtml: match => {\n\t\t\t\t\t\tconst id = match[ 1 ];\n\t\t\t\t\t\tconst time = match[ 2 ];\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t'
    ' +\n\t\t\t\t\t\t\t\t`' +\n\t\t\t\t\t\t\t'
    '\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t},\n\n\t\t\t\t{\n\t\t\t\t\tname: 'vimeo',\n\t\t\t\t\turl: [\n\t\t\t\t\t\t/^vimeo\\.com\\/(\\d+)/,\n\t\t\t\t\t\t/^vimeo\\.com\\/[^/]+\\/[^/]+\\/video\\/(\\d+)/,\n\t\t\t\t\t\t/^vimeo\\.com\\/album\\/[^/]+\\/video\\/(\\d+)/,\n\t\t\t\t\t\t/^vimeo\\.com\\/channels\\/[^/]+\\/(\\d+)/,\n\t\t\t\t\t\t/^vimeo\\.com\\/groups\\/[^/]+\\/videos\\/(\\d+)/,\n\t\t\t\t\t\t/^vimeo\\.com\\/ondemand\\/[^/]+\\/(\\d+)/,\n\t\t\t\t\t\t/^player\\.vimeo\\.com\\/video\\/(\\d+)/\n\t\t\t\t\t],\n\t\t\t\t\thtml: match => {\n\t\t\t\t\t\tconst id = match[ 1 ];\n\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t'
    ' +\n\t\t\t\t\t\t\t\t`' +\n\t\t\t\t\t\t\t'
    '\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t},\n\n\t\t\t\t{\n\t\t\t\t\tname: 'instagram',\n\t\t\t\t\turl: /^instagram\\.com\\/p\\/(\\w+)/\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tname: 'twitter',\n\t\t\t\t\turl: /^twitter\\.com/\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tname: 'googleMaps',\n\t\t\t\t\turl: [\n\t\t\t\t\t\t/^google\\.com\\/maps/,\n\t\t\t\t\t\t/^goo\\.gl\\/maps/,\n\t\t\t\t\t\t/^maps\\.google\\.com/,\n\t\t\t\t\t\t/^maps\\.app\\.goo\\.gl/\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tname: 'flickr',\n\t\t\t\t\turl: /^flickr\\.com/\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tname: 'facebook',\n\t\t\t\t\turl: /^facebook\\.com/\n\t\t\t\t}\n\t\t\t]\n\t\t} );\n\n\t\t/**\n\t\t * The media registry managing the media providers in the editor.\n\t\t *\n\t\t * @member {module:media-embed/mediaregistry~MediaRegistry} #registry\n\t\t */\n\t\tthis.registry = new MediaRegistry( editor.locale, editor.config.get( 'mediaEmbed' ) );\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst editor = this.editor;\n\t\tconst schema = editor.model.schema;\n\t\tconst t = editor.t;\n\t\tconst conversion = editor.conversion;\n\t\tconst renderMediaPreview = editor.config.get( 'mediaEmbed.previewsInData' );\n\t\tconst elementName = editor.config.get( 'mediaEmbed.elementName' );\n\n\t\tconst registry = this.registry;\n\n\t\teditor.commands.add( 'mediaEmbed', new MediaEmbedCommand( editor ) );\n\n\t\t// Configure the schema.\n\t\tschema.register( 'media', {\n\t\t\tinheritAllFrom: '$blockObject',\n\t\t\tallowAttributes: [ 'url' ]\n\t\t} );\n\n\t\t// Model -> Data\n\t\tconversion.for( 'dataDowncast' ).elementToStructure( {\n\t\t\tmodel: 'media',\n\t\t\tview: ( modelElement, { writer } ) => {\n\t\t\t\tconst url = modelElement.getAttribute( 'url' );\n\n\t\t\t\treturn createMediaFigureElement( writer, registry, url, {\n\t\t\t\t\telementName,\n\t\t\t\t\trenderMediaPreview: url && renderMediaPreview\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\n\t\t// Model -> Data (url -> data-oembed-url)\n\t\tconversion.for( 'dataDowncast' ).add(\n\t\t\tmodelToViewUrlAttributeConverter( registry, {\n\t\t\t\telementName,\n\t\t\t\trenderMediaPreview\n\t\t\t} ) );\n\n\t\t// Model -> View (element)\n\t\tconversion.for( 'editingDowncast' ).elementToStructure( {\n\t\t\tmodel: 'media',\n\t\t\tview: ( modelElement, { writer } ) => {\n\t\t\t\tconst url = modelElement.getAttribute( 'url' );\n\t\t\t\tconst figure = createMediaFigureElement( writer, registry, url, {\n\t\t\t\t\telementName,\n\t\t\t\t\trenderForEditingView: true\n\t\t\t\t} );\n\n\t\t\t\treturn toMediaWidget( figure, writer, t( 'media widget' ) );\n\t\t\t}\n\t\t} );\n\n\t\t// Model -> View (url -> data-oembed-url)\n\t\tconversion.for( 'editingDowncast' ).add(\n\t\t\tmodelToViewUrlAttributeConverter( registry, {\n\t\t\t\telementName,\n\t\t\t\trenderForEditingView: true\n\t\t\t} ) );\n\n\t\t// View -> Model (data-oembed-url -> url)\n\t\tconversion.for( 'upcast' )\n\t\t\t// Upcast semantic media.\n\t\t\t.elementToElement( {\n\t\t\t\tview: element => [ 'oembed', elementName ].includes( element.name ) && element.getAttribute( 'url' ) ?\n\t\t\t\t\t{ name: true } :\n\t\t\t\t\tnull,\n\t\t\t\tmodel: ( viewMedia, { writer } ) => {\n\t\t\t\t\tconst url = viewMedia.getAttribute( 'url' );\n\n\t\t\t\t\tif ( registry.hasMedia( url ) ) {\n\t\t\t\t\t\treturn writer.createElement( 'media', { url } );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} )\n\t\t\t// Upcast non-semantic media.\n\t\t\t.elementToElement( {\n\t\t\t\tview: {\n\t\t\t\t\tname: 'div',\n\t\t\t\t\tattributes: {\n\t\t\t\t\t\t'data-oembed-url': true\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tmodel: ( viewMedia, { writer } ) => {\n\t\t\t\t\tconst url = viewMedia.getAttribute( 'data-oembed-url' );\n\n\t\t\t\t\tif ( registry.hasMedia( url ) ) {\n\t\t\t\t\t\treturn writer.createElement( 'media', { url } );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} )\n\t\t\t// Consume `
    ` elements, that were left after upcast.\n\t\t\t.add( dispatcher => {\n\t\t\t\tdispatcher.on( 'element:figure', converter );\n\n\t\t\t\tfunction converter( evt, data, conversionApi ) {\n\t\t\t\t\tif ( !conversionApi.consumable.consume( data.viewItem, { name: true, classes: 'media' } ) ) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst { modelRange, modelCursor } = conversionApi.convertChildren( data.viewItem, data.modelCursor );\n\n\t\t\t\t\tdata.modelRange = modelRange;\n\t\t\t\t\tdata.modelCursor = modelCursor;\n\n\t\t\t\t\tconst modelElement = first( modelRange.getItems() );\n\n\t\t\t\t\tif ( !modelElement ) {\n\t\t\t\t\t\t// Revert consumed figure so other features can convert it.\n\t\t\t\t\t\tconversionApi.consumable.revert( data.viewItem, { name: true, classes: 'media' } );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 media-embed/automediaembed\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { LiveRange, LivePosition } from 'ckeditor5/src/engine';\nimport { Clipboard } from 'ckeditor5/src/clipboard';\nimport { Delete } from 'ckeditor5/src/typing';\nimport { Undo } from 'ckeditor5/src/undo';\nimport { global } from 'ckeditor5/src/utils';\n\nimport MediaEmbedEditing from './mediaembedediting';\nimport { insertMedia } from './utils';\n\nconst URL_REGEXP = /^(?:http(s)?:\\/\\/)?[\\w-]+\\.[\\w-.~:/?#[\\]@!$&'()*+,;=%]+$/;\n\n/**\n * The auto-media embed plugin. It recognizes media links in the pasted content and embeds\n * them shortly after they are injected into the document.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class AutoMediaEmbed extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get requires() {\n\t\treturn [ Clipboard, Delete, Undo ];\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'AutoMediaEmbed';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor ) {\n\t\tsuper( editor );\n\n\t\t/**\n\t\t * The paste–to–embed `setTimeout` ID. Stored as a property to allow\n\t\t * cleaning of the timeout.\n\t\t *\n\t\t * @private\n\t\t * @member {Number} #_timeoutId\n\t\t */\n\t\tthis._timeoutId = null;\n\n\t\t/**\n\t\t * The position where the `` element will be inserted after the timeout,\n\t\t * determined each time the new content is pasted into the document.\n\t\t *\n\t\t * @private\n\t\t * @member {module:engine/model/liveposition~LivePosition} #_positionToInsert\n\t\t */\n\t\tthis._positionToInsert = null;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst editor = this.editor;\n\t\tconst modelDocument = editor.model.document;\n\n\t\t// We need to listen on `Clipboard#inputTransformation` because we need to save positions of selection.\n\t\t// After pasting, the content between those positions will be checked for a URL that could be transformed\n\t\t// into media.\n\t\tthis.listenTo( editor.plugins.get( 'ClipboardPipeline' ), 'inputTransformation', () => {\n\t\t\tconst firstRange = modelDocument.selection.getFirstRange();\n\n\t\t\tconst leftLivePosition = LivePosition.fromPosition( firstRange.start );\n\t\t\tleftLivePosition.stickiness = 'toPrevious';\n\n\t\t\tconst rightLivePosition = LivePosition.fromPosition( firstRange.end );\n\t\t\trightLivePosition.stickiness = 'toNext';\n\n\t\t\tmodelDocument.once( 'change:data', () => {\n\t\t\t\tthis._embedMediaBetweenPositions( leftLivePosition, rightLivePosition );\n\n\t\t\t\tleftLivePosition.detach();\n\t\t\t\trightLivePosition.detach();\n\t\t\t}, { priority: 'high' } );\n\t\t} );\n\n\t\teditor.commands.get( 'undo' ).on( 'execute', () => {\n\t\t\tif ( this._timeoutId ) {\n\t\t\t\tglobal.window.clearTimeout( this._timeoutId );\n\t\t\t\tthis._positionToInsert.detach();\n\n\t\t\t\tthis._timeoutId = null;\n\t\t\t\tthis._positionToInsert = null;\n\t\t\t}\n\t\t}, { priority: 'high' } );\n\t}\n\n\t/**\n\t * Analyzes the part of the document between provided positions in search for a URL representing media.\n\t * When the URL is found, it is automatically converted into media.\n\t *\n\t * @protected\n\t * @param {module:engine/model/liveposition~LivePosition} leftPosition Left position of the selection.\n\t * @param {module:engine/model/liveposition~LivePosition} rightPosition Right position of the selection.\n\t */\n\t_embedMediaBetweenPositions( leftPosition, rightPosition ) {\n\t\tconst editor = this.editor;\n\t\tconst mediaRegistry = editor.plugins.get( MediaEmbedEditing ).registry;\n\t\t// TODO: Use marker instead of LiveRange & LivePositions.\n\t\tconst urlRange = new LiveRange( leftPosition, rightPosition );\n\t\tconst walker = urlRange.getWalker( { ignoreElementEnd: true } );\n\n\t\tlet url = '';\n\n\t\tfor ( const node of walker ) {\n\t\t\tif ( node.item.is( '$textProxy' ) ) {\n\t\t\t\turl += node.item.data;\n\t\t\t}\n\t\t}\n\n\t\turl = url.trim();\n\n\t\t// If the URL does not match to universal URL regexp, let's skip that.\n\t\tif ( !url.match( URL_REGEXP ) ) {\n\t\t\turlRange.detach();\n\n\t\t\treturn;\n\t\t}\n\n\t\t// If the URL represents a media, let's use it.\n\t\tif ( !mediaRegistry.hasMedia( url ) ) {\n\t\t\turlRange.detach();\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst mediaEmbedCommand = editor.commands.get( 'mediaEmbed' );\n\n\t\t// Do not anything if media element cannot be inserted at the current position (#47).\n\t\tif ( !mediaEmbedCommand.isEnabled ) {\n\t\t\turlRange.detach();\n\n\t\t\treturn;\n\t\t}\n\n\t\t// Position won't be available in the `setTimeout` function so let's clone it.\n\t\tthis._positionToInsert = LivePosition.fromPosition( leftPosition );\n\n\t\t// This action mustn't be executed if undo was called between pasting and auto-embedding.\n\t\tthis._timeoutId = global.window.setTimeout( () => {\n\t\t\teditor.model.change( writer => {\n\t\t\t\tthis._timeoutId = null;\n\n\t\t\t\twriter.remove( urlRange );\n\t\t\t\turlRange.detach();\n\n\t\t\t\tlet insertionPosition;\n\n\t\t\t\t// Check if position where the media element should be inserted is still valid.\n\t\t\t\t// Otherwise leave it as undefined to use document.selection - default behavior of model.insertContent().\n\t\t\t\tif ( this._positionToInsert.root.rootName !== '$graveyard' ) {\n\t\t\t\t\tinsertionPosition = this._positionToInsert;\n\t\t\t\t}\n\n\t\t\t\tinsertMedia( editor.model, url, insertionPosition, false );\n\n\t\t\t\tthis._positionToInsert.detach();\n\t\t\t\tthis._positionToInsert = null;\n\t\t\t} );\n\n\t\t\teditor.plugins.get( 'Delete' ).requestUndoOnBackspace();\n\t\t}, 100 );\n\t}\n}\n","import api from \"!../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../../css-loader/dist/cjs.js!../../../postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./mediaform.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-2022, 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 media-embed/ui/mediaformview\n */\n\nimport {\n\tButtonView,\n\tFocusCycler,\n\tLabeledFieldView,\n\tView,\n\tViewCollection,\n\tcreateLabeledInputText,\n\tinjectCssTransitionDisabler,\n\tsubmitHandler\n} from 'ckeditor5/src/ui';\nimport { FocusTracker, KeystrokeHandler } from 'ckeditor5/src/utils';\nimport { icons } from 'ckeditor5/src/core';\n\n// See: #8833.\n// eslint-disable-next-line ckeditor5-rules/ckeditor-imports\nimport '@ckeditor/ckeditor5-ui/theme/components/responsive-form/responsiveform.css';\nimport '../../theme/mediaform.css';\n\n/**\n * The media form view controller class.\n *\n * See {@link module:media-embed/ui/mediaformview~MediaFormView}.\n *\n * @extends module:ui/view~View\n */\nexport default class MediaFormView extends View {\n\t/**\n\t * @param {Array.} validators Form validators used by {@link #isValid}.\n\t * @param {module:utils/locale~Locale} [locale] The localization services instance.\n\t */\n\tconstructor( validators, locale ) {\n\t\tsuper( locale );\n\n\t\tconst t = locale.t;\n\n\t\t/**\n\t\t * Tracks information about the DOM focus in the form.\n\t\t *\n\t\t * @readonly\n\t\t * @member {module:utils/focustracker~FocusTracker}\n\t\t */\n\t\tthis.focusTracker = new FocusTracker();\n\n\t\t/**\n\t\t * An instance of the {@link module:utils/keystrokehandler~KeystrokeHandler}.\n\t\t *\n\t\t * @readonly\n\t\t * @member {module:utils/keystrokehandler~KeystrokeHandler}\n\t\t */\n\t\tthis.keystrokes = new KeystrokeHandler();\n\n\t\t/**\n\t\t * The value of the URL input.\n\t\t *\n\t\t * @member {String} #mediaURLInputValue\n\t\t * @observable\n\t\t */\n\t\tthis.set( 'mediaURLInputValue', '' );\n\n\t\t/**\n\t\t * The URL input view.\n\t\t *\n\t\t * @member {module:ui/labeledfield/labeledfieldview~LabeledFieldView}\n\t\t */\n\t\tthis.urlInputView = this._createUrlInput();\n\n\t\t/**\n\t\t * The Save button view.\n\t\t *\n\t\t * @member {module:ui/button/buttonview~ButtonView}\n\t\t */\n\t\tthis.saveButtonView = this._createButton( t( 'Save' ), icons.check, 'ck-button-save' );\n\t\tthis.saveButtonView.type = 'submit';\n\t\tthis.saveButtonView.bind( 'isEnabled' ).to( this, 'mediaURLInputValue', value => !!value );\n\n\t\t/**\n\t\t * The Cancel button view.\n\t\t *\n\t\t * @member {module:ui/button/buttonview~ButtonView}\n\t\t */\n\t\tthis.cancelButtonView = this._createButton( t( 'Cancel' ), icons.cancel, 'ck-button-cancel', 'cancel' );\n\n\t\t/**\n\t\t * A collection of views that can be focused in the form.\n\t\t *\n\t\t * @readonly\n\t\t * @protected\n\t\t * @member {module:ui/viewcollection~ViewCollection}\n\t\t */\n\t\tthis._focusables = new ViewCollection();\n\n\t\t/**\n\t\t * Helps cycling over {@link #_focusables} in the form.\n\t\t *\n\t\t * @readonly\n\t\t * @protected\n\t\t * @member {module:ui/focuscycler~FocusCycler}\n\t\t */\n\t\tthis._focusCycler = new FocusCycler( {\n\t\t\tfocusables: this._focusables,\n\t\t\tfocusTracker: this.focusTracker,\n\t\t\tkeystrokeHandler: this.keystrokes,\n\t\t\tactions: {\n\t\t\t\t// Navigate form fields backwards using the Shift + Tab keystroke.\n\t\t\t\tfocusPrevious: 'shift + tab',\n\n\t\t\t\t// Navigate form fields forwards using the Tab key.\n\t\t\t\tfocusNext: 'tab'\n\t\t\t}\n\t\t} );\n\n\t\t/**\n\t\t * An array of form validators used by {@link #isValid}.\n\t\t *\n\t\t * @readonly\n\t\t * @protected\n\t\t * @member {Array.}\n\t\t */\n\t\tthis._validators = validators;\n\n\t\tthis.setTemplate( {\n\t\t\ttag: 'form',\n\n\t\t\tattributes: {\n\t\t\t\tclass: [\n\t\t\t\t\t'ck',\n\t\t\t\t\t'ck-media-form',\n\t\t\t\t\t'ck-responsive-form'\n\t\t\t\t],\n\n\t\t\t\ttabindex: '-1'\n\t\t\t},\n\n\t\t\tchildren: [\n\t\t\t\tthis.urlInputView,\n\t\t\t\tthis.saveButtonView,\n\t\t\t\tthis.cancelButtonView\n\t\t\t]\n\t\t} );\n\n\t\tinjectCssTransitionDisabler( this );\n\n\t\t/**\n\t\t * The default info text for the {@link #urlInputView}.\n\t\t *\n\t\t * @private\n\t\t * @member {String} #_urlInputViewInfoDefault\n\t\t */\n\n\t\t/**\n\t\t * The info text with an additional tip for the {@link #urlInputView},\n\t\t * displayed when the input has some value.\n\t\t *\n\t\t * @private\n\t\t * @member {String} #_urlInputViewInfoTip\n\t\t */\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\trender() {\n\t\tsuper.render();\n\n\t\tsubmitHandler( {\n\t\t\tview: this\n\t\t} );\n\n\t\tconst childViews = [\n\t\t\tthis.urlInputView,\n\t\t\tthis.saveButtonView,\n\t\t\tthis.cancelButtonView\n\t\t];\n\n\t\tchildViews.forEach( v => {\n\t\t\t// Register the view as focusable.\n\t\t\tthis._focusables.add( v );\n\n\t\t\t// Register the view in the focus tracker.\n\t\t\tthis.focusTracker.add( v.element );\n\t\t} );\n\n\t\t// Start listening for the keystrokes coming from #element.\n\t\tthis.keystrokes.listenTo( this.element );\n\n\t\tconst stopPropagation = data => data.stopPropagation();\n\n\t\t// Since the form is in the dropdown panel which is a child of the toolbar, the toolbar's\n\t\t// keystroke handler would take over the key management in the URL input. We need to prevent\n\t\t// this ASAP. Otherwise, the basic caret movement using the arrow keys will be impossible.\n\t\tthis.keystrokes.set( 'arrowright', stopPropagation );\n\t\tthis.keystrokes.set( 'arrowleft', stopPropagation );\n\t\tthis.keystrokes.set( 'arrowup', stopPropagation );\n\t\tthis.keystrokes.set( 'arrowdown', stopPropagation );\n\n\t\t// Intercept the `selectstart` event, which is blocked by default because of the default behavior\n\t\t// of the DropdownView#panelView.\n\t\t// TODO: blocking `selectstart` in the #panelView should be configurable per–drop–down instance.\n\t\tthis.listenTo( this.urlInputView.element, 'selectstart', ( evt, domEvt ) => {\n\t\t\tdomEvt.stopPropagation();\n\t\t}, { priority: 'high' } );\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tdestroy() {\n\t\tsuper.destroy();\n\n\t\tthis.focusTracker.destroy();\n\t\tthis.keystrokes.destroy();\n\t}\n\n\t/**\n\t * Focuses the fist {@link #_focusables} in the form.\n\t */\n\tfocus() {\n\t\tthis._focusCycler.focusFirst();\n\t}\n\n\t/**\n\t * The native DOM `value` of the {@link #urlInputView} element.\n\t *\n\t * **Note**: Do not confuse it with the {@link module:ui/inputtext/inputtextview~InputTextView#value}\n\t * which works one way only and may not represent the actual state of the component in the DOM.\n\t *\n\t * @type {String}\n\t */\n\tget url() {\n\t\treturn this.urlInputView.fieldView.element.value.trim();\n\t}\n\n\tset url( url ) {\n\t\tthis.urlInputView.fieldView.element.value = url.trim();\n\t}\n\n\t/**\n\t * Validates the form and returns `false` when some fields are invalid.\n\t *\n\t * @returns {Boolean}\n\t */\n\tisValid() {\n\t\tthis.resetFormStatus();\n\n\t\tfor ( const validator of this._validators ) {\n\t\t\tconst errorText = validator( this );\n\n\t\t\t// One error per field is enough.\n\t\t\tif ( errorText ) {\n\t\t\t\t// Apply updated error.\n\t\t\t\tthis.urlInputView.errorText = errorText;\n\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\treturn true;\n\t}\n\n\t/**\n\t * Cleans up the supplementary error and information text of the {@link #urlInputView}\n\t * bringing them back to the state when the form has been displayed for the first time.\n\t *\n\t * See {@link #isValid}.\n\t */\n\tresetFormStatus() {\n\t\tthis.urlInputView.errorText = null;\n\t\tthis.urlInputView.infoText = this._urlInputViewInfoDefault;\n\t}\n\n\t/**\n\t * Creates a labeled input view.\n\t *\n\t * @private\n\t * @returns {module:ui/labeledfield/labeledfieldview~LabeledFieldView} Labeled input view instance.\n\t */\n\t_createUrlInput() {\n\t\tconst t = this.locale.t;\n\n\t\tconst labeledInput = new LabeledFieldView( this.locale, createLabeledInputText );\n\t\tconst inputField = labeledInput.fieldView;\n\n\t\tthis._urlInputViewInfoDefault = t( 'Paste the media URL in the input.' );\n\t\tthis._urlInputViewInfoTip = t( 'Tip: Paste the URL into the content to embed faster.' );\n\n\t\tlabeledInput.label = t( 'Media URL' );\n\t\tlabeledInput.infoText = this._urlInputViewInfoDefault;\n\n\t\tinputField.on( 'input', () => {\n\t\t\t// Display the tip text only when there is some value. Otherwise fall back to the default info text.\n\t\t\tlabeledInput.infoText = inputField.element.value ? this._urlInputViewInfoTip : this._urlInputViewInfoDefault;\n\t\t\tthis.mediaURLInputValue = inputField.element.value.trim();\n\t\t} );\n\n\t\treturn labeledInput;\n\t}\n\n\t/**\n\t * Creates a button view.\n\t *\n\t * @private\n\t * @param {String} label The button label.\n\t * @param {String} icon The button icon.\n\t * @param {String} className The additional button CSS class name.\n\t * @param {String} [eventName] An event name that the `ButtonView#execute` event will be delegated to.\n\t * @returns {module:ui/button/buttonview~ButtonView} The button view instance.\n\t */\n\t_createButton( label, icon, className, eventName ) {\n\t\tconst button = new ButtonView( this.locale );\n\n\t\tbutton.set( {\n\t\t\tlabel,\n\t\t\ticon,\n\t\t\ttooltip: true\n\t\t} );\n\n\t\tbutton.extendTemplate( {\n\t\t\tattributes: {\n\t\t\t\tclass: className\n\t\t\t}\n\t\t} );\n\n\t\tif ( eventName ) {\n\t\t\tbutton.delegate( 'execute' ).to( this, eventName );\n\t\t}\n\n\t\treturn button;\n\t}\n}\n\n/**\n * Fired when the form view is submitted (when one of the children triggered the submit event),\n * e.g. click on {@link #saveButtonView}.\n *\n * @event submit\n */\n\n/**\n * Fired when the form view is canceled, e.g. by a click on {@link #cancelButtonView}.\n *\n * @event cancel\n */\n","/**\n * @license Copyright (c) 2003-2022, 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 media-embed/mediaembedui\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { createDropdown } from 'ckeditor5/src/ui';\n\nimport MediaFormView from './ui/mediaformview';\nimport MediaEmbedEditing from './mediaembedediting';\nimport mediaIcon from '../theme/icons/media.svg';\n\n/**\n * The media embed UI plugin.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class MediaEmbedUI extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get requires() {\n\t\treturn [ MediaEmbedEditing ];\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'MediaEmbedUI';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst editor = this.editor;\n\t\tconst command = editor.commands.get( 'mediaEmbed' );\n\t\tconst registry = editor.plugins.get( MediaEmbedEditing ).registry;\n\n\t\teditor.ui.componentFactory.add( 'mediaEmbed', locale => {\n\t\t\tconst dropdown = createDropdown( locale );\n\n\t\t\tconst mediaForm = new MediaFormView( getFormValidators( editor.t, registry ), editor.locale );\n\n\t\t\tthis._setUpDropdown( dropdown, mediaForm, command, editor );\n\t\t\tthis._setUpForm( dropdown, mediaForm, command );\n\n\t\t\treturn dropdown;\n\t\t} );\n\t}\n\n\t/**\n\t * @private\n\t * @param {module:ui/dropdown/dropdownview~DropdownView} dropdown\n\t * @param {module:ui/view~View} form\n\t * @param {module:media-embed/mediaembedcommand~MediaEmbedCommand} command\n\t */\n\t_setUpDropdown( dropdown, form, command ) {\n\t\tconst editor = this.editor;\n\t\tconst t = editor.t;\n\t\tconst button = dropdown.buttonView;\n\n\t\tdropdown.bind( 'isEnabled' ).to( command );\n\t\tdropdown.panelView.children.add( form );\n\n\t\tbutton.set( {\n\t\t\tlabel: t( 'Insert media' ),\n\t\t\ticon: mediaIcon,\n\t\t\ttooltip: true\n\t\t} );\n\n\t\t// Note: Use the low priority to make sure the following listener starts working after the\n\t\t// default action of the drop-down is executed (i.e. the panel showed up). Otherwise, the\n\t\t// invisible form/input cannot be focused/selected.\n\t\tbutton.on( 'open', () => {\n\t\t\tform.disableCssTransitions();\n\n\t\t\t// Make sure that each time the panel shows up, the URL field remains in sync with the value of\n\t\t\t// the command. If the user typed in the input, then canceled (`urlInputView#fieldView#value` stays\n\t\t\t// unaltered) and re-opened it without changing the value of the media command (e.g. because they\n\t\t\t// didn't change the selection), they would see the old value instead of the actual value of the\n\t\t\t// command.\n\t\t\tform.url = command.value || '';\n\t\t\tform.urlInputView.fieldView.select();\n\t\t\tform.enableCssTransitions();\n\t\t}, { priority: 'low' } );\n\n\t\tdropdown.on( 'submit', () => {\n\t\t\tif ( form.isValid() ) {\n\t\t\t\teditor.execute( 'mediaEmbed', form.url );\n\t\t\t\teditor.editing.view.focus();\n\t\t\t}\n\t\t} );\n\n\t\tdropdown.on( 'change:isOpen', () => form.resetFormStatus() );\n\t\tdropdown.on( 'cancel', () => {\n\t\t\teditor.editing.view.focus();\n\t\t} );\n\t}\n\n\t/**\n\t * @private\n\t * @param {module:ui/dropdown/dropdownview~DropdownView} dropdown\n\t * @param {module:ui/view~View} form\n\t * @param {module:media-embed/mediaembedcommand~MediaEmbedCommand} command\n\t */\n\t_setUpForm( dropdown, form, command ) {\n\t\tform.delegate( 'submit', 'cancel' ).to( dropdown );\n\t\tform.urlInputView.bind( 'value' ).to( command, 'value' );\n\n\t\t// Form elements should be read-only when corresponding commands are disabled.\n\t\tform.urlInputView.bind( 'isReadOnly' ).to( command, 'isEnabled', value => !value );\n\t}\n}\n\nfunction getFormValidators( t, registry ) {\n\treturn [\n\t\tform => {\n\t\t\tif ( !form.url.length ) {\n\t\t\t\treturn t( 'The URL must not be empty.' );\n\t\t\t}\n\t\t},\n\t\tform => {\n\t\t\tif ( !registry.hasMedia( form.url ) ) {\n\t\t\t\treturn t( 'This media URL is not supported.' );\n\t\t\t}\n\t\t}\n\t];\n}\n","export default \"\";","import api from \"!../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../../css-loader/dist/cjs.js!../../../postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./mediaembed.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-2022, 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 media-embed/mediaembed\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { Widget } from 'ckeditor5/src/widget';\n\nimport MediaEmbedEditing from './mediaembedediting';\nimport AutoMediaEmbed from './automediaembed';\nimport MediaEmbedUI from './mediaembedui';\n\nimport '../theme/mediaembed.css';\n\n/**\n * The media embed plugin.\n *\n * For a detailed overview, check the {@glink features/media-embed Media Embed feature documentation}.\n *\n * This is a \"glue\" plugin which loads the following plugins:\n *\n * * The {@link module:media-embed/mediaembedediting~MediaEmbedEditing media embed editing feature},\n * * The {@link module:media-embed/mediaembedui~MediaEmbedUI media embed UI feature} and\n * * The {@link module:media-embed/automediaembed~AutoMediaEmbed auto-media embed feature}.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class MediaEmbed extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get requires() {\n\t\treturn [ MediaEmbedEditing, MediaEmbedUI, AutoMediaEmbed, Widget ];\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'MediaEmbed';\n\t}\n}\n\n/**\n * The media embed provider descriptor. Used in\n * {@link module:media-embed/mediaembed~MediaEmbedConfig#providers `config.mediaEmbed.providers`} and\n * {@link module:media-embed/mediaembed~MediaEmbedConfig#extraProviders `config.mediaEmbed.extraProviders`}.\n *\n * See {@link module:media-embed/mediaembed~MediaEmbedConfig} to learn more.\n *\n *\t\t{\n *\t\t\tname: 'example',\n *\n *\t\t\t// The following RegExp matches https://www.example.com/media/{media id},\n *\t\t\t// (either with \"http(s)://\" and \"www\" or without), so the valid URLs are:\n *\t\t\t//\n *\t\t\t// * https://www.example.com/media/{media id},\n *\t\t\t// * http://www.example.com/media/{media id},\n *\t\t\t// * www.example.com/media/{media id},\n *\t\t\t// * example.com/media/{media id}\n *\t\t\turl: /^example\\.com\\/media\\/(\\w+)/,\n *\n *\t\t\t// The rendering function of the provider.\n *\t\t\t// Used to represent the media when editing the content (i.e. in the view)\n *\t\t\t// and also in the data output of the editor if semantic data output is disabled.\n *\t\t\thtml: match => `The HTML representing the media with ID=${ match[ 1 ] }.`\n *\t\t}\n *\n * You can allow any sort of media in the editor using the \"allow–all\" `RegExp`.\n * But mind that, since URLs are processed in the order of configuration, if one of the previous\n * `RegExps` matches the URL, it will have a precedence over this one.\n *\n *\t\t{\n *\t\t\tname: 'allow-all',\n *\t\t\turl: /^.+/\n *\t\t}\n *\n * To implement responsive media, you can use the following HTML structure:\n *\n *\t\t{\n *\t\t\t...\n *\t\t\thtml: match =>\n *\t\t\t\t'
    ' +\n *\t\t\t\t\t'' +\n *\t\t\t\t'
    '\n *\t\t}\n *\n * @typedef {Object} module:media-embed/mediaembed~MediaEmbedProvider\n * @property {String} name The name of the provider. Used e.g. when\n * {@link module:media-embed/mediaembed~MediaEmbedConfig#removeProviders removing providers}.\n * @property {RegExp|Array.} url The `RegExp` object (or array of objects) defining the URL of the media.\n * If any URL matches the `RegExp`, it becomes the media in the editor model, as defined by the provider. The result\n * of matching (output of `String.prototype.match()`) is passed to the `html` rendering function of the media.\n *\n * **Note:** You do not need to include the protocol (`http://`, `https://`) and `www` subdomain in your `RegExps`,\n * they are stripped from the URLs before matching anyway.\n * @property {Function} [html] (optional) The rendering function of the media. The function receives the entire matching\n * array from the corresponding `url` `RegExp` as an argument, allowing rendering a dedicated\n * preview of the media identified by a certain ID or a hash. When not defined, the media embed feature\n * will use a generic media representation in the view and output data.\n * Note that when\n * {@link module:media-embed/mediaembed~MediaEmbedConfig#previewsInData `config.mediaEmbed.previewsInData`}\n * is `true`, the rendering function **will always** be used for the media in the editor data output.\n */\n\n/**\n * The configuration of the {@link module:media-embed/mediaembed~MediaEmbed} feature.\n *\n * Read more in {@link module:media-embed/mediaembed~MediaEmbedConfig}.\n *\n * @member {module:media-embed/mediaembed~MediaEmbedConfig} module:core/editor/editorconfig~EditorConfig#mediaEmbed\n */\n\n/**\n * The configuration of the media embed features.\n *\n * Read more about {@glink features/media-embed#configuration configuring the media embed feature}.\n *\n *\t\tClassicEditor\n *\t\t\t.create( editorElement, {\n * \t\t\t\tmediaEmbed: ... // Media embed feature options.\n *\t\t\t} )\n *\t\t\t.then( ... )\n *\t\t\t.catch( ... );\n *\n * See {@link module:core/editor/editorconfig~EditorConfig all editor options}.\n *\n * @interface MediaEmbedConfig\n */\n\n/**\n * The default media providers supported by the editor.\n *\n * The names of providers with rendering functions (previews):\n *\n * * \"dailymotion\",\n * * \"spotify\",\n * * \"youtube\",\n * * \"vimeo\"\n *\n * The names of providers without rendering functions:\n *\n * * \"instagram\",\n * * \"twitter\",\n * * \"googleMaps\",\n * * \"flickr\",\n * * \"facebook\"\n *\n * See the {@link module:media-embed/mediaembed~MediaEmbedProvider provider syntax} to learn more about\n * different kinds of media and media providers.\n *\n * **Note**: The default media provider configuration may not support all possible media URLs,\n * only the most common are included.\n *\n * Media without rendering functions are always represented in the data using the \"semantic\" markup. See\n * {@link module:media-embed/mediaembed~MediaEmbedConfig#previewsInData `config.mediaEmbed.previewsInData`} to\n * learn more about possible data outputs.\n *\n * The priority of media providers corresponds to the order of configuration. The first provider\n * to match the URL is always used, even if there are other providers that support a particular URL.\n * The URL is never matched against the remaining providers.\n *\n * To discard **all** default media providers, simply override this configuration with your own\n * {@link module:media-embed/mediaembed~MediaEmbedProvider definitions}:\n *\n *\t\tClassicEditor\n *\t\t\t.create( editorElement, {\n *\t\t\t\tplugins: [ MediaEmbed, ... ],\n *\t\t\t\tmediaEmbed: {\n *\t\t\t\t\tproviders: [\n *\t\t\t\t\t\t{\n *\t\t\t\t\t\t\t name: 'myProvider',\n *\t\t\t\t\t\t\t url: /^example\\.com\\/media\\/(\\w+)/,\n *\t\t\t\t\t\t\t html: match => '...'\n *\t\t\t\t\t\t},\n *\t\t\t\t\t\t...\n * \t\t\t\t\t]\n *\t\t\t\t}\n *\t\t\t} )\n *\t\t\t.then( ... )\n *\t\t\t.catch( ... );\n *\n * You can take inspiration from the default configuration of this feature which you can find in:\n * https://github.com/ckeditor/ckeditor5-media-embed/blob/master/src/mediaembedediting.js\n *\n * To **extend** the list of default providers, use\n * {@link module:media-embed/mediaembed~MediaEmbedConfig#extraProviders `config.mediaEmbed.extraProviders`}.\n *\n * To **remove** certain providers, use\n * {@link module:media-embed/mediaembed~MediaEmbedConfig#removeProviders `config.mediaEmbed.removeProviders`}.\n *\n * @member {Array.} module:media-embed/mediaembed~MediaEmbedConfig#providers\n */\n\n/**\n * The additional media providers supported by the editor. This configuration helps extend the default\n * {@link module:media-embed/mediaembed~MediaEmbedConfig#providers}.\n *\n *\t\tClassicEditor\n *\t\t\t.create( editorElement, {\n *\t\t\t\tplugins: [ MediaEmbed, ... ],\n *\t\t\t\tmediaEmbed: {\n *\t\t\t\t\textraProviders: [\n *\t\t\t\t\t\t{\n *\t\t\t\t\t\t\t name: 'extraProvider',\n *\t\t\t\t\t\t\t url: /^example\\.com\\/media\\/(\\w+)/,\n *\t\t\t\t\t\t\t html: match => '...'\n *\t\t\t\t\t\t},\n *\t\t\t\t\t\t...\n * \t\t\t\t\t]\n *\t\t\t\t}\n *\t\t\t} )\n *\t\t\t.then( ... )\n *\t\t\t.catch( ... );\n *\n * See the {@link module:media-embed/mediaembed~MediaEmbedProvider provider syntax} to learn more.\n *\n * @member {Array.} module:media-embed/mediaembed~MediaEmbedConfig#extraProviders\n */\n\n/**\n * The list of media providers that should not be used despite being available in\n * {@link module:media-embed/mediaembed~MediaEmbedConfig#providers `config.mediaEmbed.providers`} and\n * {@link module:media-embed/mediaembed~MediaEmbedConfig#extraProviders `config.mediaEmbed.extraProviders`}\n *\n *\t\tmediaEmbed: {\n *\t\t\tremoveProviders: [ 'youtube', 'twitter' ]\n *\t\t}\n *\n * @member {Array.} module:media-embed/mediaembed~MediaEmbedConfig#removeProviders\n */\n\n/**\n * Overrides the element name used for \"semantic\" data.\n *\n * This is not relevant if {@link module:media-embed/mediaembed~MediaEmbedConfig#previewsInData `config.mediaEmbed.previewsInData`}\n * is set to `true`.\n *\n * When not set, the feature produces the `` tag:\n *\n *\t\t
    \n *\t\t\t\n *\t\t
    \n *\n * To override the element name with, for instance, the `o-embed` name:\n *\n *\t\tmediaEmbed: {\n *\t\t\telementName: 'o-embed'\n *\t\t}\n *\n * This will produce semantic data with the `` tag:\n *\n *\t\t
    \n *\t\t\t\n *\t\t
    \n *\n * @default 'oembed'\n * @member {String} [module:media-embed/mediaembed~MediaEmbedConfig#elementName]\n */\n\n/**\n * Controls the data format produced by the feature.\n *\n * When `false` (default), the feature produces \"semantic\" data, i.e. it does not include the preview of\n * the media, just the `` tag with the `url` attribute:\n *\n *\t\t
    \n *\t\t\t\n *\t\t
    \n *\n * When `true`, the media is represented in the output in the same way it looks in the editor,\n * i.e. the media preview is saved to the database:\n *\n *\t\t
    \n *\t\t\t
    \n *\t\t\t\t\n *\t\t\t
    \n *\t\t
    \n *\n * **Note:** Media without preview are always represented in the data using the \"semantic\" markup\n * regardless of the value of the `previewsInData`. Learn more about different kinds of media\n * in the {@link module:media-embed/mediaembed~MediaEmbedConfig#providers `config.mediaEmbed.providers`}\n * configuration description.\n *\n * @member {Boolean} [module:media-embed/mediaembed~MediaEmbedConfig#previewsInData=false]\n */\n","import api from \"!../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../../css-loader/dist/cjs.js!../../../postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./findandreplaceform.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-2022, 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 find-and-replace/ui/findandreplaceformview\n */\n\nimport {\n\tView,\n\tButtonView,\n\tFormHeaderView,\n\tLabeledFieldView,\n\n\tModel,\n\tFocusCycler,\n\tcreateLabeledInputText,\n\tsubmitHandler,\n\tViewCollection,\n\tinjectCssTransitionDisabler,\n\n\tcreateDropdown,\n\taddListToDropdown\n} from 'ckeditor5/src/ui';\n\nimport {\n\tFocusTracker,\n\tKeystrokeHandler,\n\tCollection,\n\tRect,\n\tisVisible\n} from 'ckeditor5/src/utils';\n\n// See: #8833.\n// eslint-disable-next-line ckeditor5-rules/ckeditor-imports\nimport '@ckeditor/ckeditor5-ui/theme/components/responsive-form/responsiveform.css';\nimport '../../theme/findandreplaceform.css';\n\n// eslint-disable-next-line ckeditor5-rules/ckeditor-imports\nimport previousArrow from '@ckeditor/ckeditor5-ui/theme/icons/previous-arrow.svg';\nimport { icons } from 'ckeditor5/src/core';\n\n/**\n * The find and replace form view class.\n *\n * See {@link module:find-and-replace/ui/findandreplaceformview~FindAndReplaceFormView}.\n *\n * @extends module:ui/view~View\n */\nexport default class FindAndReplaceFormView extends View {\n\t/**\n\t * Creates a view of find and replace form.\n\t *\n\t * @param {module:utils/locale~Locale} [locale] The localization services instance.\n\t */\n\tconstructor( locale ) {\n\t\tsuper( locale );\n\n\t\tconst t = locale.t;\n\n\t\t/**\n\t\t * Stores the number of matched search results.\n\t\t *\n\t\t * @readonly\n\t\t * @observable\n\t\t * @member {Number} #matchCount\n\t\t */\n\t\tthis.set( 'matchCount', 0 );\n\n\t\t/**\n\t\t * The offset of currently highlighted search result in {@link #matchCount matched results}.\n\t\t *\n\t\t * @readonly\n\t\t * @observable\n\t\t * @member {Number|null} #highlightOffset\n\t\t */\n\t\tthis.set( 'highlightOffset', 0 );\n\n\t\t/**\n\t\t * `true` when the search params (find text, options) has been changed by the user since\n\t\t * the last time find was executed. `false` otherwise.\n\t\t *\n\t\t * @readonly\n\t\t * @observable\n\t\t * @member {Boolean} #isDirty\n\t\t */\n\t\tthis.set( 'isDirty', false );\n\n\t\t/**\n\t\t * A live object with the aggregated `isEnabled` states of editor commands related to find and\n\t\t * replace. For instance, it may look as follows:\n\t\t *\n\t\t *\t\t{\n\t\t *\t\t\tfindNext: true,\n\t\t *\t\t\tfindPrevious: true,\n\t\t *\t\t\treplace: false,\n\t\t *\t\t\treplaceAll: false\n\t\t *\t\t}\n\t\t *\n\t\t * @protected\n\t\t * @readonly\n\t\t * @observable\n\t\t * @member {Object} #_areCommandsEnabled\n\t\t */\n\t\tthis.set( '_areCommandsEnabled', {} );\n\n\t\t/**\n\t\t * The content of the counter label displaying the index of the current highlighted match\n\t\t * on top of the find input, for instance \"3 of 50\".\n\t\t *\n\t\t * @protected\n\t\t * @readonly\n\t\t * @observable\n\t\t * @member {String} #_resultsCounterText\n\t\t */\n\t\tthis.set( '_resultsCounterText', '' );\n\n\t\t/**\n\t\t * The flag reflecting the state of the \"Match case\" switch button in the search options\n\t\t * dropdown.\n\t\t *\n\t\t * @protected\n\t\t * @readonly\n\t\t * @observable\n\t\t * @member {Boolean} #_matchCase\n\t\t */\n\t\tthis.set( '_matchCase', false );\n\n\t\t/**\n\t\t * The flag reflecting the state of the \"Whole words only\" switch button in the search options\n\t\t * dropdown.\n\t\t *\n\t\t * @protected\n\t\t * @readonly\n\t\t * @observable\n\t\t * @member {Boolean} #_wholeWordsOnly\n\t\t */\n\t\tthis.set( '_wholeWordsOnly', false );\n\n\t\t/**\n\t\t * This flag is set `true` when some matches were found and the user didn't change the search\n\t\t * params (text to find, options) yet. This is only possible immediately after hitting the \"Find\" button.\n\t\t * `false` when there were no matches (see {@link #matchCount}) or the user changed the params (see {@link #isDirty}).\n\t\t *\n\t\t * It is used to control the enabled state of the replace UI (input and buttons); replacing text is only possible\n\t\t * if this flag is `true`.\n\t\t *\n\t\t * @protected\n\t\t * @readonly\n\t\t * @observable\n\t\t * @member {Boolean} #_searchResultsFound\n\t\t */\n\t\tthis.bind( '_searchResultsFound' ).to(\n\t\t\tthis, 'matchCount',\n\t\t\tthis, 'isDirty',\n\t\t\t( matchCount, isDirty ) => {\n\t\t\t\treturn matchCount > 0 && !isDirty;\n\t\t\t}\n\t\t);\n\n\t\t/**\n\t\t * The find in text input view that stores the searched string.\n\t\t *\n\t\t * @protected\n\t\t * @readonly\n\t\t * @member {module:ui/labeledfield/labeledfieldview~LabeledFieldView}\n\t\t */\n\t\tthis._findInputView = this._createInputField( t( 'Find in text…' ) );\n\n\t\t/**\n\t\t * The replace input view.\n\t\t *\n\t\t * @protected\n\t\t * @readonly\n\t\t * @member {module:ui/labeledfield/labeledfieldview~LabeledFieldView}\n\t\t */\n\t\tthis._replaceInputView = this._createInputField( t( 'Replace with…' ) );\n\n\t\t/**\n\t\t * The find button view that initializes the search process.\n\t\t *\n\t\t * @protected\n\t\t * @readonly\n\t\t * @member {module:ui/button/buttonview~ButtonView}\n\t\t */\n\t\tthis._findButtonView = this._createButton( {\n\t\t\tlabel: t( 'Find' ),\n\t\t\tclass: 'ck-button-find ck-button-action',\n\t\t\twithText: true\n\t\t} );\n\n\t\t/**\n\t\t * The find previous button view.\n\t\t *\n\t\t * @protected\n\t\t * @readonly\n\t\t * @member {module:ui/button/buttonview~ButtonView}\n\t\t */\n\t\tthis._findPrevButtonView = this._createButton( {\n\t\t\tlabel: t( 'Previous result' ),\n\t\t\tclass: 'ck-button-prev',\n\t\t\ticon: previousArrow,\n\t\t\tkeystroke: 'Shift+F3',\n\t\t\ttooltip: true\n\t\t} );\n\n\t\t/**\n\t\t * The find next button view.\n\t\t *\n\t\t * @protected\n\t\t * @readonly\n\t\t * @member {module:ui/button/buttonview~ButtonView}\n\t\t */\n\t\tthis._findNextButtonView = this._createButton( {\n\t\t\tlabel: t( 'Next result' ),\n\t\t\tclass: 'ck-button-next',\n\t\t\ticon: previousArrow,\n\t\t\tkeystroke: 'F3',\n\t\t\ttooltip: true\n\t\t} );\n\n\t\t/**\n\t\t * The find options dropdown.\n\t\t *\n\t\t * @protected\n\t\t * @readonly\n\t\t * @member {module:ui/dropdown/dropdownview~DropdownView}\n\t\t */\n\t\tthis._optionsDropdown = this._createOptionsDropdown();\n\n\t\t/**\n\t\t * The replace button view.\n\t\t *\n\t\t * @protected\n\t\t * @readonly\n\t\t * @member {module:ui/button/buttonview~ButtonView}\n\t\t */\n\t\tthis._replaceButtonView = this._createButton( {\n\t\t\tlabel: t( 'Replace' ),\n\t\t\tclass: 'ck-button-replace',\n\t\t\twithText: true\n\t\t} );\n\n\t\t/**\n\t\t * The replace all button view.\n\t\t *\n\t\t * @protected\n\t\t * @readonly\n\t\t * @member {module:ui/button/buttonview~ButtonView}\n\t\t */\n\t\tthis._replaceAllButtonView = this._createButton( {\n\t\t\tlabel: t( 'Replace all' ),\n\t\t\tclass: 'ck-button-replaceall',\n\t\t\twithText: true\n\t\t} );\n\n\t\t/**\n\t\t * The fieldset aggregating the find UI.\n\t\t *\n\t\t * @protected\n\t\t * @readonly\n\t\t * @member {module:ui/view/view~View}\n\t\t */\n\t\tthis._findFieldsetView = this._createFindFieldset();\n\n\t\t/**\n\t\t * The fieldset aggregating the replace UI.\n\t\t *\n\t\t * @protected\n\t\t * @readonly\n\t\t * @member {module:ui/view/view~View}\n\t\t */\n\t\tthis._replaceFieldsetView = this._createReplaceFieldset();\n\n\t\t/**\n\t\t * Tracks information about the DOM focus in the form.\n\t\t *\n\t\t * @readonly\n\t\t * @protected\n\t\t * @member {module:utils/focustracker~FocusTracker}\n\t\t */\n\t\tthis._focusTracker = new FocusTracker();\n\n\t\t/**\n\t\t * An instance of the {@link module:utils/keystrokehandler~KeystrokeHandler}.\n\t\t *\n\t\t * @readonly\n\t\t * @protected\n\t\t * @member {module:utils/keystrokehandler~KeystrokeHandler}\n\t\t */\n\t\tthis._keystrokes = new KeystrokeHandler();\n\n\t\t/**\n\t\t * A collection of views that can be focused in the form.\n\t\t *\n\t\t * @readonly\n\t\t * @protected\n\t\t * @member {module:ui/viewcollection~ViewCollection}\n\t\t */\n\t\tthis._focusables = new ViewCollection();\n\n\t\t/**\n\t\t * Helps cycling over {@link #_focusables} in the form.\n\t\t *\n\t\t * @readonly\n\t\t * @protected\n\t\t * @member {module:ui/focuscycler~FocusCycler}\n\t\t */\n\t\tthis._focusCycler = new FocusCycler( {\n\t\t\tfocusables: this._focusables,\n\t\t\tfocusTracker: this._focusTracker,\n\t\t\tkeystrokeHandler: this._keystrokes,\n\t\t\tactions: {\n\t\t\t\t// Navigate form fields backwards using the Shift + Tab keystroke.\n\t\t\t\tfocusPrevious: 'shift + tab',\n\n\t\t\t\t// Navigate form fields forwards using the Tab key.\n\t\t\t\tfocusNext: 'tab'\n\t\t\t}\n\t\t} );\n\n\t\tthis.setTemplate( {\n\t\t\ttag: 'form',\n\t\t\tattributes: {\n\t\t\t\tclass: [\n\t\t\t\t\t'ck',\n\t\t\t\t\t'ck-find-and-replace-form'\n\t\t\t\t],\n\n\t\t\t\ttabindex: '-1'\n\t\t\t},\n\t\t\tchildren: [\n\t\t\t\tnew FormHeaderView( locale, {\n\t\t\t\t\tlabel: t( 'Find and replace' )\n\t\t\t\t} ),\n\t\t\t\tthis._findFieldsetView,\n\t\t\t\tthis._replaceFieldsetView\n\t\t\t]\n\t\t} );\n\n\t\tinjectCssTransitionDisabler( this );\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\trender() {\n\t\tsuper.render();\n\n\t\tsubmitHandler( { view: this } );\n\n\t\tthis._initFocusCycling();\n\t\tthis._initKeystrokeHandling();\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tdestroy() {\n\t\tsuper.destroy();\n\n\t\tthis._focusTracker.destroy();\n\t\tthis._keystrokes.destroy();\n\t}\n\n\t/**\n\t * Focuses the fist {@link #_focusables} in the form.\n\t */\n\tfocus() {\n\t\tthis._focusCycler.focusFirst();\n\t}\n\n\t/**\n\t * Resets the form before re-appearing.\n\t *\n\t * It clears error messages, hides the match counter and disables the replace feature\n\t * until the next hit of the \"Find\" button.\n\t *\n\t * **Note**: It does not reset inputs and options, though. This way the form works better in editors with\n\t * disappearing toolbar (e.g. BalloonEditor): hiding the toolbar by accident (together with the find and replace UI)\n\t * does not require filling the entire form again.\n\t */\n\treset() {\n\t\tthis._findInputView.errorText = null;\n\t\tthis.isDirty = true;\n\t}\n\n\t/**\n\t * Returns the value of the find input.\n\t *\n\t * @protected\n\t * @returns {String}\n\t */\n\tget _textToFind() {\n\t\treturn this._findInputView.fieldView.element.value;\n\t}\n\n\t/**\n\t * Returns the value of the replace input.\n\t *\n\t * @protected\n\t * @returns {String}\n\t */\n\tget _textToReplace() {\n\t\treturn this._replaceInputView.fieldView.element.value;\n\t}\n\n\t/**\n\t * Configures and returns the `
    ` aggregating all find controls.\n\t *\n\t * @private\n\t * @returns {module:ui/view~View}\n\t */\n\t_createFindFieldset() {\n\t\tconst locale = this.locale;\n\t\tconst fieldsetView = new View( locale );\n\n\t\t// Typing in the find field invalidates all previous results (the form is \"dirty\").\n\t\tthis._findInputView.fieldView.on( 'input', () => {\n\t\t\tthis.isDirty = true;\n\t\t} );\n\n\t\tthis._findButtonView.on( 'execute', this._onFindButtonExecute.bind( this ) );\n\n\t\t// Pressing prev/next buttons fires related event on the form.\n\t\tthis._findPrevButtonView.delegate( 'execute' ).to( this, 'findPrevious' );\n\t\tthis._findNextButtonView.delegate( 'execute' ).to( this, 'findNext' );\n\n\t\t// Prev/next buttons will be disabled when related editor command gets disabled.\n\t\tthis._findPrevButtonView.bind( 'isEnabled' ).to( this, '_areCommandsEnabled', ( { findPrevious } ) => findPrevious );\n\t\tthis._findNextButtonView.bind( 'isEnabled' ).to( this, '_areCommandsEnabled', ( { findNext } ) => findNext );\n\n\t\tthis._injectFindResultsCounter();\n\n\t\tfieldsetView.setTemplate( {\n\t\t\ttag: 'fieldset',\n\t\t\tattributes: {\n\t\t\t\tclass: [ 'ck', 'ck-find-and-replace-form__find' ]\n\t\t\t},\n\t\t\tchildren: [\n\t\t\t\tthis._findInputView,\n\t\t\t\tthis._findButtonView,\n\t\t\t\tthis._findPrevButtonView,\n\t\t\t\tthis._findNextButtonView\n\t\t\t]\n\t\t} );\n\n\t\treturn fieldsetView;\n\t}\n\n\t/**\n\t * The action performed when the {@link #_findButtonView} is pressed.\n\t *\n\t * @private\n\t */\n\t_onFindButtonExecute() {\n\t\t// When hitting \"Find\" in an empty input, an error should be displayed.\n\t\t// Also, if the form was \"dirty\", it should remain so.\n\t\tif ( !this._textToFind ) {\n\t\t\tconst t = this.t;\n\n\t\t\tthis._findInputView.errorText = t( 'Text to find must not be empty.' );\n\n\t\t\treturn;\n\t\t}\n\n\t\t// Hitting \"Find\" automatically clears the dirty state.\n\t\tthis.isDirty = false;\n\n\t\tthis.fire( 'findNext', {\n\t\t\tsearchText: this._textToFind,\n\t\t\tmatchCase: this._matchCase,\n\t\t\twholeWords: this._wholeWordsOnly\n\t\t} );\n\t}\n\n\t/**\n\t * Configures an injects the find results counter displaying a \"N of M\" label of the {@link #_findInputView}.\n\t *\n\t * @private\n\t */\n\t_injectFindResultsCounter() {\n\t\tconst locale = this.locale;\n\t\tconst t = locale.t;\n\t\tconst bind = this.bindTemplate;\n\t\tconst resultsCounterView = new View( locale );\n\n\t\tthis.bind( '_resultsCounterText' ).to( this, 'highlightOffset', this, 'matchCount',\n\t\t\t( highlightOffset, matchCount ) => t( '%0 of %1', [ highlightOffset, matchCount ] )\n\t\t);\n\n\t\tresultsCounterView.setTemplate( {\n\t\t\ttag: 'span',\n\t\t\tattributes: {\n\t\t\t\tclass: [\n\t\t\t\t\t'ck',\n\t\t\t\t\t'ck-results-counter',\n\t\t\t\t\t// The counter only makes sense when the field text corresponds to search results in the editing.\n\t\t\t\t\tbind.if( 'isDirty', 'ck-hidden' )\n\t\t\t\t]\n\t\t\t},\n\t\t\tchildren: [\n\t\t\t\t{\n\t\t\t\t\ttext: bind.to( '_resultsCounterText' )\n\t\t\t\t}\n\t\t\t]\n\t\t} );\n\n\t\t// The whole idea is that when the text of the counter changes, its width also increases/decreases and\n\t\t// it consumes more or less space over the input. The input, on the other hand, should adjust it's right\n\t\t// padding so its *entire* text always remains visible and available to the user.\n\t\tconst updateFindInputPadding = () => {\n\t\t\tconst inputElement = this._findInputView.fieldView.element;\n\n\t\t\t// Don't adjust the padding if the input (also: counter) were not rendered or not inserted into DOM yet.\n\t\t\tif ( !inputElement || !isVisible( inputElement ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst counterWidth = new Rect( resultsCounterView.element ).width;\n\t\t\tconst paddingPropertyName = locale.uiLanguageDirection === 'ltr' ? 'paddingRight' : 'paddingLeft';\n\n\t\t\tif ( !counterWidth ) {\n\t\t\t\tinputElement.style[ paddingPropertyName ] = null;\n\t\t\t} else {\n\t\t\t\tinputElement.style[ paddingPropertyName ] = `calc( 2 * var(--ck-spacing-standard) + ${ counterWidth }px )`;\n\t\t\t}\n\t\t};\n\n\t\t// Adjust the input padding when the text of the counter changes, for instance \"1 of 200\" is narrower than \"123 of 200\".\n\t\t// Using \"low\" priority to let the text be set by the template binding first.\n\t\tthis.on( 'change:_resultsCounterText', updateFindInputPadding, { priority: 'low' } );\n\n\t\t// Adjust the input padding when the counter shows or hides. When hidden, there should be no padding. When it shows, the\n\t\t// padding should be set according to the text of the counter.\n\t\t// Using \"low\" priority to let the text be set by the template binding first.\n\t\tthis.on( 'change:isDirty', updateFindInputPadding, { priority: 'low' } );\n\n\t\t// Put the counter element next to the in the find field.\n\t\tthis._findInputView.template.children[ 0 ].children.push( resultsCounterView );\n\t}\n\n\t/**\n\t * Configures and returns the `
    ` aggregating all replace controls.\n\t *\n\t * @private\n\t * @returns {module:ui/view~View}\n\t */\n\t_createReplaceFieldset() {\n\t\tconst locale = this.locale;\n\t\tconst t = locale.t;\n\t\tconst fieldsetView = new View( locale );\n\n\t\tthis._replaceButtonView.bind( 'isEnabled' ).to(\n\t\t\tthis, '_areCommandsEnabled',\n\t\t\tthis, '_searchResultsFound',\n\t\t\t( { replace }, resultsFound ) => replace && resultsFound );\n\n\t\tthis._replaceAllButtonView.bind( 'isEnabled' ).to(\n\t\t\tthis, '_areCommandsEnabled',\n\t\t\tthis, '_searchResultsFound',\n\t\t\t( { replaceAll }, resultsFound ) => replaceAll && resultsFound );\n\n\t\tthis._replaceInputView.bind( 'isEnabled' ).to(\n\t\t\tthis, '_areCommandsEnabled',\n\t\t\tthis, '_searchResultsFound',\n\t\t\t( { replace }, resultsFound ) => replace && resultsFound );\n\n\t\tthis._replaceInputView.bind( 'infoText' ).to(\n\t\t\tthis._replaceInputView, 'isEnabled',\n\t\t\tthis._replaceInputView, 'isFocused',\n\t\t\t( isEnabled, isFocused ) => {\n\t\t\t\tif ( isEnabled || !isFocused ) {\n\t\t\t\t\treturn '';\n\t\t\t\t}\n\n\t\t\t\treturn t( 'Tip: Find some text first in order to replace it.' );\n\t\t\t} );\n\n\t\tthis._replaceButtonView.on( 'execute', () => {\n\t\t\tthis.fire( 'replace', {\n\t\t\t\tsearchText: this._textToFind,\n\t\t\t\treplaceText: this._textToReplace\n\t\t\t} );\n\t\t} );\n\n\t\tthis._replaceAllButtonView.on( 'execute', () => {\n\t\t\tthis.fire( 'replaceAll', {\n\t\t\t\tsearchText: this._textToFind,\n\t\t\t\treplaceText: this._textToReplace\n\t\t\t} );\n\n\t\t\tthis.focus();\n\t\t} );\n\n\t\tfieldsetView.setTemplate( {\n\t\t\ttag: 'fieldset',\n\t\t\tattributes: {\n\t\t\t\tclass: [ 'ck', 'ck-find-and-replace-form__replace' ]\n\t\t\t},\n\t\t\tchildren: [\n\t\t\t\tthis._replaceInputView,\n\t\t\t\tthis._optionsDropdown,\n\t\t\t\tthis._replaceButtonView,\n\t\t\t\tthis._replaceAllButtonView\n\t\t\t]\n\t\t} );\n\n\t\treturn fieldsetView;\n\t}\n\n\t/**\n\t * Creates, configures and returns and instance of a dropdown allowing users to narrow\n\t * the search criteria down. The dropdown has a list with switch buttons for each option.\n\t *\n\t * @private\n\t * @returns {module:ui/dropdown/dropdownview~DropdownView}\n\t */\n\t_createOptionsDropdown() {\n\t\tconst locale = this.locale;\n\t\tconst t = locale.t;\n\t\tconst dropdownView = createDropdown( locale );\n\n\t\tdropdownView.class = 'ck-options-dropdown';\n\n\t\tdropdownView.buttonView.set( {\n\t\t\twithText: false,\n\t\t\tlabel: t( 'Show options' ),\n\t\t\ticon: icons.cog,\n\t\t\ttooltip: true\n\t\t} );\n\n\t\tconst matchCaseModel = new Model( {\n\t\t\twithText: true,\n\t\t\tlabel: t( 'Match case' ),\n\n\t\t\t// A dummy read-only prop to make it easy to tell which switch was toggled.\n\t\t\t_isMatchCaseSwitch: true\n\t\t} );\n\n\t\tconst wholeWordsOnlyModel = new Model( {\n\t\t\twithText: true,\n\t\t\tlabel: t( 'Whole words only' )\n\t\t} );\n\n\t\t// Let the switches be controlled by form's observable properties.\n\t\tmatchCaseModel.bind( 'isOn' ).to( this, '_matchCase' );\n\t\twholeWordsOnlyModel.bind( 'isOn' ).to( this, '_wholeWordsOnly' );\n\n\t\t// Update the state of the form when a switch is toggled.\n\t\tdropdownView.on( 'execute', evt => {\n\t\t\tif ( evt.source._isMatchCaseSwitch ) {\n\t\t\t\tthis._matchCase = !this._matchCase;\n\t\t\t} else {\n\t\t\t\tthis._wholeWordsOnly = !this._wholeWordsOnly;\n\t\t\t}\n\n\t\t\t// Toggling a switch makes the form dirty because this changes search criteria\n\t\t\t// just like typing text of the find input.\n\t\t\tthis.isDirty = true;\n\t\t} );\n\n\t\taddListToDropdown( dropdownView, new Collection( [\n\t\t\t{ type: 'switchbutton', model: matchCaseModel },\n\t\t\t{ type: 'switchbutton', model: wholeWordsOnlyModel }\n\t\t] ) );\n\n\t\treturn dropdownView;\n\t}\n\n\t/**\n\t * Initializes the {@link #_focusables} and {@link #_focusTracker} to allow navigation\n\t * using Tab and Shift+Tab keystrokes in the right order.\n\t *\n\t * @private\n\t */\n\t_initFocusCycling() {\n\t\tconst childViews = [\n\t\t\tthis._findInputView,\n\t\t\tthis._findButtonView,\n\t\t\tthis._findPrevButtonView,\n\t\t\tthis._findNextButtonView,\n\t\t\tthis._replaceInputView,\n\t\t\tthis._optionsDropdown,\n\t\t\tthis._replaceButtonView,\n\t\t\tthis._replaceAllButtonView\n\t\t];\n\n\t\tchildViews.forEach( v => {\n\t\t\t// Register the view as focusable.\n\t\t\tthis._focusables.add( v );\n\n\t\t\t// Register the view in the focus tracker.\n\t\t\tthis._focusTracker.add( v.element );\n\t\t} );\n\t}\n\n\t/**\n\t * Initializes the keystroke handling in the form.\n\t *\n\t * @private\n\t */\n\t_initKeystrokeHandling() {\n\t\tconst stopPropagation = data => data.stopPropagation();\n\t\tconst stopPropagationAndPreventDefault = data => {\n\t\t\tdata.stopPropagation();\n\t\t\tdata.preventDefault();\n\t\t};\n\n\t\t// Start listening for the keystrokes coming from #element.\n\t\tthis._keystrokes.listenTo( this.element );\n\n\t\t// Find the next result upon F3.\n\t\tthis._keystrokes.set( 'f3', event => {\n\t\t\tstopPropagationAndPreventDefault( event );\n\n\t\t\tthis._findNextButtonView.fire( 'execute' );\n\t\t} );\n\n\t\t// Find the previous result upon F3.\n\t\tthis._keystrokes.set( 'shift+f3', event => {\n\t\t\tstopPropagationAndPreventDefault( event );\n\n\t\t\tthis._findPrevButtonView.fire( 'execute' );\n\t\t} );\n\n\t\t// Find or replace upon pressing Enter in the find and replace fields.\n\t\tthis._keystrokes.set( 'enter', event => {\n\t\t\tconst target = event.target;\n\n\t\t\tif ( target === this._findInputView.fieldView.element ) {\n\t\t\t\tif ( this._areCommandsEnabled.findNext ) {\n\t\t\t\t\tthis._findNextButtonView.fire( 'execute' );\n\t\t\t\t} else {\n\t\t\t\t\tthis._findButtonView.fire( 'execute' );\n\t\t\t\t}\n\t\t\t\tstopPropagationAndPreventDefault( event );\n\t\t\t} else if ( target === this._replaceInputView.fieldView.element && !this.isDirty ) {\n\t\t\t\tthis._replaceButtonView.fire( 'execute' );\n\t\t\t\tstopPropagationAndPreventDefault( event );\n\t\t\t}\n\t\t} );\n\n\t\t// Find previous upon pressing Shift+Enter in the find field.\n\t\tthis._keystrokes.set( 'shift+enter', event => {\n\t\t\tconst target = event.target;\n\n\t\t\tif ( target !== this._findInputView.fieldView.element ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( this._areCommandsEnabled.findPrevious ) {\n\t\t\t\tthis._findPrevButtonView.fire( 'execute' );\n\t\t\t} else {\n\t\t\t\tthis._findButtonView.fire( 'execute' );\n\t\t\t}\n\n\t\t\tstopPropagationAndPreventDefault( event );\n\t\t} );\n\n\t\t// Since the form is in the dropdown panel which is a child of the toolbar, the toolbar's\n\t\t// keystroke handler would take over the key management in the URL input.\n\t\t// We need to prevent this ASAP. Otherwise, the basic caret movement using the arrow keys will be impossible.\n\t\tthis._keystrokes.set( 'arrowright', stopPropagation );\n\t\tthis._keystrokes.set( 'arrowleft', stopPropagation );\n\t\tthis._keystrokes.set( 'arrowup', stopPropagation );\n\t\tthis._keystrokes.set( 'arrowdown', stopPropagation );\n\n\t\t// Intercept the `selectstart` event, which is blocked by default because of the default behavior\n\t\t// of the DropdownView#panelView. This blocking prevents the native select all on Ctrl+A.\n\t\tthis.listenTo( this._findInputView.element, 'selectstart', ( evt, domEvt ) => {\n\t\t\tdomEvt.stopPropagation();\n\t\t}, { priority: 'high' } );\n\n\t\tthis.listenTo( this._replaceInputView.element, 'selectstart', ( evt, domEvt ) => {\n\t\t\tdomEvt.stopPropagation();\n\t\t}, { priority: 'high' } );\n\t}\n\n\t/**\n\t * Creates a button view.\n\t *\n\t * @private\n\t * @param {Object} options The properties of the `ButtonView`.\n\t * @returns {module:ui/button/buttonview~ButtonView} The button view instance.\n\t */\n\t_createButton( options ) {\n\t\tconst button = new ButtonView( this.locale );\n\n\t\tbutton.set( options );\n\n\t\treturn button;\n\t}\n\n\t/**\n\t * Creates a labeled input view.\n\t *\n\t * @private\n\t * @param {String} label The input label.\n\t * @returns {module:ui/labeledfield/labeledfieldview~LabeledFieldView} The labeled input view instance.\n\t */\n\t_createInputField( label ) {\n\t\tconst labeledInput = new LabeledFieldView( this.locale, createLabeledInputText );\n\n\t\tlabeledInput.label = label;\n\n\t\treturn labeledInput;\n\t}\n}\n\n/**\n * Fired when the find next button is triggered.\n *\n * @event findNext\n * @param {String} searchText Search text.\n */\n\n/**\n * Fired when the find previous button is triggered.\n *\n * @event findPrevious\n * @param {String} searchText Search text.\n */\n\n/**\n * Fired when the replace button is triggered.\n *\n * @event replace\n * @param {String} replaceText Replacement text.\n */\n\n/**\n * Fired when the replaceAll button is triggered.\n *\n * @event replaceAll\n * @param {String} replaceText Replacement text.\n */\n","/**\n * @license Copyright (c) 2003-2022, 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 find-and-replace/findandreplaceui\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { createDropdown } from 'ckeditor5/src/ui';\nimport FindAndReplaceFormView from './ui/findandreplaceformview';\n\nimport loupeIcon from '../theme/icons/find-replace.svg';\n\n/**\n * The default find and replace UI.\n *\n * It registers the `'findAndReplace'` UI button in the editor's {@link module:ui/componentfactory~ComponentFactory component factory}.\n * that uses the {@link module:find-and-replace/findandreplace~FindAndReplace FindAndReplace} plugin API.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class FindAndReplaceUI extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'FindAndReplaceUI';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor ) {\n\t\tsuper( editor );\n\n\t\t/**\n\t\t * A reference to the find and replace form view.\n\t\t *\n\t\t * @member {module:find-and-replace/ui/findandreplaceformview~FindAndReplaceFormView} #formView\n\t\t */\n\t\tthis.formView = null;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst editor = this.editor;\n\n\t\t// Register the toolbar dropdown component.\n\t\teditor.ui.componentFactory.add( 'findAndReplace', locale => {\n\t\t\tconst dropdown = createDropdown( locale );\n\t\t\tconst formView = this.formView = new FindAndReplaceFormView( editor.locale );\n\n\t\t\t// Dropdown should be disabled when in source editing mode. See #10001.\n\t\t\tdropdown.bind( 'isEnabled' ).to( editor.commands.get( 'find' ) );\n\t\t\tdropdown.panelView.children.add( formView );\n\n\t\t\t// Every time a dropdown is opened, the search text field should get focused and selected for better UX.\n\t\t\t// Note: Using the low priority here to make sure the following listener starts working after\n\t\t\t// the default action of the drop-down is executed (i.e. the panel showed up). Otherwise,\n\t\t\t// the invisible form/input cannot be focused/selected.\n\t\t\t//\n\t\t\t// Each time a dropdown is closed, move the focus back to the find and replace toolbar button\n\t\t\t// and let the find and replace editing feature know that all search results can be invalidated\n\t\t\t// and no longer should be marked in the content.\n\t\t\tdropdown.on( 'change:isOpen', ( event, name, isOpen ) => {\n\t\t\t\tif ( isOpen ) {\n\t\t\t\t\tformView.disableCssTransitions();\n\n\t\t\t\t\tformView.reset();\n\t\t\t\t\tformView._findInputView.fieldView.select();\n\n\t\t\t\t\tformView.enableCssTransitions();\n\t\t\t\t} else {\n\t\t\t\t\tthis.fire( 'searchReseted' );\n\t\t\t\t}\n\t\t\t}, { priority: 'low' } );\n\n\t\t\tthis._setupDropdownButton( dropdown );\n\t\t\tthis._setupFormView( formView );\n\n\t\t\treturn dropdown;\n\t\t} );\n\t}\n\n\t/**\n\t * Sets up the find and replace button.\n\t *\n\t * @private\n\t * @param {module:ui/dropdown/dropdownview~DropdownView} dropdown\n\t */\n\t_setupDropdownButton( dropdown ) {\n\t\tconst editor = this.editor;\n\t\tconst t = editor.locale.t;\n\n\t\tdropdown.buttonView.set( {\n\t\t\ticon: loupeIcon,\n\t\t\tlabel: t( 'Find and replace' ),\n\t\t\tkeystroke: 'CTRL+F',\n\t\t\ttooltip: true\n\t\t} );\n\n\t\teditor.keystrokes.set( 'Ctrl+F', ( data, cancelEvent ) => {\n\t\t\tdropdown.isOpen = true;\n\t\t\tcancelEvent();\n\t\t} );\n\t}\n\n\t/**\n\t * Sets up the form view for the find and replace.\n\t *\n\t * @private\n\t * @param {module:find-and-replace/ui/findandreplaceformview~FindAndReplaceFormView} formView A related form view.\n\t */\n\t_setupFormView( formView ) {\n\t\tconst editor = this.editor;\n\t\tconst commands = editor.commands;\n\t\tconst findAndReplaceEditing = this.editor.plugins.get( 'FindAndReplaceEditing' );\n\t\tconst editingState = findAndReplaceEditing.state;\n\t\tconst sortMapping = { before: -1, same: 0, after: 1 };\n\n\t\t// Let the form know which result is being highlighted.\n\t\tformView.bind( 'highlightOffset' ).to( editingState, 'highlightedResult', highlightedResult => {\n\t\t\tif ( !highlightedResult ) {\n\t\t\t\treturn 0;\n\t\t\t}\n\n\t\t\treturn Array.from( editingState.results )\n\t\t\t\t.sort( ( a, b ) => sortMapping[ a.marker.getStart().compareWith( b.marker.getStart() ) ] )\n\t\t\t\t.indexOf( highlightedResult ) + 1;\n\t\t} );\n\n\t\t// Let the form know how many results were found in total.\n\t\tformView.listenTo( editingState.results, 'change', () => {\n\t\t\tformView.matchCount = editingState.results.length;\n\t\t} );\n\n\t\t// Command states are used to enable/disable individual form controls.\n\t\t// To keep things simple, instead of binding 4 individual observables, there's only one that combines every\n\t\t// commands' isEnabled state. Yes, it will change more often but this simplifies the structure of the form.\n\t\tformView.bind( '_areCommandsEnabled' ).to(\n\t\t\tcommands.get( 'findNext' ), 'isEnabled',\n\t\t\tcommands.get( 'findPrevious' ), 'isEnabled',\n\t\t\tcommands.get( 'replace' ), 'isEnabled',\n\t\t\tcommands.get( 'replaceAll' ), 'isEnabled',\n\t\t\t( findNext, findPrevious, replace, replaceAll ) => ( { findNext, findPrevious, replace, replaceAll } )\n\t\t);\n\n\t\t// The UI plugin works as an interface between the form and the editing part of the feature.\n\t\tformView.delegate( 'findNext', 'findPrevious', 'replace', 'replaceAll' ).to( this );\n\n\t\t// Let the feature know that search results are no longer relevant because the user changed the searched phrase\n\t\t// (or options) but didn't hit the \"Find\" button yet (e.g. still typing).\n\t\tformView.on( 'change:isDirty', ( evt, data, isDirty ) => {\n\t\t\tif ( isDirty ) {\n\t\t\t\tthis.fire( 'searchReseted' );\n\t\t\t}\n\t\t} );\n\t}\n}\n\n/**\n * Fired when the find next button is triggered.\n *\n * @event findNext\n * @param {String} searchText Search text.\n */\n\n/**\n * Fired when the find previous button is triggered.\n *\n * @event findPrevious\n * @param {String} searchText Search text.\n */\n\n/**\n * Fired when the replace button is triggered.\n *\n * @event replace\n * @param {String} replaceText Replacement text.\n */\n\n/**\n * Fired when the replaceAll button is triggered.\n *\n * @event replaceAll\n * @param {String} replaceText Replacement text.\n */\n\n/**\n * Fired when the UI was reset and the search results marked in the editing root should be invalidated,\n * for instance, because the user changed the searched phrase (or options) but didn't hit\n * the \"Find\" button yet.\n *\n * @event searchReseted\n */\n","export default \"\";","/**\n * @license Copyright (c) 2003-2022, 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 find-and-replace/utils\n */\n\nimport { uid, Collection } from 'ckeditor5/src/utils';\nimport { escapeRegExp } from 'lodash-es';\n\n/**\n * Executes findCallback and updates search results list.\n *\n * @param {module:engine/model/range~Range} range The model range to scan for matches.\n * @param {module:engine/model/model~Model} model The model.\n * @param {Function} findCallback The callback that should return `true` if provided text matches the search term.\n * @param {module:utils/collection~Collection} [startResults] An optional collection of find matches that the function should\n * start with. This would be a collection returned by a previous `updateFindResultFromRange()` call.\n * @returns {module:utils/collection~Collection} A collection of objects describing find match.\n *\n * An example structure:\n *\n * ```js\n * {\n *\tid: resultId,\n *\tlabel: foundItem.label,\n *\tmarker\n *\t}\n * ```\n */\nexport function updateFindResultFromRange( range, model, findCallback, startResults ) {\n\tconst results = startResults || new Collection();\n\n\tmodel.change( writer => {\n\t\t[ ...range ].forEach( ( { type, item } ) => {\n\t\t\tif ( type === 'elementStart' ) {\n\t\t\t\tif ( model.schema.checkChild( item, '$text' ) ) {\n\t\t\t\t\tconst foundItems = findCallback( {\n\t\t\t\t\t\titem,\n\t\t\t\t\t\ttext: rangeToText( model.createRangeIn( item ) )\n\t\t\t\t\t} );\n\n\t\t\t\t\tif ( !foundItems ) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\tfoundItems.forEach( foundItem => {\n\t\t\t\t\t\tconst resultId = `findResult:${ uid() }`;\n\t\t\t\t\t\tconst marker = writer.addMarker( resultId, {\n\t\t\t\t\t\t\tusingOperation: false,\n\t\t\t\t\t\t\taffectsData: false,\n\t\t\t\t\t\t\trange: writer.createRange(\n\t\t\t\t\t\t\t\twriter.createPositionAt( item, foundItem.start ),\n\t\t\t\t\t\t\t\twriter.createPositionAt( item, foundItem.end )\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t} );\n\n\t\t\t\t\t\tconst index = findInsertIndex( results, marker );\n\n\t\t\t\t\t\tresults.add(\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tid: resultId,\n\t\t\t\t\t\t\t\tlabel: foundItem.label,\n\t\t\t\t\t\t\t\tmarker\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tindex\n\t\t\t\t\t\t);\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\t} );\n\n\treturn results;\n}\n\n/**\n * Returns text representation of a range. The returned text length should be the same as range length.\n * In order to achieve this this function will replace inline elements (text-line) as new line character (\"\\n\").\n *\n * @param {module:engine/model/range~Range} range The model range.\n * @returns {String} The text content of the provided range.\n */\nexport function rangeToText( range ) {\n\treturn Array.from( range.getItems() ).reduce( ( rangeText, node ) => {\n\t\t// Trim text to a last occurrence of an inline element and update range start.\n\t\tif ( !( node.is( 'text' ) || node.is( 'textProxy' ) ) ) {\n\t\t\t// Editor has only one inline element defined in schema: `` which is treated as new line character in blocks.\n\t\t\t// Special handling might be needed for other inline elements (inline widgets).\n\t\t\treturn `${ rangeText }\\n`;\n\t\t}\n\n\t\treturn rangeText + node.data;\n\t}, '' );\n}\n\n// Finds the appropriate index in the resultsList Collection.\nfunction findInsertIndex( resultsList, markerToInsert ) {\n\tconst result = resultsList.find( ( { marker } ) => {\n\t\treturn markerToInsert.getStart().isBefore( marker.getStart() );\n\t} );\n\n\treturn result ? resultsList.getIndex( result ) : resultsList.length;\n}\n\n// Maps RegExp match result to find result.\nfunction regexpMatchToFindResult( matchResult ) {\n\tconst lastGroupIndex = matchResult.length - 1;\n\n\tlet startOffset = matchResult.index;\n\n\t// Searches with match all flag have an extra matching group with empty string or white space matched before the word.\n\t// If the search term starts with the space already, there is no extra group even with match all flag on.\n\tif ( matchResult.length === 3 ) {\n\t\tstartOffset += matchResult[ 1 ].length;\n\t}\n\n\treturn {\n\t\tlabel: matchResult[ lastGroupIndex ],\n\t\tstart: startOffset,\n\t\tend: startOffset + matchResult[ lastGroupIndex ].length\n\t};\n}\n\n/**\n * Creates a text matching callback for a specified search term and matching options.\n *\n * @param {String} searchTerm The search term.\n * @param {Object} [options] Matching options.\n * @param {Boolean} [options.matchCase=false] If set to `true` letter casing will be ignored.\n * @param {Boolean} [options.wholeWords=false] If set to `true` only whole words that match `callbackOrText` will be matched.\n * @returns {Function}\n */\nexport function findByTextCallback( searchTerm, options ) {\n\tlet flags = 'gu';\n\n\tif ( !options.matchCase ) {\n\t\tflags += 'i';\n\t}\n\n\tlet regExpQuery = `(${ escapeRegExp( searchTerm ) })`;\n\n\tif ( options.wholeWords ) {\n\t\tconst nonLetterGroup = '[^a-zA-Z\\u00C0-\\u024F\\u1E00-\\u1EFF]';\n\n\t\tif ( !new RegExp( '^' + nonLetterGroup ).test( searchTerm ) ) {\n\t\t\tregExpQuery = `(^|${ nonLetterGroup }|_)${ regExpQuery }`;\n\t\t}\n\n\t\tif ( !new RegExp( nonLetterGroup + '$' ).test( searchTerm ) ) {\n\t\t\tregExpQuery = `${ regExpQuery }(?=_|${ nonLetterGroup }|$)`;\n\t\t}\n\t}\n\n\tconst regExp = new RegExp( regExpQuery, flags );\n\n\tfunction findCallback( { text } ) {\n\t\tconst matches = [ ...text.matchAll( regExp ) ];\n\n\t\treturn matches.map( regexpMatchToFindResult );\n\t}\n\n\treturn findCallback;\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 find-and-replace/findcommand\n*/\n\nimport { Command } from 'ckeditor5/src/core';\nimport { updateFindResultFromRange, findByTextCallback } from './utils';\n\n/**\n * The find command. It is used by the {@link module:find-and-replace/findandreplace~FindAndReplace find and replace feature}.\n *\n * @extends module:core/command~Command\n */\nexport default class FindCommand extends Command {\n\t/**\n\t * Creates a new `FindCommand` instance.\n\t *\n\t * @param {module:core/editor/editor~Editor} editor The editor on which this command will be used.\n\t * @param {module:find-and-replace/findandreplacestate~FindAndReplaceState} state An object to hold plugin state.\n\t */\n\tconstructor( editor, state ) {\n\t\tsuper( editor );\n\n\t\t// The find command is always enabled.\n\t\tthis.isEnabled = true;\n\n\t\t// It does not affect data so should be enabled in read-only mode.\n\t\tthis.affectsData = false;\n\n\t\t/**\n\t\t * The find and replace state object used for command operations.\n\t\t *\n\t\t * @private\n\t\t * @member {module:find-and-replace/findandreplacestate~FindAndReplaceState} #_state\n\t\t */\n\t\tthis._state = state;\n\t}\n\n\t/**\n\t * Executes the command.\n\t *\n\t * @param {Function|String} callbackOrText\n\t * @param {Object} [options]\n\t * @param {Boolean} [options.matchCase=false] If set to `true`, the letter case will be matched.\n\t * @param {Boolean} [options.wholeWords=false] If set to `true`, only whole words that match `callbackOrText` will be matched.\n\t *\n\t * @fires execute\n\t */\n\texecute( callbackOrText, { matchCase, wholeWords } = {} ) {\n\t\tconst { editor } = this;\n\t\tconst { model } = editor;\n\n\t\tlet findCallback;\n\n\t\t// Allow to execute `find()` on a plugin with a keyword only.\n\t\tif ( typeof callbackOrText === 'string' ) {\n\t\t\tfindCallback = findByTextCallback( callbackOrText, { matchCase, wholeWords } );\n\n\t\t\tthis._state.searchText = callbackOrText;\n\t\t} else {\n\t\t\tfindCallback = callbackOrText;\n\t\t}\n\n\t\t// Initial search is done on all nodes in all roots inside the content.\n\t\tconst results = model.document.getRootNames()\n\t\t\t.reduce( ( ( currentResults, rootName ) => updateFindResultFromRange(\n\t\t\t\tmodel.createRangeIn( model.document.getRoot( rootName ) ),\n\t\t\t\tmodel,\n\t\t\t\tfindCallback,\n\t\t\t\tcurrentResults\n\t\t\t) ), null );\n\n\t\tthis._state.clear( model );\n\t\tthis._state.results.addMany( Array.from( results ) );\n\t\tthis._state.highlightedResult = results.get( 0 );\n\n\t\tif ( typeof callbackOrText === 'string' ) {\n\t\t\tthis._state.searchText = callbackOrText;\n\t\t}\n\n\t\tthis._state.matchCase = !!matchCase;\n\t\tthis._state.matchWholeWords = !!wholeWords;\n\n\t\treturn {\n\t\t\tresults,\n\t\t\tfindCallback\n\t\t};\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 find-and-replace/replacecommand\n*/\n\nimport { Command } from 'ckeditor5/src/core';\n\n/**\n * The replace command. It is used by the {@link module:find-and-replace/findandreplace~FindAndReplace find and replace feature}.\n *\n * @extends module:core/command~Command\n */\nexport default class ReplaceCommand extends Command {\n\t/**\n\t * Creates a new `ReplaceCommand` instance.\n\t *\n\t * @param {module:core/editor/editor~Editor} editor Editor on which this command will be used.\n\t * @param {module:find-and-replace/findandreplacestate~FindAndReplaceState} state An object to hold plugin state.\n\t */\n\tconstructor( editor, state ) {\n\t\tsuper( editor );\n\n\t\t// The replace command is always enabled.\n\t\tthis.isEnabled = true;\n\n\t\t/**\n\t\t * The find and replace state object used for command operations.\n\t\t *\n\t\t * @protected\n\t\t * @member {module:find-and-replace/findandreplacestate~FindAndReplaceState} #_state\n\t\t */\n\t\tthis._state = state;\n\t}\n\n\t/**\n\t * Replace a given find result by a string or a callback.\n\t *\n\t * @param {String} replacementText\n\t * @param {Object} result A single result from the find command.\n\t *\n\t * @fires module:core/command~Command#event:execute\n\t */\n\texecute( replacementText, result ) {\n\t\tconst { model } = this.editor;\n\n\t\tmodel.change( writer => {\n\t\t\tconst range = result.marker.getRange();\n\n\t\t\t// Don't replace a result (marker) that found its way into the $graveyard (e.g. removed by collaborators).\n\t\t\tif ( range.root.rootName === '$graveyard' ) {\n\t\t\t\tthis._state.results.remove( result );\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet textAttributes = {};\n\n\t\t\tfor ( const item of range.getItems() ) {\n\t\t\t\tif ( item.is( '$text' ) || item.is( '$textProxy' ) ) {\n\t\t\t\t\ttextAttributes = item.getAttributes();\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tmodel.insertContent( writer.createText( replacementText, textAttributes ), range );\n\n\t\t\tif ( this._state.results.has( result ) ) {\n\t\t\t\tthis._state.results.remove( result );\n\t\t\t}\n\t\t} );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 find-and-replace/replaceallcommand\n */\n\nimport { updateFindResultFromRange, findByTextCallback } from './utils';\nimport { Collection } from 'ckeditor5/src/utils';\nimport ReplaceCommand from './replacecommand';\n\n/**\n * The replace all command. It is used by the {@link module:find-and-replace/findandreplace~FindAndReplace find and replace feature}.\n *\n * @extends module:find-and-replace/replacecommand~ReplaceCommand\n */\nexport default class ReplaceAllCommand extends ReplaceCommand {\n\t/**\n\t * Replaces all the occurrences of `textToReplace` with a given `newText` string.\n\t *\n\t * ```js\n\t *\treplaceAllCommand.execute( 'replaceAll', 'new text replacement', 'text to replace' );\n\t * ```\n\t *\n\t * Alternatively you can call it from editor instance:\n\t *\n\t * ```js\n\t *\teditor.execute( 'replaceAll', 'new text', 'old text' );\n\t * ```\n\t *\n\t * @param {String} newText Text that will be inserted to the editor for each match.\n\t * @param {String|module:utils/collection~Collection} textToReplace Text to be replaced or a collection of matches\n\t * as returned by the find command.\n\t *\n\t * @fires module:core/command~Command#event:execute\n\t */\n\texecute( newText, textToReplace ) {\n\t\tconst { editor } = this;\n\t\tconst { model } = editor;\n\n\t\tconst results = textToReplace instanceof Collection ?\n\t\t\ttextToReplace : model.document.getRootNames()\n\t\t\t\t.reduce( ( ( currentResults, rootName ) => updateFindResultFromRange(\n\t\t\t\t\tmodel.createRangeIn( model.document.getRoot( rootName ) ),\n\t\t\t\t\tmodel,\n\t\t\t\t\tfindByTextCallback( textToReplace, this._state ),\n\t\t\t\t\tcurrentResults\n\t\t\t\t) ), null );\n\n\t\tif ( results.length ) {\n\t\t\tmodel.change( () => {\n\t\t\t\t[ ...results ].forEach( searchResult => {\n\t\t\t\t\t// Just reuse logic from the replace command to replace a single match.\n\t\t\t\t\tsuper.execute( newText, searchResult );\n\t\t\t\t} );\n\t\t\t} );\n\t\t}\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 find-and-replace/findnextcommand\n*/\n\nimport { Command } from 'ckeditor5/src/core';\n\n/**\n * The find next command. Moves the highlight to the next search result.\n *\n * It is used by the {@link module:find-and-replace/findandreplace~FindAndReplace find and replace feature}.\n *\n * @extends module:core/command~Command\n */\nexport default class FindNextCommand extends Command {\n\t/**\n\t * Creates a new `FindNextCommand` instance.\n\t *\n\t * @param {module:core/editor/editor~Editor} editor The editor on which this command will be used.\n\t * @param {module:find-and-replace/findandreplacestate~FindAndReplaceState} state An object to hold plugin state.\n\t */\n\tconstructor( editor, state ) {\n\t\tsuper( editor );\n\n\t\t// It does not affect data so should be enabled in read-only mode.\n\t\tthis.affectsData = false;\n\n\t\t/**\n\t\t * The find and replace state object used for command operations.\n\t\t *\n\t\t * @protected\n\t\t * @member {module:find-and-replace/findandreplacestate~FindAndReplaceState} #_state\n\t\t */\n\t\tthis._state = state;\n\n\t\tthis.isEnabled = false;\n\n\t\tthis.listenTo( this._state.results, 'change', () => {\n\t\t\tthis.isEnabled = this._state.results.length > 1;\n\t\t} );\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\trefresh() {\n\t\tthis.isEnabled = this._state.results.length > 1;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\texecute() {\n\t\tconst results = this._state.results;\n\t\tconst currentIndex = results.getIndex( this._state.highlightedResult );\n\t\tconst nextIndex = currentIndex + 1 >= results.length ?\n\t\t\t0 : currentIndex + 1;\n\n\t\tthis._state.highlightedResult = this._state.results.get( nextIndex );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 find-and-replace/findpreviouscommand\n*/\n\nimport FindNextCommand from './findnextcommand';\n\n/**\n * The find previous command. Moves the highlight to the previous search result.\n *\n * It is used by the {@link module:find-and-replace/findandreplace~FindAndReplace find and replace feature}.\n *\n * @extends module:find-and-replace/findnextcommand~FindNextCommand\n */\nexport default class FindPreviousCommand extends FindNextCommand {\n\t/**\n\t * @inheritDoc\n\t */\n\texecute() {\n\t\tconst results = this._state.results;\n\t\tconst currentIndex = results.getIndex( this._state.highlightedResult );\n\t\tconst previousIndex = currentIndex - 1 < 0 ?\n\t\t\tthis._state.results.length - 1 : currentIndex - 1;\n\n\t\tthis._state.highlightedResult = this._state.results.get( previousIndex );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 find-and-replace/findandreplacestate\n */\n\nimport { ObservableMixin, mix, Collection } from 'ckeditor5/src/utils';\n\n/**\n * The object storing find and replace plugin state for a given editor instance.\n *\n * @mixes module:utils/observablemixin~ObservableMixin\n */\nexport default class FindAndReplaceState {\n\t/**\n\t * Creates an instance of the state.\n\t *\n\t * @param {module:engine/model/model~Model} model\n\t */\n\tconstructor( model ) {\n\t\t/**\n\t\t * A collection of find matches.\n\t\t *\n\t\t * @protected\n\t\t * @observable\n\t\t * @member {module:utils/collection~Collection} #results\n\t\t */\n\t\tthis.set( 'results', new Collection() );\n\n\t\t/**\n\t\t * Currently highlighted search result in {@link #results matched results}.\n\t\t *\n\t\t * @readonly\n\t\t * @observable\n\t\t * @member {Object|null} #highlightedResult\n\t\t */\n\t\tthis.set( 'highlightedResult', null );\n\n\t\t/**\n\t\t * Searched text value.\n\t\t *\n\t\t * @readonly\n\t\t * @observable\n\t\t * @member {String} #searchText\n\t\t */\n\t\tthis.set( 'searchText', '' );\n\n\t\t/**\n\t\t * Replace text value.\n\t\t *\n\t\t * @readonly\n\t\t * @observable\n\t\t * @member {String} #replaceText\n\t\t */\n\t\tthis.set( 'replaceText', '' );\n\n\t\t/**\n\t\t * Indicates whether the matchCase checkbox has been checked.\n\t\t *\n\t\t * @readonly\n\t\t * @observable\n\t\t * @member {Boolean} #matchCase\n\t\t */\n\t\tthis.set( 'matchCase', false );\n\n\t\t/**\n\t\t * Indicates whether the matchWholeWords checkbox has been checked.\n\t\t *\n\t\t * @readonly\n\t\t * @observable\n\t\t * @member {Boolean} #matchWholeWords\n\t\t */\n\t\tthis.set( 'matchWholeWords', false );\n\n\t\tthis.results.on( 'change', ( eventInfo, { removed, index } ) => {\n\t\t\tremoved = Array.from( removed );\n\n\t\t\tif ( removed.length ) {\n\t\t\t\tlet highlightedResultRemoved = false;\n\n\t\t\t\tmodel.change( writer => {\n\t\t\t\t\tfor ( const removedResult of removed ) {\n\t\t\t\t\t\tif ( this.highlightedResult === removedResult ) {\n\t\t\t\t\t\t\thighlightedResultRemoved = true;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif ( model.markers.has( removedResult.marker.name ) ) {\n\t\t\t\t\t\t\twriter.removeMarker( removedResult.marker );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} );\n\n\t\t\t\tif ( highlightedResultRemoved ) {\n\t\t\t\t\tconst nextHighlightedIndex = index >= this.results.length ? 0 : index;\n\t\t\t\t\tthis.highlightedResult = this.results.get( nextHighlightedIndex );\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\t}\n\n\t/**\n\t * Cleans the state up and removes markers from the model.\n\t *\n\t * @param {module:engine/model/model~Model} model\n\t */\n\tclear( model ) {\n\t\tthis.searchText = '';\n\n\t\tmodel.change( writer => {\n\t\t\tif ( this.highlightedResult ) {\n\t\t\t\tconst oldMatchId = this.highlightedResult.marker.name.split( ':' )[ 1 ];\n\t\t\t\tconst oldMarker = model.markers.get( `findResultHighlighted:${ oldMatchId }` );\n\n\t\t\t\tif ( oldMarker ) {\n\t\t\t\t\twriter.removeMarker( oldMarker );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t[ ...this.results ].forEach( ( { marker } ) => {\n\t\t\t\twriter.removeMarker( marker );\n\t\t\t} );\n\t\t} );\n\n\t\tthis.results.clear();\n\t}\n}\n\nmix( FindAndReplaceState, ObservableMixin );\n","import api from \"!../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../../css-loader/dist/cjs.js!../../../postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./findandreplace.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-2022, 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 find-and-replace/findandreplaceediting\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { updateFindResultFromRange } from './utils';\nimport FindCommand from './findcommand';\nimport ReplaceCommand from './replacecommand';\nimport ReplaceAllCommand from './replaceallcommand';\nimport FindNextCommand from './findnextcommand';\nimport FindPreviousCommand from './findpreviouscommand';\nimport FindAndReplaceState from './findandreplacestate';\n\n// eslint-disable-next-line ckeditor5-rules/ckeditor-imports\nimport { scrollViewportToShowTarget } from '@ckeditor/ckeditor5-utils/src/dom/scroll';\n\nimport { debounce } from 'lodash-es';\n\nimport '../theme/findandreplace.css';\n\nconst HIGHLIGHT_CLASS = 'ck-find-result_selected';\n\n// Reacts to document changes in order to update search list.\nfunction onDocumentChange( results, model, searchCallback ) {\n\tconst changedNodes = new Set();\n\tconst removedMarkers = new Set();\n\n\tconst changes = model.document.differ.getChanges();\n\n\t// Get nodes in which changes happened to re-run a search callback on them.\n\tchanges.forEach( change => {\n\t\tif ( change.name === '$text' || model.schema.isInline( change.position.nodeAfter ) ) {\n\t\t\tchangedNodes.add( change.position.parent );\n\n\t\t\t[ ...model.markers.getMarkersAtPosition( change.position ) ].forEach( markerAtChange => {\n\t\t\t\tremovedMarkers.add( markerAtChange.name );\n\t\t\t} );\n\t\t} else if ( change.type === 'insert' ) {\n\t\t\tchangedNodes.add( change.position.nodeAfter );\n\t\t}\n\t} );\n\n\t// Get markers from removed nodes also.\n\tmodel.document.differ.getChangedMarkers().forEach( ( { name, data: { newRange } } ) => {\n\t\tif ( newRange && newRange.start.root.rootName === '$graveyard' ) {\n\t\t\tremovedMarkers.add( name );\n\t\t}\n\t} );\n\n\t// Get markers from the updated nodes and remove all (search will be re-run on these nodes).\n\tchangedNodes.forEach( node => {\n\t\tconst markersInNode = [ ...model.markers.getMarkersIntersectingRange( model.createRangeIn( node ) ) ];\n\n\t\tmarkersInNode.forEach( marker => removedMarkers.add( marker.name ) );\n\t} );\n\n\t// Remove results & markers from the changed part of content.\n\tmodel.change( writer => {\n\t\tremovedMarkers.forEach( markerName => {\n\t\t\t// Remove the result first - in order to prevent rendering a removed marker.\n\t\t\tif ( results.has( markerName ) ) {\n\t\t\t\tresults.remove( markerName );\n\t\t\t}\n\n\t\t\twriter.removeMarker( markerName );\n\t\t} );\n\t} );\n\n\t// Run search callback again on updated nodes.\n\tchangedNodes.forEach( nodeToCheck => {\n\t\tupdateFindResultFromRange( model.createRangeOn( nodeToCheck ), model, searchCallback, results );\n\t} );\n}\n\n/**\n * Implements the editing part for find and replace plugin. For example conversion, commands etc.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class FindAndReplaceEditing extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'FindAndReplaceEditing';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\t/**\n\t\t * The collection of currently highlighted search results.\n\t\t *\n\t\t * @private\n\t\t * @member {module:utils/collection~Collection} #_activeResults\n\t\t */\n\t\tthis._activeResults = null;\n\n\t\t/**\n\t\t * An object storing the find and replace state within a given editor instance.\n\t\t *\n\t\t * @member {module:find-and-replace/findandreplacestate~FindAndReplaceState} #state\n\t\t */\n\t\tthis.state = new FindAndReplaceState( this.editor.model );\n\n\t\tthis._defineConverters();\n\t\tthis._defineCommands();\n\n\t\tthis.listenTo( this.state, 'change:highlightedResult', ( eventInfo, name, newValue, oldValue ) => {\n\t\t\tconst { model } = this.editor;\n\n\t\t\tmodel.change( writer => {\n\t\t\t\tif ( oldValue ) {\n\t\t\t\t\tconst oldMatchId = oldValue.marker.name.split( ':' )[ 1 ];\n\t\t\t\t\tconst oldMarker = model.markers.get( `findResultHighlighted:${ oldMatchId }` );\n\n\t\t\t\t\tif ( oldMarker ) {\n\t\t\t\t\t\twriter.removeMarker( oldMarker );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif ( newValue ) {\n\t\t\t\t\tconst newMatchId = newValue.marker.name.split( ':' )[ 1 ];\n\t\t\t\t\twriter.addMarker( `findResultHighlighted:${ newMatchId }`, {\n\t\t\t\t\t\tusingOperation: false,\n\t\t\t\t\t\taffectsData: false,\n\t\t\t\t\t\trange: newValue.marker.getRange()\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t} );\n\t\t} );\n\n\t\tconst debouncedScrollListener = debounce( scrollToHighlightedResult.bind( this ), 32 );\n\t\t// Debounce scroll as highlight might be changed very frequently, e.g. when there's a replace all command.\n\t\tthis.listenTo( this.state, 'change:highlightedResult', debouncedScrollListener, { priority: 'low' } );\n\n\t\t// It's possible that the editor will get destroyed before debounced call kicks in.\n\t\t// This would result with accessing a view three that is no longer in DOM.\n\t\tthis.listenTo( this.editor, 'destroy', debouncedScrollListener.cancel );\n\n\t\t/* istanbul ignore next */\n\t\tfunction scrollToHighlightedResult( eventInfo, name, newValue ) {\n\t\t\tif ( newValue ) {\n\t\t\t\tconst domConverter = this.editor.editing.view.domConverter;\n\t\t\t\tconst viewRange = this.editor.editing.mapper.toViewRange( newValue.marker.getRange() );\n\n\t\t\t\tscrollViewportToShowTarget( {\n\t\t\t\t\ttarget: domConverter.viewRangeToDom( viewRange ),\n\t\t\t\t\tviewportOffset: 40\n\t\t\t\t} );\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Initiate a search.\n\t *\n\t * @param {Function|String} callbackOrText\n\t * @returns {module:utils/collection~Collection}\n\t */\n\tfind( callbackOrText ) {\n\t\tconst { editor } = this;\n\t\tconst { model } = editor;\n\n\t\tconst { findCallback, results } = editor.execute( 'find', callbackOrText );\n\n\t\tthis._activeResults = results;\n\n\t\t// @todo: handle this listener, another copy is in findcommand.js file.\n\t\tthis.listenTo( model.document, 'change:data', () => onDocumentChange( this._activeResults, model, findCallback ) );\n\n\t\treturn this._activeResults;\n\t}\n\n\t/**\n\t * Stops active results from updating, and clears out the results.\n\t */\n\tstop() {\n\t\tif ( !this._activeResults ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.stopListening( this.editor.model.document );\n\n\t\tthis.state.clear( this.editor.model );\n\n\t\tthis._activeResults = null;\n\t}\n\n\t/**\n\t * Sets up the commands.\n\t *\n\t * @private\n\t */\n\t_defineCommands() {\n\t\tthis.editor.commands.add( 'find', new FindCommand( this.editor, this.state ) );\n\t\tthis.editor.commands.add( 'findNext', new FindNextCommand( this.editor, this.state ) );\n\t\tthis.editor.commands.add( 'findPrevious', new FindPreviousCommand( this.editor, this.state ) );\n\t\tthis.editor.commands.add( 'replace', new ReplaceCommand( this.editor, this.state ) );\n\t\tthis.editor.commands.add( 'replaceAll', new ReplaceAllCommand( this.editor, this.state ) );\n\t}\n\n\t/**\n\t * Sets up the marker downcast converters for search results highlighting.\n\t *\n\t * @private\n\t */\n\t_defineConverters() {\n\t\tconst { editor } = this;\n\n\t\t// Setup the marker highlighting conversion.\n\t\teditor.conversion.for( 'editingDowncast' ).markerToHighlight( {\n\t\t\tmodel: 'findResult',\n\t\t\tview: ( { markerName } ) => {\n\t\t\t\tconst [ , id ] = markerName.split( ':' );\n\n\t\t\t\t// Marker removal from the view has a bug: https://github.com/ckeditor/ckeditor5/issues/7499\n\t\t\t\t// A minimal option is to return a new object for each converted marker...\n\t\t\t\treturn {\n\t\t\t\t\tname: 'span',\n\t\t\t\t\tclasses: [ 'ck-find-result' ],\n\t\t\t\t\tattributes: {\n\t\t\t\t\t\t// ...however, adding a unique attribute should be future-proof..\n\t\t\t\t\t\t'data-find-result': id\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t}\n\t\t} );\n\n\t\teditor.conversion.for( 'editingDowncast' ).markerToHighlight( {\n\t\t\tmodel: 'findResultHighlighted',\n\t\t\tview: ( { markerName } ) => {\n\t\t\t\tconst [ , id ] = markerName.split( ':' );\n\n\t\t\t\t// Marker removal from the view has a bug: https://github.com/ckeditor/ckeditor5/issues/7499\n\t\t\t\t// A minimal option is to return a new object for each converted marker...\n\t\t\t\treturn {\n\t\t\t\t\tname: 'span',\n\t\t\t\t\tclasses: [ HIGHLIGHT_CLASS ],\n\t\t\t\t\tattributes: {\n\t\t\t\t\t\t// ...however, adding a unique attribute should be future-proof..\n\t\t\t\t\t\t'data-find-result': id\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t}\n\t\t} );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 find-and-replace/findandreplace\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport FindAndReplaceUI from './findandreplaceui';\nimport FindAndReplaceEditing from './findandreplaceediting';\n\n/**\n * The find and replace plugin.\n *\n * For a detailed overview, check the {@glink features/find-and-replace Find and replace feature documentation}.\n *\n * This is a \"glue\" plugin which loads the following plugins:\n *\n * * The {@link module:find-and-replace/findandreplaceediting~FindAndReplaceEditing find and replace editing feature},\n * * The {@link module:find-and-replace/findandreplaceui~FindAndReplaceUI find and replace UI feature}\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class FindAndReplace extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get requires() {\n\t\treturn [ FindAndReplaceEditing, FindAndReplaceUI ];\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'FindAndReplace';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst ui = this.editor.plugins.get( 'FindAndReplaceUI' );\n\t\tconst findAndReplaceEditing = this.editor.plugins.get( 'FindAndReplaceEditing' );\n\t\tconst state = findAndReplaceEditing.state;\n\n\t\tui.on( 'findNext', ( event, data ) => {\n\t\t\t// Data is contained only for the \"find\" button.\n\t\t\tif ( data ) {\n\t\t\t\tstate.searchText = data.searchText;\n\t\t\t\tthis.editor.execute( 'find', data.searchText, data );\n\t\t\t} else {\n\t\t\t\t// Find next arrow button press.\n\t\t\t\tthis.editor.execute( 'findNext' );\n\t\t\t}\n\t\t} );\n\n\t\tui.on( 'findPrevious', ( event, data ) => {\n\t\t\tif ( data && state.searchText !== data.searchText ) {\n\t\t\t\tthis.editor.execute( 'find', data.searchText );\n\t\t\t} else {\n\t\t\t\t// Subsequent calls.\n\t\t\t\tthis.editor.execute( 'findPrevious' );\n\t\t\t}\n\t\t} );\n\n\t\tui.on( 'replace', ( event, data ) => {\n\t\t\tif ( state.searchText !== data.searchText ) {\n\t\t\t\tthis.editor.execute( 'find', data.searchText );\n\t\t\t}\n\n\t\t\tconst highlightedResult = state.highlightedResult;\n\n\t\t\tif ( highlightedResult ) {\n\t\t\t\tthis.editor.execute( 'replace', data.replaceText, highlightedResult );\n\t\t\t}\n\t\t} );\n\n\t\tui.on( 'replaceAll', ( event, data ) => {\n\t\t\t// The state hadn't been yet built for this search text.\n\t\t\tif ( state.searchText !== data.searchText ) {\n\t\t\t\tthis.editor.execute( 'find', data.searchText );\n\t\t\t}\n\n\t\t\tthis.editor.execute( 'replaceAll', data.replaceText, state.results );\n\t\t} );\n\n\t\t// Reset the state when the user invalidated last search results, for instance,\n\t\t// by starting typing another search query or changing options.\n\t\tui.on( 'searchReseted', () => {\n\t\t\tstate.clear( this.editor.model );\n\t\t\tfindAndReplaceEditing.stop();\n\t\t} );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 font/fontcommand\n */\n\nimport { Command } from 'ckeditor5/src/core';\n\n/**\n * The base font command.\n *\n * @extends module:core/command~Command\n */\nexport default class FontCommand extends Command {\n\t/**\n\t * Creates an instance of the command.\n\t *\n\t * @param {module:core/editor/editor~Editor} editor Editor instance.\n\t * @param {String} attributeKey The name of a model attribute on which this command operates.\n\t */\n\tconstructor( editor, attributeKey ) {\n\t\tsuper( editor );\n\n\t\t/**\n\t\t * When set, it reflects the {@link #attributeKey} value of the selection.\n\t\t *\n\t\t * @observable\n\t\t * @readonly\n\t\t * @member {String} module:font/fontcommand~FontCommand#value\n\t\t */\n\n\t\t/**\n\t\t * A model attribute on which this command operates.\n\t\t *\n\t\t * @readonly\n\t\t * @member {Boolean} module:font/fontcommand~FontCommand#attributeKey\n\t\t */\n\t\tthis.attributeKey = attributeKey;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\trefresh() {\n\t\tconst model = this.editor.model;\n\t\tconst doc = model.document;\n\n\t\tthis.value = doc.selection.getAttribute( this.attributeKey );\n\t\tthis.isEnabled = model.schema.checkAttributeInSelection( doc.selection, this.attributeKey );\n\t}\n\n\t/**\n\t * Executes the command. Applies the `value` of the {@link #attributeKey} to the selection.\n\t * If no `value` is passed, it removes the attribute from the selection.\n\t *\n\t * @protected\n\t * @param {Object} [options] Options for the executed command.\n\t * @param {String} [options.value] The value to apply.\n\t * @fires execute\n\t */\n\texecute( options = {} ) {\n\t\tconst model = this.editor.model;\n\t\tconst document = model.document;\n\t\tconst selection = document.selection;\n\n\t\tconst value = options.value;\n\n\t\tmodel.change( writer => {\n\t\t\tif ( selection.isCollapsed ) {\n\t\t\t\tif ( value ) {\n\t\t\t\t\twriter.setSelectionAttribute( this.attributeKey, value );\n\t\t\t\t} else {\n\t\t\t\t\twriter.removeSelectionAttribute( this.attributeKey );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst ranges = model.schema.getValidRanges( selection.getRanges(), this.attributeKey );\n\n\t\t\t\tfor ( const range of ranges ) {\n\t\t\t\t\tif ( value ) {\n\t\t\t\t\t\twriter.setAttribute( this.attributeKey, value, range );\n\t\t\t\t\t} else {\n\t\t\t\t\t\twriter.removeAttribute( this.attributeKey, range );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 font/documentcolorcollection\n */\n\nimport { Collection, ObservableMixin, mix } from 'ckeditor5/src/utils';\n\n/**\n * A collection to store document colors. It enforces colors to be unique.\n *\n * @mixes module:utils/observablemixin~ObservableMixin\n * @extends module:utils/collection~Collection\n */\nexport default class DocumentColorCollection extends Collection {\n\tconstructor( options ) {\n\t\tsuper( options );\n\n\t\t/**\n\t\t * Indicates whether the document color collection is empty.\n\t\t *\n\t\t * @observable\n\t\t * @readonly\n\t\t * @member {Boolean} #isEmpty\n\t\t */\n\t\tthis.set( 'isEmpty', true );\n\n\t\tthis.on( 'change', () => {\n\t\t\tthis.set( 'isEmpty', this.length === 0 );\n\t\t} );\n\t}\n\n\t/**\n\t * Adds a color to the document color collection.\n\t *\n\t * This method ensures that no color duplicates are inserted (compared using\n\t * the color value of the {@link module:ui/colorgrid/colorgrid~ColorDefinition}).\n\t *\n\t * If the item does not have an ID, it will be automatically generated and set on the item.\n\t *\n\t * @chainable\n\t * @param {module:ui/colorgrid/colorgrid~ColorDefinition} item\n\t * @param {Number} [index] The position of the item in the collection. The item\n\t * is pushed to the collection when `index` is not specified.\n\t * @fires add\n\t * @fires change\n\t */\n\tadd( item, index ) {\n\t\tif ( this.find( element => element.color === item.color ) ) {\n\t\t\t// No duplicates are allowed.\n\t\t\treturn;\n\t\t}\n\n\t\tsuper.add( item, index );\n\t}\n\n\t/**\n\t * Checks if an object with given colors is present in the document color collection.\n\t *\n\t * @param {String} color\n\t * @returns {Boolean}\n\t */\n\thasColor( color ) {\n\t\treturn !!this.find( item => item.color === color );\n\t}\n}\n\nmix( DocumentColorCollection, ObservableMixin );\n","import api from \"!../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../../css-loader/dist/cjs.js!../../../postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./fontcolor.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-2022, 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 font/ui/colortableview\n */\n\nimport { icons } from 'ckeditor5/src/core';\nimport {\n\tButtonView,\n\tColorGridView,\n\tColorTileView,\n\tFocusCycler,\n\tLabelView,\n\tTemplate,\n\tView,\n\tViewCollection\n} from 'ckeditor5/src/ui';\nimport { FocusTracker, KeystrokeHandler } from 'ckeditor5/src/utils';\n\nimport DocumentColorCollection from '../documentcolorcollection';\n\nimport '../../theme/fontcolor.css';\n\n/**\n * A class which represents a view with the following sub–components:\n *\n * * A remove color button,\n * * A static {@link module:ui/colorgrid/colorgrid~ColorGridView} of colors defined in the configuration,\n * * A dynamic {@link module:ui/colorgrid/colorgrid~ColorGridView} of colors used in the document.\n *\n * @extends module:ui/view~View\n */\nexport default class ColorTableView extends View {\n\t/**\n\t * Creates a view to be inserted as a child of {@link module:ui/dropdown/dropdownview~DropdownView}.\n\t *\n\t * @param {module:utils/locale~Locale} [locale] The localization services instance.\n\t * @param {Object} config The configuration object.\n\t * @param {Array.} config.colors An array with definitions of colors to\n\t * be displayed in the table.\n\t * @param {Number} config.columns The number of columns in the color grid.\n\t * @param {String} config.removeButtonLabel The label of the button responsible for removing the color.\n\t * @param {String} config.documentColorsLabel The label for the section with the document colors.\n\t * @param {Number} config.documentColorsCount The number of colors in the document colors section inside the color dropdown.\n\t */\n\tconstructor( locale, { colors, columns, removeButtonLabel, documentColorsLabel, documentColorsCount } ) {\n\t\tsuper( locale );\n\n\t\t/**\n\t\t * A collection of the children of the table.\n\t\t *\n\t\t * @readonly\n\t\t * @member {module:ui/viewcollection~ViewCollection}\n\t\t */\n\t\tthis.items = this.createCollection();\n\n\t\t/**\n\t\t * An array with objects representing colors to be displayed in the grid.\n\t\t *\n\t\t * @type {Array.}\n\t\t */\n\t\tthis.colorDefinitions = colors;\n\n\t\t/**\n\t\t * Tracks information about the DOM focus in the list.\n\t\t *\n\t\t * @readonly\n\t\t * @member {module:utils/focustracker~FocusTracker}\n\t\t */\n\t\tthis.focusTracker = new FocusTracker();\n\n\t\t/**\n\t\t * An instance of the {@link module:utils/keystrokehandler~KeystrokeHandler}.\n\t\t *\n\t\t * @readonly\n\t\t * @member {module:utils/keystrokehandler~KeystrokeHandler}\n\t\t */\n\t\tthis.keystrokes = new KeystrokeHandler();\n\n\t\t/**\n\t\t * Keeps the value of the command associated with the table for the current selection.\n\t\t *\n\t\t * @type {String}\n\t\t */\n\t\tthis.set( 'selectedColor' );\n\n\t\t/**\n\t\t * The label of the button responsible for removing color attributes.\n\t\t *\n\t\t * @type {String}\n\t\t */\n\t\tthis.removeButtonLabel = removeButtonLabel;\n\n\t\t/**\n\t\t * The number of columns in the color grid.\n\t\t *\n\t\t * @type {Number}\n\t\t */\n\t\tthis.columns = columns;\n\n\t\t/**\n\t\t * A collection of definitions that store the document colors.\n\t\t *\n\t\t * @readonly\n\t\t * @member {module:font/documentcolorcollection~DocumentColorCollection}\n\t\t */\n\t\tthis.documentColors = new DocumentColorCollection();\n\n\t\t/**\n\t\t * The maximum number of colors in the document colors section.\n\t\t * If it equals 0, the document colors section is not added.\n\t\t *\n\t\t * @readonly\n\t\t * @type {Number}\n\t\t */\n\t\tthis.documentColorsCount = documentColorsCount;\n\n\t\t/**\n\t\t * A collection of views that can be focused in the view.\n\t\t *\n\t\t * @readonly\n\t\t * @protected\n\t\t * @member {module:ui/viewcollection~ViewCollection}\n\t\t */\n\t\tthis._focusables = new ViewCollection();\n\n\t\t/**\n\t\t * Preserves the reference to {@link module:ui/colorgrid/colorgrid~ColorGridView} used to create\n\t\t * the default (static) color set.\n\t\t *\n\t\t * The property is loaded once the the parent dropdown is opened the first time.\n\t\t *\n\t\t * @readonly\n\t\t * @member {module:ui/colorgrid/colorgrid~ColorGridView|undefined} #staticColorsGrid\n\t\t */\n\n\t\t/**\n\t\t * Preserves the reference to {@link module:ui/colorgrid/colorgrid~ColorGridView} used to create\n\t\t * the document colors. It remains undefined if the document colors feature is disabled.\n\t\t *\n\t\t * The property is loaded once the the parent dropdown is opened the first time.\n\t\t *\n\t\t * @readonly\n\t\t * @member {module:ui/colorgrid/colorgrid~ColorGridView|undefined} #documentColorsGrid\n\t\t */\n\n\t\t/**\n\t\t * Helps cycling over focusable {@link #items} in the list.\n\t\t *\n\t\t * @readonly\n\t\t * @protected\n\t\t * @member {module:ui/focuscycler~FocusCycler}\n\t\t */\n\t\tthis._focusCycler = new FocusCycler( {\n\t\t\tfocusables: this._focusables,\n\t\t\tfocusTracker: this.focusTracker,\n\t\t\tkeystrokeHandler: this.keystrokes,\n\t\t\tactions: {\n\t\t\t\t// Navigate list items backwards using the Shift + Tab keystroke.\n\t\t\t\tfocusPrevious: 'shift + tab',\n\n\t\t\t\t// Navigate list items forwards using the Tab key.\n\t\t\t\tfocusNext: 'tab'\n\t\t\t}\n\t\t} );\n\n\t\t/**\n\t\t * Document color section's label.\n\t\t *\n\t\t * @private\n\t\t * @readonly\n\t\t * @type {String}\n\t\t */\n\t\tthis._documentColorsLabel = documentColorsLabel;\n\n\t\tthis.setTemplate( {\n\t\t\ttag: 'div',\n\t\t\tattributes: {\n\t\t\t\tclass: [\n\t\t\t\t\t'ck',\n\t\t\t\t\t'ck-color-table'\n\t\t\t\t]\n\t\t\t},\n\t\t\tchildren: this.items\n\t\t} );\n\n\t\tthis.items.add( this._createRemoveColorButton() );\n\t}\n\n\t/**\n\t * Scans through the editor model and searches for text node attributes with the given attribute name.\n\t * Found entries are set as document colors.\n\t *\n\t * All the previously stored document colors will be lost in the process.\n\t *\n\t * @param {module:engine/model/model~Model} model The model used as a source to obtain the document colors.\n\t * @param {String} attributeName Determines the name of the related model's attribute for a given dropdown.\n\t */\n\tupdateDocumentColors( model, attributeName ) {\n\t\tconst document = model.document;\n\t\tconst maxCount = this.documentColorsCount;\n\n\t\tthis.documentColors.clear();\n\n\t\tfor ( const rootName of document.getRootNames() ) {\n\t\t\tconst root = document.getRoot( rootName );\n\t\t\tconst range = model.createRangeIn( root );\n\n\t\t\tfor ( const node of range.getItems() ) {\n\t\t\t\tif ( node.is( '$textProxy' ) && node.hasAttribute( attributeName ) ) {\n\t\t\t\t\tthis._addColorToDocumentColors( node.getAttribute( attributeName ) );\n\n\t\t\t\t\tif ( this.documentColors.length >= maxCount ) {\n\t\t\t\t\t\treturn;\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 * Refreshes the state of the selected color in one or both {@link module:ui/colorgrid/colorgrid~ColorGridView}s\n\t * available in the {@link module:font/ui/colortableview~ColorTableView}. It guarantees that the selection will occur only in one\n\t * of them.\n\t */\n\tupdateSelectedColors() {\n\t\tconst documentColorsGrid = this.documentColorsGrid;\n\t\tconst staticColorsGrid = this.staticColorsGrid;\n\t\tconst selectedColor = this.selectedColor;\n\n\t\tstaticColorsGrid.selectedColor = selectedColor;\n\n\t\tif ( documentColorsGrid ) {\n\t\t\tdocumentColorsGrid.selectedColor = selectedColor;\n\t\t}\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\trender() {\n\t\tsuper.render();\n\n\t\t// Start listening for the keystrokes coming from #element.\n\t\tthis.keystrokes.listenTo( this.element );\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tdestroy() {\n\t\tsuper.destroy();\n\n\t\tthis.focusTracker.destroy();\n\t\tthis.keystrokes.destroy();\n\t}\n\n\t/**\n\t * Appends {@link #staticColorsGrid} and {@link #documentColorsGrid} views.\n\t */\n\tappendGrids() {\n\t\tif ( this.staticColorsGrid ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.staticColorsGrid = this._createStaticColorsGrid();\n\n\t\tthis.items.add( this.staticColorsGrid );\n\t\tthis.focusTracker.add( this.staticColorsGrid.element );\n\t\tthis._focusables.add( this.staticColorsGrid );\n\n\t\tif ( this.documentColorsCount ) {\n\t\t\t// Create a label for document colors.\n\t\t\tconst bind = Template.bind( this.documentColors, this.documentColors );\n\t\t\tconst label = new LabelView( this.locale );\n\t\t\tlabel.text = this._documentColorsLabel;\n\t\t\tlabel.extendTemplate( {\n\t\t\t\tattributes: {\n\t\t\t\t\tclass: [\n\t\t\t\t\t\t'ck',\n\t\t\t\t\t\t'ck-color-grid__label',\n\t\t\t\t\t\tbind.if( 'isEmpty', 'ck-hidden' )\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t} );\n\t\t\tthis.items.add( label );\n\t\t\tthis.documentColorsGrid = this._createDocumentColorsGrid();\n\n\t\t\tthis.items.add( this.documentColorsGrid );\n\t\t\tthis.focusTracker.add( this.documentColorsGrid.element );\n\t\t\tthis._focusables.add( this.documentColorsGrid );\n\t\t}\n\t}\n\n\t/**\n\t * Focuses the first focusable element in {@link #items}.\n\t */\n\tfocus() {\n\t\tthis._focusCycler.focusFirst();\n\t}\n\n\t/**\n\t * Focuses the last focusable element in {@link #items}.\n\t */\n\tfocusLast() {\n\t\tthis._focusCycler.focusLast();\n\t}\n\n\t/**\n\t * Adds the remove color button as a child of the current view.\n\t *\n\t * @private\n\t * @returns {module:ui/button/buttonview~ButtonView}\n\t */\n\t_createRemoveColorButton() {\n\t\tconst buttonView = new ButtonView();\n\n\t\tbuttonView.set( {\n\t\t\twithText: true,\n\t\t\ticon: icons.eraser,\n\t\t\tlabel: this.removeButtonLabel\n\t\t} );\n\n\t\tbuttonView.class = 'ck-color-table__remove-color';\n\t\tbuttonView.on( 'execute', () => {\n\t\t\tthis.fire( 'execute', { value: null } );\n\t\t} );\n\n\t\tbuttonView.render();\n\n\t\tthis.focusTracker.add( buttonView.element );\n\t\tthis._focusables.add( buttonView );\n\n\t\treturn buttonView;\n\t}\n\n\t/**\n\t * Creates a static color table grid based on the editor configuration.\n\t *\n\t * @private\n\t * @returns {module:ui/colorgrid/colorgrid~ColorGridView}\n\t */\n\t_createStaticColorsGrid() {\n\t\tconst colorGrid = new ColorGridView( this.locale, {\n\t\t\tcolorDefinitions: this.colorDefinitions,\n\t\t\tcolumns: this.columns\n\t\t} );\n\n\t\tcolorGrid.delegate( 'execute' ).to( this );\n\n\t\treturn colorGrid;\n\t}\n\n\t/**\n\t * Creates the document colors section view and binds it to {@link #documentColors}.\n\t *\n\t * @private\n\t * @returns {module:ui/colorgrid/colorgrid~ColorGridView}\n\t */\n\t_createDocumentColorsGrid() {\n\t\tconst bind = Template.bind( this.documentColors, this.documentColors );\n\t\tconst documentColorsGrid = new ColorGridView( this.locale, {\n\t\t\tcolumns: this.columns\n\t\t} );\n\n\t\tdocumentColorsGrid.delegate( 'execute' ).to( this );\n\n\t\tdocumentColorsGrid.extendTemplate( {\n\t\t\tattributes: {\n\t\t\t\tclass: bind.if( 'isEmpty', 'ck-hidden' )\n\t\t\t}\n\t\t} );\n\n\t\tdocumentColorsGrid.items.bindTo( this.documentColors ).using(\n\t\t\tcolorObj => {\n\t\t\t\tconst colorTile = new ColorTileView();\n\n\t\t\t\tcolorTile.set( {\n\t\t\t\t\tcolor: colorObj.color,\n\t\t\t\t\thasBorder: colorObj.options && colorObj.options.hasBorder\n\t\t\t\t} );\n\n\t\t\t\tif ( colorObj.label ) {\n\t\t\t\t\tcolorTile.set( {\n\t\t\t\t\t\tlabel: colorObj.label,\n\t\t\t\t\t\ttooltip: true\n\t\t\t\t\t} );\n\t\t\t\t}\n\n\t\t\t\tcolorTile.on( 'execute', () => {\n\t\t\t\t\tthis.fire( 'execute', {\n\t\t\t\t\t\tvalue: colorObj.color\n\t\t\t\t\t} );\n\t\t\t\t} );\n\n\t\t\t\treturn colorTile;\n\t\t\t}\n\t\t);\n\n\t\t// Selected color should be cleared when document colors became empty.\n\t\tthis.documentColors.on( 'change:isEmpty', ( evt, name, val ) => {\n\t\t\tif ( val ) {\n\t\t\t\tdocumentColorsGrid.selectedColor = null;\n\t\t\t}\n\t\t} );\n\n\t\treturn documentColorsGrid;\n\t}\n\n\t/**\n\t * Adds a given color to the document colors list. If possible, the method will attempt to use\n\t * data from the {@link #colorDefinitions} (label, color options).\n\t *\n\t * @private\n\t * @param {String} color A string that stores the value of the recently applied color.\n\t */\n\t_addColorToDocumentColors( color ) {\n\t\tconst predefinedColor = this.colorDefinitions\n\t\t\t.find( definition => definition.color === color );\n\n\t\tif ( !predefinedColor ) {\n\t\t\tthis.documentColors.add( {\n\t\t\t\tcolor,\n\t\t\t\tlabel: color,\n\t\t\t\toptions: {\n\t\t\t\t\thasBorder: false\n\t\t\t\t}\n\t\t\t} );\n\t\t} else {\n\t\t\tthis.documentColors.add( Object.assign( {}, predefinedColor ) );\n\t\t}\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 font/utils\n */\n\nimport ColorTableView from './ui/colortableview';\n\n/**\n * The name of the font size plugin.\n */\nexport const FONT_SIZE = 'fontSize';\n\n/**\n * The name of the font family plugin.\n */\nexport const FONT_FAMILY = 'fontFamily';\n\n/**\n * The name of the font color plugin.\n */\nexport const FONT_COLOR = 'fontColor';\n\n/**\n * The name of the font background color plugin.\n */\nexport const FONT_BACKGROUND_COLOR = 'fontBackgroundColor';\n\n/**\n * Builds a proper {@link module:engine/conversion/conversion~ConverterDefinition converter definition} out of input data.\n *\n * @param {String} modelAttributeKey Key\n * @param {Array.|Array.} options\n * @returns {module:engine/conversion/conversion~ConverterDefinition}\n */\nexport function buildDefinition( modelAttributeKey, options ) {\n\tconst definition = {\n\t\tmodel: {\n\t\t\tkey: modelAttributeKey,\n\t\t\tvalues: []\n\t\t},\n\t\tview: {},\n\t\tupcastAlso: {}\n\t};\n\n\tfor ( const option of options ) {\n\t\tdefinition.model.values.push( option.model );\n\t\tdefinition.view[ option.model ] = option.view;\n\n\t\tif ( option.upcastAlso ) {\n\t\t\tdefinition.upcastAlso[ option.model ] = option.upcastAlso;\n\t\t}\n\t}\n\n\treturn definition;\n}\n\n/**\n * A {@link module:font/fontcolor~FontColor font color} and\n * {@link module:font/fontbackgroundcolor~FontBackgroundColor font background color} helper\n * responsible for upcasting data to the model.\n *\n * **Note**: The `styleAttr` parameter should be either `'color'` or `'background-color'`.\n *\n * @param {String} styleAttr\n * @return {String}\n */\nexport function renderUpcastAttribute( styleAttr ) {\n\treturn viewElement => normalizeColorCode( viewElement.getStyle( styleAttr ) );\n}\n\n/**\n * A {@link module:font/fontcolor~FontColor font color} and\n * {@link module:font/fontbackgroundcolor~FontBackgroundColor font background color} helper\n * responsible for downcasting a color attribute to a `` element.\n *\n * **Note**: The `styleAttr` parameter should be either `'color'` or `'background-color'`.\n *\n * @param {String} styleAttr\n */\nexport function renderDowncastElement( styleAttr ) {\n\treturn ( modelAttributeValue, { writer } ) => writer.createAttributeElement( 'span', {\n\t\tstyle: `${ styleAttr }:${ modelAttributeValue }`\n\t}, { priority: 7 } );\n}\n\n/**\n * A helper that adds {@link module:font/ui/colortableview~ColorTableView} to the color dropdown with proper initial values.\n *\n * @param {Object} config The configuration object.\n * @param {module:ui/dropdown/dropdownview~DropdownView} config.dropdownView The dropdown view to which\n * a {@link module:font/ui/colortableview~ColorTableView} will be added.\n * @param {Array.} config.colors An array with definitions\n * representing colors to be displayed in the color table.\n * @param {String} config.removeButtonLabel The label for the button responsible for removing the color.\n * @param {String} config.documentColorsLabel The label for the section with document colors.\n * @param {String} config.documentColorsCount The number of document colors inside the dropdown.\n * @returns {module:font/ui/colortableview~ColorTableView} The new color table view.\n */\nexport function addColorTableToDropdown( { dropdownView, colors, columns, removeButtonLabel, documentColorsLabel, documentColorsCount } ) {\n\tconst locale = dropdownView.locale;\n\tconst colorTableView = new ColorTableView( locale, { colors, columns, removeButtonLabel, documentColorsLabel, documentColorsCount } );\n\n\tdropdownView.colorTableView = colorTableView;\n\tdropdownView.panelView.children.add( colorTableView );\n\n\tcolorTableView.delegate( 'execute' ).to( dropdownView, 'execute' );\n\n\treturn colorTableView;\n}\n\n// Fixes the color value string.\n//\n// @param {String} value\n// @returns {String}\nfunction normalizeColorCode( value ) {\n\treturn value.replace( /\\s/g, '' );\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 font/fontfamily/fontfamilycommand\n */\n\nimport FontCommand from '../fontcommand';\nimport { FONT_FAMILY } from '../utils';\n\n/**\n * The font family command. It is used by {@link module:font/fontfamily/fontfamilyediting~FontFamilyEditing}\n * to apply the font family.\n *\n *\t\teditor.execute( 'fontFamily', { value: 'Arial' } );\n *\n * **Note**: Executing the command without the value removes the attribute from the model.\n *\n * @extends module:font/fontcommand~FontCommand\n */\nexport default class FontFamilyCommand extends FontCommand {\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor ) {\n\t\tsuper( editor, FONT_FAMILY );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 font/fontfamily/utils\n */\n\n/**\n * Normalizes the {@link module:font/fontfamily~FontFamilyConfig#options configuration options}\n * to the {@link module:font/fontfamily~FontFamilyOption} format.\n *\n * @param {Array.} configuredOptions An array of options taken from the configuration.\n * @returns {Array.}\n */\nexport function normalizeOptions( configuredOptions ) {\n\t// Convert options to objects.\n\treturn configuredOptions\n\t\t.map( getOptionDefinition )\n\t\t// Filter out undefined values that `getOptionDefinition` might return.\n\t\t.filter( option => !!option );\n}\n\n// Returns an option definition either created from string shortcut.\n// If object is passed then this method will return it without alternating it. Returns undefined for item than cannot be parsed.\n//\n// @param {String|Object} option\n// @returns {undefined|module:font/fontfamily~FontFamilyOption}\nfunction getOptionDefinition( option ) {\n\t// Treat any object as full item definition provided by user in configuration.\n\tif ( typeof option === 'object' ) {\n\t\treturn option;\n\t}\n\n\t// Handle 'default' string as a special case. It will be used to remove the fontFamily attribute.\n\tif ( option === 'default' ) {\n\t\treturn {\n\t\t\ttitle: 'Default',\n\t\t\tmodel: undefined\n\t\t};\n\t}\n\n\t// Ignore values that we cannot parse to a definition.\n\tif ( typeof option !== 'string' ) {\n\t\treturn;\n\t}\n\n\t// Return font family definition from font string.\n\treturn generateFontPreset( option );\n}\n\n// Creates a predefined preset for pixel size. It deconstructs font-family like string into full configuration option.\n// A font definition is passed as coma delimited set of font family names. Font names might be quoted.\n//\n// @param {String} A font definition form configuration.\nfunction generateFontPreset( fontDefinition ) {\n\t// Remove quotes from font names. They will be normalized later.\n\tconst fontNames = fontDefinition.replace( /\"|'/g, '' ).split( ',' );\n\n\t// The first matched font name will be used as dropdown list item title and as model value.\n\tconst firstFontName = fontNames[ 0 ];\n\n\t// CSS-compatible font names.\n\tconst cssFontNames = fontNames.map( normalizeFontNameForCSS ).join( ', ' );\n\n\treturn {\n\t\ttitle: firstFontName,\n\t\tmodel: cssFontNames,\n\t\tview: {\n\t\t\tname: 'span',\n\t\t\tstyles: {\n\t\t\t\t'font-family': cssFontNames\n\t\t\t},\n\t\t\tpriority: 7\n\t\t}\n\t};\n}\n\n// Normalizes font name for the style attribute. It adds braces (') if font name contains spaces.\n//\n// @param {String} fontName\n// @returns {String}\nfunction normalizeFontNameForCSS( fontName ) {\n\tfontName = fontName.trim();\n\n\t// Compound font names should be quoted.\n\tif ( fontName.indexOf( ' ' ) > 0 ) {\n\t\tfontName = `'${ fontName }'`;\n\t}\n\n\treturn fontName;\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 font/fontfamily/fontfamilyediting\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\n\nimport FontFamilyCommand from './fontfamilycommand';\nimport { normalizeOptions } from './utils';\nimport { buildDefinition, FONT_FAMILY } from '../utils';\n\n/**\n * The font family editing feature.\n *\n * It introduces the {@link module:font/fontfamily/fontfamilycommand~FontFamilyCommand command} and\n * the `fontFamily` attribute in the {@link module:engine/model/model~Model model} which renders\n * in the {@link module:engine/view/view view} as an inline `` element (``),\n * depending on the {@link module:font/fontfamily~FontFamilyConfig configuration}.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class FontFamilyEditing extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'FontFamilyEditing';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor ) {\n\t\tsuper( editor );\n\n\t\t// Define default configuration using font families shortcuts.\n\t\teditor.config.define( FONT_FAMILY, {\n\t\t\toptions: [\n\t\t\t\t'default',\n\t\t\t\t'Arial, Helvetica, sans-serif',\n\t\t\t\t'Courier New, Courier, monospace',\n\t\t\t\t'Georgia, serif',\n\t\t\t\t'Lucida Sans Unicode, Lucida Grande, sans-serif',\n\t\t\t\t'Tahoma, Geneva, sans-serif',\n\t\t\t\t'Times New Roman, Times, serif',\n\t\t\t\t'Trebuchet MS, Helvetica, sans-serif',\n\t\t\t\t'Verdana, Geneva, sans-serif'\n\t\t\t],\n\t\t\tsupportAllValues: false\n\t\t} );\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst editor = this.editor;\n\n\t\t// Allow fontFamily attribute on text nodes.\n\t\teditor.model.schema.extend( '$text', { allowAttributes: FONT_FAMILY } );\n\t\teditor.model.schema.setAttributeProperties( FONT_FAMILY, {\n\t\t\tisFormatting: true,\n\t\t\tcopyOnEnter: true\n\t\t} );\n\n\t\t// Get configured font family options without \"default\" option.\n\t\tconst options = normalizeOptions( editor.config.get( 'fontFamily.options' ) ).filter( item => item.model );\n\t\tconst definition = buildDefinition( FONT_FAMILY, options );\n\n\t\t// Set-up the two-way conversion.\n\t\tif ( editor.config.get( 'fontFamily.supportAllValues' ) ) {\n\t\t\tthis._prepareAnyValueConverters();\n\t\t\tthis._prepareCompatibilityConverter();\n\t\t} else {\n\t\t\teditor.conversion.attributeToElement( definition );\n\t\t}\n\n\t\teditor.commands.add( FONT_FAMILY, new FontFamilyCommand( editor ) );\n\t}\n\n\t/**\n\t * These converters enable keeping any value found as `style=\"font-family: *\"` as a value of an attribute on a text even\n\t * if it is not defined in the plugin configuration.\n\t *\n\t * @private\n\t */\n\t_prepareAnyValueConverters() {\n\t\tconst editor = this.editor;\n\n\t\teditor.conversion.for( 'downcast' ).attributeToElement( {\n\t\t\tmodel: FONT_FAMILY,\n\t\t\tview: ( attributeValue, { writer } ) => {\n\t\t\t\treturn writer.createAttributeElement( 'span', { style: 'font-family:' + attributeValue }, { priority: 7 } );\n\t\t\t}\n\t\t} );\n\n\t\teditor.conversion.for( 'upcast' ).elementToAttribute( {\n\t\t\tmodel: {\n\t\t\t\tkey: FONT_FAMILY,\n\t\t\t\tvalue: viewElement => viewElement.getStyle( 'font-family' )\n\t\t\t},\n\t\t\tview: {\n\t\t\t\tname: 'span',\n\t\t\t\tstyles: {\n\t\t\t\t\t'font-family': /.*/\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\t}\n\n\t/**\n\t * Adds support for legacy `` formatting.\n\t *\n\t * @private\n\t */\n\t_prepareCompatibilityConverter() {\n\t\tconst editor = this.editor;\n\n\t\teditor.conversion.for( 'upcast' ).elementToAttribute( {\n\t\t\tview: {\n\t\t\t\tname: 'font',\n\t\t\t\tattributes: {\n\t\t\t\t\t'face': /.*/\n\t\t\t\t}\n\t\t\t},\n\t\t\tmodel: {\n\t\t\t\tkey: FONT_FAMILY,\n\t\t\t\tvalue: viewElement => viewElement.getAttribute( 'face' )\n\t\t\t}\n\t\t} );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 font/fontfamily/fontfamilyui\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { Collection } from 'ckeditor5/src/utils';\nimport { Model, createDropdown, addListToDropdown } from 'ckeditor5/src/ui';\n\nimport { normalizeOptions } from './utils';\nimport { FONT_FAMILY } from '../utils';\n\nimport fontFamilyIcon from '../../theme/icons/font-family.svg';\n\n/**\n * The font family UI plugin. It introduces the `'fontFamily'` dropdown.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class FontFamilyUI extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'FontFamilyUI';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst editor = this.editor;\n\t\tconst t = editor.t;\n\n\t\tconst options = this._getLocalizedOptions();\n\n\t\tconst command = editor.commands.get( FONT_FAMILY );\n\n\t\t// Register UI component.\n\t\teditor.ui.componentFactory.add( FONT_FAMILY, locale => {\n\t\t\tconst dropdownView = createDropdown( locale );\n\t\t\taddListToDropdown( dropdownView, _prepareListOptions( options, command ) );\n\n\t\t\tdropdownView.buttonView.set( {\n\t\t\t\tlabel: t( 'Font Family' ),\n\t\t\t\ticon: fontFamilyIcon,\n\t\t\t\ttooltip: true\n\t\t\t} );\n\n\t\t\tdropdownView.extendTemplate( {\n\t\t\t\tattributes: {\n\t\t\t\t\tclass: 'ck-font-family-dropdown'\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tdropdownView.bind( 'isEnabled' ).to( command );\n\n\t\t\t// Execute command when an item from the dropdown is selected.\n\t\t\tthis.listenTo( dropdownView, 'execute', evt => {\n\t\t\t\teditor.execute( evt.source.commandName, { value: evt.source.commandParam } );\n\t\t\t\teditor.editing.view.focus();\n\t\t\t} );\n\n\t\t\treturn dropdownView;\n\t\t} );\n\t}\n\n\t/**\n\t * Returns options as defined in `config.fontFamily.options` but processed to account for\n\t * editor localization, i.e. to display {@link module:font/fontfamily~FontFamilyOption}\n\t * in the correct language.\n\t *\n\t * Note: The reason behind this method is that there is no way to use {@link module:utils/locale~Locale#t}\n\t * when the user configuration is defined because the editor does not exist yet.\n\t *\n\t * @private\n\t * @returns {Array.}.\n\t */\n\t_getLocalizedOptions() {\n\t\tconst editor = this.editor;\n\t\tconst t = editor.t;\n\n\t\tconst options = normalizeOptions( editor.config.get( FONT_FAMILY ).options );\n\n\t\treturn options.map( option => {\n\t\t\t// The only title to localize is \"Default\" others are font names.\n\t\t\tif ( option.title === 'Default' ) {\n\t\t\t\toption.title = t( 'Default' );\n\t\t\t}\n\n\t\t\treturn option;\n\t\t} );\n\t}\n}\n\n// Prepares FontFamily dropdown items.\n// @private\n// @param {Array.} options\n// @param {module:font/fontsize/fontsizecommand~FontSizeCommand} command\nfunction _prepareListOptions( options, command ) {\n\tconst itemDefinitions = new Collection();\n\n\t// Create dropdown items.\n\tfor ( const option of options ) {\n\t\tconst def = {\n\t\t\ttype: 'button',\n\t\t\tmodel: new Model( {\n\t\t\t\tcommandName: FONT_FAMILY,\n\t\t\t\tcommandParam: option.model,\n\t\t\t\tlabel: option.title,\n\t\t\t\twithText: true\n\t\t\t} )\n\t\t};\n\n\t\tdef.model.bind( 'isOn' ).to( command, 'value', value => {\n\t\t\t// \"Default\" or check in strict font-family converters mode.\n\t\t\tif ( value === option.model ) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tif ( !value || !option.model ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn value.split( ',' )[ 0 ].replace( /'/g, '' ).toLowerCase() === option.model.toLowerCase();\n\t\t} );\n\n\t\t// Try to set a dropdown list item style.\n\t\tif ( option.view && option.view.styles ) {\n\t\t\tdef.model.set( 'labelStyle', `font-family: ${ option.view.styles[ 'font-family' ] }` );\n\t\t}\n\n\t\titemDefinitions.add( def );\n\t}\n\treturn itemDefinitions;\n}\n","export default \"\";","/**\n * @license Copyright (c) 2003-2022, 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 font/fontfamily\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport FontFamilyEditing from './fontfamily/fontfamilyediting';\nimport FontFamilyUI from './fontfamily/fontfamilyui';\n\n/**\n * The font family plugin.\n *\n * For a detailed overview, check the {@glink features/font font feature} documentatiom\n * and the {@glink api/font package page}.\n *\n * This is a \"glue\" plugin which loads the {@link module:font/fontfamily/fontfamilyediting~FontFamilyEditing} and\n * {@link module:font/fontfamily/fontfamilyui~FontFamilyUI} features in the editor.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class FontFamily extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get requires() {\n\t\treturn [ FontFamilyEditing, FontFamilyUI ];\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'FontFamily';\n\t}\n}\n\n/**\n * The font family option descriptor.\n *\n * @typedef {Object} module:font/fontfamily~FontFamilyOption\n *\n * @property {String} title The user-readable title of the option.\n * @property {String} model The attribute's unique value in the model.\n * @property {module:engine/view/elementdefinition~ElementDefinition} view View element configuration.\n * @property {Array.} [upcastAlso] An array with all matched elements that\n * the view-to-model conversion should also accept.\n */\n\n/**\n * The configuration of the font family feature.\n * It is introduced by the {@link module:font/fontfamily/fontfamilyediting~FontFamilyEditing} feature.\n *\n * Read more in {@link module:font/fontfamily~FontFamilyConfig}.\n *\n * @member {module:font/fontfamily~FontFamilyConfig} module:core/editor/editorconfig~EditorConfig#fontFamily\n */\n\n/**\n * The configuration of the font family feature.\n * This option is used by the {@link module:font/fontfamily/fontfamilyediting~FontFamilyEditing} feature.\n *\n *\t\tClassicEditor\n *\t\t\t.create( {\n * \t\t\t\tfontFamily: ... // Font family feature configuration.\n *\t\t\t} )\n *\t\t\t.then( ... )\n *\t\t\t.catch( ... );\n *\n * See {@link module:core/editor/editorconfig~EditorConfig all editor options}.\n *\n * @interface module:font/fontfamily~FontFamilyConfig\n */\n\n/**\n * Available font family options defined as an array of strings. The default value is:\n *\n *\t\tconst fontFamilyConfig = {\n *\t\t\toptions: [\n *\t\t\t\t'default',\n *\t\t\t\t'Arial, Helvetica, sans-serif',\n *\t\t\t\t'Courier New, Courier, monospace',\n *\t\t\t\t'Georgia, serif',\n *\t\t\t\t'Lucida Sans Unicode, Lucida Grande, sans-serif',\n *\t\t\t\t'Tahoma, Geneva, sans-serif',\n *\t\t\t\t'Times New Roman, Times, serif',\n *\t\t\t\t'Trebuchet MS, Helvetica, sans-serif',\n *\t\t\t\t'Verdana, Geneva, sans-serif'\n *\t\t\t]\n *\t\t};\n *\n * which configures 8 font family options. Each option consists of one or more comma–separated font family names. The first font name is\n * used as the dropdown item description in the UI.\n *\n * **Note:** The family names that consist of spaces should not have quotes (as opposed to the CSS standard). The necessary quotes\n * will be added automatically in the view. For example, the `\"Lucida Sans Unicode\"` will render as follows:\n *\n * \t\t...\n *\n * The \"default\" option removes the `fontFamily` attribute from the selection. In such case, the text will\n * be rendered in the view using the default font family defined in the styles of the web page.\n *\n * Font family can be applied using the command API. To do that, use the `fontFamily` command and pass the desired family as a `value`.\n * For example, the following code will apply the `fontFamily` attribute with the `'Arial'` `value` to the current selection:\n *\n *\t\teditor.execute( 'fontFamily', { value: 'Arial' } );\n *\n * Executing the `'fontFamily'` command without any value will remove the `fontFamily` attribute from the current selection.\n *\n * @member {Array.} module:font/fontfamily~FontFamilyConfig#options\n */\n\n/**\n * By default the plugin removes any `font-family` value that does not match the plugin's configuration. It means that if you paste content\n * with font families that the editor does not understand, the `font-family` attribute will be removed and the content will be displayed\n * with the default font.\n *\n * You can preserve pasted font family values by switching the `supportAllValues` option to `true`:\n *\n *\t\tconst fontFamilyConfig = {\n *\t\t\tsupportAllValues: true\n *\t\t};\n *\n * With this configuration font families not specified in the editor configuration will not be removed when pasting the content.\n *\n * @member {Boolean} module:font/fontfamily~FontFamilyConfig#supportAllValues\n */\n","/**\n * @license Copyright (c) 2003-2022, 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 font/fontsize/fontsizecommand\n */\n\nimport FontCommand from '../fontcommand';\nimport { FONT_SIZE } from '../utils';\n\n/**\n * The font size command. It is used by {@link module:font/fontsize/fontsizeediting~FontSizeEditing}\n * to apply the font size.\n *\n *\t\teditor.execute( 'fontSize', { value: 'small' } );\n *\n * **Note**: Executing the command without the value removes the attribute from the model.\n *\n * @extends module:font/fontcommand~FontCommand\n */\nexport default class FontSizeCommand extends FontCommand {\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor ) {\n\t\tsuper( editor, FONT_SIZE );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 font/fontsize/utils\n */\n\nimport { CKEditorError } from 'ckeditor5/src/utils';\n\n/**\n * Normalizes and translates the {@link module:font/fontsize~FontSizeConfig#options configuration options}\n * to the {@link module:font/fontsize~FontSizeOption} format.\n *\n * @param {Array.} configuredOptions An array of options taken from the configuration.\n * @returns {Array.}\n */\nexport function normalizeOptions( configuredOptions ) {\n\t// Convert options to objects.\n\treturn configuredOptions\n\t\t.map( item => getOptionDefinition( item ) )\n\t\t// Filter out undefined values that `getOptionDefinition` might return.\n\t\t.filter( option => !!option );\n}\n\n// Default named presets map. Always create a new instance of the preset object in order to avoid modifying references.\nconst namedPresets = {\n\tget tiny() {\n\t\treturn {\n\t\t\ttitle: 'Tiny',\n\t\t\tmodel: 'tiny',\n\t\t\tview: {\n\t\t\t\tname: 'span',\n\t\t\t\tclasses: 'text-tiny',\n\t\t\t\tpriority: 7\n\t\t\t}\n\t\t};\n\t},\n\tget small() {\n\t\treturn {\n\t\t\ttitle: 'Small',\n\t\t\tmodel: 'small',\n\t\t\tview: {\n\t\t\t\tname: 'span',\n\t\t\t\tclasses: 'text-small',\n\t\t\t\tpriority: 7\n\t\t\t}\n\t\t};\n\t},\n\tget big() {\n\t\treturn {\n\t\t\ttitle: 'Big',\n\t\t\tmodel: 'big',\n\t\t\tview: {\n\t\t\t\tname: 'span',\n\t\t\t\tclasses: 'text-big',\n\t\t\t\tpriority: 7\n\t\t\t}\n\t\t};\n\t},\n\tget huge() {\n\t\treturn {\n\t\t\ttitle: 'Huge',\n\t\t\tmodel: 'huge',\n\t\t\tview: {\n\t\t\t\tname: 'span',\n\t\t\t\tclasses: 'text-huge',\n\t\t\t\tpriority: 7\n\t\t\t}\n\t\t};\n\t}\n};\n\n// Returns an option definition either from preset or creates one from number shortcut.\n// If object is passed then this method will return it without alternating it. Returns undefined for item than cannot be parsed.\n//\n// @param {String|Number|Object} item\n// @returns {undefined|module:font/fontsize~FontSizeOption}\nfunction getOptionDefinition( option ) {\n\t// Check whether passed option is a full item definition provided by user in configuration.\n\tif ( isFullItemDefinition( option ) ) {\n\t\treturn attachPriority( option );\n\t}\n\n\tconst preset = findPreset( option );\n\n\t// Item is a named preset.\n\tif ( preset ) {\n\t\treturn attachPriority( preset );\n\t}\n\n\t// 'Default' font size. It will be used to remove the fontSize attribute.\n\tif ( option === 'default' ) {\n\t\treturn {\n\t\t\tmodel: undefined,\n\t\t\ttitle: 'Default'\n\t\t};\n\t}\n\n\t// At this stage we probably have numerical value to generate a preset so parse it's value.\n\t// Discard any faulty values.\n\tif ( isNumericalDefinition( option ) ) {\n\t\treturn;\n\t}\n\n\t// Return font size definition from size value.\n\treturn generatePixelPreset( option );\n}\n\n// Creates a predefined preset for pixel size.\n//\n// @param {Number} definition Font size in pixels.\n// @returns {module:font/fontsize~FontSizeOption}\nfunction generatePixelPreset( definition ) {\n\t// Extend a short (numeric value) definition.\n\tif ( typeof definition === 'number' || typeof definition === 'string' ) {\n\t\tdefinition = {\n\t\t\ttitle: String( definition ),\n\t\t\tmodel: `${ parseFloat( definition ) }px`\n\t\t};\n\t}\n\n\tdefinition.view = {\n\t\tname: 'span',\n\t\tstyles: {\n\t\t\t'font-size': definition.model\n\t\t}\n\t};\n\n\treturn attachPriority( definition );\n}\n\n// Adds the priority to the view element definition if missing. It's required due to ckeditor/ckeditor5#2291\n//\n// @param {Object} definition\n// @param {Object} definition.title\n// @param {Object} definition.model\n// @param {Object} definition.view\n// @returns {Object}\nfunction attachPriority( definition ) {\n\tif ( !definition.view.priority ) {\n\t\tdefinition.view.priority = 7;\n\t}\n\n\treturn definition;\n}\n\n// Returns a prepared preset definition. If passed an object, a name of preset should be defined as `model` value.\n//\n// @param {String|Object} definition\n// @param {String} definition.model A preset name.\n// @returns {Object|undefined}\nfunction findPreset( definition ) {\n\treturn namedPresets[ definition ] || namedPresets[ definition.model ];\n}\n\n// We treat `definition` as completed if it is an object that contains `title`, `model` and `view` values.\n//\n// @param {Object} definition\n// @param {String} definition.title\n// @param {String} definition.model\n// @param {Object} definition.view\n// @returns {Boolean}\nfunction isFullItemDefinition( definition ) {\n\treturn typeof definition === 'object' && definition.title && definition.model && definition.view;\n}\n\n// We treat `definition` as numerical if it is a number, number-like (string) or an object with the `title` key.\n//\n// @param {Object|Number|String} definition\n// @param {Object} definition.title\n// @returns {Boolean}\nfunction isNumericalDefinition( definition ) {\n\tlet numberValue;\n\n\tif ( typeof definition === 'object' ) {\n\t\tif ( !definition.model ) {\n\t\t\t/**\n\t\t\t * Provided value as an option for {@link module:font/fontsize~FontSize} seems to invalid.\n\t\t\t *\n\t\t\t * See valid examples described in the {@link module:font/fontsize~FontSizeConfig#options plugin configuration}.\n\t\t\t *\n\t\t\t * @error font-size-invalid-definition\n\t\t\t */\n\t\t\tthrow new CKEditorError( 'font-size-invalid-definition', null, definition );\n\t\t} else {\n\t\t\tnumberValue = parseFloat( definition.model );\n\t\t}\n\t} else {\n\t\tnumberValue = parseFloat( definition );\n\t}\n\n\treturn isNaN( numberValue );\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 font/fontsize/fontsizeediting\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { CKEditorError } from 'ckeditor5/src/utils';\nimport { isLength, isPercentage } from 'ckeditor5/src/engine';\n\nimport FontSizeCommand from './fontsizecommand';\nimport { normalizeOptions } from './utils';\nimport { buildDefinition, FONT_SIZE } from '../utils';\n\n// Mapping of `` styling to CSS's `font-size` values.\nconst styleFontSize = [\n\t'x-small', // Size \"0\" equal to \"1\".\n\t'x-small',\n\t'small',\n\t'medium',\n\t'large',\n\t'x-large',\n\t'xx-large',\n\t'xxx-large'\n];\n\n/**\n * The font size editing feature.\n *\n * It introduces the {@link module:font/fontsize/fontsizecommand~FontSizeCommand command} and the `fontSize`\n * attribute in the {@link module:engine/model/model~Model model} which renders in the {@link module:engine/view/view view}\n * as a `` element with either:\n * * a style attribute (`...`),\n * * or a class attribute (`...`)\n *\n * depending on the {@link module:font/fontsize~FontSizeConfig configuration}.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class FontSizeEditing extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'FontSizeEditing';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor ) {\n\t\tsuper( editor );\n\n\t\t// Define default configuration using named presets.\n\t\teditor.config.define( FONT_SIZE, {\n\t\t\toptions: [\n\t\t\t\t'tiny',\n\t\t\t\t'small',\n\t\t\t\t'default',\n\t\t\t\t'big',\n\t\t\t\t'huge'\n\t\t\t],\n\t\t\tsupportAllValues: false\n\t\t} );\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst editor = this.editor;\n\n\t\t// Allow fontSize attribute on text nodes.\n\t\teditor.model.schema.extend( '$text', { allowAttributes: FONT_SIZE } );\n\t\teditor.model.schema.setAttributeProperties( FONT_SIZE, {\n\t\t\tisFormatting: true,\n\t\t\tcopyOnEnter: true\n\t\t} );\n\n\t\tconst supportAllValues = editor.config.get( 'fontSize.supportAllValues' );\n\n\t\t// Define view to model conversion.\n\t\tconst options = normalizeOptions( this.editor.config.get( 'fontSize.options' ) )\n\t\t\t.filter( item => item.model );\n\t\tconst definition = buildDefinition( FONT_SIZE, options );\n\n\t\t// Set-up the two-way conversion.\n\t\tif ( supportAllValues ) {\n\t\t\tthis._prepareAnyValueConverters( definition );\n\t\t\tthis._prepareCompatibilityConverter();\n\t\t} else {\n\t\t\teditor.conversion.attributeToElement( definition );\n\t\t}\n\n\t\t// Add FontSize command.\n\t\teditor.commands.add( FONT_SIZE, new FontSizeCommand( editor ) );\n\t}\n\n\t/**\n\t * These converters enable keeping any value found as `style=\"font-size: *\"` as a value of an attribute on a text even\n\t * if it is not defined in the plugin configuration.\n\t *\n\t * @param {Object} definition {@link module:engine/conversion/conversion~ConverterDefinition Converter definition} out of input data.\n\t * @private\n\t */\n\t_prepareAnyValueConverters( definition ) {\n\t\tconst editor = this.editor;\n\n\t\t// If `fontSize.supportAllValues=true`, we do not allow to use named presets in the plugin's configuration.\n\t\tconst presets = definition.model.values.filter( value => {\n\t\t\treturn !isLength( String( value ) ) && !isPercentage( String( value ) );\n\t\t} );\n\n\t\tif ( presets.length ) {\n\t\t\t/**\n\t\t\t * If {@link module:font/fontsize~FontSizeConfig#supportAllValues `config.fontSize.supportAllValues`} is `true`,\n\t\t\t * you need to use numerical values as font size options.\n\t\t\t *\n\t\t\t * See valid examples described in the {@link module:font/fontsize~FontSizeConfig#options plugin configuration}.\n\t\t\t *\n\t\t\t * @error font-size-invalid-use-of-named-presets\n\t\t\t * @param {Array.} presets Invalid values.\n\t\t\t */\n\t\t\tthrow new CKEditorError(\n\t\t\t\t'font-size-invalid-use-of-named-presets',\n\t\t\t\tnull, { presets }\n\t\t\t);\n\t\t}\n\n\t\teditor.conversion.for( 'downcast' ).attributeToElement( {\n\t\t\tmodel: FONT_SIZE,\n\t\t\tview: ( attributeValue, { writer } ) => {\n\t\t\t\tif ( !attributeValue ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\treturn writer.createAttributeElement( 'span', { style: 'font-size:' + attributeValue }, { priority: 7 } );\n\t\t\t}\n\t\t} );\n\n\t\teditor.conversion.for( 'upcast' ).elementToAttribute( {\n\t\t\tmodel: {\n\t\t\t\tkey: FONT_SIZE,\n\t\t\t\tvalue: viewElement => viewElement.getStyle( 'font-size' )\n\t\t\t},\n\t\t\tview: {\n\t\t\t\tname: 'span',\n\t\t\t\tstyles: {\n\t\t\t\t\t'font-size': /.*/\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\t}\n\n\t/**\n\t * Adds support for legacy `` formatting.\n\t *\n\t * @private\n\t */\n\t_prepareCompatibilityConverter() {\n\t\tconst editor = this.editor;\n\n\t\teditor.conversion.for( 'upcast' ).elementToAttribute( {\n\t\t\tview: {\n\t\t\t\tname: 'font',\n\t\t\t\tattributes: {\n\t\t\t\t\t// Documentation mentions sizes from 1 to 7. To handle old content we support all values\n\t\t\t\t\t// up to 999 but clamp it to the valid range. Why 999? It should cover accidental values\n\t\t\t\t\t// similar to percentage, e.g. 100%, 200% which could be the usual mistake for font size.\n\t\t\t\t\t'size': /^[+-]?\\d{1,3}$/\n\t\t\t\t}\n\t\t\t},\n\t\t\tmodel: {\n\t\t\t\tkey: FONT_SIZE,\n\t\t\t\tvalue: viewElement => {\n\t\t\t\t\tconst value = viewElement.getAttribute( 'size' );\n\t\t\t\t\tconst isRelative = value[ 0 ] === '-' || value[ 0 ] === '+';\n\n\t\t\t\t\tlet size = parseInt( value, 10 );\n\n\t\t\t\t\tif ( isRelative ) {\n\t\t\t\t\t\t// Add relative size (which can be negative) to the default size = 3.\n\t\t\t\t\t\tsize = 3 + size;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst maxSize = styleFontSize.length - 1;\n\t\t\t\t\tconst clampedSize = Math.min( Math.max( size, 0 ), maxSize );\n\n\t\t\t\t\treturn styleFontSize[ clampedSize ];\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\t}\n}\n","import api from \"!../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../../css-loader/dist/cjs.js!../../../postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./fontsize.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-2022, 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 font/fontsize/fontsizeui\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { Model, createDropdown, addListToDropdown } from 'ckeditor5/src/ui';\nimport { Collection } from 'ckeditor5/src/utils';\n\nimport { normalizeOptions } from './utils';\nimport { FONT_SIZE } from '../utils';\n\nimport fontSizeIcon from '../../theme/icons/font-size.svg';\nimport '../../theme/fontsize.css';\n\n/**\n * The font size UI plugin. It introduces the `'fontSize'` dropdown.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class FontSizeUI extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'FontSizeUI';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst editor = this.editor;\n\t\tconst t = editor.t;\n\n\t\tconst options = this._getLocalizedOptions();\n\n\t\tconst command = editor.commands.get( FONT_SIZE );\n\n\t\t// Register UI component.\n\t\teditor.ui.componentFactory.add( FONT_SIZE, locale => {\n\t\t\tconst dropdownView = createDropdown( locale );\n\t\t\taddListToDropdown( dropdownView, _prepareListOptions( options, command ) );\n\n\t\t\t// Create dropdown model.\n\t\t\tdropdownView.buttonView.set( {\n\t\t\t\tlabel: t( 'Font Size' ),\n\t\t\t\ticon: fontSizeIcon,\n\t\t\t\ttooltip: true\n\t\t\t} );\n\n\t\t\tdropdownView.extendTemplate( {\n\t\t\t\tattributes: {\n\t\t\t\t\tclass: [\n\t\t\t\t\t\t'ck-font-size-dropdown'\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tdropdownView.bind( 'isEnabled' ).to( command );\n\n\t\t\t// Execute command when an item from the dropdown is selected.\n\t\t\tthis.listenTo( dropdownView, 'execute', evt => {\n\t\t\t\teditor.execute( evt.source.commandName, { value: evt.source.commandParam } );\n\t\t\t\teditor.editing.view.focus();\n\t\t\t} );\n\n\t\t\treturn dropdownView;\n\t\t} );\n\t}\n\n\t/**\n\t * Returns options as defined in `config.fontSize.options` but processed to account for\n\t * editor localization, i.e. to display {@link module:font/fontsize~FontSizeOption}\n\t * in the correct language.\n\t *\n\t * Note: The reason behind this method is that there is no way to use {@link module:utils/locale~Locale#t}\n\t * when the user configuration is defined because the editor does not exist yet.\n\t *\n\t * @private\n\t * @returns {Array.}.\n\t */\n\t_getLocalizedOptions() {\n\t\tconst editor = this.editor;\n\t\tconst t = editor.t;\n\n\t\tconst localizedTitles = {\n\t\t\tDefault: t( 'Default' ),\n\t\t\tTiny: t( 'Tiny' ),\n\t\t\tSmall: t( 'Small' ),\n\t\t\tBig: t( 'Big' ),\n\t\t\tHuge: t( 'Huge' )\n\t\t};\n\n\t\tconst options = normalizeOptions( editor.config.get( FONT_SIZE ).options );\n\n\t\treturn options.map( option => {\n\t\t\tconst title = localizedTitles[ option.title ];\n\n\t\t\tif ( title && title != option.title ) {\n\t\t\t\t// Clone the option to avoid altering the original `namedPresets` from `./utils.js`.\n\t\t\t\toption = Object.assign( {}, option, { title } );\n\t\t\t}\n\n\t\t\treturn option;\n\t\t} );\n\t}\n}\n\n// Prepares FontSize dropdown items.\n// @private\n// @param {Array.} options\n// @param {module:font/fontsize/fontsizecommand~FontSizeCommand} command\nfunction _prepareListOptions( options, command ) {\n\tconst itemDefinitions = new Collection();\n\n\tfor ( const option of options ) {\n\t\tconst def = {\n\t\t\ttype: 'button',\n\t\t\tmodel: new Model( {\n\t\t\t\tcommandName: FONT_SIZE,\n\t\t\t\tcommandParam: option.model,\n\t\t\t\tlabel: option.title,\n\t\t\t\tclass: 'ck-fontsize-option',\n\t\t\t\twithText: true\n\t\t\t} )\n\t\t};\n\n\t\tif ( option.view && option.view.styles ) {\n\t\t\tdef.model.set( 'labelStyle', `font-size:${ option.view.styles[ 'font-size' ] }` );\n\t\t}\n\n\t\tif ( option.view && option.view.classes ) {\n\t\t\tdef.model.set( 'class', `${ def.model.class } ${ option.view.classes }` );\n\t\t}\n\n\t\tdef.model.bind( 'isOn' ).to( command, 'value', value => value === option.model );\n\n\t\t// Add the option to the collection.\n\t\titemDefinitions.add( def );\n\t}\n\n\treturn itemDefinitions;\n}\n","export default \"\";","/**\n * @license Copyright (c) 2003-2022, 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 font/fontsize\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport FontSizeEditing from './fontsize/fontsizeediting';\nimport FontSizeUI from './fontsize/fontsizeui';\nimport { normalizeOptions } from './fontsize/utils';\n\n/**\n * The font size plugin.\n *\n * For a detailed overview, check the {@glink features/font font feature} documentation\n * and the {@glink api/font package page}.\n *\n * This is a \"glue\" plugin which loads the {@link module:font/fontsize/fontsizeediting~FontSizeEditing} and\n * {@link module:font/fontsize/fontsizeui~FontSizeUI} features in the editor.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class FontSize extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get requires() {\n\t\treturn [ FontSizeEditing, FontSizeUI ];\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'FontSize';\n\t}\n\n\t/**\n\t * Normalizes and translates the {@link module:font/fontsize~FontSizeConfig#options configuration options}\n\t * to the {@link module:font/fontsize~FontSizeOption} format.\n\t *\n\t * @param {Array.} configuredOptions An array of options taken from the configuration.\n\t * @returns {Array.}\n\t */\n\tnormalizeSizeOptions( options ) {\n\t\treturn normalizeOptions( options );\n\t}\n}\n\n/**\n * The font size option descriptor.\n *\n * @typedef {Object} module:font/fontsize~FontSizeOption\n *\n * @property {String} title The user-readable title of the option.\n * @property {String} model The attribute's unique value in the model.\n * @property {module:engine/view/elementdefinition~ElementDefinition} view View element configuration.\n * @property {Array.} [upcastAlso] An array with all matched elements that\n * the view-to-model conversion should also accept.\n */\n\n/**\n * The configuration of the font size feature.\n * It is introduced by the {@link module:font/fontsize/fontsizeediting~FontSizeEditing} feature.\n *\n * Read more in {@link module:font/fontsize~FontSizeConfig}.\n *\n * @member {module:font/fontsize~FontSizeConfig} module:core/editor/editorconfig~EditorConfig#fontSize\n */\n\n/**\n * The configuration of the font size feature.\n * This option is used by the {@link module:font/fontsize/fontsizeediting~FontSizeEditing} feature.\n *\n * \t\tClassicEditor\n * \t\t\t.create( {\n * \t\t\t\tfontSize: ... // Font size feature configuration.\n *\t\t\t} )\n * \t\t\t.then( ... )\n * \t\t\t.catch( ... );\n *\n * See {@link module:core/editor/editorconfig~EditorConfig all editor options}.\n *\n * @interface module:font/fontsize~FontSizeConfig\n */\n\n/**\n * Available font size options. Expressed as predefined presets, numerical \"pixel\" values\n * or the {@link module:font/fontsize~FontSizeOption}.\n *\n * The default value is:\n *\n *\t\tconst fontSizeConfig = {\n *\t\t\toptions: [\n *\t\t\t\t'tiny',\n * \t\t\t\t'small',\n * \t\t\t\t'default',\n * \t\t\t\t'big',\n * \t\t\t\t'huge'\n *\t\t\t]\n *\t\t};\n *\n * It defines 4 sizes: **tiny**, **small**, **big**, and **huge**. These values will be rendered as `` elements in the view.\n * The **default** defines a text without the `fontSize` attribute.\n *\n * Each `` has the the `class` attribute set to the corresponding size name. For instance, this is what the **small** size looks\n * like in the view:\n *\n * \t\t...\n *\n * As an alternative, the font size might be defined using numerical values (either as a `Number` or as a `String`):\n *\n * \t\tconst fontSizeConfig = {\n * \t\t\toptions: [ 9, 10, 11, 12, 13, 14, 15 ]\n * \t\t};\n *\n * Also, you can define a label in the dropdown for numerical values:\n *\n *\t\tconst fontSizeConfig = {\n *\t\t\toptions: [\n *\t\t\t\t{\n * \t\t\t\t \ttitle: 'Small',\n * \t\t\t\t \tmodel: '8px'\n * \t\t\t\t},\n * \t\t\t\t'default',\n * \t\t\t\t{\n * \t\t\t\t \ttitle: 'Big',\n * \t\t\t\t \tmodel: '14px'\n * \t\t\t\t}\n *\t\t\t]\n *\t\t};\n *\n * Font size can be applied using the command API. To do that, use the `'fontSize'` command and pass the desired font size as a `value`.\n * For example, the following code will apply the `fontSize` attribute with the **tiny** value to the current selection:\n *\n *\t\teditor.execute( 'fontSize', { value: 'tiny' } );\n *\n * Executing the `fontSize` command without value will remove the `fontSize` attribute from the current selection.\n *\n * @member {Array.} module:font/fontsize~FontSizeConfig#options\n */\n\n/**\n * By default the plugin removes any `font-size` value that does not match the plugin's configuration. It means that if you paste content\n * with font sizes that the editor does not understand, the `font-size` attribute will be removed and the content will be displayed\n * with the default size.\n *\n * You can preserve pasted font size values by switching the `supportAllValues` option to `true`:\n *\n *\t\tconst fontSizeConfig = {\n *\t\t\toptions: [ 9, 10, 11, 12, 'default', 14, 15 ],\n *\t\t\tsupportAllValues: true\n *\t\t};\n *\n * **Note:** This option can only be used with numerical values as font size options.\n *\n * With this configuration font sizes not specified in the editor configuration will not be removed when pasting the content.\n *\n * @member {Boolean} module:font/fontsize~FontSizeConfig#supportAllValues\n */\n","/**\n * @license Copyright (c) 2003-2022, 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 font/fontcolor/fontcolorcommand\n */\n\nimport FontCommand from '../fontcommand';\nimport { FONT_COLOR } from '../utils';\n\n/**\n * The font color command. It is used by {@link module:font/fontcolor/fontcolorediting~FontColorEditing}\n * to apply the font color.\n *\n *\t\teditor.execute( 'fontColor', { value: 'rgb(250, 20, 20)' } );\n *\n * **Note**: Executing the command with the `null` value removes the attribute from the model.\n *\n * @extends module:font/fontcommand~FontCommand\n */\nexport default class FontColorCommand extends FontCommand {\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor ) {\n\t\tsuper( editor, FONT_COLOR );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 font/fontcolor/fontcolorediting\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport FontColorCommand from './fontcolorcommand';\nimport { FONT_COLOR, renderDowncastElement, renderUpcastAttribute } from '../utils';\n\n/**\n * The font color editing feature.\n *\n * It introduces the {@link module:font/fontcolor/fontcolorcommand~FontColorCommand command} and\n * the `fontColor` attribute in the {@link module:engine/model/model~Model model} which renders\n * in the {@link module:engine/view/view view} as a `` element (``),\n * depending on the {@link module:font/fontcolor~FontColorConfig configuration}.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class FontColorEditing extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'FontColorEditing';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor ) {\n\t\tsuper( editor );\n\n\t\teditor.config.define( FONT_COLOR, {\n\t\t\tcolors: [\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(0, 0%, 0%)',\n\t\t\t\t\tlabel: 'Black'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(0, 0%, 30%)',\n\t\t\t\t\tlabel: 'Dim grey'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(0, 0%, 60%)',\n\t\t\t\t\tlabel: 'Grey'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(0, 0%, 90%)',\n\t\t\t\t\tlabel: 'Light grey'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(0, 0%, 100%)',\n\t\t\t\t\tlabel: 'White',\n\t\t\t\t\thasBorder: true\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(0, 75%, 60%)',\n\t\t\t\t\tlabel: 'Red'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(30, 75%, 60%)',\n\t\t\t\t\tlabel: 'Orange'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(60, 75%, 60%)',\n\t\t\t\t\tlabel: 'Yellow'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(90, 75%, 60%)',\n\t\t\t\t\tlabel: 'Light green'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(120, 75%, 60%)',\n\t\t\t\t\tlabel: 'Green'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(150, 75%, 60%)',\n\t\t\t\t\tlabel: 'Aquamarine'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(180, 75%, 60%)',\n\t\t\t\t\tlabel: 'Turquoise'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(210, 75%, 60%)',\n\t\t\t\t\tlabel: 'Light blue'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(240, 75%, 60%)',\n\t\t\t\t\tlabel: 'Blue'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(270, 75%, 60%)',\n\t\t\t\t\tlabel: 'Purple'\n\t\t\t\t}\n\t\t\t],\n\t\t\tcolumns: 5\n\t\t} );\n\n\t\teditor.conversion.for( 'upcast' ).elementToAttribute( {\n\t\t\tview: {\n\t\t\t\tname: 'span',\n\t\t\t\tstyles: {\n\t\t\t\t\t'color': /[\\s\\S]+/\n\t\t\t\t}\n\t\t\t},\n\t\t\tmodel: {\n\t\t\t\tkey: FONT_COLOR,\n\t\t\t\tvalue: renderUpcastAttribute( 'color' )\n\t\t\t}\n\t\t} );\n\n\t\t// Support legacy `` formatting.\n\t\teditor.conversion.for( 'upcast' ).elementToAttribute( {\n\t\t\tview: {\n\t\t\t\tname: 'font',\n\t\t\t\tattributes: {\n\t\t\t\t\t'color': /^#?\\w+$/\n\t\t\t\t}\n\t\t\t},\n\t\t\tmodel: {\n\t\t\t\tkey: FONT_COLOR,\n\t\t\t\tvalue: viewElement => viewElement.getAttribute( 'color' )\n\t\t\t}\n\t\t} );\n\n\t\teditor.conversion.for( 'downcast' ).attributeToElement( {\n\t\t\tmodel: FONT_COLOR,\n\t\t\tview: renderDowncastElement( 'color' )\n\t\t} );\n\n\t\teditor.commands.add( FONT_COLOR, new FontColorCommand( editor ) );\n\n\t\t// Allow the font color attribute on text nodes.\n\t\teditor.model.schema.extend( '$text', { allowAttributes: FONT_COLOR } );\n\n\t\teditor.model.schema.setAttributeProperties( FONT_COLOR, {\n\t\t\tisFormatting: true,\n\t\t\tcopyOnEnter: true\n\t\t} );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 font/ui/colorui\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { createDropdown, normalizeColorOptions, getLocalizedColorOptions, focusChildOnDropdownOpen } from 'ckeditor5/src/ui';\n\nimport { addColorTableToDropdown } from '../utils';\n\n/**\n * The color UI plugin which isolates the common logic responsible for displaying dropdowns with color grids.\n *\n * It is used to create the `'fontBackgroundColor'` and `'fontColor'` dropdowns, each hosting\n * a {@link module:font/ui/colortableview~ColorTableView}.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class ColorUI extends Plugin {\n\t/**\n\t * Creates a plugin which introduces a dropdown with a pre–configured {@link module:font/ui/colortableview~ColorTableView}.\n\t *\n\t * @param {module:core/editor/editor~Editor} editor\n\t * @param {Object} config The configuration object.\n\t * @param {String} config.commandName The name of the command which will be executed when a color tile is clicked.\n\t * @param {String} config.componentName The name of the dropdown in the {@link module:ui/componentfactory~ComponentFactory}\n\t * and the configuration scope name in `editor.config`.\n\t * @param {String} config.icon The SVG icon used by the dropdown.\n\t * @param {String} config.dropdownLabel The label used by the dropdown.\n\t */\n\tconstructor( editor, { commandName, icon, componentName, dropdownLabel } ) {\n\t\tsuper( editor );\n\n\t\t/**\n\t\t * The name of the command which will be executed when a color tile is clicked.\n\t\t *\n\t\t * @type {String}\n\t\t */\n\t\tthis.commandName = commandName;\n\n\t\t/**\n\t\t * The name of this component in the {@link module:ui/componentfactory~ComponentFactory}.\n\t\t * Also the configuration scope name in `editor.config`.\n\t\t *\n\t\t * @type {String}\n\t\t */\n\t\tthis.componentName = componentName;\n\n\t\t/**\n\t\t * The SVG icon used by the dropdown.\n\t\t * @type {String}\n\t\t */\n\t\tthis.icon = icon;\n\n\t\t/**\n\t\t * The label used by the dropdown.\n\t\t *\n\t\t * @type {String}\n\t\t */\n\t\tthis.dropdownLabel = dropdownLabel;\n\n\t\t/**\n\t\t * The number of columns in the color grid.\n\t\t *\n\t\t * @type {Number}\n\t\t */\n\t\tthis.columns = editor.config.get( `${ this.componentName }.columns` );\n\n\t\t/**\n\t\t * Keeps a reference to {@link module:font/ui/colortableview~ColorTableView}.\n\t\t *\n\t\t * @member {module:font/ui/colortableview~ColorTableView}\n\t\t */\n\t\tthis.colorTableView = undefined;\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst editor = this.editor;\n\t\tconst locale = editor.locale;\n\t\tconst t = locale.t;\n\t\tconst command = editor.commands.get( this.commandName );\n\t\tconst colorsConfig = normalizeColorOptions( editor.config.get( this.componentName ).colors );\n\t\tconst localizedColors = getLocalizedColorOptions( locale, colorsConfig );\n\t\tconst documentColorsCount = editor.config.get( `${ this.componentName }.documentColors` );\n\n\t\t// Register the UI component.\n\t\teditor.ui.componentFactory.add( this.componentName, locale => {\n\t\t\tconst dropdownView = createDropdown( locale );\n\t\t\tthis.colorTableView = addColorTableToDropdown( {\n\t\t\t\tdropdownView,\n\t\t\t\tcolors: localizedColors.map( option => ( {\n\t\t\t\t\tlabel: option.label,\n\t\t\t\t\tcolor: option.model,\n\t\t\t\t\toptions: {\n\t\t\t\t\t\thasBorder: option.hasBorder\n\t\t\t\t\t}\n\t\t\t\t} ) ),\n\t\t\t\tcolumns: this.columns,\n\t\t\t\tremoveButtonLabel: t( 'Remove color' ),\n\t\t\t\tdocumentColorsLabel: documentColorsCount !== 0 ? t( 'Document colors' ) : undefined,\n\t\t\t\tdocumentColorsCount: documentColorsCount === undefined ? this.columns : documentColorsCount\n\t\t\t} );\n\n\t\t\tthis.colorTableView.bind( 'selectedColor' ).to( command, 'value' );\n\n\t\t\tdropdownView.buttonView.set( {\n\t\t\t\tlabel: this.dropdownLabel,\n\t\t\t\ticon: this.icon,\n\t\t\t\ttooltip: true\n\t\t\t} );\n\n\t\t\tdropdownView.extendTemplate( {\n\t\t\t\tattributes: {\n\t\t\t\t\tclass: 'ck-color-ui-dropdown'\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tdropdownView.bind( 'isEnabled' ).to( command );\n\n\t\t\tdropdownView.on( 'execute', ( evt, data ) => {\n\t\t\t\teditor.execute( this.commandName, data );\n\t\t\t\teditor.editing.view.focus();\n\t\t\t} );\n\n\t\t\tdropdownView.on( 'change:isOpen', ( evt, name, isVisible ) => {\n\t\t\t\t// Grids rendering is deferred (#6192).\n\t\t\t\tdropdownView.colorTableView.appendGrids();\n\n\t\t\t\tif ( isVisible ) {\n\t\t\t\t\tif ( documentColorsCount !== 0 ) {\n\t\t\t\t\t\tthis.colorTableView.updateDocumentColors( editor.model, this.componentName );\n\t\t\t\t\t}\n\t\t\t\t\tthis.colorTableView.updateSelectedColors();\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t// Accessibility: focus the first active color when opening the dropdown.\n\t\t\tfocusChildOnDropdownOpen( dropdownView, () => dropdownView.colorTableView.staticColorsGrid.items.find( item => item.isOn ) );\n\n\t\t\treturn dropdownView;\n\t\t} );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 font/fontcolor/fontcolorui\n */\n\nimport ColorUI from '../ui/colorui';\nimport { FONT_COLOR } from '../utils';\nimport fontColorIcon from '../../theme/icons/font-color.svg';\n\n/**\n * The font color UI plugin. It introduces the `'fontColor'` dropdown.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class FontColorUI extends ColorUI {\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor ) {\n\t\tconst t = editor.locale.t;\n\n\t\tsuper( editor, {\n\t\t\tcommandName: FONT_COLOR,\n\t\t\tcomponentName: FONT_COLOR,\n\t\t\ticon: fontColorIcon,\n\t\t\tdropdownLabel: t( 'Font Color' )\n\t\t} );\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'FontColorUI';\n\t}\n}\n","export default \"\";","/**\n * @license Copyright (c) 2003-2022, 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 font/fontcolor\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport FontColorEditing from './fontcolor/fontcolorediting';\nimport FontColorUI from './fontcolor/fontcolorui';\n\n/**\n * The font color plugin.\n *\n * For a detailed overview, check the {@glink features/font font feature} documentation\n * and the {@glink api/font package page}.\n *\n * This is a \"glue\" plugin which loads the {@link module:font/fontcolor/fontcolorediting~FontColorEditing} and\n * {@link module:font/fontcolor/fontcolorui~FontColorUI} features in the editor.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class FontColor extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get requires() {\n\t\treturn [ FontColorEditing, FontColorUI ];\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'FontColor';\n\t}\n}\n\n/**\n * The configuration of the font color feature.\n * It is introduced by the {@link module:font/fontcolor/fontcolorediting~FontColorEditing} feature.\n *\n * Read more in {@link module:font/fontcolor~FontColorConfig}.\n *\n * @member {module:font/fontcolor~FontColorConfig} module:core/editor/editorconfig~EditorConfig#fontColor\n */\n\n/**\n * The configuration of the font color feature.\n * This option is used by the {@link module:font/fontcolor/fontcolorediting~FontColorEditing} feature.\n *\n *\t\tClassicEditor\n *\t\t\t.create( {\n *\t\t\t\tfontColor: ... // Font color feature configuration.\n *\t\t\t} )\n *\t\t\t.then( ... )\n *\t\t\t.catch( ... );\n *\n * See {@link module:core/editor/editorconfig~EditorConfig all editor options}.\n *\n * @interface module:font/fontcolor~FontColorConfig\n */\n\n/**\n * Available font colors defined as an array of strings or objects.\n *\n * The default value registers the following colors:\n *\n *\t\tconst fontColorConfig = {\n *\t\t\tcolors: [\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(0, 0%, 0%)',\n *\t\t\t\t\tlabel: 'Black'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(0, 0%, 30%)',\n *\t\t\t\t\tlabel: 'Dim grey'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(0, 0%, 60%)',\n *\t\t\t\t\tlabel: 'Grey'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(0, 0%, 90%)',\n *\t\t\t\t\tlabel: 'Light grey'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(0, 0%, 100%)',\n *\t\t\t\t\tlabel: 'White',\n *\t\t\t\t\thasBorder: true\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(0, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Red'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(30, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Orange'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(60, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Yellow'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(90, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Light green'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(120, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Green'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(150, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Aquamarine'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(180, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Turquoise'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(210, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Light blue'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(240, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Blue'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(270, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Purple'\n *\t\t\t\t}\n *\t\t\t]\n *\t\t};\n *\n * **Note**: The colors are displayed in the `'fontColor'` dropdown.\n *\n * @member {Array.} module:font/fontcolor~FontColorConfig#colors\n */\n\n/**\n * Represents the number of columns in the font color dropdown.\n *\n * The default value is:\n *\n *\t\tconst fontColorConfig = {\n *\t\t\tcolumns: 5\n *\t\t}\n *\n * @member {Number} module:font/fontcolor~FontColorConfig#columns\n */\n\n/**\n * Determines the maximum number of available document colors.\n * Setting it to `0` will disable the document colors feature.\n *\n * By default it equals to the {@link module:font/fontcolor~FontColorConfig#columns} value.\n *\n * Examples:\n *\n * \t// 1) Neither document colors nor columns are defined in the configuration.\n * \t// Document colors will equal 5,\n * \t// because the value will be inherited from columns,\n * \t// which has a predefined value of 5.\n * \tconst fontColorConfig = {}\n *\n * \t// 2) Document colors will equal 8, because the value will be inherited from columns.\n * \tconst fontColorConfig = {\n * \t\tcolumns: 8\n * \t}\n *\n * \t// 3) Document colors will equal 24, because it has its own value defined.\n * \tconst fontColorConfig = {\n * \t\tcolumns: 8,\n * \t\tdocumentColors: 24\n * \t}\n *\n * \t// 4) The document colors feature will be disabled.\n * \tconst fontColorConfig = {\n * \t\tcolumns: 8,\n * \t\tdocumentColors: 0\n * \t}\n *\n * @member {Number} module:font/fontcolor~FontColorConfig#documentColors\n */\n","/**\n * @license Copyright (c) 2003-2022, 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 font/fontbackgroundcolor/fontbackgroundcolorcommand\n */\n\nimport FontCommand from '../fontcommand';\nimport { FONT_BACKGROUND_COLOR } from '../utils';\n\n/**\n * The font background color command. It is used by\n * {@link module:font/fontbackgroundcolor/fontbackgroundcolorediting~FontBackgroundColorEditing}\n * to apply the font background color.\n *\n *\t\teditor.execute( 'fontBackgroundColor', { value: 'rgb(250, 20, 20)' } );\n *\n * **Note**: Executing the command with the `null` value removes the attribute from the model.\n *\n * @extends module:font/fontcommand~FontCommand\n */\nexport default class FontBackgroundColorCommand extends FontCommand {\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor ) {\n\t\tsuper( editor, FONT_BACKGROUND_COLOR );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 font/fontbackgroundcolor/fontbackgroundcolorediting\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { addBackgroundRules } from 'ckeditor5/src/engine';\n\nimport FontBackgroundColorCommand from './fontbackgroundcolorcommand';\nimport { FONT_BACKGROUND_COLOR, renderDowncastElement, renderUpcastAttribute } from '../utils';\n\n/**\n * The font background color editing feature.\n *\n * It introduces the {@link module:font/fontbackgroundcolor/fontbackgroundcolorcommand~FontBackgroundColorCommand command} and\n * the `fontBackgroundColor` attribute in the {@link module:engine/model/model~Model model} which renders\n * in the {@link module:engine/view/view view} as a `` element (``),\n * depending on the {@link module:font/fontbackgroundcolor~FontBackgroundColorConfig configuration}.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class FontBackgroundColorEditing extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'FontBackgroundColorEditing';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor ) {\n\t\tsuper( editor );\n\n\t\teditor.config.define( FONT_BACKGROUND_COLOR, {\n\t\t\tcolors: [\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(0, 0%, 0%)',\n\t\t\t\t\tlabel: 'Black'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(0, 0%, 30%)',\n\t\t\t\t\tlabel: 'Dim grey'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(0, 0%, 60%)',\n\t\t\t\t\tlabel: 'Grey'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(0, 0%, 90%)',\n\t\t\t\t\tlabel: 'Light grey'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(0, 0%, 100%)',\n\t\t\t\t\tlabel: 'White',\n\t\t\t\t\thasBorder: true\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(0, 75%, 60%)',\n\t\t\t\t\tlabel: 'Red'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(30, 75%, 60%)',\n\t\t\t\t\tlabel: 'Orange'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(60, 75%, 60%)',\n\t\t\t\t\tlabel: 'Yellow'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(90, 75%, 60%)',\n\t\t\t\t\tlabel: 'Light green'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(120, 75%, 60%)',\n\t\t\t\t\tlabel: 'Green'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(150, 75%, 60%)',\n\t\t\t\t\tlabel: 'Aquamarine'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(180, 75%, 60%)',\n\t\t\t\t\tlabel: 'Turquoise'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(210, 75%, 60%)',\n\t\t\t\t\tlabel: 'Light blue'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(240, 75%, 60%)',\n\t\t\t\t\tlabel: 'Blue'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: 'hsl(270, 75%, 60%)',\n\t\t\t\t\tlabel: 'Purple'\n\t\t\t\t}\n\t\t\t],\n\t\t\tcolumns: 5\n\t\t} );\n\n\t\teditor.data.addStyleProcessorRules( addBackgroundRules );\n\t\teditor.conversion.for( 'upcast' ).elementToAttribute( {\n\t\t\tview: {\n\t\t\t\tname: 'span',\n\t\t\t\tstyles: {\n\t\t\t\t\t'background-color': /[\\s\\S]+/\n\t\t\t\t}\n\t\t\t},\n\t\t\tmodel: {\n\t\t\t\tkey: FONT_BACKGROUND_COLOR,\n\t\t\t\tvalue: renderUpcastAttribute( 'background-color' )\n\t\t\t}\n\t\t} );\n\n\t\teditor.conversion.for( 'downcast' ).attributeToElement( {\n\t\t\tmodel: FONT_BACKGROUND_COLOR,\n\t\t\tview: renderDowncastElement( 'background-color' )\n\t\t} );\n\n\t\teditor.commands.add( FONT_BACKGROUND_COLOR, new FontBackgroundColorCommand( editor ) );\n\n\t\t// Allow the font backgroundColor attribute on text nodes.\n\t\teditor.model.schema.extend( '$text', { allowAttributes: FONT_BACKGROUND_COLOR } );\n\n\t\teditor.model.schema.setAttributeProperties( FONT_BACKGROUND_COLOR, {\n\t\t\tisFormatting: true,\n\t\t\tcopyOnEnter: true\n\t\t} );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 font/fontbackgroundcolor/fontbackgroundcolorui\n */\n\nimport ColorUI from '../ui/colorui';\nimport { FONT_BACKGROUND_COLOR } from '../utils';\nimport fontBackgroundColorIcon from '../../theme/icons/font-background.svg';\n\n/**\n * The font background color UI plugin. It introduces the `'fontBackgroundColor'` dropdown.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class FontBackgroundColorUI extends ColorUI {\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor ) {\n\t\tconst t = editor.locale.t;\n\n\t\tsuper( editor, {\n\t\t\tcommandName: FONT_BACKGROUND_COLOR,\n\t\t\tcomponentName: FONT_BACKGROUND_COLOR,\n\t\t\ticon: fontBackgroundColorIcon,\n\t\t\tdropdownLabel: t( 'Font Background Color' )\n\t\t} );\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'FontBackgroundColorUI';\n\t}\n}\n","export default \"\";","/**\n * @license Copyright (c) 2003-2022, 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 font/fontbackgroundcolor\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport FontBackgroundColorEditing from './fontbackgroundcolor/fontbackgroundcolorediting';\nimport FontBackgroundColorUI from './fontbackgroundcolor/fontbackgroundcolorui';\n\n/**\n * The font background color plugin.\n *\n * For a detailed overview, check the {@glink features/font font feature} documentation\n * and the {@glink api/font package page}.\n *\n * This is a \"glue\" plugin which loads\n * the {@link module:font/fontbackgroundcolor/fontbackgroundcolorediting~FontBackgroundColorEditing} and\n * {@link module:font/fontbackgroundcolor/fontbackgroundcolorui~FontBackgroundColorUI} features in the editor.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class FontBackgroundColor extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get requires() {\n\t\treturn [ FontBackgroundColorEditing, FontBackgroundColorUI ];\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'FontBackgroundColor';\n\t}\n}\n\n/**\n * The configuration of the font background color feature.\n * It is introduced by the {@link module:font/fontbackgroundcolor/fontbackgroundcolorediting~FontBackgroundColorEditing} feature.\n *\n * Read more in {@link module:font/fontbackgroundcolor~FontBackgroundColorConfig}.\n *\n * @member {module:font/fontbackgroundcolor~FontBackgroundColorConfig} module:core/editor/editorconfig~EditorConfig#fontBackgroundColor\n */\n\n/**\n * The configuration of the font background color feature.\n * This option is used by the {@link module:font/fontbackgroundcolor/fontbackgroundcolorediting~FontBackgroundColorEditing} feature.\n *\n *\t\tClassicEditor\n *\t\t\t.create( {\n *\t\t\t\tfontBackgroundColor: ... // Font background color feature configuration.\n *\t\t\t} )\n *\t\t\t.then( ... )\n *\t\t\t.catch( ... );\n *\n * See {@link module:core/editor/editorconfig~EditorConfig all editor options}.\n *\n * @interface module:font/fontbackgroundcolor~FontBackgroundColorConfig\n */\n\n/**\n * Available font background colors defined as an array of strings or objects.\n *\n * The default value registers the following colors:\n *\n *\t\tconst fontBackgroundColorConfig = {\n *\t\t\tcolors: [\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(0, 0%, 0%)',\n *\t\t\t\t\tlabel: 'Black'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(0, 0%, 30%)',\n *\t\t\t\t\tlabel: 'Dim grey'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(0, 0%, 60%)',\n *\t\t\t\t\tlabel: 'Grey'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(0, 0%, 90%)',\n *\t\t\t\t\tlabel: 'Light grey'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(0, 0%, 100%)',\n *\t\t\t\t\tlabel: 'White',\n *\t\t\t\t\thasBorder: true\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(0, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Red'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(30, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Orange'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(60, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Yellow'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(90, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Light green'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(120, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Green'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(150, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Aquamarine'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(180, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Turquoise'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(210, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Light blue'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(240, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Blue'\n *\t\t\t\t},\n *\t\t\t\t{\n *\t\t\t\t\tcolor: 'hsl(270, 75%, 60%)',\n *\t\t\t\t\tlabel: 'Purple'\n *\t\t\t\t}\n *\t\t\t]\n *\t\t};\n *\n * **Note**: The colors are displayed in the `'fontBackgroundColor'` dropdown.\n *\n * @member {Array.} module:font/fontbackgroundcolor~FontBackgroundColorConfig#colors\n */\n\n/**\n * Represents the number of columns in the font background color dropdown.\n *\n * The default value is:\n *\n *\t\tconst fontBackgroundColorConfig = {\n *\t\t\tcolumns: 5\n *\t\t}\n *\n * @member {Number} module:font/fontbackgroundcolor~FontBackgroundColorConfig#columns\n */\n\n/**\n * Determines the maximum number of available document colors.\n * Setting it to `0` will disable the document colors feature.\n *\n * By default it equals to the {@link module:font/fontbackgroundcolor~FontBackgroundColorConfig#columns} value.\n *\n * Examples:\n *\n * \t// 1) Neither document colors nor columns are defined in the configuration.\n * \t// Document colors will equal 5,\n * \t// because the value will be inherited from columns,\n * \t// which has a predefined value of 5.\n * \tconst fontBackgroundColorConfig = {}\n *\n * \t// 2) Document colors will equal 8, because the value will be inherited from columns.\n * \tconst fontBackgroundColorConfig = {\n * \t\tcolumns: 8\n * \t}\n *\n * \t// 3) Document colors will equal 24, because it has its own value defined.\n * \tconst fontBackgroundColorConfig = {\n * \t\tcolumns: 8,\n * \t\tdocumentColors: 24\n * \t}\n *\n * \t// 4) The document colors feature will be disabled.\n * \tconst fontBackgroundColorConfig = {\n * \t\tcolumns: 8,\n * \t\tdocumentColors: 0\n * \t}\n *\n * @member {Number} module:font/fontbackgroundcolor~FontBackgroundColorConfig#documentColors\n */\n","/**\n * @license Copyright (c) 2003-2022, 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 highlight/highlightcommand\n */\n\nimport { Command } from 'ckeditor5/src/core';\n\n/**\n * The highlight command. It is used by the {@link module:highlight/highlightediting~HighlightEditing highlight feature}\n * to apply the text highlighting.\n *\n *\t\teditor.execute( 'highlight', { value: 'greenMarker' } );\n *\n * **Note**: Executing the command without a value removes the attribute from the model. If the selection is collapsed\n * inside a text with the highlight attribute, the command will remove the attribute from the entire range\n * of that text.\n *\n * @extends module:core/command~Command\n */\nexport default class HighlightCommand extends Command {\n\t/**\n\t * @inheritDoc\n\t */\n\trefresh() {\n\t\tconst model = this.editor.model;\n\t\tconst doc = model.document;\n\n\t\t/**\n\t\t * A value indicating whether the command is active. If the selection has some highlight attribute,\n\t\t * it corresponds to the value of that attribute.\n\t\t *\n\t\t * @observable\n\t\t * @readonly\n\t\t * @member {undefined|String} module:highlight/highlightcommand~HighlightCommand#value\n\t\t */\n\t\tthis.value = doc.selection.getAttribute( 'highlight' );\n\t\tthis.isEnabled = model.schema.checkAttributeInSelection( doc.selection, 'highlight' );\n\t}\n\n\t/**\n\t * Executes the command.\n\t *\n\t * @param {Object} [options] Options for the executed command.\n\t * @param {String} [options.value] The value to apply.\n\t *\n\t * @fires execute\n\t */\n\texecute( options = {} ) {\n\t\tconst model = this.editor.model;\n\t\tconst document = model.document;\n\t\tconst selection = document.selection;\n\n\t\tconst highlighter = options.value;\n\n\t\tmodel.change( writer => {\n\t\t\tif ( selection.isCollapsed ) {\n\t\t\t\tconst position = selection.getFirstPosition();\n\n\t\t\t\t// When selection is inside text with `highlight` attribute.\n\t\t\t\tif ( selection.hasAttribute( 'highlight' ) ) {\n\t\t\t\t\t// Find the full highlighted range.\n\t\t\t\t\tconst isSameHighlight = value => {\n\t\t\t\t\t\treturn value.item.hasAttribute( 'highlight' ) && value.item.getAttribute( 'highlight' ) === this.value;\n\t\t\t\t\t};\n\n\t\t\t\t\tconst highlightStart = position.getLastMatchingPosition( isSameHighlight, { direction: 'backward' } );\n\t\t\t\t\tconst highlightEnd = position.getLastMatchingPosition( isSameHighlight );\n\n\t\t\t\t\tconst highlightRange = writer.createRange( highlightStart, highlightEnd );\n\n\t\t\t\t\t// Then depending on current value...\n\t\t\t\t\tif ( !highlighter || this.value === highlighter ) {\n\t\t\t\t\t\t// ...remove attribute when passing highlighter different then current or executing \"eraser\".\n\n\t\t\t\t\t\t// If we're at the end of the highlighted range, we don't want to remove highlight of the range.\n\t\t\t\t\t\tif ( !position.isEqual( highlightEnd ) ) {\n\t\t\t\t\t\t\twriter.removeAttribute( 'highlight', highlightRange );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\twriter.removeSelectionAttribute( 'highlight' );\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// ...update `highlight` value.\n\n\t\t\t\t\t\t// If we're at the end of the highlighted range, we don't want to change the highlight of the range.\n\t\t\t\t\t\tif ( !position.isEqual( highlightEnd ) ) {\n\t\t\t\t\t\t\twriter.setAttribute( 'highlight', highlighter, highlightRange );\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\twriter.setSelectionAttribute( 'highlight', highlighter );\n\t\t\t\t\t}\n\t\t\t\t} else if ( highlighter ) {\n\t\t\t\t\twriter.setSelectionAttribute( 'highlight', highlighter );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst ranges = model.schema.getValidRanges( selection.getRanges(), 'highlight' );\n\n\t\t\t\tfor ( const range of ranges ) {\n\t\t\t\t\tif ( highlighter ) {\n\t\t\t\t\t\twriter.setAttribute( 'highlight', highlighter, range );\n\t\t\t\t\t} else {\n\t\t\t\t\t\twriter.removeAttribute( 'highlight', range );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 highlight/highlightediting\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\n\nimport HighlightCommand from './highlightcommand';\n\n/**\n * The highlight editing feature. It introduces the {@link module:highlight/highlightcommand~HighlightCommand command} and the `highlight`\n * attribute in the {@link module:engine/model/model~Model model} which renders in the {@link module:engine/view/view view}\n * as a `` element with a `class` attribute (`...`) depending\n * on the {@link module:highlight/highlight~HighlightConfig configuration}.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class HighlightEditing extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'HighlightEditing';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor ) {\n\t\tsuper( editor );\n\n\t\teditor.config.define( 'highlight', {\n\t\t\toptions: [\n\t\t\t\t{\n\t\t\t\t\tmodel: 'yellowMarker',\n\t\t\t\t\tclass: 'marker-yellow',\n\t\t\t\t\ttitle: 'Yellow marker',\n\t\t\t\t\tcolor: 'var(--ck-highlight-marker-yellow)',\n\t\t\t\t\ttype: 'marker'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tmodel: 'greenMarker',\n\t\t\t\t\tclass: 'marker-green',\n\t\t\t\t\ttitle: 'Green marker',\n\t\t\t\t\tcolor: 'var(--ck-highlight-marker-green)',\n\t\t\t\t\ttype: 'marker'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tmodel: 'pinkMarker',\n\t\t\t\t\tclass: 'marker-pink',\n\t\t\t\t\ttitle: 'Pink marker',\n\t\t\t\t\tcolor: 'var(--ck-highlight-marker-pink)',\n\t\t\t\t\ttype: 'marker'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tmodel: 'blueMarker',\n\t\t\t\t\tclass: 'marker-blue',\n\t\t\t\t\ttitle: 'Blue marker',\n\t\t\t\t\tcolor: 'var(--ck-highlight-marker-blue)',\n\t\t\t\t\ttype: 'marker'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tmodel: 'redPen',\n\t\t\t\t\tclass: 'pen-red',\n\t\t\t\t\ttitle: 'Red pen',\n\t\t\t\t\tcolor: 'var(--ck-highlight-pen-red)',\n\t\t\t\t\ttype: 'pen'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tmodel: 'greenPen',\n\t\t\t\t\tclass: 'pen-green',\n\t\t\t\t\ttitle: 'Green pen',\n\t\t\t\t\tcolor: 'var(--ck-highlight-pen-green)',\n\t\t\t\t\ttype: 'pen'\n\t\t\t\t}\n\t\t\t]\n\t\t} );\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst editor = this.editor;\n\n\t\t// Allow highlight attribute on text nodes.\n\t\teditor.model.schema.extend( '$text', { allowAttributes: 'highlight' } );\n\n\t\tconst options = editor.config.get( 'highlight.options' );\n\n\t\t// Set-up the two-way conversion.\n\t\teditor.conversion.attributeToElement( _buildDefinition( options ) );\n\n\t\teditor.commands.add( 'highlight', new HighlightCommand( editor ) );\n\t}\n}\n\n// Converts the options array to a converter definition.\n//\n// @param {Array.} options An array with configured options.\n// @returns {module:engine/conversion/conversion~ConverterDefinition}\nfunction _buildDefinition( options ) {\n\tconst definition = {\n\t\tmodel: {\n\t\t\tkey: 'highlight',\n\t\t\tvalues: []\n\t\t},\n\t\tview: {}\n\t};\n\n\tfor ( const option of options ) {\n\t\tdefinition.model.values.push( option.model );\n\t\tdefinition.view[ option.model ] = {\n\t\t\tname: 'mark',\n\t\t\tclasses: option.class\n\t\t};\n\t}\n\n\treturn definition;\n}\n","import api from \"!../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../../css-loader/dist/cjs.js!../../../postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./highlight.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-2022, 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 highlight/highlightui\n */\n\nimport { Plugin, icons } from 'ckeditor5/src/core';\nimport { ButtonView, SplitButtonView, ToolbarSeparatorView, createDropdown, addToolbarToDropdown } from 'ckeditor5/src/ui';\n\nimport markerIcon from './../theme/icons/marker.svg';\nimport penIcon from './../theme/icons/pen.svg';\n\nimport './../theme/highlight.css';\n\n/**\n * The default highlight UI plugin. It introduces:\n *\n * * The `'highlight'` dropdown,\n * * The `'removeHighlight'` and `'highlight:*'` buttons.\n *\n * The default configuration includes the following buttons:\n *\n * * `'highlight:yellowMarker'`\n * * `'highlight:greenMarker'`\n * * `'highlight:pinkMarker'`\n * * `'highlight:blueMarker'`\n * * `'highlight:redPen'`\n * * `'highlight:greenPen'`\n *\n * See the {@link module:highlight/highlight~HighlightConfig#options configuration} to learn more\n * about the defaults.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class HighlightUI extends Plugin {\n\t/**\n\t * Returns the localized option titles provided by the plugin.\n\t *\n\t * The following localized titles corresponding with default\n\t * {@link module:highlight/highlight~HighlightConfig#options} are available:\n\t *\n\t * * `'Yellow marker'`,\n\t * * `'Green marker'`,\n\t * * `'Pink marker'`,\n\t * * `'Blue marker'`,\n\t * * `'Red pen'`,\n\t * * `'Green pen'`.\n\t *\n\t * @readonly\n\t * @type {Object.}\n\t */\n\tget localizedOptionTitles() {\n\t\tconst t = this.editor.t;\n\n\t\treturn {\n\t\t\t'Yellow marker': t( 'Yellow marker' ),\n\t\t\t'Green marker': t( 'Green marker' ),\n\t\t\t'Pink marker': t( 'Pink marker' ),\n\t\t\t'Blue marker': t( 'Blue marker' ),\n\t\t\t'Red pen': t( 'Red pen' ),\n\t\t\t'Green pen': t( 'Green pen' )\n\t\t};\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'HighlightUI';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst options = this.editor.config.get( 'highlight.options' );\n\n\t\tfor ( const option of options ) {\n\t\t\tthis._addHighlighterButton( option );\n\t\t}\n\n\t\tthis._addRemoveHighlightButton();\n\n\t\tthis._addDropdown( options );\n\t}\n\n\t/**\n\t * Creates the \"Remove highlight\" button.\n\t *\n\t * @private\n\t */\n\t_addRemoveHighlightButton() {\n\t\tconst t = this.editor.t;\n\t\tconst command = this.editor.commands.get( 'highlight' );\n\n\t\tthis._addButton( 'removeHighlight', t( 'Remove highlight' ), icons.eraser, null, button => {\n\t\t\tbutton.bind( 'isEnabled' ).to( command, 'isEnabled' );\n\t\t} );\n\t}\n\n\t/**\n\t * Creates a toolbar button from the provided highlight option.\n\t *\n\t * @param {module:highlight/highlight~HighlightOption} option\n\t * @private\n\t */\n\t_addHighlighterButton( option ) {\n\t\tconst command = this.editor.commands.get( 'highlight' );\n\n\t\t// TODO: change naming\n\t\tthis._addButton( 'highlight:' + option.model, option.title, getIconForType( option.type ), option.model, decorateHighlightButton );\n\n\t\tfunction decorateHighlightButton( button ) {\n\t\t\tbutton.bind( 'isEnabled' ).to( command, 'isEnabled' );\n\t\t\tbutton.bind( 'isOn' ).to( command, 'value', value => value === option.model );\n\t\t\tbutton.iconView.fillColor = option.color;\n\t\t\tbutton.isToggleable = true;\n\t\t}\n\t}\n\n\t/**\n\t * Internal method for creating highlight buttons.\n\t *\n\t * @param {String} name The name of the button.\n\t * @param {String} label The label for the button.\n\t * @param {String} icon The button icon.\n\t * @param {*} value The `value` property passed to the executed command.\n\t * @param {Function} decorateButton A callback getting ButtonView instance so that it can be further customized.\n\t * @private\n\t */\n\t_addButton( name, label, icon, value, decorateButton ) {\n\t\tconst editor = this.editor;\n\n\t\teditor.ui.componentFactory.add( name, locale => {\n\t\t\tconst buttonView = new ButtonView( locale );\n\n\t\t\tconst localized = this.localizedOptionTitles[ label ] ? this.localizedOptionTitles[ label ] : label;\n\n\t\t\tbuttonView.set( {\n\t\t\t\tlabel: localized,\n\t\t\t\ticon,\n\t\t\t\ttooltip: true\n\t\t\t} );\n\n\t\t\tbuttonView.on( 'execute', () => {\n\t\t\t\teditor.execute( 'highlight', { value } );\n\t\t\t\teditor.editing.view.focus();\n\t\t\t} );\n\n\t\t\t// Add additional behavior for buttonView.\n\t\t\tdecorateButton( buttonView );\n\n\t\t\treturn buttonView;\n\t\t} );\n\t}\n\n\t/**\n\t * Creates the split button dropdown UI from the provided highlight options.\n\t *\n\t * @param {Array.} options\n\t * @private\n\t */\n\t_addDropdown( options ) {\n\t\tconst editor = this.editor;\n\t\tconst t = editor.t;\n\t\tconst componentFactory = editor.ui.componentFactory;\n\n\t\tconst startingHighlighter = options[ 0 ];\n\n\t\tconst optionsMap = options.reduce( ( retVal, option ) => {\n\t\t\tretVal[ option.model ] = option;\n\n\t\t\treturn retVal;\n\t\t}, {} );\n\n\t\tcomponentFactory.add( 'highlight', locale => {\n\t\t\tconst command = editor.commands.get( 'highlight' );\n\t\t\tconst dropdownView = createDropdown( locale, SplitButtonView );\n\t\t\tconst splitButtonView = dropdownView.buttonView;\n\n\t\t\tsplitButtonView.set( {\n\t\t\t\tlabel: t( 'Highlight' ),\n\t\t\t\ttooltip: true,\n\t\t\t\t// Holds last executed highlighter.\n\t\t\t\tlastExecuted: startingHighlighter.model,\n\t\t\t\t// Holds current highlighter to execute (might be different then last used).\n\t\t\t\tcommandValue: startingHighlighter.model,\n\t\t\t\tisToggleable: true\n\t\t\t} );\n\n\t\t\t// Dropdown button changes to selection (command.value):\n\t\t\t// - If selection is in highlight it get active highlight appearance (icon, color) and is activated.\n\t\t\t// - Otherwise it gets appearance (icon, color) of last executed highlight.\n\t\t\tsplitButtonView.bind( 'icon' ).to( command, 'value', value => getIconForType( getActiveOption( value, 'type' ) ) );\n\t\t\tsplitButtonView.bind( 'color' ).to( command, 'value', value => getActiveOption( value, 'color' ) );\n\t\t\tsplitButtonView.bind( 'commandValue' ).to( command, 'value', value => getActiveOption( value, 'model' ) );\n\t\t\tsplitButtonView.bind( 'isOn' ).to( command, 'value', value => !!value );\n\n\t\t\tsplitButtonView.delegate( 'execute' ).to( dropdownView );\n\n\t\t\t// Create buttons array.\n\t\t\tconst buttons = options.map( option => {\n\t\t\t\t// Get existing highlighter button.\n\t\t\t\tconst buttonView = componentFactory.create( 'highlight:' + option.model );\n\n\t\t\t\t// Update lastExecutedHighlight on execute.\n\t\t\t\tthis.listenTo( buttonView, 'execute', () => {\n\t\t\t\t\tdropdownView.buttonView.set( { lastExecuted: option.model } );\n\t\t\t\t} );\n\n\t\t\t\treturn buttonView;\n\t\t\t} );\n\n\t\t\t// Make toolbar button enabled when any button in dropdown is enabled before adding separator and eraser.\n\t\t\tdropdownView.bind( 'isEnabled' ).toMany( buttons, 'isEnabled', ( ...areEnabled ) => areEnabled.some( isEnabled => isEnabled ) );\n\n\t\t\t// Add separator and eraser buttons to dropdown.\n\t\t\tbuttons.push( new ToolbarSeparatorView() );\n\t\t\tbuttons.push( componentFactory.create( 'removeHighlight' ) );\n\n\t\t\taddToolbarToDropdown( dropdownView, buttons, { enableActiveItemFocusOnDropdownOpen: true } );\n\t\t\tbindToolbarIconStyleToActiveColor( dropdownView );\n\n\t\t\tdropdownView.toolbarView.ariaLabel = t( 'Text highlight toolbar' );\n\n\t\t\t// Execute current action from dropdown's split button action button.\n\t\t\tsplitButtonView.on( 'execute', () => {\n\t\t\t\teditor.execute( 'highlight', { value: splitButtonView.commandValue } );\n\t\t\t} );\n\n\t\t\t// Focus the editable after executing the command.\n\t\t\t// It overrides a default behaviour where the focus is moved to the dropdown button (#12125).\n\t\t\tthis.listenTo( dropdownView, 'execute', () => {\n\t\t\t\teditor.editing.view.focus();\n\t\t\t} );\n\n\t\t\t// Returns active highlighter option depending on current command value.\n\t\t\t// If current is not set or it is the same as last execute this method will return the option key (like icon or color)\n\t\t\t// of last executed highlighter. Otherwise it will return option key for current one.\n\t\t\tfunction getActiveOption( current, key ) {\n\t\t\t\tconst whichHighlighter = !current ||\n\t\t\t\tcurrent === splitButtonView.lastExecuted ? splitButtonView.lastExecuted : current;\n\n\t\t\t\treturn optionsMap[ whichHighlighter ][ key ];\n\t\t\t}\n\n\t\t\treturn dropdownView;\n\t\t} );\n\t}\n}\n\n// Extends split button icon style to reflect last used button style.\nfunction bindToolbarIconStyleToActiveColor( dropdownView ) {\n\tconst actionView = dropdownView.buttonView.actionView;\n\n\tactionView.iconView.bind( 'fillColor' ).to( dropdownView.buttonView, 'color' );\n}\n\n// Returns icon for given highlighter type.\nfunction getIconForType( type ) {\n\treturn type === 'marker' ? markerIcon : penIcon;\n}\n","export default \"\";","export default \"\";","/**\n * @license Copyright (c) 2003-2022, 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 highlight/highlight\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\n\nimport HighlightEditing from './highlightediting';\nimport HighlightUI from './highlightui';\n\n/**\n * The highlight plugin.\n *\n * For a detailed overview, check the {@glink features/highlight Highlight feature} documentation.\n *\n * This is a \"glue\" plugin which loads the {@link module:highlight/highlightediting~HighlightEditing} and\n * {@link module:highlight/highlightui~HighlightUI} plugins.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class Highlight extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get requires() {\n\t\treturn [ HighlightEditing, HighlightUI ];\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'Highlight';\n\t}\n}\n\n/**\n * The highlight option descriptor. See {@link module:highlight/highlight~HighlightConfig} to learn more.\n *\n *\t\t{\n *\t\t\tmodel: 'pinkMarker',\n *\t\t\tclass: 'marker-pink',\n *\t\t\ttitle: 'Pink Marker',\n *\t\t\tcolor: 'var(--ck-highlight-marker-pink)',\n *\t\t\ttype: 'marker'\n *\t\t}\n *\n * @typedef {Object} module:highlight/highlight~HighlightOption\n * @property {String} title The user-readable title of the option.\n * @property {String} model The unique attribute value in the model.\n * @property {String} color The CSS `var()` used for the highlighter. The color is used in the user interface to represent the highlighter.\n * There is a possibility to use the default color format like rgb, hex or hsl, but you need to care about the color of ``\n * by adding CSS classes definition.\n * @property {String} class The CSS class used on the `` element in the view. It should match the `color` setting.\n * @property {'marker'|'pen'} type The type of highlighter:\n *\n * * `'marker'` – Uses the `color` as the `background-color` style,\n * * `'pen'` – Uses the `color` as the font `color` style.\n */\n\n/**\n * The configuration of the {@link module:highlight/highlight~Highlight} feature.\n *\n * Read more in {@link module:highlight/highlight~HighlightConfig}.\n *\n * @member {module:highlight/highlight~HighlightConfig} module:core/editor/editorconfig~EditorConfig#highlight\n */\n\n/**\n * The configuration of the {@link module:highlight/highlight~Highlight highlight feature}.\n *\n *\t\tClassicEditor\n *\t\t\t.create( editorElement, {\n * \t\t\t\thighlight: ... // Highlight feature configuration.\n *\t\t\t} )\n *\t\t\t.then( ... )\n *\t\t\t.catch( ... );\n *\n * See {@link module:core/editor/editorconfig~EditorConfig all editor options}.\n *\n * @interface HighlightConfig\n */\n\n/**\n * The available highlight options. The default value is:\n *\n *\t\toptions: [\n *\t\t\t{\n *\t\t\t\tmodel: 'yellowMarker',\n *\t\t\t\tclass: 'marker-yellow',\n *\t\t\t\ttitle: 'Yellow marker',\n *\t\t\t\tcolor: 'var(--ck-highlight-marker-yellow)',\n *\t\t\t\ttype: 'marker'\n *\t\t\t},\n *\t\t\t{\n *\t\t\t\tmodel: 'greenMarker',\n *\t\t\t\tclass: 'marker-green',\n *\t\t\t\ttitle: 'Green marker',\n *\t\t\t\tcolor: 'var(--ck-highlight-marker-green)',\n *\t\t\t\ttype: 'marker'\n *\t\t\t},\n *\t\t\t{\n *\t\t\t\tmodel: 'pinkMarker',\n *\t\t\t\tclass: 'marker-pink',\n *\t\t\t\ttitle: 'Pink marker',\n *\t\t\t\tcolor: 'var(--ck-highlight-marker-pink)',\n *\t\t\t\ttype: 'marker'\n *\t\t\t},\n *\t\t\t{\n *\t\t\t\tmodel: 'blueMarker',\n *\t\t\t\tclass: 'marker-blue',\n *\t\t\t\ttitle: 'Blue marker',\n *\t\t\t\tcolor: 'var(--ck-highlight-marker-blue)',\n *\t\t\t\ttype: 'marker'\n *\t\t\t},\n *\t\t\t{\n *\t\t\t\tmodel: 'redPen',\n *\t\t\t\tclass: 'pen-red',\n *\t\t\t\ttitle: 'Red pen',\n *\t\t\t\tcolor: 'var(--ck-highlight-pen-red)',\n *\t\t\t\ttype: 'pen'\n *\t\t\t},\n *\t\t\t{\n *\t\t\t\tmodel: 'greenPen',\n *\t\t\t\tclass: 'pen-green',\n *\t\t\t\ttitle: 'Green pen',\n *\t\t\t\tcolor: 'var(--ck-highlight-pen-green)',\n *\t\t\t\ttype: 'pen'\n *\t\t\t}\n *\t\t]\n *\n * There are two types of highlighters available:\n *\n * * `'marker'` – Rendered as a `` element, styled with the `background-color`.\n * * `'pen'` – Rendered as a `` element, styled with the font `color`.\n *\n * **Note**: The highlight feature provides a stylesheet with the CSS classes and corresponding colors defined\n * as CSS variables.\n *\n *\t\t:root {\n *\t\t\t--ck-highlight-marker-yellow: #fdfd77;\n *\t\t\t--ck-highlight-marker-green: #63f963;\n *\t\t\t--ck-highlight-marker-pink: #fc7999;\n *\t\t\t--ck-highlight-marker-blue: #72cdfd;\n *\t\t\t--ck-highlight-pen-red: #e91313;\n *\t\t\t--ck-highlight-pen-green: #118800;\n *\t\t}\n *\n *\t\t.marker-yellow { ... }\n *\t\t.marker-green { ... }\n *\t\t.marker-pink { ... }\n *\t\t.marker-blue { ... }\n *\t\t.pen-red { ... }\n *\t\t.pen-green { ... }\n *\n * It is possible to define the `color` property directly as `rgba(R, G, B, A)`,\n * `#RRGGBB[AA]` or `hsla(H, S, L, A)`. In such situation, the color will **only** apply to the UI of\n * the editor and the `` elements in the content must be styled by custom classes provided by\n * a dedicated stylesheet.\n *\n * **Note**: It is recommended for the `color` property to correspond to the class in the content\n * stylesheet because it represents the highlighter in the user interface of the editor.\n *\n *\t\tClassicEditor\n *\t\t\t.create( editorElement, {\n *\t\t\t\thighlight: {\n *\t\t\t\t\toptions: [\n *\t\t\t\t\t\t{\n *\t\t\t\t\t\t\tmodel: 'pinkMarker',\n *\t\t\t\t\t\t\tclass: 'marker-pink',\n *\t\t\t\t\t\t\ttitle: 'Pink Marker',\n *\t\t\t\t\t\t\tcolor: 'var(--ck-highlight-marker-pink)',\n *\t\t\t\t\t\t\ttype: 'marker'\n *\t\t\t\t\t\t},\n *\t\t\t\t\t\t{\n *\t\t\t\t\t\t\tmodel: 'redPen',\n *\t\t\t\t\t\t\tclass: 'pen-red',\n *\t\t\t\t\t\t\ttitle: 'Red Pen',\n *\t\t\t\t\t\t\tcolor: 'var(--ck-highlight-pen-red)',\n *\t\t\t\t\t\t\ttype: 'pen'\n *\t\t\t\t\t\t},\n *\t\t\t\t\t]\n *\t\t\t\t}\n *\t\t} )\n *\t\t.then( ... )\n *\t\t.catch( ... );\n *\n * @member {Array.} module:highlight/highlight~HighlightConfig#options\n */\n","/**\n * @license Copyright (c) 2003-2022, 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 horizontal-line/horizontallinecommand\n */\n\nimport { Command } from 'ckeditor5/src/core';\nimport { findOptimalInsertionRange } from 'ckeditor5/src/widget';\n\n/**\n * The horizontal line command.\n *\n * The command is registered by {@link module:horizontal-line/horizontallineediting~HorizontalLineEditing} as `'horizontalLine'`.\n *\n * To insert a horizontal line at the current selection, execute the command:\n *\n *\t\teditor.execute( 'horizontalLine' );\n *\n * @extends module:core/command~Command\n */\nexport default class HorizontalLineCommand extends Command {\n\t/**\n\t * @inheritDoc\n\t */\n\trefresh() {\n\t\tconst model = this.editor.model;\n\t\tconst schema = model.schema;\n\t\tconst selection = model.document.selection;\n\n\t\tthis.isEnabled = isHorizontalLineAllowedInParent( selection, schema, model );\n\t}\n\n\t/**\n\t * Executes the command.\n\t *\n\t * @fires execute\n\t */\n\texecute() {\n\t\tconst model = this.editor.model;\n\n\t\tmodel.change( writer => {\n\t\t\tconst horizontalElement = writer.createElement( 'horizontalLine' );\n\n\t\t\tmodel.insertObject( horizontalElement, null, null, { setSelection: 'after' } );\n\t\t} );\n\t}\n}\n\n// Checks if a horizontal line is allowed by the schema in the optimal insertion parent.\n//\n// @param {module:engine/model/selection~Selection|module:engine/model/documentselection~DocumentSelection} selection\n// @param {module:engine/model/schema~Schema} schema\n// @param {module:engine/model/model~Model} model Model instance.\n// @returns {Boolean}\nfunction isHorizontalLineAllowedInParent( selection, schema, model ) {\n\tconst parent = getInsertHorizontalLineParent( selection, model );\n\n\treturn schema.checkChild( parent, 'horizontalLine' );\n}\n\n// Returns a node that will be used to insert a horizontal line with `model.insertContent` to check if the horizontal line can be\n// placed there.\n//\n// @param {module:engine/model/selection~Selection|module:engine/model/documentselection~DocumentSelection} selection\n// @param {module:engine/model/model~Model} model Model instance.\n// @returns {module:engine/model/element~Element}\nfunction getInsertHorizontalLineParent( selection, model ) {\n\tconst insertionRange = findOptimalInsertionRange( selection, model );\n\tconst parent = insertionRange.start.parent;\n\n\tif ( parent.isEmpty && !parent.is( 'element', '$root' ) ) {\n\t\treturn parent.parent;\n\t}\n\n\treturn parent;\n}\n","import api from \"!../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../../css-loader/dist/cjs.js!../../../postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./horizontalline.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-2022, 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 horizontal-line/horizontallineediting\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { toWidget } from 'ckeditor5/src/widget';\n\nimport HorizontalLineCommand from './horizontallinecommand';\n\nimport '../theme/horizontalline.css';\n\n/**\n * The horizontal line editing feature.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class HorizontalLineEditing extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'HorizontalLineEditing';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst editor = this.editor;\n\t\tconst schema = editor.model.schema;\n\t\tconst t = editor.t;\n\t\tconst conversion = editor.conversion;\n\n\t\tschema.register( 'horizontalLine', {\n\t\t\tinheritAllFrom: '$blockObject'\n\t\t} );\n\n\t\tconversion.for( 'dataDowncast' ).elementToElement( {\n\t\t\tmodel: 'horizontalLine',\n\t\t\tview: ( modelElement, { writer } ) => {\n\t\t\t\treturn writer.createEmptyElement( 'hr' );\n\t\t\t}\n\t\t} );\n\n\t\tconversion.for( 'editingDowncast' ).elementToStructure( {\n\t\t\tmodel: 'horizontalLine',\n\t\t\tview: ( modelElement, { writer } ) => {\n\t\t\t\tconst label = t( 'Horizontal line' );\n\n\t\t\t\tconst viewWrapper = writer.createContainerElement( 'div', null,\n\t\t\t\t\twriter.createEmptyElement( 'hr' )\n\t\t\t\t);\n\n\t\t\t\twriter.addClass( 'ck-horizontal-line', viewWrapper );\n\t\t\t\twriter.setCustomProperty( 'hr', true, viewWrapper );\n\n\t\t\t\treturn toHorizontalLineWidget( viewWrapper, writer, label );\n\t\t\t}\n\t\t} );\n\n\t\tconversion.for( 'upcast' ).elementToElement( { view: 'hr', model: 'horizontalLine' } );\n\n\t\teditor.commands.add( 'horizontalLine', new HorizontalLineCommand( editor ) );\n\t}\n}\n\n// Converts a given {@link module:engine/view/element~Element} to a horizontal line widget:\n// * Adds a {@link module:engine/view/element~Element#_setCustomProperty custom property} allowing to\n// recognize the horizontal line widget element.\n// * Calls the {@link module:widget/utils~toWidget} function with the proper element's label creator.\n//\n// @param {module:engine/view/element~Element} viewElement\n// @param {module:engine/view/downcastwriter~DowncastWriter} writer An instance of the view writer.\n// @param {String} label The element's label.\n// @returns {module:engine/view/element~Element}\nfunction toHorizontalLineWidget( viewElement, writer, label ) {\n\twriter.setCustomProperty( 'horizontalLine', true, viewElement );\n\n\treturn toWidget( viewElement, writer, { label } );\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 horizontal-line/horizontallineui\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { ButtonView } from 'ckeditor5/src/ui';\n\nimport horizontalLineIcon from '../theme/icons/horizontalline.svg';\n\n/**\n * The horizontal line UI plugin.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class HorizontalLineUI extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'HorizontalLineUI';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst editor = this.editor;\n\t\tconst t = editor.t;\n\n\t\t// Add the `horizontalLine` button to feature components.\n\t\teditor.ui.componentFactory.add( 'horizontalLine', locale => {\n\t\t\tconst command = editor.commands.get( 'horizontalLine' );\n\t\t\tconst view = new ButtonView( locale );\n\n\t\t\tview.set( {\n\t\t\t\tlabel: t( 'Horizontal line' ),\n\t\t\t\ticon: horizontalLineIcon,\n\t\t\t\ttooltip: true\n\t\t\t} );\n\n\t\t\tview.bind( 'isEnabled' ).to( command, 'isEnabled' );\n\n\t\t\t// Execute the command.\n\t\t\tthis.listenTo( view, 'execute', () => {\n\t\t\t\teditor.execute( 'horizontalLine' );\n\t\t\t\teditor.editing.view.focus();\n\t\t\t} );\n\n\t\t\treturn view;\n\t\t} );\n\t}\n}\n","export default \"\";","/**\n * @license Copyright (c) 2003-2022, 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 horizontal-line/horizontalline\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { Widget } from 'ckeditor5/src/widget';\nimport HorizontalLineEditing from './horizontallineediting';\nimport HorizontalLineUI from './horizontallineui';\n\n/**\n * The horizontal line feature.\n *\n * It provides the possibility to insert a horizontal line into the rich-text editor.\n *\n * For a detailed overview, check the {@glink features/horizontal-line Horizontal line feature} documentation.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class HorizontalLine extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get requires() {\n\t\treturn [ HorizontalLineEditing, HorizontalLineUI, Widget ];\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'HorizontalLine';\n\t}\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 html-embed/htmlembedcommand\n */\n\nimport { Command } from 'ckeditor5/src/core';\nimport { findOptimalInsertionRange } from 'ckeditor5/src/widget';\n\n/**\n * The insert HTML embed element command.\n *\n * The command is registered by {@link module:html-embed/htmlembedediting~HtmlEmbedEditing} as `'htmlEmbed'`.\n *\n * To insert an empty HTML embed element at the current selection, execute the command:\n *\n *\t\teditor.execute( 'htmlEmbed' );\n *\n * You can specify the initial content of a new HTML embed in the argument:\n *\n *\t\teditor.execute( 'htmlEmbed', 'Initial content.' );\n *\n * To update the content of the HTML embed, select it in the model and pass the content in the argument:\n *\n *\t\teditor.execute( 'htmlEmbed', 'New content of an existing embed.' );\n *\n * @extends module:core/command~Command\n */\nexport default class HtmlEmbedCommand extends Command {\n\t/**\n\t * @inheritDoc\n\t */\n\trefresh() {\n\t\tconst model = this.editor.model;\n\t\tconst schema = model.schema;\n\t\tconst selection = model.document.selection;\n\t\tconst selectedRawHtmlElement = getSelectedRawHtmlModelWidget( selection );\n\n\t\tthis.isEnabled = isHtmlEmbedAllowedInParent( selection, schema, model );\n\t\tthis.value = selectedRawHtmlElement ? selectedRawHtmlElement.getAttribute( 'value' ) || '' : null;\n\t}\n\n\t/**\n\t * Executes the command, which either:\n\t *\n\t * * creates and inserts a new HTML embed element if none was selected,\n\t * * updates the content of the HTML embed if one was selected.\n\t *\n\t * @fires execute\n\t * @param {String} [value] When passed, the value (content) will be set on a new embed or a selected one.\n\t */\n\texecute( value ) {\n\t\tconst model = this.editor.model;\n\t\tconst selection = model.document.selection;\n\n\t\tmodel.change( writer => {\n\t\t\tlet htmlEmbedElement;\n\n\t\t\t// If the command has a non-null value, there must be some HTML embed selected in the model.\n\t\t\tif ( this.value !== null ) {\n\t\t\t\thtmlEmbedElement = getSelectedRawHtmlModelWidget( selection );\n\t\t\t} else {\n\t\t\t\thtmlEmbedElement = writer.createElement( 'rawHtml' );\n\n\t\t\t\tmodel.insertObject( htmlEmbedElement, null, null, { setSelection: 'on' } );\n\t\t\t}\n\n\t\t\twriter.setAttribute( 'value', value, htmlEmbedElement );\n\t\t} );\n\t}\n}\n\n// Checks if an HTML embed is allowed by the schema in the optimal insertion parent.\n//\n// @param {module:engine/model/selection~Selection|module:engine/model/documentselection~DocumentSelection} selection\n// @param {module:engine/model/schema~Schema} schema\n// @param {module:engine/model/model~Model} model\n// @returns {Boolean}\nfunction isHtmlEmbedAllowedInParent( selection, schema, model ) {\n\tconst parent = getInsertHtmlEmbedParent( selection, model );\n\n\treturn schema.checkChild( parent, 'rawHtml' );\n}\n\n// Returns a node that will be used to insert a html embed with `model.insertContent` to check if a html embed element can be placed there.\n//\n// @param {module:engine/model/selection~Selection|module:engine/model/documentselection~DocumentSelection} selection\n// @param {module:engine/model/model~Model} model\n// @returns {module:engine/model/element~Element}\nfunction getInsertHtmlEmbedParent( selection, model ) {\n\tconst insertionRange = findOptimalInsertionRange( selection, model );\n\tconst parent = insertionRange.start.parent;\n\n\tif ( parent.isEmpty && !parent.is( 'element', '$root' ) ) {\n\t\treturn parent.parent;\n\t}\n\n\treturn parent;\n}\n\n// Returns the selected HTML embed element in the model, if any.\n//\n// @param {module:engine/model/selection~Selection} selection\n// @returns {module:engine/model/element~Element|null}\nfunction getSelectedRawHtmlModelWidget( selection ) {\n\tconst selectedElement = selection.getSelectedElement();\n\n\tif ( selectedElement && selectedElement.is( 'element', 'rawHtml' ) ) {\n\t\treturn selectedElement;\n\t}\n\n\treturn null;\n}\n","import api from \"!../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import content from \"!!../../../css-loader/dist/cjs.js!../../../postcss-loader/dist/cjs.js??ruleSet[1].rules[1].use[2]!./htmlembed.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-2022, 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 html-embed/htmlembedediting\n */\n\nimport { Plugin, icons } from 'ckeditor5/src/core';\nimport { ButtonView } from 'ckeditor5/src/ui';\nimport { toWidget } from 'ckeditor5/src/widget';\nimport { logWarning, createElement } from 'ckeditor5/src/utils';\n\nimport HtmlEmbedCommand from './htmlembedcommand';\n\nimport '../theme/htmlembed.css';\n\n/**\n * The HTML embed editing feature.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class HtmlEmbedEditing extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'HtmlEmbedEditing';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tconstructor( editor ) {\n\t\tsuper( editor );\n\n\t\teditor.config.define( 'htmlEmbed', {\n\t\t\tshowPreviews: false,\n\t\t\tsanitizeHtml: rawHtml => {\n\t\t\t\t/**\n\t\t\t\t * When using the HTML embed feature with the `htmlEmbed.showPreviews=true` option, it is strongly recommended to\n\t\t\t\t * define a sanitize function that will clean up the input HTML in order to avoid XSS vulnerability.\n\t\t\t\t *\n\t\t\t\t * For a detailed overview, check the {@glink features/html-embed HTML embed feature} documentation.\n\t\t\t\t *\n\t\t\t\t * @error html-embed-provide-sanitize-function\n\t\t\t\t */\n\t\t\t\tlogWarning( 'html-embed-provide-sanitize-function' );\n\n\t\t\t\treturn {\n\t\t\t\t\thtml: rawHtml,\n\t\t\t\t\thasChanged: false\n\t\t\t\t};\n\t\t\t}\n\t\t} );\n\n\t\t/**\n\t\t * Keeps references to {@link module:ui/button/buttonview~ButtonView edit, save, and cancel} button instances created for\n\t\t * each widget so they can be destroyed if they are no longer in DOM after the editing view was re-rendered.\n\t\t *\n\t\t * @private\n\t\t * @member {Set.} #_widgetButtonViewReferences\n\t\t */\n\t\tthis._widgetButtonViewReferences = new Set();\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst editor = this.editor;\n\t\tconst schema = editor.model.schema;\n\n\t\tschema.register( 'rawHtml', {\n\t\t\tinheritAllFrom: '$blockObject',\n\t\t\tallowAttributes: [ 'value' ]\n\t\t} );\n\n\t\teditor.commands.add( 'htmlEmbed', new HtmlEmbedCommand( editor ) );\n\n\t\tthis._setupConversion();\n\t}\n\n\t/**\n\t * Prepares converters for the feature.\n\t *\n\t * @private\n\t */\n\t_setupConversion() {\n\t\tconst editor = this.editor;\n\t\tconst t = editor.t;\n\t\tconst view = editor.editing.view;\n\t\tconst widgetButtonViewReferences = this._widgetButtonViewReferences;\n\n\t\tconst htmlEmbedConfig = editor.config.get( 'htmlEmbed' );\n\n\t\t// Destroy UI buttons created for widgets that have been removed from the view document (e.g. in the previous conversion).\n\t\t// This prevents unexpected memory leaks from UI views.\n\t\tthis.editor.editing.view.on( 'render', () => {\n\t\t\tfor ( const buttonView of widgetButtonViewReferences ) {\n\t\t\t\tif ( buttonView.element.isConnected ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tbuttonView.destroy();\n\t\t\t\twidgetButtonViewReferences.delete( buttonView );\n\t\t\t}\n\t\t}, { priority: 'lowest' } );\n\n\t\t// Register div.raw-html-embed as a raw content element so all of it's content will be provided\n\t\t// as a view element's custom property while data upcasting.\n\t\teditor.data.registerRawContentMatcher( {\n\t\t\tname: 'div',\n\t\t\tclasses: 'raw-html-embed'\n\t\t} );\n\n\t\teditor.conversion.for( 'upcast' ).elementToElement( {\n\t\t\tview: {\n\t\t\t\tname: 'div',\n\t\t\t\tclasses: 'raw-html-embed'\n\t\t\t},\n\t\t\tmodel: ( viewElement, { writer } ) => {\n\t\t\t\t// The div.raw-html-embed is registered as a raw content element,\n\t\t\t\t// so all it's content is available in a custom property.\n\t\t\t\treturn writer.createElement( 'rawHtml', {\n\t\t\t\t\tvalue: viewElement.getCustomProperty( '$rawContent' )\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\n\t\teditor.conversion.for( 'dataDowncast' ).elementToElement( {\n\t\t\tmodel: 'rawHtml',\n\t\t\tview: ( modelElement, { writer } ) => {\n\t\t\t\treturn writer.createRawElement( 'div', { class: 'raw-html-embed' }, function( domElement ) {\n\t\t\t\t\tdomElement.innerHTML = modelElement.getAttribute( 'value' ) || '';\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\n\t\teditor.conversion.for( 'editingDowncast' ).elementToStructure( {\n\t\t\tmodel: { name: 'rawHtml', attributes: [ 'value' ] },\n\t\t\tview: ( modelElement, { writer } ) => {\n\t\t\t\tlet domContentWrapper, state, props;\n\n\t\t\t\tconst viewContentWrapper = writer.createRawElement( 'div', {\n\t\t\t\t\tclass: 'raw-html-embed__content-wrapper'\n\t\t\t\t}, function( domElement ) {\n\t\t\t\t\tdomContentWrapper = domElement;\n\n\t\t\t\t\trenderContent( { domElement, editor, state, props } );\n\n\t\t\t\t\t// Since there is a `data-cke-ignore-events` attribute set on the wrapper element in the editable mode,\n\t\t\t\t\t// the explicit `mousedown` handler on the `capture` phase is needed to move the selection onto the whole\n\t\t\t\t\t// HTML embed widget.\n\t\t\t\t\tdomContentWrapper.addEventListener( 'mousedown', () => {\n\t\t\t\t\t\tif ( state.isEditable ) {\n\t\t\t\t\t\t\tconst model = editor.model;\n\t\t\t\t\t\t\tconst selectedElement = model.document.selection.getSelectedElement();\n\n\t\t\t\t\t\t\t// Move the selection onto the whole HTML embed widget if it's currently not selected.\n\t\t\t\t\t\t\tif ( selectedElement !== modelElement ) {\n\t\t\t\t\t\t\t\tmodel.change( writer => writer.setSelection( modelElement, 'on' ) );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}, true );\n\t\t\t\t} );\n\n\t\t\t\t// API exposed on each raw HTML embed widget so other features can control a particular widget.\n\t\t\t\tconst rawHtmlApi = {\n\t\t\t\t\tmakeEditable() {\n\t\t\t\t\t\tstate = Object.assign( {}, state, {\n\t\t\t\t\t\t\tisEditable: true\n\t\t\t\t\t\t} );\n\n\t\t\t\t\t\trenderContent( { domElement: domContentWrapper, editor, state, props } );\n\n\t\t\t\t\t\tview.change( writer => {\n\t\t\t\t\t\t\twriter.setAttribute( 'data-cke-ignore-events', 'true', viewContentWrapper );\n\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t// This could be potentially pulled to a separate method called focusTextarea().\n\t\t\t\t\t\tdomContentWrapper.querySelector( 'textarea' ).focus();\n\t\t\t\t\t},\n\t\t\t\t\tsave( newValue ) {\n\t\t\t\t\t\t// If the value didn't change, we just cancel. If it changed,\n\t\t\t\t\t\t// it's enough to update the model – the entire widget will be reconverted.\n\t\t\t\t\t\tif ( newValue !== state.getRawHtmlValue() ) {\n\t\t\t\t\t\t\teditor.execute( 'htmlEmbed', newValue );\n\t\t\t\t\t\t\teditor.editing.view.focus();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tthis.cancel();\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\tcancel() {\n\t\t\t\t\t\tstate = Object.assign( {}, state, {\n\t\t\t\t\t\t\tisEditable: false\n\t\t\t\t\t\t} );\n\n\t\t\t\t\t\trenderContent( { domElement: domContentWrapper, editor, state, props } );\n\t\t\t\t\t\teditor.editing.view.focus();\n\n\t\t\t\t\t\tview.change( writer => {\n\t\t\t\t\t\t\twriter.removeAttribute( 'data-cke-ignore-events', viewContentWrapper );\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tstate = {\n\t\t\t\t\tshowPreviews: htmlEmbedConfig.showPreviews,\n\t\t\t\t\tisEditable: false,\n\t\t\t\t\tgetRawHtmlValue: () => modelElement.getAttribute( 'value' ) || ''\n\t\t\t\t};\n\n\t\t\t\tprops = {\n\t\t\t\t\tsanitizeHtml: htmlEmbedConfig.sanitizeHtml,\n\t\t\t\t\ttextareaPlaceholder: t( 'Paste raw HTML here...' ),\n\n\t\t\t\t\tonEditClick() {\n\t\t\t\t\t\trawHtmlApi.makeEditable();\n\t\t\t\t\t},\n\t\t\t\t\tonSaveClick( newValue ) {\n\t\t\t\t\t\trawHtmlApi.save( newValue );\n\t\t\t\t\t},\n\t\t\t\t\tonCancelClick() {\n\t\t\t\t\t\trawHtmlApi.cancel();\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tconst viewContainer = writer.createContainerElement( 'div', {\n\t\t\t\t\tclass: 'raw-html-embed',\n\t\t\t\t\t'data-html-embed-label': t( 'HTML snippet' ),\n\t\t\t\t\tdir: editor.locale.uiLanguageDirection\n\t\t\t\t}, viewContentWrapper );\n\n\t\t\t\twriter.setCustomProperty( 'rawHtmlApi', rawHtmlApi, viewContainer );\n\t\t\t\twriter.setCustomProperty( 'rawHtml', true, viewContainer );\n\n\t\t\t\treturn toWidget( viewContainer, writer, {\n\t\t\t\t\twidgetLabel: t( 'HTML snippet' ),\n\t\t\t\t\thasSelectionHandle: true\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\n\t\tfunction renderContent( { domElement, editor, state, props } ) {\n\t\t\t// Remove all children;\n\t\t\tdomElement.textContent = '';\n\n\t\t\tconst domDocument = domElement.ownerDocument;\n\t\t\tlet domTextarea;\n\n\t\t\tif ( state.isEditable ) {\n\t\t\t\tconst textareaProps = {\n\t\t\t\t\tisDisabled: false,\n\t\t\t\t\tplaceholder: props.textareaPlaceholder\n\t\t\t\t};\n\n\t\t\t\tdomTextarea = createDomTextarea( { domDocument, state, props: textareaProps } );\n\n\t\t\t\tdomElement.append( domTextarea );\n\t\t\t} else if ( state.showPreviews ) {\n\t\t\t\tconst previewContainerProps = {\n\t\t\t\t\tsanitizeHtml: props.sanitizeHtml\n\t\t\t\t};\n\n\t\t\t\tdomElement.append( createPreviewContainer( { domDocument, state, props: previewContainerProps, editor } ) );\n\t\t\t} else {\n\t\t\t\tconst textareaProps = {\n\t\t\t\t\tisDisabled: true,\n\t\t\t\t\tplaceholder: props.textareaPlaceholder\n\t\t\t\t};\n\n\t\t\t\tdomElement.append( createDomTextarea( { domDocument, state, props: textareaProps } ) );\n\t\t\t}\n\n\t\t\tconst buttonsWrapperProps = {\n\t\t\t\tonEditClick: props.onEditClick,\n\t\t\t\tonSaveClick: () => {\n\t\t\t\t\tprops.onSaveClick( domTextarea.value );\n\t\t\t\t},\n\t\t\t\tonCancelClick: props.onCancelClick\n\t\t\t};\n\n\t\t\tdomElement.prepend( createDomButtonsWrapper( { editor, domDocument, state, props: buttonsWrapperProps } ) );\n\t\t}\n\n\t\tfunction createDomButtonsWrapper( { editor, domDocument, state, props } ) {\n\t\t\tconst domButtonsWrapper = createElement( domDocument, 'div', {\n\t\t\t\tclass: 'raw-html-embed__buttons-wrapper'\n\t\t\t} );\n\n\t\t\tif ( state.isEditable ) {\n\t\t\t\tconst saveButtonView = createUIButton( editor, 'save', props.onSaveClick );\n\t\t\t\tconst cancelButtonView = createUIButton( editor, 'cancel', props.onCancelClick );\n\n\t\t\t\tdomButtonsWrapper.append( saveButtonView.element, cancelButtonView.element );\n\t\t\t\twidgetButtonViewReferences.add( saveButtonView ).add( cancelButtonView );\n\t\t\t} else {\n\t\t\t\tconst editButtonView = createUIButton( editor, 'edit', props.onEditClick );\n\n\t\t\t\tdomButtonsWrapper.append( editButtonView.element );\n\t\t\t\twidgetButtonViewReferences.add( editButtonView );\n\t\t\t}\n\n\t\t\treturn domButtonsWrapper;\n\t\t}\n\n\t\tfunction createDomTextarea( { domDocument, state, props } ) {\n\t\t\tconst domTextarea = createElement( domDocument, 'textarea', {\n\t\t\t\tplaceholder: props.placeholder,\n\t\t\t\tclass: 'ck ck-reset ck-input ck-input-text raw-html-embed__source'\n\t\t\t} );\n\n\t\t\tdomTextarea.disabled = props.isDisabled;\n\t\t\tdomTextarea.value = state.getRawHtmlValue();\n\n\t\t\treturn domTextarea;\n\t\t}\n\n\t\tfunction createPreviewContainer( { domDocument, state, props, editor } ) {\n\t\t\tconst sanitizedOutput = props.sanitizeHtml( state.getRawHtmlValue() );\n\t\t\tconst placeholderText = state.getRawHtmlValue().length > 0 ?\n\t\t\t\tt( 'No preview available' ) :\n\t\t\t\tt( 'Empty snippet content' );\n\n\t\t\tconst domPreviewPlaceholder = createElement( domDocument, 'div', {\n\t\t\t\tclass: 'ck ck-reset_all raw-html-embed__preview-placeholder'\n\t\t\t}, placeholderText );\n\n\t\t\tconst domPreviewContent = createElement( domDocument, 'div', {\n\t\t\t\tclass: 'raw-html-embed__preview-content',\n\t\t\t\tdir: editor.locale.contentLanguageDirection\n\t\t\t} );\n\n\t\t\t// Creating a contextual document fragment allows executing scripts when inserting into the preview element.\n\t\t\t// See: #8326.\n\t\t\tconst domRange = domDocument.createRange();\n\t\t\tconst domDocumentFragment = domRange.createContextualFragment( sanitizedOutput.html );\n\n\t\t\tdomPreviewContent.appendChild( domDocumentFragment );\n\n\t\t\tconst domPreviewContainer = createElement( domDocument, 'div', {\n\t\t\t\tclass: 'raw-html-embed__preview'\n\t\t\t}, [\n\t\t\t\tdomPreviewPlaceholder, domPreviewContent\n\t\t\t] );\n\n\t\t\treturn domPreviewContainer;\n\t\t}\n\t}\n}\n\n// Returns a UI button view that can be used in conversion.\n//\n// @param {module:utils/locale~Locale} locale Editor locale.\n// @param {'edit'|'save'|'cancel'} type Type of button to create.\n// @param {Function} onClick The callback executed on button click.\n// @returns {module:ui/button/buttonview~ButtonView}\nfunction createUIButton( editor, type, onClick ) {\n\tconst t = editor.locale.t;\n\tconst buttonView = new ButtonView( editor.locale );\n\tconst command = editor.commands.get( 'htmlEmbed' );\n\n\tbuttonView.set( {\n\t\tclass: `raw-html-embed__${ type }-button`,\n\t\ticon: icons.pencil,\n\t\ttooltip: true,\n\t\ttooltipPosition: editor.locale.uiLanguageDirection === 'rtl' ? 'e' : 'w'\n\t} );\n\n\tbuttonView.render();\n\n\tif ( type === 'edit' ) {\n\t\tbuttonView.set( {\n\t\t\ticon: icons.pencil,\n\t\t\tlabel: t( 'Edit source' )\n\t\t} );\n\n\t\tbuttonView.bind( 'isEnabled' ).to( command );\n\t} else if ( type === 'save' ) {\n\t\tbuttonView.set( {\n\t\t\ticon: icons.check,\n\t\t\tlabel: t( 'Save changes' )\n\t\t} );\n\n\t\tbuttonView.bind( 'isEnabled' ).to( command );\n\t} else {\n\t\tbuttonView.set( {\n\t\t\ticon: icons.cancel,\n\t\t\tlabel: t( 'Cancel' )\n\t\t} );\n\t}\n\n\tbuttonView.on( 'execute', onClick );\n\n\treturn buttonView;\n}\n","/**\n * @license Copyright (c) 2003-2022, 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 html-embed/htmlembedui\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { ButtonView } from 'ckeditor5/src/ui';\n\nimport htmlEmbedIcon from '../theme/icons/html.svg';\n\n/**\n * The HTML embed UI plugin.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class HtmlEmbedUI extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'HtmlEmbedUI';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit() {\n\t\tconst editor = this.editor;\n\t\tconst t = editor.t;\n\n\t\t// Add the `htmlEmbed` button to feature components.\n\t\teditor.ui.componentFactory.add( 'htmlEmbed', locale => {\n\t\t\tconst command = editor.commands.get( 'htmlEmbed' );\n\t\t\tconst view = new ButtonView( locale );\n\n\t\t\tview.set( {\n\t\t\t\tlabel: t( 'Insert HTML' ),\n\t\t\t\ticon: htmlEmbedIcon,\n\t\t\t\ttooltip: true\n\t\t\t} );\n\n\t\t\tview.bind( 'isEnabled' ).to( command, 'isEnabled' );\n\n\t\t\t// Execute the command.\n\t\t\tthis.listenTo( view, 'execute', () => {\n\t\t\t\teditor.execute( 'htmlEmbed' );\n\t\t\t\teditor.editing.view.focus();\n\n\t\t\t\tconst widgetWrapper = editor.editing.view.document.selection.getSelectedElement();\n\n\t\t\t\twidgetWrapper.getCustomProperty( 'rawHtmlApi' ).makeEditable();\n\t\t\t} );\n\n\t\t\treturn view;\n\t\t} );\n\t}\n}\n","export default \"\";","/**\n * @license Copyright (c) 2003-2022, 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 html-embed/htmlembed\n */\n\nimport { Plugin } from 'ckeditor5/src/core';\nimport { Widget } from 'ckeditor5/src/widget';\n\nimport HtmlEmbedEditing from './htmlembedediting';\nimport HtmlEmbedUI from './htmlembedui';\n\n/**\n * The HTML embed feature.\n *\n * It allows inserting HTML snippets directly into the editor.\n *\n * For a detailed overview, check the {@glink features/html-embed HTML embed feature} documentation.\n *\n * @extends module:core/plugin~Plugin\n */\nexport default class HtmlEmbed extends Plugin {\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get requires() {\n\t\treturn [ HtmlEmbedEditing, HtmlEmbedUI, Widget ];\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tstatic get pluginName() {\n\t\treturn 'HtmlEmbed';\n\t}\n}\n\n/**\n * The configuration of the HTML embed feature.\n *\n *\t\tClassicEditor\n *\t\t\t.create( editorElement, {\n * \t\t\t\thtmlEmbed: ... // HTML embed feature options.\n *\t\t\t} )\n *\t\t\t.then( ... )\n *\t\t\t.catch( ... );\n *\n * See {@link module:core/editor/editorconfig~EditorConfig all editor options}.\n *\n * @interface HtmlEmbedConfig\n */\n\n/**\n * Whether the feature should render previews of the embedded HTML.\n *\n * When set to `true`, the feature will produce a preview of the inserted HTML based on a sanitized\n * version of the HTML provided by the user.\n *\n * The function responsible for sanitizing the HTML needs to be specified in\n * {@link module:html-embed/htmlembed~HtmlEmbedConfig#sanitizeHtml `config.htmlEmbed.sanitizeHtml()`}.\n *\n * Read more about the security aspect of this feature in the {@glink features/html-embed#security \"Security\"} section of\n * the {@glink features/html-embed HTML embed} feature guide.\n *\n * @member {Boolean} [module:html-embed/htmlembed~HtmlEmbedConfig#showPreviews=false]\n */\n\n/**\n * Callback used to sanitize the HTML provided by the user when generating previews of it in the editor.\n *\n * We strongly recommend overwriting the default function to avoid XSS vulnerabilities.\n *\n * Read more about the security aspect of this feature in the {@glink features/html-embed#security \"Security\"} section of\n * the {@glink features/html-embed HTML embed} feature guide.\n *\n * The function receives the input HTML (as a string), and should return an object\n * that matches the {@link module:html-embed/htmlembed~HtmlEmbedSanitizeOutput} interface.\n *\n * \tClassicEditor\n * \t\t\t.create( editorElement, {\n * \t\t\t\thtmlEmbed: {\n * \t\t\t\t\tshowPreviews: true,\n * \t\t\t\t\tsanitizeHtml( inputHtml ) {\n * \t\t\t\t\t\t// Strip unsafe elements and attributes, e.g.:\n * \t\t\t\t\t\t// the ` + + diff --git a/src/Fields/CKEditor.php b/src/Fields/CKEditor.php new file mode 100644 index 0000000..c17b8ea --- /dev/null +++ b/src/Fields/CKEditor.php @@ -0,0 +1,16 @@ +loadViewsFrom(__DIR__ . '/../../resources/views', 'moonshine-ckeditor'); + + + $this->publishes([ + __DIR__ . '/../../public' => public_path('vendor/moonshine-ckeditor'), + ], ['moonshine-ckeditor-assets', 'laravel-assets']); + } +}