From ab25778e7ec208aee0298c3c21a2a70da5f80a90 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 3 Aug 2024 21:35:16 +0300 Subject: [PATCH 01/19] client: Embed SVG directly --- src/public/app/widgets/buttons/global_menu.js | 38 ++++++++++++++----- src/public/stylesheets/theme-dark.css | 4 -- 2 files changed, 28 insertions(+), 14 deletions(-) diff --git a/src/public/app/widgets/buttons/global_menu.js b/src/public/app/widgets/buttons/global_menu.js index 4c3f9f49d..03bdc97a4 100644 --- a/src/public/app/widgets/buttons/global_menu.js +++ b/src/public/app/widgets/buttons/global_menu.js @@ -15,20 +15,22 @@ const TPL = ` min-width: 20em; } - .global-menu-button { - background-image: url("${window.glob.assetPath}/images/icon-black.svg"); - background-repeat: no-repeat; - background-position: 40% 50%; - background-size: 45px; + .global-menu-button { width: 100%; height: 100%; position: relative; } - .global-menu-button:hover { - background-image: url("${window.glob.assetPath}/images/icon-color.svg"); - border: 0; - } + .global-menu-button:hover { border: 0; } + .global-menu-button:hover > svg path.st0 { fill:#95C980; } + .global-menu-button:hover > svg path.st1 { fill:#72B755; } + .global-menu-button:hover > svg path.st2 { fill:#4FA52B; } + .global-menu-button:hover > svg path.st3 { fill:#EE8C89; } + .global-menu-button:hover > svg path.st4 { fill:#E96562; } + .global-menu-button:hover > svg path.st5 { fill:#E33F3B; } + .global-menu-button:hover > svg path.st6 { fill:#EFB075; } + .global-menu-button:hover > svg path.st7 { fill:#E99547; } + .global-menu-button:hover > svg path.st8 { fill:#E47B19; } .global-menu-button-update-available { position: absolute; @@ -88,11 +90,27 @@ const TPL = ` left: 0; top: 5px; } - + diff --git a/src/public/stylesheets/theme-dark.css b/src/public/stylesheets/theme-dark.css index 3391eaa44..8c01fb5a5 100644 --- a/src/public/stylesheets/theme-dark.css +++ b/src/public/stylesheets/theme-dark.css @@ -73,10 +73,6 @@ --mermaid-theme: dark; } -body .global-menu-button { - background-image: url("../images/icon-grey.svg"); -} - body ::-webkit-calendar-picker-indicator { filter: invert(1); } From deb2f389df6134570f24b7cd757d01aa14830507 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 3 Aug 2024 21:37:46 +0300 Subject: [PATCH 02/19] client: Use correct color --- src/public/app/widgets/buttons/global_menu.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/public/app/widgets/buttons/global_menu.js b/src/public/app/widgets/buttons/global_menu.js index 03bdc97a4..6a9aa0574 100644 --- a/src/public/app/widgets/buttons/global_menu.js +++ b/src/public/app/widgets/buttons/global_menu.js @@ -20,6 +20,10 @@ const TPL = ` height: 100%; position: relative; } + + .global-menu-button > svg path { + fill: var(--launcher-pane-text-color); + } .global-menu-button:hover { border: 0; } .global-menu-button:hover > svg path.st0 { fill:#95C980; } From 96aecf8544c2dc0e5599e252ab5bbd9a17cf7ee3 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 3 Aug 2024 21:40:07 +0300 Subject: [PATCH 03/19] client: Match original size icon slightly --- src/public/app/widgets/buttons/global_menu.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/public/app/widgets/buttons/global_menu.js b/src/public/app/widgets/buttons/global_menu.js index 6a9aa0574..c68316c1a 100644 --- a/src/public/app/widgets/buttons/global_menu.js +++ b/src/public/app/widgets/buttons/global_menu.js @@ -19,6 +19,7 @@ const TPL = ` width: 100%; height: 100%; position: relative; + padding: 6px; } .global-menu-button > svg path { @@ -26,6 +27,9 @@ const TPL = ` } .global-menu-button:hover { border: 0; } + .global-menu-button:hover > svg path { + transition: 200ms ease-in-out fill; + } .global-menu-button:hover > svg path.st0 { fill:#95C980; } .global-menu-button:hover > svg path.st1 { fill:#72B755; } .global-menu-button:hover > svg path.st2 { fill:#4FA52B; } From 80289b805915f6f426b653d687b1d6173f39f284 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 3 Aug 2024 21:43:49 +0300 Subject: [PATCH 04/19] client: Fix icon jumping on hover --- src/public/app/widgets/buttons/global_menu.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/public/app/widgets/buttons/global_menu.js b/src/public/app/widgets/buttons/global_menu.js index c68316c1a..7203cb690 100644 --- a/src/public/app/widgets/buttons/global_menu.js +++ b/src/public/app/widgets/buttons/global_menu.js @@ -20,6 +20,7 @@ const TPL = ` height: 100%; position: relative; padding: 6px; + border: 0; } .global-menu-button > svg path { From 7906c8b64f069ec20293710b47ed3f449ed75ddd Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 3 Aug 2024 21:55:38 +0300 Subject: [PATCH 05/19] Remove unused icons --- images/app-icons/png/16x16-bw.png | Bin 706 -> 0 bytes images/app-icons/png/16x16.png | Bin 782 -> 0 bytes images/app-icons/png/24x24.png | Bin 972 -> 0 bytes images/app-icons/png/32x32.png | Bin 1153 -> 0 bytes images/app-icons/png/48x48.png | Bin 1654 -> 0 bytes images/app-icons/png/512x512.png | Bin 41086 -> 0 bytes images/app-icons/png/64x64.png | Bin 10398 -> 0 bytes images/app-icons/png/96x96.png | Bin 12869 -> 0 bytes images/icon-black.png | Bin 1030 -> 0 bytes images/icon-color.png | Bin 1292 -> 0 bytes images/icon-grey.png | Bin 6036 -> 0 bytes 11 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 images/app-icons/png/16x16-bw.png delete mode 100644 images/app-icons/png/16x16.png delete mode 100644 images/app-icons/png/24x24.png delete mode 100644 images/app-icons/png/32x32.png delete mode 100644 images/app-icons/png/48x48.png delete mode 100644 images/app-icons/png/512x512.png delete mode 100644 images/app-icons/png/64x64.png delete mode 100644 images/app-icons/png/96x96.png delete mode 100644 images/icon-black.png delete mode 100644 images/icon-color.png delete mode 100644 images/icon-grey.png diff --git a/images/app-icons/png/16x16-bw.png b/images/app-icons/png/16x16-bw.png deleted file mode 100644 index 4096ee579ea509838548292581e405fa86e8f4c6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 706 zcmV;z0zLhSP)EX>4Tx04R}tkv&MmKpe$i(@Onlaj=7kLx$>PK~%(1t5Adrp;l;o12rOiLp`5<5%ypW>NMI35kRU=q6(y8mBSx!EiiH&I$2<6kT)#vvg=bb;{@U#SB#pQP7X zTJ#9$-v%zOTbi;5TgF}~)6010qNS#tmY z4c7nw4c7reD4Tcy000McNlirueSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{005dvL_t(I%VS`m5HORd-i?8QfuDha;WEX>4Tx04R}tkv&MmKpe$i(@Onlaj=7kLx$>PK~%(1t5Adrp;l;o12rOiLp`5<5%ypW>NMI35kRU=q6(y8mBSx!EiiH&I$2<6kT)#vvg=bb;{@U#SB#pQP7X zTJ#9$-v%zOTbi;5TgF}~)6010qNS#tmY z4c7nw4c7reD4Tcy000McNlirueSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{008DmL_t(I%VS`mC-7gY?dHE!+Xz{Vkw}gIaY(T;k*N6q znlvK|0|NuYlWNK73=9kz$TBjm&(U4i&A`A=io{>BG5YFn#wXR1=*}}_U|=}Uz`($e zttGUOfq@~Ofq|iyfq|hINzJc~(O20S7#J9spf>d&NuGz&Cm0wQR&R{H%7~`<8B8-q zAfmfQru8`^au`4jBOW}qx7K`YZ~Y&i8YVoN|1&T!2te67BpLA7-dYsOOo!5!Np-;& zC_R&qH?bNZd+_LYDDxOu20#sgh4_C428N#`8-Qd8Hvk diff --git a/images/app-icons/png/24x24.png b/images/app-icons/png/24x24.png deleted file mode 100644 index cdf30015305eade3139df60944767e884908bec4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 972 zcmV;-12g=IP)EX>4Tx04R}tkv&MmKpe$i(@Onlaj=7kLx$>PK~%(1t5Adrp;l;o12rOiLp`5<5%ypW>NMI35kRU=q6(y8mBSx!EiiH&I$2<6kT)#vvg=bb;{@U#SB#pQP7X zTJ#9$-v%zOTbi;5TgF}~)6010qNS#tmY z4c7nw4c7reD4Tcy000McNlirueSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{00E>)L_t(Y$K{o=OT$nQ#(xPGK?ku8CD0B|LhB+94iU0w z#X*XoB4iiDE-I)HIyiI@{0oZc(oKbch>8eRD!3F8vI_}xa_ORWsY?ovn6$NxgZP$v z@7;IbUGCjo;IA*K7voGZH3XajGr%Ws0<4?5)#%AVrkIKXZ*5@9rf!`|U64-$4*}{Y zU>q29&li1OgkvZYumki12l0IM!vpb>zXMs|2$&KTrfw}r0`WX>=@(W!UzObG7lCs@ zH4>C6Q@11l*(I+Bk-Pflqn&vOT9O0Ej-l)U5g%Lym=l~7nnhvimXs-`8UgVPe=AeR zP$ED*z+e^F2gWv%QGgY<90z=`L#A%k0{g%*lpA2y$M6=2Z6u>P;0~y@N=w^D6LK!D ziFm&HoGGTR#MA+!rf$7<)v1o5L>xnj0oaCE zNxO3Mrz1x0Ao^oJysfFbVST|;&{zt~K|$ExduCAY4icsEmT-I#_OD?+@}w)X!rgOd u4icqu1&DgCAAjW^YisJ7t*H(E&H4f#dvc-WOT?l80000EX>4Tx04R}tkv&MmKpe$i(@Onlaj=7kLx$>PK~%(1t5Adrp;l;o12rOiLp`5<5%ypW>NMI35kRU=q6(y8mBSx!EiiH&I$2<6kT)#vvg=bb;{@U#SB#pQP7X zTJ#9$-v%zOTbi;5TgF}~)6010qNS#tmY z4c7nw4c7reD4Tcy000McNlirueSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{00LP_L_t(o!|j((XcIvc#(xRb3KrBHl(oA^(FjdYC`C{s z1`pMX5<$em3f`np^i=e)2p)_FwI>gvUIYzZJh-0xb6V<3!O(-ah()22)xFe{wpbE~ zmx&D1-Hn87MCgNsnR##C_syF(^LAiO{;{OG?XXnI9|7(II~CP)V8S-NFNqK+Rr2G& z~AbmXd3C$jVf*4d5^^1MCIrw&`Vo<(PS|qrf9CBHz;900&~6?g08HbD3oz z1H6l{%h{&)p`%(La$^zL5TgF3mxDoZ6i0xn6wU9zaohA}yH<>ROB)7`0Y8BUdO2v+ ziiH=z3BWfTcWY0pVXatb0s-(6I0s-jZb!b-9f1E5&FL1n7@tX;K&@CXfc{o?E9yhN zh=3!t>mdX;Crw~TYVQfF&WY!MBoiTHo029lC$;wjD~kR{(gY4F{VPg8NR)u#xGUl> zrzO`ElZC`{z;N6W@K$u!i)z@C&pmq=)QW|(z(a*xs%NLbaNI`%@ZQ?{?!T7b6bqo- Tw838S00000NkvXXu0mjfOh^kB diff --git a/images/app-icons/png/48x48.png b/images/app-icons/png/48x48.png deleted file mode 100644 index da66c56f64aacdda06c4d181e9b2ee1cb174f19c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1654 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� 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 O04fR^^5wFY!T$%<5MZ|e diff --git a/images/icon-black.png b/images/icon-black.png deleted file mode 100644 index 545b2492c8a16677afd883fd4a5ffddbead9fc77..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1030 zcmV+h1o``kP)EX>4Tx04R}tkv&MmKpe$i(@Onlaj=7kLx$>PK~%(1t5Adrp;l;o12rOiLp`5<5%ypW>NMI35kRU=q6(y8mBSx!EiiH&I$2<6kT)#vvg=bb;{@U#SB#pQP7X zTJ#9$-v%zOTbi;5TgF}~)6010qNS#tmY z4c7nw4c7reD4Tcy000McNlirueSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{00G`fL_t(o!|j;OD@0Kgz<-8ef#f4avtc_68zo9MQq-)* z-h!1Z{Q*+4u+o&3gpFpSEMy@y8#FQtMM@%}386;D$N1V@b-TSc@4hkbJu;_mGxyFt z=lFw3w&C%L!iNFn79Ur+R{L+6EKf9 zAdEaXoKKiF3xFgrlw~U~trlnpHh?$a1K0(^CUbpRK=y$Ekg)(Zm57GBM--hUlX=ZR zRKs4inMdp#!~scH{q0_i>qJ_}2xd~6a0hGwi$F|lnVGRt1E8cBd(wc37{PRDC{6%D z;940!R)8|1e`R3fUFok|9blbpngQw*ugO4uU{1qMOgD7THH^K8D<>iPW#V%TsMpY+ zx0_G;G`&?RvT_BG61rBQ-Tjk9x2XZ;m-0|&mU%n*%Dy$gO_qiFrMXqWfpWm7oUABX zfpHP4VX1uC76<(lDE6|J3J6au0LzkRO1uL41_&zKnDPQ<&m<4Y5$K6`%z$Rygz3=$ zdd=0iF9)3trEgRd``rXOQ~HBm|8?>!+w*L<0(3&s%Hq>r1C=X_#|^yZy0j?}C(`#L zudffat-2XyvRsG@HfoT`e}#;SiZWDqkMnQj3%(O!1Zkg6TL1t607*qoM6N<$f>>L~ A3;+NC diff --git a/images/icon-color.png b/images/icon-color.png deleted file mode 100644 index 249aceef343049d5d73990698d6213adc601de95..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1292 zcmV+n1@roeP)EX>4Tx04R}tkv&MmKpe$i(@Onlaj=7kLx$>PK~%(1t5Adrp;l;o12rOiLp`5<5%ypW>NMI35kRU=q6(y8mBSx!EiiH&I$2<6kT)#vvg=bb;{@U#SB#pQP7X zTJ#9$-v%zOTbi;5TgF}~)6010qNS#tmY z4c7nw4c7reD4Tcy000McNlirueSad^gZEa<4bO1wgWnpw> zWFU8GbZ8()Nlj2!fese{00QJmL_t(o!|j+&Xw*OyfWM7xErklLC`6J&sV7$yREq5$ zR)mTocJU&G;17tW+M^)GgMw>81i_Xb#lJlW?IC#Z;=u^9)T&T5B6twpXe|CzD79*T z^fD`HNH*KG%_8=l^5(sH^Ucf5n@M0<{xL}`^#GY%ax<_8Xac?gj{(Eb?1|WbGP&eB z;2F>u;rbHTX=t{)WI&l*au{e?V7DniH8lHkVv%7cfw~gizXW8kOIk#jI}tD+fMWuL z0GRiNX7`6?$kF9i;2e+!B;X0qqh#H|02m3F4GCofyMfn0RoHljW+w=8aCEsBI3Cbv zD=^^bGC;SIb^AQFT*x@hKo5|QNbsL*N#2Y&y8J5y#xK2&E+6*joj&_lG2;>7Kt!w# zL$k-{0Xe$d13VCIJb12BucimQ$;*95H#D%sh=4UB{X2k%Ks7L7X!aT4T}0pZVlYLI4o8=*5?*DEl69v=9ZCWB zL;OYz%`WLU39Zyh)=dGcfltK>v?ywGz*FBMp8+lcQmHTtI$RxH-Uf7tU3gE)x`X+2 zDj~|nK2dYltEM$uk^4|Sol-;vz7Es_`-Q1mHLaO)<5vB}WD3W@1yK^br}(OJgGyy) zXSDFFnwIS|*XPrz`dER0O%e7>u>s}Nsa++w9f~tUZ9YIbz^6J+pf^7K=we=j%K^IS z(@$3vNHwi#@s&`JmB8gnW(aWw@yd3e{v%c()wCvk5G~>oUy!$PX9(4_h5^;n)Z}@7 z6+4iCa#Yhw0JnUm(TV_hz&Zuk32~zwTKq~&ALIcF1c6E2wD4XZD!yJ0@B8_#WA zh7NgtY*tNnV`RcD^z{f^*_Tk%la6!_lZRbv zKW>YpAu9tsj0a?7q6#8bzWhNzh+H$WqQl9$le#UX z%k%tnmsXkXwR_GO@I~6?!A&J2qj#OpG^HP&+cka3%{`ktFa6ZovT>?S(V`{4B%bF* z+-;$q4H$j>ENN+{-y2%X{NlRnvbxxq_=6RxF) z{$lS(@cj{!cHhAcTi&tLZ!4Pbcgc--qq-1QI~W(c)|Qbc7yEruDN;PN3xh^s~Ue6UjdKg zt6d0l3Xk7@xNKBW(EjaJlc>S_Lex0RhxMWj*?F|+_l1I#M}AT!+wZLB$jbS%ize9)aMv-!x@8MEK^3$12vX78 zL!uha+f-) zSBqZh@4+2er*mu_cRMeveB!qx&&$p1WWi;6QA*j| z!svgs?K_xJZ-(K`t5hT}_g*kQ;QHgyPuru~+M3C0|6Bqry{6i`YUd;&01Qr-B0EWH*H>5>I3@nRo&T zPa@$E1WuhGhlN_4Ts=-t(aYfjsX>)g2}>1njGj{{QpCY*EEXBZ^pPW@AXkfY_BqhE z4fJYQjOQT@3NjxAfF}_M3><-kBQf#)?U7MF|AVz$-KQd=CtfR5;)!kqyiE3qg&O9@ zfAsfR3w023fZzimwIWUhLfm*r4v*{aR2dVe?(Z{B4e7fKamR=ycqAx;=l(XnJig$A zjb6q`sZ43G(4+e!#oz~=GENm^z=%OS6a&eSK-35`@e@2Om3&;FPv)Z^`AZ;(yAS-I zpx^6dh{d2Q%SQpm>7DX?*jRnMEU^NVidlxQ6f#jr6M-TeiB5%Z6oweYF-Q;{M;DUl z6cL$37K^FkArfd31C@Rq zSR4V5jU~AeKK2M=gs?=RlCiNfr1CiJ$AKWJ44MrK^`a4JWD=FhWKhX88iPq zx7E8L#YhcOVK9bGfF%Tb_=GEFQ386?rC>}rJs)(BM)Clbj4WSx=HGORPk*^qrMpQ1HU z5RxO42_zPQfbCsgj0ax7p}wD<_1CZO-}9HWuKQ5gNRd}xZ*Z~!pg!}H+;g`I87 zneG?Du{pQ2nU6C;r5k$>7hQ1HrCnJu)SfH;`OWV?n)&QeIr#kSoR(_7%x3dt^<~cR z%RBh#7XG#9y=w}&8&BXc?M5% zWFp~EaJgNf<7?xaX8Zjed6w0+*+v=3T;h)bDQmNSt8-kR`_lOFpUP|Y0;h+dWTkLg z%CD*S3b5E?Q*$^ukBNk*$w^kJ<~j5%7Ku4QH((vg(i89i<~YT1ubGyM?LtxIlG{wd zM%fge!w!quy_Sq2M2Y1kh46dDMsrfmbm@{7*a$|q_!Ib~JN8@=014jp{FVWTeJ zglQejK4AZPJ@`j_r27DmPTCt2WldXs#bI15j(q5_=LYu`bf>u7@T#J8ncIEW&6M!< z-RpCMODz@~Iiunk!3TGKzqrS)r&9Feg)_X(*1rTV7M9Ii?(swYn5Jmdw$j?#n!o|Z zAyp3ob|FG-vCe7pCws+>UcgP|$L4wBPrmvs_oV546ns8cokDd# ku)KZRb#m93`=>JtvcMW}KCd Date: Sat, 3 Aug 2024 22:20:05 +0300 Subject: [PATCH 06/19] build: Create script to build icons for the application --- bin/create-icons.sh | 18 ++++++ images/app-icons/ios/apple-touch-icon.png | Bin 19100 -> 14446 bytes images/app-icons/mac/icon.icns | Bin 82210 -> 62085 bytes images/app-icons/png/128x128.png | Bin 16344 -> 9520 bytes images/app-icons/png/256x256-dev.png | Bin 24380 -> 15094 bytes images/app-icons/png/256x256.png | Bin 24381 -> 14670 bytes images/app-icons/win/icon.ico | Bin 113456 -> 114244 bytes images/icon-black.svg | 15 ++--- images/icon-color.svg | 36 ++++++++---- images/icon-grey.svg | 12 ---- images/icon-purple.svg | 17 ++++++ images/icon-white.svg | 5 ++ images/icon.svg | 67 ---------------------- 13 files changed, 70 insertions(+), 100 deletions(-) create mode 100755 bin/create-icons.sh delete mode 100644 images/icon-grey.svg create mode 100644 images/icon-purple.svg create mode 100644 images/icon-white.svg delete mode 100644 images/icon.svg diff --git a/bin/create-icons.sh b/bin/create-icons.sh new file mode 100755 index 000000000..7be41a922 --- /dev/null +++ b/bin/create-icons.sh @@ -0,0 +1,18 @@ +#!/usr/bin/env bash + +script_dir=$(realpath $(dirname $0)) +cd "${script_dir}/../images/app-icons" +magick -background none "../icon-color.svg" -resize 180x180 "./ios/apple-touch-icon.png" + +# Build PNGs +magick -background none "../icon-color.svg" -resize "128x128" "./png/128x128.png" +magick -background none "../icon-color.svg" -resize "256x256" "./png/256x256.png" +magick -background none "../icon-purple.svg" -resize "256x256" "./png/256x256-dev.png" + +# Build Mac .icns +magick -background none "../icon-color.svg" -resize "512x512" "./png/512x512.png" +icnsutil compose -f "mac/icon.icns" "./png/512x512.png" +rm "./png/512x512.png" + +# Build Windows icon +magick -background none "../icon-color.svg" -define icon:auto-resize=16,32,48,64,128,256 "./win/icon.ico"; \ No newline at end of file diff --git a/images/app-icons/ios/apple-touch-icon.png b/images/app-icons/ios/apple-touch-icon.png index fe1e29941cb05b60cca0f6c23f549198a9c94691..3a4cc364147b080523fca42e83efc1451abc7255 100644 GIT binary patch literal 14446 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 literal 19100 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 aQgHsW9#^SS4ETl`LQYy)s#d}z^#1~D@c>r< diff --git a/images/app-icons/mac/icon.icns b/images/app-icons/mac/icon.icns index dc07588f1d704aedcf270664ab0240f00770f298..c4e0fc6cc9b69cdb44e3e5e2cce11d675e57d500 100644 GIT binary patch literal 62085 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%0D#oh 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 I-rvUm0OdO#pa1{> diff --git a/images/app-icons/png/128x128.png b/images/app-icons/png/128x128.png index c5b5795d8f80487cb598cb9858f4f91fb6aa1113..0370ffd52d0de823b93dc3b6fd793e998793cd5f 100644 GIT binary patch literal 9520 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 IapS=M0V{ioMgRZ+ literal 16344 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 a9!VwLJ(qxX8UhpZ5X+M`W<@7RQU3?6d$BG6 diff --git a/images/app-icons/png/256x256.png b/images/app-icons/png/256x256.png index f6afe82f803216b790a16658874b018ee7931447..8208b2ced25d0c9715799e3fbd2d112258e397b3 100644 GIT binary patch literal 14670 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 literal 24381 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 diff --git a/images/app-icons/win/icon.ico b/images/app-icons/win/icon.ico index 46b97e62f959eb1d6f7e9a11293f6b4fb7837109..398e3854e623f28bb0387bb14bf555487ce96a0e 100644 GIT binary patch literal 114244 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 literal 113456 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 a!z{Wh$r7QO9N^t7z~08$`h_Jn;eP - - - - - - - - - - + + + TrilliumNext Notes + \ No newline at end of file diff --git a/images/icon-color.svg b/images/icon-color.svg index bd266dab6..8e33632d2 100644 --- a/images/icon-color.svg +++ b/images/icon-color.svg @@ -1,12 +1,28 @@ - - - - - + + + TrilliumNext Notes + - - - + + + + + + + + + + + - - \ No newline at end of file + diff --git a/images/icon-grey.svg b/images/icon-grey.svg deleted file mode 100644 index 92bc0906e..000000000 --- a/images/icon-grey.svg +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - \ No newline at end of file diff --git a/images/icon-purple.svg b/images/icon-purple.svg new file mode 100644 index 000000000..f3ec070f0 --- /dev/null +++ b/images/icon-purple.svg @@ -0,0 +1,17 @@ + + + TrilliumNext Notes + + + + + + + + + + + + + + \ No newline at end of file diff --git a/images/icon-white.svg b/images/icon-white.svg new file mode 100644 index 000000000..6be20face --- /dev/null +++ b/images/icon-white.svg @@ -0,0 +1,5 @@ + + + TrilliumNext Notes + + \ No newline at end of file diff --git a/images/icon.svg b/images/icon.svg deleted file mode 100644 index d99dac1fd..000000000 --- a/images/icon.svg +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - - - image/svg+xml - - - - - - - - - - - From a94c2c45b7d9d70ea332e7b26b1b80618d6ed932 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 3 Aug 2024 22:25:10 +0300 Subject: [PATCH 07/19] build: Build Squirrel splash image as well --- bin/create-icons.sh | 5 ++++- images/app-icons/win/setup-banner.gif | Bin 8690 -> 6848 bytes images/app-icons/win/setup-banner.xcf | Bin 20970 -> 0 bytes 3 files changed, 4 insertions(+), 1 deletion(-) delete mode 100644 images/app-icons/win/setup-banner.xcf diff --git a/bin/create-icons.sh b/bin/create-icons.sh index 7be41a922..55e835783 100755 --- a/bin/create-icons.sh +++ b/bin/create-icons.sh @@ -15,4 +15,7 @@ icnsutil compose -f "mac/icon.icns" "./png/512x512.png" rm "./png/512x512.png" # Build Windows icon -magick -background none "../icon-color.svg" -define icon:auto-resize=16,32,48,64,128,256 "./win/icon.ico"; \ No newline at end of file +magick -background none "../icon-color.svg" -define icon:auto-resize=16,32,48,64,128,256 "./win/icon.ico" + +# Build Squirrel splash image +magick "./png/256x256.png" -background "#ffffff" -gravity center -extent 640x480 "./win/setup-banner.gif" \ No newline at end of file diff --git a/images/app-icons/win/setup-banner.gif b/images/app-icons/win/setup-banner.gif index fb2447b641cb222324a5ff62169457cb5183cb55..4d3b86f103259ed816db7bc7f63b5289a7b5e5ae 100644 GIT binary patch delta 6482 zcmc(eX*84p+sE&jxo5L=n~^2SC{eaXvXp4-WE*77o~5i)(PEn+B2rUP*@q|z4U%LV z!jLd3l_jR^vS&}t`#kUG_xt-h=eqvq{J;Fp_2F7EV5w70%#5{;d(q%r*aia_JEc7y zDKVy}GeMOZH`1RlGn%kGJ!xY#X>U8_>@e-@Fy-nz?d~$|?LOn{J#)ctHaOtd#gJd& zmwsKpIu{*bU8HF9RN3ws(V0#Q^oWCoQupA*VZ;(VJSpxm(nC|M{m!rTtkizc83z8LtM4Y6hRb9WHGgsrcQJ zw%VTcyCb)G^wnBd;acyDHBQ-jbJP0gR~uhzH^02u7--lWY--`YZu{}JbF6W_t#zY= zz0uXV+0(u8o!YiJ{BD!eyEWRe_4(8G_u=htU%DsWai-e)raJm(J`Bx&9$gstI?EYZ z8rb5pw|;)up7^*u{pHW>&^CAE=hE<>@v)uxpF4ANlfQq?tWM0W&n~S0+F71l+L+&2 znfbdqx4gOVcXefL`}fZF+V;*C@4x)}_iyJv0RRB?KlA^||F{3}|8cy`7Wlud(tr1V zKLfz<0KEqX5IgV`-UAshlX~;;RG2L; zd>ByTo-Sg`7IzQ2hZNNVc*2H|lTUtvm=CyOD*tSD9V_F7vC+p!ou|@bk-KGI%vFBS z2-HLEjR!!9`t=eQ`EVbbIJAT(XRd~OlV1fz2#dW{osYcVhS_^faiMOh{cJ4q9OH#E zK|hKPt6W+Cb>z+3pmxSVH#!5>#FHy!R)%AC#O2&>GZ$M#9Cwo5rKH=mwC=uI&qRt# zJD7<|6XupXvHs8s)iYh7IkxiQnA()}N5?hiM) zDt#7Rfz9$JU&A{fsbj&_^?M9;93^y@S52kCjq^diPnITE7<$)1*lzWuV^h;Igs&Zp?;&h4l9?eyzNgsmU#<*ltHgs9KO03y(m{mxFHl^2>)`x<(M?Mnrcl| zN2fHZzFQytN)6@xZ5d-2&p07JM$JAvm$N!-@=Aqp8n4M1{VUqR+RmUMwLEVeda9qu z^MVDJR!PFj+K(Hk=f@HRe*7h~;&o0I35cHAyLybN_o8`$EG?2R;NPK*XAw}EM1uoq z`Y8Sqp$NS|nNK_=BGynn?xtyWzMvPYRe~rZY&?@sMdq<}WsWL?$+n)jnrlr5k1pTT zq8O~i+3HE7=;47?KYNr&7^7xd3dNNn)})1yB6;oF8N0<(N=gs|mIH4fB>T=kEmmt? zrVH)-6gx+|A+x<24 z6M_(x6VN+2-h-(v7N@N|tk;g+KT~|ec7Y`@`J_|6p42Jhv~r2?<}AwTT8-6F1)(>$ z{QxqvOK$z+qw}0r3$kgagTuXGX-~hQ^PRvVmX1?X>*fC8M#D;ED$Rmcg$T7 zq1&-{Bzu5&XkRw|(X8u~dNek{w7d{M^F)@qJNA%yS~LqSC^d*C9OP5}hrd%W?yD_z zLI0uYz56c^1*j~)SfzN@#h}|FLMnWx14cUynn#7aD^s(aHdt^Fc!?dbH-0pTuH8MFUGj0qAP zGSs$5U_Q~Ciqy*_H9jWH-b~9~w-86osyoTJb4zkcif{QohW}f6T_bVbFg$@`F>Sx* zv9B16K7LXM5p!BlTl5F8DT!cbKE%RuJH$(d9KR}jfV)5#i8~f7;TyB5HmLlN)Y(xf z#t+{9&t>JBMwvvxGrL3xulG}hjnZ#%o(@FzM2BSAoE6qTBgTIORe;_(=n)$RZksfb0oA-A7NLW(|D!Da- zRo;D}UI~f|NR{XpFBW}%?1#T>3kijw%TfOf`BmuqK#2=Stuj6+3DBrsgzFAZkc6ux zOL3Q?x`Jma{Zr4#TM+kqYrVP|D?Sz)P3mM!8y>ZBgVng0quyjUOE>}VNtzYi+SAhp zx)ooaO-8)={l0|+=>^061l z4_1E?x^OX^f6mu0J%TV?R8winJnCTb2{dtxSALLmq22adlVV6mnWN%-l|t7$#PgS5 z6dAFX&)vqWo|65h(|l|1ctecZXpsQWgD5`YbAPrc{HiJ;O!WyhnI10!%@{UmkAo5fpID<>h-z4bk$+h2EH?DfZ}?uvGs zPPh2sw74*wNY;o7><4wAj)Rn?t0QZV-vhg}41~Vd8zTCU352BKDR-Dsi{)>&e;kiw z*bLsH9{EySJfm$&8ocW5xI`U0RSgMW)sHGtB%aA}UpWq+8YXTZG!kRjVu zo*anCM{V_MPqUqBHta9bA*_0MDIRQ*gKl_6w^c?k(_qp>_zh+}(kto+CIOz02@(e^ z*dCc*{QmhvdEA&_O}McgbdGU3>^H1!<(kC}*q$X=*r$j9C+M)J_hB9o!C+uNJku7Z zKDyW^W`R`2Mwn{qk_|yUO0rneUQZ>Tj`KICVFb$Y)S4v359}n{_0WX4*3}BzM@u5fUMMw%qD6g`8E9lPMjJweiAP&f zAaMsbT^0=`e6v~W4q*v4`3*MxjSAb#yfgFWwlqCCU)-@ zeb3yHs?PmJDEUK>H}MW8gTAbF7n_gieCS7noRQ5ab%xcRDUV81XvV?Kje9Haye*%^ z{ry-i7MqUAN3UPAd0U8htOcb|Qj_CvNcy5sGT|EbC?pTdm(C11FhG5fZweRmyN|Jn zg^b-N`|raq>g-?;j+^$d*9lRD$g2)eyl1rT_4HLkIEiDdUkgzP?mxz2PcqLi2z-HL zM7Y*@qz#340Og?tQIpaynOPqMKqq3l+jA&{;9}q5q{;#ZeV_;is;>r>XKLn5zll~w zk7AN84?H-q1gGkg74JWK#9x6vJm9J^{pj3vD0c~E!S%Q*9vU@{#A`u0OBcG;Ks_!( zmizdwMDl*}BLmJ!7uvap15gS*BdaDOee+SQGgQF9Sb4f!FLdFlp)q<`jZPDN095fz zuQ0Pdz=e~@S-juKEP57Hk@a^nE4|qCD31$Dq4}t(G?b|?Ei(z}Le2m$VuG9<%ADaJ zw;s!q;kv|(G(-BZgz%%Kc7y@qZoQ#NeF0Jdp~($v{0weg zgKk4N`1G)@+$Vk!PyOHL*|-P?0th80oRSHr48}So7pamEM{8{?Iq2Q6yz|@7XbRSD z+}ywu!h4*aHPr^G5)oQFRuMq0d4`L<9DCw9H4_<5e~@rOIGct@N-jIO?~%+MvXFC=960w@SI0wPxdp+-hjMwE`cMOZAMCXQ2~#{^8tOljR7 zl;EMV{rOmbCgKDgp+!Nc(;li(UT&U193#Kfq#@e3%h-I#WWp2vWo!Zw-F>Uve;auN zDx2FDP9@8%XcYM7onv@e~!gKe$xVV@2}{9R><91m)5}TM|U~1dZw76=J!Q z2{r-3__7pgXP-E8kltieEE)3M{ar5&0k|tJWI8e(n;_rSgb1Rs3}b z8|097odctO^pDtNUBi7M6hmpO$^xm(#+%EprXta0hnhHNk+XqK*OtMRKOiW>+R3Ut z&20d7#J)r}E-FHf6c#6?fxlj?fDWRA(1>L;Zn%kewmIY?8dnb@WcZ9Y&0{Za5Kf8} z5E^&PVd{zy4uFYJX)R${;I8_X%U)=l1-Od_4*UXymH<4Z zV$u31+i;$(QrWGi=R^gg8gaxnRRO+T#I`d*ZRp!=&h?_^6qW{|oumYb5Zb+6+Z?0X z1Dl(7&VpVi+sI0gEx`7+Xq75ug++-{x|-Ys*s20lYz$9;4S6Eax548lJI*y@(H3CJ za65zBnxfP$Ols%Uf%g?Votoe6yy(1r5;A6XQg#4!r6xPV`*Zi&SN^nT?X6;vktK8N z9Hpjh{w|N$rl}NmNfZcg#@5cUOO=}9=DN-bH?Kr?WYx17KsVc>ZR!Om{o#Xke#2BC zwUZsxWk&9f5rE|iR68=dU6$*6UAr|1kR1uY5PGN<;85L%X^Y*3^$jE0U3?^9OdbFT z0Ez{yD7BVl*N#W_+RGqUBw_4f0Qmc!K?4ACA3z59$Q&Hd;8)5a%kZt#^_I8-yT1b= zL4Bf@fP`|7WKON@T%RrM1C?Xmox+O(4l6@fXde%ieN@t^^APxCb+5Nd@ngyd00{2G zSpp|gKO&hx|L{k07Kij*B;n*Iw#COo!5BjF~F`DaQg5c~ZLgA1f7e~Z`Ykq`Qs9WA17S%ar{ zotF9r?tsr4KEnxL-@4W$eIL~HLJkdmqhtfm8UO|hYZ5(V(a@=G@ul%E-rll?q1;}j zGl=&A-lqdhi@g>!)aweP1MMn zvLQQHa9&x&U$EMU@jftm2u?n+5u=Abd4ujGb)egw?g*iT;5F_ykGghm-+{?>(mF_<8b-XG+V9t+GI6 z3y{X)1T4hkPKmk!v>1GvMa>1BHVw;hVHZ(> zV1mj-qV7zL)ohV2zLI~i)N0&_2z#_J`*I)tuF&9v;4w7)Q*!Q1tqT4_*SNRR?7A{Q zr%%bL%)JxBU-JapRa#xkrVW>Z%gynbLA?VYzC*S)UjHA12OSWwwG zEW>B#v2kJ^xb_l9wP9_nM~_qUaC?qy##%NfgyN{ojVS5W6c3ykZSz_5#=X0^^VVCU zscVm{ab4wGZaHH)p*VA3+k77LBoC(?y4{nzeQ0573%((y3f|1KFaj#=$W~n?`y^WZjEdX|! zONv7Z?lXMgDK15oHNXHCxrQ0G6K1gM#*Oh3c9RyF>cJze8Fo`W^n;H7T(8rn$OT5J z`;0Qr%-B8^l?DVeQj3h>I|Jg*=vXPchYan_|<7bm-O zPB}hqr2%M8nFm{UIQiS$_Xa9j+I{ER%0zdbNuK-Pi1qpJO^MPT|Dv|n=119i9=w=; zfB*8(L=udOmSvIhRDC1|)@cvke$l2z6))1mFhn$i|g&Z&(>}GG7qSa`Dk?FL74Is#C#Y z)+K7!O3qr9>dyOmO^3+OKlXPh)te!oyj6B#hN9(AesMM^;Pxw%x!|Db$TN3dU7e0H zATNf7xK^= zc&*?3Gq2_JjEE2Zi`m{w&wXZde4-ix7s=VrlInxz^L*#>f)X3UmtSNjHAODuhpgs2 zPyQISSP=T8IeIBSXTF${*&MS}ShVsoX1*jkv*pP`Y3$0&;%BYY)#8$+^0@5w)TLL{ z{I;~^^0JlJsf8U+S1VpER;3kmyg($|W+l71 zeEnln{lJ@z=H~U5iiSb@O8dL|Z?&6km1}J+4MQJRJKr~cuV3$IZ5nRa=xkf-u5BM~ z-1t=2Jkqq)-Ld(pceAH{`%_ov$j7dq&E%~wt?OU}kG26O-b#L@DHwHSkzJC4u z=kw-ZXAi5Vcf5CJ@Ed2S`^&_ajqgK!lYKkGpEpK64^8y%{P?;(^5gpyb7OR1czR&# z*WmEX$jHp#?$}Sx?{E9R#zy8wcm90;IX|||`n5a$V{c+)dt!Qb;?Kmw?}N#olZ&h! z^3?3s%=pyO`2O_x^zy{s%p7NKf-}FcGe0@II<>nnJS1VTU$Gu z2iqLZE{D6by|cIdZ+B;Rf9K!c?%u)i-Tl9N{|@&4{oOzKxBu_|M|KwqMuGl;R6zgB z|1AT=%LVPH$@3gQxCv>p&}_0@nZ?|StZPS{d^#;vXQG{a|)Pkp>G4O94M zdXP_A+Pu6x&vdMfaE{wc4M&KcuBe}dYr24Wk2BoVmCFX*txS1q4w0q6$QgyHQd!f( z_m;}fv%bb_Wk6oN(63Wj^QaO6c~kY9-{sHNOx-3%DfC+3e@)t@UgP=Dq2)x-PWpyg zZ3=!&xv2c9a`d_W+s1@9<+=yTRILZ-3VNQ7MnO{ZhriWrt>tR!fVw@Q!Yj|fbRE}T zon_V8nK~g$)p4U%sFCwbUkG8kD^t`~J_ma;`}C5m@f&@j3`cZt*~_%Gz7V781ctG& zLz~iR9z981`_V76?bmFYz*rgGUs?K8>*cNC(7?5~-?N9*)qc1|{Ee)2vHvb0>>3m}=jEIpj!Zp{I%7=Z5sF-!%O2@vyIjx7&UUy-L3@@Rs#UZ|PMG`MZ+Y z8K>^u*h{3gL)J@Vw&8C|dH;1i+y0)veYV7l8;QrlWZsPn71c$`HIfXP0*uHG<83NJ zY8u&1Sm}<49B3jX#@bw7x&Z_ofSw7n!BbDP$KsCy;d}*V6p0u3Ux;=V(sk^-OfS_~ z1g@>kx49h2wTm-(4f3J}lagJcVol1Gw!xZ3;dXyxyT~d`dV608%M0HdFU?Vij-Wrh zdpb5o?$8;qvbCH8qzrNDC%bttheo!2_xaS$CM4q9B-D8Eg0AbKS_~5`b|pbhQ4&=P}d56C^_+cN{M%g0y6kD^%yuA{P#8NM0-pxd+ zsWaS&NVdc-cSr6P+>OGAS1bQia>*kaQgv2(fxkfR@L5XCWg%l323FzV8 z5Y(`*Mvd=Xp^W^Pgs9!u?y#{!(YNPhu(N8CBMo76;Tl7E*W0KaBXMJZH>idQ=JUg^Qo5)xu2 z-Vw@-cNK^%)?7|IHtB}(BTY&&W0f^3!vuoNUrN_Mx0ZIeq%OQLS+uj)0>wB9=;O#5 zW%hJM_82(n`r!$*ISCA#xinmVjRrO5ZIitL=6`hx7WhidL>_WU&shnLG|(_ThxYnj zbO@3kQ)r@kRu%r?=T`Nz_a_kVm~r=6lS(sgDh0Rm;n`UgGO3JVATSIFDRO#gHq9M` zUbEBnL0vGA60@5@HwZG^QDkq;i6-s z$B@=?37e)7kv8Twaw5*ho`{TfopXF8E#8OSqei-=1%^*4J_1w()}_W$(ny_2FrMR) zuUDRD|<71v){3{caf`+bDT+|~k;Wkud z0_6DXq8i}8aMOwAs$UH9@t-pSw+~P7et7>7{(>IsbaM-EcU_a>Tu$SluHJ?ONEcki z-H7@oFWR59EQDXu@T-tR$K{?t4AA2hBJEoBx}%NsgHruS*B;L67D&46QQbx4p7RA6 z9(qJ~PI|x+>Qxlgy9HjblG6QpgmuB_Y*=zyuw^IDxIA*ej|!I}8%yPOhll6+hO1c{ z3Eg3+e`2xCo~1hrDQef$pZ|r7G;W14PJY6`ZNR=w_2}ytc~!5n!;Qq>z8`166utpb zl8yDQ25iU?g|B?x;%z|P?Gd5d^KYC)f_{lxY{&~#$2WZRSLnSt25@;FmGU#SWOa_v zWE{aAHt!3M;8thIv^kCO~bSt*w*?sualc_nVK0at1MUYf})$P*f zTk#B-davVyaN<45I=A*i4CVJ~gkXoWs~>(0j(LXPil~$zdYhW-XrDcN6S(?O+@SV- zm~7qriYaSvIFuT9mM1~VSv)8^fbd^#PdIkAbdhPO#@`7h56YI!ZLR1NqAhXKH#fD7 zX)u{7)uqFeM_8TsImh95WEXmZz3lnTmYD3TjP&WplKQv8Abojf(J4O~>z}Y}f^KQ? z$jq7+9lF~Z)!sI*83K84cr-a-RR5b9>jGMh8xuzS&ckHIT8MFN!rWDir34Z4m}{24 z7v~FwqsSl0RZ#@~lP>4>|B8cMuY;14+HaDM?F1S=v-I8$#R`UQD^8PO3o%~jumTS$ zURT++8NRmK3;{{QD*+okU?rfAe(750F>4&3SFK_-)e{!$Wy}%?p?K9YF@u@5*NBcH z`IymYEn6ZHCTl72Oz9YvH}kIICY2)F?d?d!#FC3W&6t??CH5f{LD`Zs{(uMMYoKPS z@~;WSF%VQw>9H>bL#BH&vE+s*l$a$lz}bl}A0xUISuTgXEys6+5am3J;sE|#k9p@a zZ6!ct5zAX%-e7G%V4HHwRq6O0rXs#OI(!z)!eh9_t{%W+2UUifP(J1lOiPO8j3irP zy0>G{@)6gKFhqRpi!LaKByf^I@xTj?#%S5N1pf?=iyHvzC@He=QMug#%ZGemb0}d; zK6hcro(ZrhV)#(jaf$f(|o1Y)eCTwJk|7Br&dKg7f^f$%zB!N6K|O+uKZPx7EYPqwyV z4%7P-6KY3=dr%P(B;FJz@+A|Q10Z8ayksiEmkPJT`-j`a|7Aq<$3To{fMvGkY1)%5 ztovN|Fp^1Hv*oPy)Ogp}51!Bxl*4BOpo%{3>q13IUx$gRMNXjTy$c-JlrP z0$1zQg>Z>*N1wnExLr6V6v*CA2U`Ki=o(;?!54yyuNQ?w!USIHJU&Oth8w0Ew`C%| z$bs%KX|A}U3i5?uCz!~zO>+mB0FrD%wUx0&$j(LasXo;8cH*nzo9K);C4_?JbMg=I z#1LMf!USGYV|_083<2R9*c_;rv81;hss){*q&=gksf)jVa{{#!;GsxBG!kh%Df|hv z7em9C9eV7-b~f@WP4YZ!(M>?2_>46XcG^@;-aV<`Hs4(f5@~maR zl%Rg@hC=bc7H}uf3hYBbnqJaSVYu7M2?XE@HL_jxn8;Z=u)?w#VMch_{;zpzV(j=m zY}ivDWIM4~*W2ngMBuRP%Y{z(<2vB?POu#nn4zmRz60vxw4{iLPQs1UT2-zG>gY0} zL_8BZ`W|4>a$#g80bZ|o$qj#$D*yFOO=%FKfqdZ@e0o1(IrG)=v`8(5abLIMq=`oG0;;#Zv|6cn^|4PIb&WjDRbFwinL0;6#kWC zk7eutSu<5PaiJ}?KpE8A?-M!>2)#ZCA2n0vP*9ya^!ynvq?DfAK`2=)hLlJY^9hq- zi>5;JAil@+0{6izm-CnuP?k!M(^XsvLiIo6AP>_~%oZIdLwmA}N8}RG7Xk%$ar|XO zMB6cKY07iE^Ozh$0s_2wQRZh9)H91s-&A0xv2S;%X51^y}h50}7C zHs5O+?;Ym*#0{Q&l=>zCHEUNx7Se*eWB`pUddXub!mw@%fSQSb1A-%74!3;5xHiYI?T^lkjAL7N| zQSYQk1dbb@BI*K0?eW&cOdU;t!{GnGM8>e;?nG(~4!L4qbCvp%zTae+QNCV(GOP~x zvLC65Ymp#(04yvNkqBYm170#K>P4Tx)@U70;Jvxa7N(F~Qnltepo9LdT?*ON(|$GB zp@s-}Hz-Tl$MH(q%My?!4ec;ND#F~xoQdWK3-Bj8jOzlECyr~fb$KnHD?El|vO9?9 zfF(kevpG*S&{4V@z~%Vz!oh@^>KORi(-m?Qlum2+8^bixt98bZs6>E6YyC0w6#BLG zl@W|D1yh`6t-wHR{p>!Aa&bmOUlD0c>?gjjIgP$>gx9M$waEC~#4OW+dDT^RVZb zaSBt|<Owmdp}Z&39rKqCM}`X5)-eo|M%ADm{K7BCVwq}d`RsSs_8@s zK7Z!hd_kc-_z@Up53Ew?*KU-elK>W|H}VRF`oh5>of92mfQ~&}<736{l!aq+6~G6P#9+qI${5`nTP^&od4- zQkek$5)|!dY(NJtvLnxc{%{-wzu;iI4mSBzV29=u!30X!4KURq1ubwis0)!S*a4#L zIy^xbVvMlOpVvF8Us&HDjYtUyHnPSm$xZ&eE&S9#!HZ~z)3lE#1caFE;^$w$u7`!j z?W_&~XLYU$4L@&s?f}`^7F>6*5+Wk_9H!*LFvDzK4f=>4JL6hKdeqDRU=z|p@uE#Vgjfs%$g=dh>3$e+9 zzi@du@?bYgOVCH*VbXMLHrOCp@CQ;?n!vmFV@`b>CAOS%l`i;}_4esoo+84Z?3I}n zREa8XQc@5T#b~(g4EDkIl;{f&W8ab%Aa6zm!}Lshn0|q+meO9P!>snWVqdL!96D515(+cNCZV=8Sll{hbTD=ph6D>ck$?O(nNU_ z;th3vB3F2pi5$36XvOG1DTwK$B1v>;;ICs+6etOcq%+X1`m5)>_+tpIBXf{S>dFa0 zOg04Ffa5E}qv&+LP6qlXb{W+#qI;G%;W9V&B!EggyiPSFPv>Aq7fhg~)O8U@{(5Ym za-P@x@&+j-I}L!l9=WH1<2|qy_#{w`ApQyL24-Bq4-X1{0~$c`1e15OnVVsMBsd@x zlD-R~ArNc)Ma{d%@%(vY$$AjD3zV@AEgH&$z$O3^5l-f3Xw*%lP}; z0#py;raSV}$$w)>z!ZgBWB^+1=cZJlc`4lQB;XnT9|(+R;X&|>t@CL_acT0DX{zFt zT(nLF$S~uijP~Z&YcsuJ$eR52EUVe8xq2a7sHF8Ap+Lf!pLX2p>Ulp%s=ne5!@;ur z`s>>r+1D3uR66W;JVK?@Dx<5~bNR#j7wu{u{Q4LrW#if5XxfiL^Z}5PCtV*aPWr^(gIsN2+oiBDL&%mhQUaos--^L(3P&4mhj@{Nm%_c4} zw~@ItSLAy0PiKz(_6l`}#?*Sv03jhCE?(rGgfxJvwlg-<`rvHs7iN@)#x7MC#NM2Re*{Uy z3wC6k3syCe_A~x;1Yq5NB5UsPB96lHH&!!KJU%dGa9wgD!88kJTYc%oo28gs7+1Gg zR=DUXG6G$t@Yej$^L_GaOVra{LGz46b@i({d_G*0s({W{kqUu54o!J)A z#vk1CEn4NSQRJ;UG>7Y~4c8K)i2yN4-q+Ubl9kT|t&y5*crS8iR1FjaHfI~piR(VF zHnM$C+Y~P;wMFbcl3^YzDto7Lnt8)>_|En*9S`(1+52|NAd#qyly99ke@@r_m$o#I zzMw1?XmM20d@$+;JZG!cF-Ef>syj^d-lLXMrxXsbJ1~L(z|}qciAxWe3`J*4Ha~3R4~!&!3u3bp#wX z_2;!IchI{+UfsCF4i!SIg-Z&5t1t+&aPnxoWeQnfbpRw{^fkd}LfDIuu9mFm5XL!*Az5U`WHW+PrW^XT;thaa29T+(+k6BH>( z{5MC&COUokuIw9d*lwU0JfvELM|0DuH(FyrVZxWeq`J$l#l=qx-TPHNb*R1yP?VX8EJ~eSy#x0h-+PuH~wct9L(qGXVQN3UM_&PJiBlK zC6?$kAVL81_r43Tz$AZrdH?vlEtdI2OYx51-?={~u++DioTn#R&Lv1R!qP#9*OG;# zpIfBg6OA$I5V;qOval$(0--(2Y(!CPoX(ljscM-~nli{E;(E0JEZIqwLFiBe1!Boi znH&{2(a&dXXr?@Ba@c~KH&eJkP^fi=4{Yh`7+6B(DO)A|ys6bbw2h&4NYSn_;fNMW zl!xUmVST5P4e& zYekg(2uDl4po!0BKlRerouS&UCSLNl?+aPKrr*(GFL?UMubZDa&LiudHh1%7!>@B? z%!}IVZiXhG9M-?1t>A9=4F=-MiZU`A-uYVf(Ss}=*Vi^a;Ys5Kgl_xp^?sbbBUgO% z?d>z~H=D<<6g(%!+KJdsGFFmGp9@qcOBT32!04aS|2$KCi!*cuIwu!h_$tv|i2SML zuHpdx!mZzhLZ56nyh<@Pw{CNXk1HE)q$l&)I}J(5_~nMIi}H^bLLGt)U3nyIpL|Hb zV5H2?g0Tu>+`%J(v2raS_M6m~i^-papb()*w8wZt$D`vBXw$07j1N6ISz|3neiZTB z5(zy~bRI#m8{QB1j|*3yOV$2ns7m%&KOhF}WMLBvpuzfKPqH)In3!S{9fVL*C_7UN zO^fMdwS6%e%{<)B19C<#N$CAJUq@Zq49g6=vaGhF0-;71pMKYCeOXKe5+`NUZ8_fX zjOF=H=kDv}9#jc)DRDd>>T7w@V?SFCwAECh+U#}br#5Be9}K3r?>NfdA!8ZipQhf| z?l<3g>aS5er{cAw=qbp}yLJ{?dfDH<*K@t{d{;ZNwc+rUhv@s)&-zi8+;Huyh{?$S zwjkrKSmDv|Q9o&iBS}2yWeJ`$jg12obuT<tbUov48Ds`h_qNU{>sXfmojt$Q@oB3izwaivEm z9x}iAPg$Pz%t?M|`Bh12o5@2vzthjZeXyYmXA5rEe68={5+B#)FXo!9|5WuziZHpd zqJE>ZO5*82!<(BDS2B_x?|*c9GzMPI4O?N|ebG{Iy7PLxjhcS)T2y*GS<#nj^Hvw% zvi#HOOQN21J9wW6XeB zGhi+ZxDNvn$>4p;Ko&7j?-+dT4D>e!{}e-DlYxP@03t1d3N1n!EyBhvBGxUUE-iK?Xz#l0|YDP!Iu0A|P>)oO4b?5Q!2cNfbnsC^<6($ysvF zd0@yeFyReH&VA=Q>#pzJ_15>tTkD-YYxi$g=<4p>Ro&G!-DP2A=g8z~V$S5w$Ip+2 zg@qG!TQ zVeISe1z;3}Q9_JfmwR3Q;~N_TtVh>28Y398{EPk16ON0C`xn7^{eK7k%LzC8dtIBZ z<;8WSxaRe-Uz7VUub2O|4#vg}xQ@YW{<^|p1i$|;38nt>4&7gpZ~P@?%U@E5{3ZRh z-!Q@)`j?Ln{*vSR*fH|t+8@_^_LrRSzvSom%V#&`3TFNd3wGQP`j@TsfJk$4v%81&eu|k$>1I-3||G2r{wW-6k=vFZ< zrhKh_uzWxwc=TjH{UROFfqW1_nv|9;4tZ^ zd1gRDwL1_P5KK%Okro-8z{%sR);1^rt?wR@^I=ke1E>_^aY=Jzz`W50Yy9lbmOH<#hAZeObvT+g8 z->w)a7qZ%+OzN3gK)&ir+)!T$?AzJHVXVD;rkxEf+#TY&HGNVPUVi=LEudLQ^35`>7|*Ug_!| zQ{qYs-Z#}-4YQzjZFZL(4>=!$noCF`b7t}{g4B~#jv8_F1bXa1z&mN{+h&B0H*6S% zMx8#N&XwJ2-0OPLY+OayF$DAWxOdtJKZKg@(7Pfwpb{wA`D7~)ZT2c|O+(kJqXnJ} zxx>Z-Td|}K%$Xc-QfybF4OqSq5D^u5+;y9@{#kZH0%?cxFYa4G!AvWUMP4PmN_Qn^ zV5ldyNxsD5IJ*Txu+=<)ahRl`t)zG8Q zVLM#nYDx3Av92WYmz~)=ArLYL$S|a)>VqUG`MU3)>Gydt&iIR+6BRvteelfxs-3@b z#{&{*5%wv%g7*mM%DLBRxHel#ItPf#d+>4|Y!Q)HQc-%OSD)c-@%dnH^5kkCdDbwmgg2`+`7Fr59mglwE%+FtmU}3l33ont?*D>{T_#V2qy_Z_DKfgU$ zVf&ajgbDfyJZDer2vPHQ94Z+#LE zE}Wu*QM|$F;qCJ!2up{QNgKAl`DjGjd)44Uw(mg=85e~Y`Ssz{561DT9m2Gq-t5j%rb&{mR2xWaMU>{$j!-AKi-q ziUu-QxTw|HvjZAM9a49oa;wS!h}MWqrtygWp7>+ng+Syoe3O0p=fyxEl;r?=JO-sg z+=IL=S%LM;>^uh(seX~^k!mPJgFT8>A4L<#MJAav;!G+j9D2aEo3Sq!lX1@Yzec$^ zO5SrV)kG{!HoqJsF;+5(^f{yS1SJ!$Y82W^6m^t%N?8`&?UvG@Qw?L?jo|@~alc;> ztz3DxA@-v|7$5pV@~H<9Dk=YEeAL*(6MMH!#9N@KWc|QGqs1S;b15O|nRoln$3rSb zc*E~n$iiY#i4W_G{n=HzY)$_I#=FjEKihe!uEs`TH3K_s2+xc!57yFuQqL1j7K@#x z9k$Twt{0+hOlIjlT9Ck>@WZ*;fqbhBx@Rjo%r3`4&H}Y$crlcyCxYTdZVhw%SAq6v zAFGq0P1%><6a4x?9`M2Fw54f_a5(SuEF9Op&LuGH*EvDi?9)m7a~{HKb!Z(C%z8ya z!LViH-uyiMAO%CLea_yFRl7kw30S6K%yv9!eg-u!Jwe4uclBYM)nRcaKUXKy#mVJ?`^$?m zy|BS6Mm8YmH*KgOsjx7-h8nWQYfSIa9JdeGN(Jib1V3n&Qn@O$@eD@tOrbj2_UAx~ zy(Lqsj7UgWUyM!u!5W^R>8(`>y(5xuh6%ioXp2ANq z_1q9nyheK$ZD|M9MvnKU5`-|m^+GlY&eBwS@I3qz_?oXqV!xs+vFz&M#e${cg+W&S z4){pe_{5391m9!t(PlXNrqiI$1d5EMvZJv@eBt6TzJ&UETK$E_5pUJZa?Ljtp5((s zssmYylRDo^H0_@aG70oibgKJC7ux&c#39|mV~Qt=IJkB;5#Zt?g$zDwY`*{qN2z}) zt6@f4dZ2^S{4QfAAb{$IB(f0>4x@;NT{tJDa3dCSGRQX*7p{w9!Nx)ljh1iROXt2Y zGe}V3fifq|I7|80*QZj3TD?OfW;G9*Uwb;IqjBF7)NEreZF*MM zmo`H=bt=_oC_dI7h0wRBTq)!1om-vk=ItsF#!9fKtOU*o(2$>Bouv~9=P-FX0EdW)Kj-0Hr^9!M1y|lXeNg?0*B)Y;J;|Bd`_stg0`1bm zMW6AJ_i1+WLJ)Sgh8H;rw+Ginxw|!;0}I!4zjYj6FnH?vOV7Z`H>Fs(Cu6WTg_kc8 zweZQ=cNRS4f5zL+E00CgqAH`X2=C)xuIAMW3jS&Fs-(-HG=k^IJ&^Az{uyVkC_Y43 z{g^V{8CR0+WVavRzO^pJb>sebZrCNo+#4Ve}{ICzVsk2+JITM(bZoI>j@#&T)S_!GNG zrHliv`VZy`Ltw*fw`)Uhul#8q&*-8X21YbDH-Fsdv4ylWjD1tJyL%QqnvC9b@YIzM zjz)TZS)S&3wl7VbK z0thd*gz_@z_AVdw@x>WWhCiZ}VYIx&N(5~4+2WEDTVMG-FXGQERoECLI%)NibhOPez%jAOc86;j?1vs?W?$U*NBtXj(`lsFfKi}!UP-}S`0_-=ZdFI4l zZF_wrX-{5kvnjK#_iF0h6;TWat%|uf3NOAZ%uHQumv{_ocX00-m?n3x@2#_eBFl9- zn`}beikw`80vAQ3-l}q+N@PfqNgZV1ISOI-Yac%Cx@*0?A?Qu(5C>)rsJXiqy4J5- zUw3%SRiGM^QK2x#cs#9P1W?sbM0m4YD)GOSAY9p)az_%1MYmO1a2Onpe(VHB@Gp?v z=^EfCMXqjQ@B1aL{DjYkSnSb=*ymDTFimW7XSi7#Tut!tN@VP{ik+8*X>guZK%HkqgMylolhI2H10xF~ zIGZ+}#mZ08)-Q}IfdvNDT0b2`c`vBDW<^Uzpv_YLY%A~f^)n>x?%3LdmRuzq1=A7k z?ulQZ)tyb=U%gKNCB*aQsP6wh-%Y6jQRPogk~u$t&};@nH5mYrXL7~4u4^DKZiHmw zULa4q;~zm3p7({az$ab22>$a90*+gXat3>0UZq>6>zb4!qh5 zJ%j+Cj79UOsS;eAs+kgAM{7L^RkaLR9(3Dh?ZuH_yKwG?uJ&xBVw+yzOW6~D_}Z1I zWsI8fcND4LB5IufQn?`=qoKWXvFf+U=Q?QaNqpj|nJ)uwEd9a6<`Lp~?_^5z8xeTS zsm^^N8~b~nPab?Y+I%z!xDfMsRb#=(>2W2S6%{-;x+iHb+lI2TaD@GA=f@v0Eq5K(3@!AtyAoN z;3%8Dv?AS^Hs^t|9+jBDZmD~t^U!#^Sd#e|h`T*&4c7W>g22&cKAw=2ld60-W{}8N zW>WNhK)<>|))e(R?Iogq2McSXV5-xmui=2alB-8aefm6vi;DJ1XsM%6@Gpb`j&bu z>bB^D)dz`#?CG#`AFoMkOVvN@zhX3-3GI{NhG|LApvD87M#h<8#V?W@NA>RC-x^lj z@l*YLYuWBVea+x=?B)qNw*jFxf&3nRo4Vs$pWW9X@*qcE2=iscL;)0V0 zHKZ@{l@}`t`yHC7xpgr$`-@~G6+dlPmj@MyY*KlJ`u6R%@SF?m6Wn*VZX3VPw{!}l zW=u9stvaYYAbz*?HKa7d*i9=a$XP2VgqO>s$J4tj{C3X6a;emeZl}aT0Wb5{{;|e| z2yg}Su|$vT2)bQw(EW)5z*0sWEcQ!aQ>H9~UCyx_`X#j-ix7E40ve8<2I zeaN~!8830E2P?P)I-K%q1!V+67t!NQ)~FuxS)A0aql1!o;D>ZVotV~(_w}%aa)luiBKM!yO5~;5`;Km4!+uuVV8Ty zf$;u8bi>EJ@a4t5+38!=EJ@&pTcWl=F7V@RB3ofD^oNSz`*kJlC#pl=@f$QlEYv6v z_;%;#7*x_vEj!VZ?>ObY2P2D5{k->XcT8vRx=7o?>Ryw^eMveA;#n#wy^TtOir#qv zyXcVzD~T`s(slVWHt)g(LvU|5(Xxdy9}@$R+#6|GvcH;Q{l?_c)2|OMwJNk(gH$fJ z9QZ8?x4$f%RPP_^@j;V=-mml+xI?=752PEtb6&r_zn^!Z13^oW|Z{d~|mpKWak7A=}D>Elzl zgX^~S90x9?{7xrAikM^>^@K?U7OUoYG#(Fw_5CclM;6DZBJlmwzWK?GkvM%#oj z$dPwV{+9POiK>}zqQ6DUq8=6FaNAn;cUUJc#lu(Rcx1SDS-y0+pF0&kWVg-%ybZEE zxC^>?4rJe=xto~s>N9QbhZL8F%_EW5 zYziA}n&N^{-S4rUHL64KnTYA*;s815AU#s8qKn@)aQ0}j^1ik%Er;I&TUR)-A@~++ z9)l5ew3PIbzJ*M)hIbM5ag%5?mKCa5wYrk6B`;_nrrX&yxl!LeAN%TyS)|p zxbjsYJ#K7Bu)js2g`l0$8ZmZvf_OLC;zMLjsmR{jbl6f-Xa_-eOoEf+`0)7>4d`** z@zvI%-2Op9&5>7nDRvTZJ&&xp>s!?m$H@WS9l7$_*>TjPBx^-d5 zVfDhr^iQ8vRZv*vyN{D%EV4gK zVD;U9V=?w3cAW%(W<_S^k`OeO=ntP@7Y;J6UlJ8JL0Q2vB}i< zr0B(!x=wUO>CYDfhDO4N?C`F-Oz+Ubjd!Pi?-H0CJ^;2=XSKal9XbAfm^9AQZ4k3R zzVmR(RUy9p454~-sv-6Hl64R~IDlqnWqK){zh1)1lP{`BohG7D+_Fi%RG}4o>VIM* zRa52L@}tXT6rB}|NHa>%Tu3V2)sxy=<2uXUr0JqMEFVgm^&2baIKoLsw^|0fvs3%u z+0RW$dpz;S^DAxS#UbB5+WiBJE`UtMVOqLR7$T36=74%cqRf zw-yJr96DCGoE~DOb_Mx8o6J5vASwX&V)ve+xe3XnI~$?DtZVk!Rn?FhmV?K))`uwH zqCYoPE|lf@@0VeBxAkmbnX>;wx*yEYw@O^oY#qr>l6?Cz048HcyLm!|__bex7kQJ~BALbe=9dzckir;lxzSJ7tW$Kz9x zId4FORDqt8*1}F@E$hx38X=qbALgAA9ai%c%T=|+lOC*GJH?V5`q^?hTJo=$xBrx8g#!WP?qLu+G@vbxZ<`-Q#vJhLUX+E+bJY7{q`ueo(r9F{! z*T{3h$3Cs@s#TAjxbGc$9Sd?l1irS@Y_M~89ZGqAEDf0ScG^uKZinAO7-u@5hGIcd zq{yF0wJdMN72>aBx7G{5oIG2-iK||AOOW5M3uK&M&Ij*;my?oTpexn)X!pIM^~`yY zdMNU)F6Fs$mu*$GNM~EEzPZ0&0q>XWsz64h+8jL*Z*K zFnj+Ad&uPvHGC`ggx(!8xv$mt-u`|iIGq~aAUFKP`kw9A;WzzKZ!|_$05SzRZ>*Vs zMOAO!e2MLc3YBR+`>tz~aGLHl=GN0cCoW!5kwzREyVl$+aPGvYeRn!&MfTCzwzLA> zUJ1l0seV*6a8_Tp=Fj7JqIt@JgOE2)ze{>BV+zF_j4a7ZNvUHQg9>vR{$(cN=DG_m zsQ|OBxxT(6>O1*&sB^C&?J;8gy6I?U4iW2)5Ol0v#L2k z`UZLgy9v%!Ha|52mG9=aFPxXZd=_zJ(VmlxU}C#n)`F9PZuIlx0avG46)*tNiCqYM z9pjoE1SGcVeRPZi8PDMt$q9)2T}RZqAh4Tb4qe`jQki?XBK2Fy@JPOVnZz8*b4;_8 zxo8AID@}ZAar5dSixTJTAY1eYAP}MD^Xn_eqqwL*#lv8B(pjWLy#8SA0ORf^4bJM~ zy)}BVVPe`y5O+*S(k z!GiuS!iW;Fb;9+b0xVyATqx#9D~?yaP}fp=tBA`(h$m+~6p7wTU!uu?hqZvsOAdlx z50_vYiOYAx#w-edtjTWBDf%lxO2fd(i?*^p(x#!r;Vqhvpx*s`Ne1gN!bPWPpL|Ii zW8x1mE@9$;+^9wYJ?i*qN|o-bIYs{9<~AI|7p#B!kbFt{tph?lKS^GTGd9Dpy;5EhUN%U} z9JZ8xUhQvU4PHs>QmBEurDCHGxPRT-7~PUdno=G<3o1n5)O6T3T7CiU+(oOF|CW$# zx2KA#s`X-RS@52><%$;%aBd`uwOilV9C82Ha7w7{%2WnOIm(9@+aDA09REnM$VL%;EZ#mGVi(nPBDwh%=Y*Xl_fs_hC&tkC2A`@MNrAO

e%^wLe{=91sh&8`Fw3%h5qm;dy(F~=7o1kw5l(-7MEn)C>5hy$ z8IN0^)Fc99+cCbOzkEGOGRZ-k@C>B!Pyx6_R&88`K~ z+#N>G66=d92am8Z!_G$GN_cK%Ok;O3%Q^%mJu29eEES}Q#= zqt%m>14zBJ|LkJ+DYrTVF1YNTFbHZW{p8+nb>E%K&Ik7H4s?~N{o>^u*xlp-UukSV zU`Y9-Y|Nb^EoZ%pqUR$h!qjV=^*F6THf#Y|=w8=Ny7_2BhYev#Rt2!s^cw?XHzjHC zd#10a=~=#&r|l9Rubv>Tyq6c2V>t{>RTw7t8j<{Jxb-wMz{nj)z6jJp-Bo+uaOB&eb0U8t+CP8fXd^0Dez4OgKc8PC2^{ z3aox4>HxbG&*Nk?N2s=YowG{M0r4u+{;Y)hvUd6~HCcz*uw>7F)_eYxEYYI}98gP& zGovh;X8VKo{3`>q6qL#GiqOYGueh;se|@GTA<}@hxl?91St;b7Aj&M-U&6PtwA?^{JR4 zveFG4c50IY(mvYIhnO@8mF^2|^k^gS^(&#WutpFoX15xqzVK`slyhG1ak?!RedHnI z*e5jA3J>|Py`s&-2WW~_Np-zx&Ho=bK%*gy9Yzhzm21qwMIoUEO+iw2Y{zk_)rS&nR^H!n$!c~1TDIvWgerEMF0 z_Bs)9y(*V@tCG{*tK^f0`Xob3wp3R%cuwh0weM%RHgqP& zvSmB!736g05hjUObxM6PdwYpq0KKr`u`OvmY5}NgGD`8Vc?;iS(hyPvPaq~mg96dV z9sZj?p8@w0skf2g`w1yN<3BE5`MsoMM=9AizLBDm#AA;vPyM$f6NXUGZ6kxB%)#<5f#&#z#-+D zHG7ue!IW5+_5u!0J$GOsEaB8FSPr&*?s3{6_+#!o`n=RxTC)DuYSTe;p38jF1?4eH z$KLMilpRieaeyB{KI^!4!ZwbD78c?Xx!`D?>lK&*WBMK*V9zN%P){=syO##jt&kH7 zdMU+PaIQmg5BDVVA@+Rr)TfP?$xsg|(5+*{8b$XL&teh%W+^T8fc zqw;@52H1;#umwIjkH~N@nSL1fq%;aDd1Br$VUyM!4vS7~`LdO6(^P^W?%AxH*y#l? zBQ^?bic1iL5!_D2qlsWY6e+5-ZUSE7iC-fZ6@NWm)MrB}!_cLT8So4$4UPySE1FLI zmW0Bl_GK1oNPBf+dYUtqa7i_S=%Pkkrt(h{G3 z$H9^&NzkogHX}nv0Ce%|J!Sdvd)DJ9g^|zG^@!N)J5Eon)Le;5e2$+r{VY{Yp6$ zjYr|l&ujE@jhH`dlsJ6D`S$eQ7fyz(Q)L{GaA`y2-tIG15s6JH8xzNj*p}(#T=l_9 zuX&aeG|3%oB()sxqXV~N4(*qFpXOK&03r2K$$9ler4EWqm&xK|U1!sCFD}tf?OY$r zJ9CDQl>efig=h}pnaOP?B(ysi zpZ}9&!Dn6cge-s9)}2tG6f7b@gnc0FZ@CEc+bg#!%{v=Kpal5b{L#etr!eYBA6s=5I@U0j{$371Exoe)Fv+fwn12MjUw8J)@H|J!6_q zI&SZ=rN)fJNXaLPGTvFj(y|J@+p^A_fX{BXuqEQx+ zvJHZi(GaA1LI$CeZjJ1{K_noT^thgW7{Cx;1`KOm9KbvI)b6-5C9X4oZ~zLuhmrY~hiqS3eI z&)?_%sn)8@0*TZ@-rE313nh0%~xb$u^YQ!ne} zfC-;m1)@>N5b_n@%M>3U15a_K8PixS`ENh^HJyN>njSwy9A+J1gJ}&#LR#~bv;OFF zpWBOVa??|B_1qtEuYfSObCnMk{OZDIKTXj4LM4j4;Y-jk|2YZOq#GHC-2O4ya$6glNE&2Zm46n#7;_^Ay< z@79U_LfBo&WX>7d@!au_~**$l^c+i8=UvN*J_kbO7Uu$dxpjU z6Y+VQ{zr^1S4NY>BTN9o-(t0x^5je{3(dB8HdAf$DR{doa+A+CaKj{Y;t%Deuh~Y2 zyPZ&~0Nt$Mzn#8+1Y3rDu|y_=EigUKS=D??>m^= zdknHa9_Lk5<;XD_iP0=GPVlMx8Z<^I_2h{n(nz*441jkStVvaH7EJc}jm+rG+@LLw zppZ4-?WHcd!sBb%!r-2ng@y23OO|hH1{{5Mwoyf6__|I))aeh$cWnKvwztn^80pVsf`IFtZXNCWV+KoIr$CfQ%RGx|Li4my7A6{ z`&pz>-pP#n*^6`|e3R@?NFL7b?hOwfSXBK4m%kD6emlDv29BWNfiU0pSwV(Sx%6(Y zt4~wz@#ZzB)9&v_{K-^9JLOy2Ivzhb&Z%Y_M&m-aFI{UXH?k;f7!0z!f)HRae3R9M zQ(~Ge_pV)4*!zx?Y*LR3!GxFRcMYE{gw{0zBi!ctpQ?1rJ6n66d;zovynlb&!iv5YdZP1Vp=6+g2S@}Xd$;sXUMl-reyHvs-)mG z(^$vra>gQ+d0(;DzFAP+T2Rbe!cUKjOw|mZYLz{|WbXERP$VhTT3d;aY9_ggE;jOc zffqG0B=*>(g0>?4x%Vf7SH(X_>H0|T@YcTzbu+(fZ~s-h6+VQXt4g65`cOpj2NPZqw=6h@z(QDYuzj$c{p!R+m?yu655j!-(=g$9Kcpmo7Q~nRaIOBF51DTaa z>)DqgKx^ugyC^QVC?p?B- z#sn&0U!2qy`qx9BVXxA7Jn-XCpOmRAj&dJ=N(j%c3!uqNA$Qj`HD4(tHe?v~L(yj* zTw1jFa?x+ze+z0m)!<(=vk&K2>AN(ia`-e$c0Br>9ZK%=<&@(N!pWON7vl&I58P?5n*3e##>X;(W&(c{7?uHu1Hkcw^A~Iw89Q3wYE%*4& z1VvXvC6~`c5b0;!AEi*yQ{Z>~oaGYPgD4S%<6?~*a{2}I^Ewm#RnEz={&!ID1DvME zeeHv0T3ct40^VheldE0yrgdYBBvz-hRKTx2q`QXYFL!DV8pM!S>`izxlG%NrvV%Qk zM1$*PU3lgnGn!T+ohN-=`~qPEBCt%#2h17%`8DT3=3e1qY97QkzffA+q40hD z4EHdgZcnLyrx;xb#J}28wgR26bzD^3(>+;$JeW=vobB*}MNhBoG`%RzBK+|yhV)K< zXmvq7l02*XhynsLGVeSG{}$x3Thsq=kb?*E&IZ1& z366n!?5Q8p=lp`a_y8O8dVMJBufz<`AQU*9SB7PU07)>8UD%m|Rv|)tT?BgSne09s z%DW{2p4loYHrMH_t+OK&XhFZ*Af;q9tTS6Mc^36cGmGAtOmNQy;o_&5pvpsDaj!60 z%=Pk%vgN1|ZPzYMj_}BU>W0~!nK6=|8fn6If0Sk7SoeN~y_SsL%g%l%9tM55(vh33 zB2lFLIgk*jHayxgFN;TJ_`O;oC76gb-32hea-5`9;A$}W7)Ch>M35;}Z=ih^Vj3M5 zy(HEj+n@v@dUXoN*Qc&7C2Z~ups~eSs3Gx3S#5)%y`|2uU&rqcISbBjxeL8UrSvwn z4SwtZs5)~yI$(>_Qv>_q+GQ^9k9@d>?r)(D9Kkr^S?wyxY3NnlfztzVH_XFCf-TLm6}P@_Y$R@zCd7(pLx)qMObbKa21g`-CS#4@%|?YmG* zoRaj^u28teC-24SesNOW=V*xK9PMcBXnC(>u*K`TfT|__gBJ&NKPD;%R5m)On&_wQ z?5@@3Tmo8L?5mB2)}BqWr9loyN#bBb`Hs@CpBw6d&)qrBe8jwClZJ}()2PB%ujgsPNF7PS zTYrl|p@lm2vZN^#;6Ikc`<;V9%o>kW@5H_HvdCui=;vEBe{7w*h<$8(7hE>_^4*r; zESY`B;MO2DdJ{#X(FJ{&++C-L2^m_>fSsO5@FHCCvkk zq3wrt1ZkTQXR7vEiI^0`;%3*qqs@iXm+WIv1M0=LOG5*n=oH9*=@i5%BgRHwrnnj% zb7>15X$5&Fm zonI4_4}$N~N@CmT?ED4LxU}JcgX_O@$QxgYn^yIi_AuCs1jDIA%D$)rwqIW8drJNX zY%H{M9|rWfIuRv4fL|MgLs8X-)tT}ovbPXp$f-Ge=0gi*8Ot{F{O2o#$GB6_x1NYc zX{3O&2|fttB^D1bm2MS&d4Hp3i_S#(IC4#3Lo|Z;Lj4?n3JT{xX#5VBd+MMVdN#%f zOo6D)B1~_EgBS3jb^HN`4^o+LJ9(b*(j4f0m#x=1)<}&r5|;o|q=9I9Z0`6!@%AU7 z^Jki5x)P)+XfFt4CZaG+dHw)5$1&-#ix}064x)l_`Q8kvrC@BgUlQWwK3K{Nd?;uc z%=24{uPtRUXLFn`jse*~fUv9NZ*k;)cQPkxu;z1na*+UsKAWeVUGP?d3LYx`^p|6u zqr+SB`%5#zXM*JWWh-bB&+&OMrpG$Uf4fbZ{N?-BgAMn z3@4T?e4OePGblIL7*$XR6F)26hx67GSf~Nf8P7Nj8l1+~@NE{ZanA$vIAz_H^0e{_ ze7e4$X6g>pptSOs%tN?)9Ow!E*)P@$-(v$nWg99u0PcXu8b+IQ!M!~&VVaV4=Zt}! z*M2iq&6na(m4V+rRDIvc1G1@^xeqC)o%^H?lUJ0XK!z#$?rpqVob*_ z9!#-Tijkj;oBE#-QUlkT%9WejOPG+E*|4QcEH9uA%lxNSpyIZAti8o^e{>*s{P@oM z_zH2ZMqEzY;}>5RYJK%F@35}83>~f>?9?61lG^%DzAr33CO$KI6vKbeKFgGgtSSdq z44?H@e>;G+Ers%X{7gcneKOvs)95qP)-~3yCdN9e=pnPZZ?vjLrV0lAWcUWu&|R7i zkV9=OHTI4Wi6vbAXhYD4h}`{y*q`WGcN(G(8mQ>m7d^@Q?A|+uUR(BP=+RLJPvUOD zhaaN5l$l9iF9X^S(BJre!&74y8I_hV0tCl%{eio z8lZN(bE^SHX|1x*tGZa($=hAg4fQcC7GvWg^Y!_Pnsa$2_z_$th>G&zmLu^55%)RE z?cJV!Iv7iz`-N%1Pv`;{)L%KlV`;*Z#|D4x<}QUmd%RBXP&fD`RNqMexgQxj>;DxL zt*asKs{FihD7XH8qoVDB1$Tb-C!r^a?S7~xq(QnJ=L}EAk;Q36kR3YqNqeETk7?SW z+lR7IR|9KF9)TikvGsGjCdzR1B8j8{+Ydq369=2wP8w60xAcf+#x$Tg@b~AYr>)ZV zLzKWa$enq#s2@S_qFZ;zuLUUr)It(Bi4Ohv2GP+Y@2eM0EC;3Mr!Gg1C1S*#JqrGV zC0XH!9bcK#tAle(9)FojH#sT1zk4DR%zeFI&;V$X;=Ev_t=ZXdeBl9h4wl4Jt?K{>y z@SA2WuO_WGd!j6A4iT>Ku`_0xrK1G@V8pEW0dm;AO?P`r4OCGI!@Ag0eTMdUHO_=C z<%_AyAN7?`aTpft{p@9wk7!-Uy6cZd1dNi24H6%P9q_iTkR1W|TLJxfE(2Z^wpSbQ z(9^Fxjb1~^d@XSK2 zVrUR}>K_%QLrl9$V;ZQi_ucj#-*+qDJCUFad3tZcsQdjxATmMHNge!15PnKSle&;Y z6f*a0xkxC>f< z;eCZyd-^TUz>bWUF4K+0omwIHPvHet{`ZV{91Y-&#os4n6hXnq8fK0kqgzY&^JEr) zi39W|eXO(WQke=JH4+23#!f!qPphk+Hbe|{Cb=# zRCNxx`V_8X!kN(gpyd`HTdk})9T}dV%$|WF@#2tYkiK0cD1^)7u|()8{B(Vo_s}nZ zbY|`R{JkjrVUu#b%Hgi!uPg3@+-S5@>u#!xey`v6;`fcUO%Z;9i>0`<;IGg{-4n;l zVn#B5y&B%5LM#(~WffoEpWDn1yG}<7=u`#7lUIW!iI*M`=~7>TWC*;|v@d9El_pNH z>;I7yEbqyXOG9q&6W?Z}D$NY~fk!kt4rzdVw3L-?WeW3FlWqJ_%YYZ+sV?Iv>Papk z+wp*GMMicwvU7cjnTdk3CRHJ4q&C2*M@Y+WqcA+2;LlIs3t_4Xwf>XBl7f9WL~NKG zzbTLH?JrTv8oo{LHXno5MelZwQ@Za$EmsY=k0+^IeMtyY;4AnY4GMMRB3W$@0ui2E~KUf#@^QsT3|0 zqSh|QH*6EYHMPVsU7-z@aJav)7<0tWxAN}j;%o8avKW?|Hfv>-)fiK66B5pH^43vJIF!Kks8YIKj_iOtB*0mc?fxSA(a8Wcd zr;rWA_&0Mh+z+=we}gPhANCYDo><$z_^lDnbF7h3){a=bnvkvU;LUU@V~fjbAP9)F zbF9iCP~ksz+1smEs4^C5PR1#4p|wPOn(ONaCk_xs6@B+;PI7+I3D>HWHvna*^|=)x z>Wa*x0!xO&yui(XP4Bxf{O#@-2t`B!&;iqPptDn(1!aINd(B6rUX=KOLy{JQbBqL8 zz;CCtQ$BobuF0^DDFdDQ3N2mvp}{0q$C*cQrE3H#fEInrhyfMuv#wlKMa7q^bwkv+ z1lHFv`>Gy4LgcTS>HLEhe$N;mqwz+LcsT#hch9h|KTvMV zK3BCP70&)=$Iw#<^I7xtsB7#0K6y$~@wXaz%V9_F^8>6EI z(77;V3PNQLUz{SchEuwhTvTljI%jA^dN%!ltLQs*B(e8?z%9@Vdas_PLFhj`7^d6ZB{ zR>k+Am0`+d%;9OsND@-mlZ?w_4E^D1 z`NN(ld3BktJd%~Jg4*`7>H}javQDj~?CH6z-YV}@b|1=kkSiKJ1w63eKiBF69o2!C zYLe6r+_I1~k|tirL0(%#0byvMFadNllGdFK_%)~g=7 zjZJx-(8(uD;(5EcQ+e*l@BPz$sD`?wtCUUP1=$a7aPjMh>Up?Zyd`nFfU{N(w<{%` zCyb?hi-P^l(bWkK7o${rzSt%srMLc{8_WN$Enym73r6E^8lVw|uWoEU46i3hzz9wN zrd2LoTNojJ{@%pK!r8&i{vT5T+{|Bqb^Q_i^;`)5UzqpddN;4-|LwdF|2(F@rC`a* z-WVACmn&}OCy)*Jo2FiW!_FK2x#7ZJUN8S^U5qVH{x@D;;D%Z^^txgC4IwvN`O8=M zH)Ow|(hcozcylUW{hhi5>($LX46iQ#rYqb$geyqjgiUVv@rFNdcrzb`0_<;Ck>Z9o zf3+ySy9xW;@Mazf#nzkf+FvSNp9732J-MOs4IOWoaKq{wPTvsmm#+age11c-8;0Gm z@P>moJp4=L>p46yqAYwv-5dJdF#Cq>H{AG36`~t*-B9(0|Crna3ri*OCR}^N*&Cw% zQkD6JH+4qU;wBt%!{Qqb-|+Y^)vhO&!HAmZ4fSsbzG2P{n{POC!<+dv)Njs@I?vyD zb;TQ+-!SNgH|Oae^Ktxhj0E-5f`lylZ-##?13Ykb#{aba%U%CJS*{)PAHQIn(3bt5 z%J84c@L%sw{HHSfr!xGfGW_TE`Ja2^|A~9!&A12Zrvn+`-!ANd`P}dA>#v{x`5gEE myEM$hr!>a52iMnGjAUcf^V-0O8b&4lVPRoiKM^rr+y57}HBl}A From 48ac02a1a7d0cf5077c032abeb66c6c261458ed4 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sat, 3 Aug 2024 22:33:33 +0300 Subject: [PATCH 08/19] Update logo in demo document --- db/demo.zip | Bin 905246 -> 899815 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/db/demo.zip b/db/demo.zip index 696ac619f0a5912c93bab93c79e7be28dfc8fd8b..f3be60cef6d508fb66016166f8d01708e5036518 100644 GIT binary patch delta 80436 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 @)7_D+-a|!t25GUD zh?FUowQ`U>Jyo}Fzo{6{sQMtuKIM*{GT9;6$yLSLO){}=41}iw^K0A>T@Iov-&#`m zJz%|XWnH;p)kbeG(9E0I^{q^1yf=T@IQ00D_bSBSsQFHxjf<(qWKdU3g$yGgqk_rZ)L|ASezd<2E44H?! zdSIDY;3fb<1>VOFjLUel@weB_o87ro%qi^G@EQXLa=v(BdX`4 zM;D_Ftd23(jP?P7lZpT-QED6v^dNN5mB<&wV+C(&tI3WVF&MaaK{j)t;D3S}P0%+L zyMMsMfdxVSKU#VJWj#Nk;0e>%L7@RAD_48F)YR#JB}s(eSAKBOcO+-_6+g>zAE9{V zncC!+5`GS)xGDC|h%DCtQY8d-fMAbNA8ESY-$MkFDm^p}KZ1cQoPv}SKIg=yE(OEn zAEQR{;ti?`>`TsICG2ukKXWUzurM#wq)$n`K+Q4e7k)7-t9~PnZDQ4RDvkz*?hKOC z#rmarbg-qE7{!lNQJpWJsG6j$$D^qH6q>EfiTOpoTg6i>zg2$$Q8z#Oy;o? z?5>ZQ+RNlFnMQC?r9~a*k>&%Y;G6&Sis31kblX66vcaF*EMiW=nVGXu2^E9jPAwK=8mow(e?;^qW%u0{w z5kvpz6MOfG5GU`aVF1e#qY4PW1;43rm2A`QQSPGqpw}z59HpHYz6qhq3pH)|Qvdj` zwqbqOhD5+Wnp*$=t|e>GfinN^&}{q+`ybCCBK=1r_5U2c`{_VM{`W^s3M_qkoi`#8 zkeVtRKR|*J`t%7m;7#YOVWFZoxfS~smiAYuIKHo1;p<~&4bQD9Gz2o|&Y5Wj`q#kR zxkkuy8XZc*)tdt>jZ{I1TR={Wr(DbZR)rXBP9D2n)*2b5xIU>GQMXlOlq}a@uq5Ma zVb>C6_~bSboSkgiKPP8m3^)pe?oc^kz_s+)K;ryE*5=yI|HIc`M%A?~UBf8u?ry;$ zSa5fDcXxLSu!0lZA;I0<-90$L-5r7k2=FbEy`Qts+3&qcqovKo%AZlQs(SV6RihIA zpzw2xqoCqqmY<#0yYebtui|NtI54pQb^NvD5t1|hCUVkHtaJ>$(Ms(uEB3Qi;@yVR zL6VZme5PJ5`JwSB3U3uVBAMcGl}>E+ch9k|(l5c|z#&)|SXd-D#0a?b&4r2frd@_7 zQc)aq>0lRTQv$%rk-5hr;G#=;UR2gvj+57CfZ0<(XxFf?3Cc!`N}T6gtx%DZ5x=~K zT*Sq8ZMmXiy0no(qT#|%z&y$BEhB|8PaJ-1x;!7AR=Svd24X}ww?39jCk;Hn6Zj({ zGA+mi1OEvt4$^QwlX*kiAu{C({zujgIWNKmRFnN^B^CDKsDa>f#|!kEJKpv-r-lHn zyZ%?6_=oL)M2Ny4+d(J%u^n!T=X=n1Km$(N_r5tMZ*bD}a`*}oVklqFx}md5ooPNG z5eLPg3u74;s=iQ~Vr7FdD}f+>#(9T>?h~uDj3%-Z9KJDx3A3ni#a;XO`uB!8V-ama z0>USTYOvV`Sv%pFO7k)sZcdRUE-&x}Zui4F%c%r?1@ZL;9+=&RaGxuT_eucgTK`7v zJufG|2|;_~^nG<4Se(B5>h>xk5o>;{(?#^T;Z!Hb^|Q27-DRKUN(#w{%TH=e7M$)z z(7uO$!;V_I*;^#xN8};-$H%jWx^3V%G0fI%_MWF)VeY;wvy~}$l*VlGT{Y`w9_QB` z6i{gBHF0yN6n(IM<=<>%j%!UBNKGRX<6Wv^t7<-xdSYl?j*m%nL&d~5$YQQ+y5|K(d4 zATYqczhhyJ9O9ctA-(wwZVCe}6fj{w*+4(MC%(T6(r+xI)ifM^fr|wSzhe=^Th%QRQLgAAlzD7HSLi zKrdsN+pl@MVauO6QYjjDn%gGf9E%fIRx!x6;l3U@dnVxF>G_n=C0?I?yy=v~(GSKS>;0 z=G2WWyQIf?6c)*R#Ys)Y!3TW#s%P39j7(S5;BxG>7Q|#COXG5mcEzGTd%a4ae>VN% zso2q9X|J2g5fp!<_Z&Be!#)I}QJQR^*JP&y4fj(g2?_H4BUfJtuj+L?Vj0wkB(YHJ zz9iHGftnhP{JGNcdl(9_l<()=*8l;e*0mx74z@H_+ZlOu{Un7gDr&&7!-->hu3S)U=Pbjg-fVdvoM;KOrw z?icO1%EvDd6VM}44L&EuaXq^kkrJ;j={tkSM?S3sJfg#BW~iOY|9r1(3~;;F z&*Y{W5VhE6sCe09pD2gWY{D^y;}AT)i`)e9Nri^*az+WLegcD%z2ckrn1}nh9M5|E z5$O{^El_xX8Ci!Mv=)`0q@p&n@!{YUqc(Ryjoot919->HjF#}&T!;ExIR=upF~9t| zkdB;oDzBuG<1G^anq~RCJ5S5Z9|=k%a5xSxW<^aMWADg;9D^mu>p~m?0y)cxD*Zi6Ss zAOesC5rq!`8T}~Tb}BN@-y8H44zs{V*KN2>Pn?4GQLY0Bja8-H5d`&z^;}U9rD6i= z>qyE2=4m>u=9fm84_|v0Q{aCqd}nS^AMYw z4lNYwh!TW%yz>kLN!We7V|7SI5ArKeS!=QhUhz=@oES3Ri4$}TSPLdoPE6hr+e245 zuNXfg$;(X!;aywilF_ey9vca|zJsdO)R$#0hAY0$nqC#sjrA|e5s|XBay0J-@qs3( zzWC_dp3mvI5H_q5yYYYjb$(wxC_xtfBbvyN0V?5V&$%}wdI8)Dn+k2IpYA99Z# z@3Y`jKR0+6L_wor_9(%b^i@(emm=0)*&d~`SED;(3Uc%G>dSzK%qxBSmrU8{zEYo- zvb7(CbnE7SHZjW)x{B2S-}JeEHv)iIgf3%S0^@%p%vmVwnU2s*Ww2OT8?BAuhiwrjn<=S0meue`cR=F#-^jk>(Hw!7;JL5 zb)6P7mPQH6F3M1~IG8%kC8(6?`?Kq`(+blZ@i;fUr$Mh#%{}^@D9b7e8q%6s%zcxq zB&#y1z!4Ehr~z+w0LyYGQ;fJN@VyTdj+7tW(Ki+AiLp_QpbhfcK>}j|d*$_6X#^$a znZ&bV874>B-EEk*%ZMo$e+=0>?a_h_jqgeh`SQSf6MLG@E6cC!QO<%AFkHA)h!j{n zUqm?fILE(V2FuUvJtE+#cb;e*YaDNzXx%vM7&1wh(qMB8aN`S>G*K>bwTEqqjB>5> zn#vJ2>CUwQuZw14I-+N>(BjJkdZO4!nph>kk8$nCyG(=_|9W5ZjO0UmE!bH(4N_3Hbct{Rd#a{VFu_3bZNm3TzDTKc6)< zAcBLI{Nov;34BHEKhL3Zh!9P3h>%C@|M{#bQ4})8^&iilTOg6r{_%XP3Z>Bbf6rPe znSqGVO~vTYfu;ZXFf^-H(28Z z$O#JXPu2lcx71K%AB7WF7RVKYL%Kz;jLl!JUmLL*2p9aClxQnvNEbWh&7u%Wol(eY zr!DwRvmTYKv&HjxddEr-%hkTKN6HB^nl9l+5UQoFeMJ^SWcHslh9r_>#`Cg{rp@Ny zzWQ$B8a6TlfaJyLSlf>|fwC>b8S3~LR*ciD0BFBJ55nNLmOWL{G92cNEpo|N6K`X* zwdIzTh*Tn6j%C21c1Bd9fbL9w$T-;`BPPysxU1+u+E3wiw=gQOplK_I6zepj-j6Y`F?ir&WNxRrrax(H2wx zB<3aLL(_p`KJ=llXu7K>-`DbGl%)$Gk#^&DlXcJd_V%DuCj&kJ-yYz0`v0W>fMuf8 z?+P*StwMap47%0awl~k!8}CdzM;tv9?3dVFj(+uRcx z2CNM@rQ0$wQP(z#PinWz)U{4vlqFdOz4=n{Y&8>h(Q#v+hm)4NB=u-`T0GjR&iy1_ zaQj1^DD{{NB3Xe;3>21yzmCODZa{QOaJob9FJk@PUmJ=BbLcm{yxD4|kec<_-47q4vff#(BPB!W-{e6udPu(RZPHMcL>{-b;y!knQD%y~`BCfW2;|X}@t1@@x zvwfZ_cY#Q82zL@23-t+!sA-;p&oKXO$9KUf@%x~IO2qOcJN!Y)9E;M$FK{1gQ}xpR z_(d*cOkrvOFPjAB6h7g@HZymB;w~6~D01EY`pE^dk$v#!oQRAzmIme7;mM*Qn$A|jYsneBXmVLE3x)W0IydkzBslcP~ zA*sq#;)I)V&m+>yR6a8Xg+vHR;eMf+>LxHM&vmW4`BgUq;b9yaii34hiN5y8T_M&&QHf>MCUD!P$vqK4dA)mb zNt}aL#@Qk$IylRSKqv$@xRlb`;PkaK9@5HLS|ZXIvCvS^&6hoVR5OIND*70mj6L8L$#>6uQgC98cnh5zL z#%hIyl+=5Z6Ad>WU+1ZJ$N!f-iTeM`o@8k&M80uk@{d%j2vtxiwDzO&8gJ}L-`XGc zod@D+y7?S$0uMpQw%d<5&tGLWn%sj(#k2(&#dp(Tpbkcp~?8c7TkZ`2dby> zW1?X>P7JktLPq%;GJrQ@Mw}iM~y^i;soD*;kce<}j{z?+YU^ zm;#*p79M7rpFTUUeq91kl_RFkSphtMMT=Y-flUfcIv}#=ey*=gHOrIl>(xy!T|wFy zFw-K8ux9aiyQ zs8KG(KNXff+Triul@C~;BzR}4=x_v+wmc)n!3P5jmB1r9iAL764SHnhA- zpO+dQROe98o9UA`r^-V}B*ujxUBx9jIU}){DV6}Ac=A%le!b}Wo8j&_dcdP%iY$6$ zHCd77Zv_tZBdI|m;6gjQme-Zlzts4XEug5?ciNRKVLyx?HBN@!wwa%l$q;KyOC=#0 zv$k&363=~czvUdR6fYw8n%?jl<}p=>n+2x;jYn~cWj(Fv1|{++?BMcPPeEZ3mmX>H z7{1qC6m2?j0Ice$XE&|`FGy_1R2bcZ|BLmaX91U8M&Fk?31+5^2~z-ylXE(3UPj5f zI-DbJ_}u{h2EQrC*t;`c;OQg$oAmlE%mRix>J+=ow{VxpXW#cbj|hL)9k`tD8O3aM zMaGG!3>uavVTN^n8jaRle5k<{1bZu1FHaW`MVb}926?E<{ z0s+?hNhHQ05fYkF5s^jmn{5OwyUSB)RlRE(-JM~7jT(p;ZsLG;n>(`X1(uobCiP)7 zfDx$jdflqJA4i|u-VPfY6;kM@T~-sHuw)-}41pI06buIB!CHxWM*Tx&=?!h1Wh>T_ zoX!12$iRxZ2h#%oaC03sUw^S#mw`Yon;k!)(RJG|@^WwQ_<9Xwqw73Q&~y}c6ppuZ z_B;RfQRcjMlGGC+W!vQkKOzCTp`$oM5a zdh-d{Ud`gxUUJkPC6HbM4B)PC~DX&?ukiZw3513O> zLVo8IXbKgzr7xwGTCF;Zx^OHnDCr508`wPV7#yDw(fZapkS{=ANRl;=`$AASjA3Q&BWg*hlkfvkXQPpTvbtTvj z@Z#4@^VQT)z`1jpK+T6W7B|yyj5S+39nVLA~-66 zSCF{X_vC3s?$dj6G6Qkg^?_6E^8oO*JBnqigMftK(;S zow!?Hlu-FR-+Np!Uo!t-zhZ-DNe9kW);1Pao&Z-Q?#Mj2keUK;P7e1keSh)#^_Rn@ z&RGLIe};%$`hiUfDmWm{=SBlVQ=v#k$QLdiHMaMiwKB81!upA;7(hP0Szumq_}D-? zsFrt@1dUsawVDfll^Y)m)3u#`*T-c4_0o9%HRLfjGaGv!^e>rsXQDog!k9uhaseP% z%R6PYH09uvo zf6&)}Jr-gb*YNKMB_NFuw&Iw~wUl2#IGs~3KHBSdG3L@PW!~btlBE2@6f4K_L^F9f z+Zmpp1mAbt_o{@r0#2IsQP$JSdQyAOZ9r4(Mi^2@W%G-(Z0o*=l9=pfd~Bdd9c}=D zn#A5TF5%B(CQU$pswv-jlz!Fh&@AW)Z_w5`5*RHMz%uK8?NbcUZ$1;2g5jXu?H;O9 zX4F5|W`d=ls8+kpD!L8Nw9VRQA)PdhS29%k>IzvT@xb&P`i=Q1+ANQI#;(cAf4(a1 z`Y_5vsStPl&mfiQzTZLNvGiAv(f~%OMM;j8ES+Tb?Hkn>%fCt!QLIl|9|wJ`I+!T; zV1GzGQbjI@?pJ-Ad75kt2Pi*X|KX3qr3$}t0M8%f|95aANC6%*d zuz!3X`idwN7|Hd~?q+I_YIasZ>{2*B={wqppGV{1HxHX*C&dmVLPTE79AE{ z(Oeb2PE4hk3ygl(rp*mU!fOxLg#l$4Wy$!@$|LNkm76hq3%*T&_NHf=FjiSwTEZsC z7DT$kmm}QaPT*!H!vb*C2|~~wPKM1d7vK;(l!vRucJRa9t$82`<`kY_1e#ooV`tPa zrdpq^0796ki#X1P_MR;Z0rA-`l(XLpqpe`0T_~0cx_0D>TdoL+_O8uO1=~+z1!++lAT|{MLG6DcKStDAzb5qL zh&0Werc)C`9<_o;h!K>jSc=0gno)Ixyfrt0=%0c@P08GfSJsoA1^<&)Vv)p|9Fc@A z{)1RDObsjArqDV*IVxqr-c1h)6+U}hju#|ixJV!o>h+iW{~wJ#$3j@W zKh@fFA*>m|VTb+g-9_-ZgLc+&J)@rj8?dhtM1DVI!i+YAW)!X}B^~~F@+7(BpJ9q_ zg**VpPU1{-;1uEzGSe9y<<?U$ZoJ>Wl4jB!(jDd)QSbc$VEQ&zABN?c6 zs4RA64~KM}qMe7P=wL8QfVP=Yml!ukmu7cv?gDVKEN2c!aFq)aLWLh&0^;x&A z@jaP+Yed+pZQmrpSkkZx1vH)Z0BXbtqhhy*(+(S^_3B1ckh9#>@PC;sUKD=8_<4@z zg@+*@Wx*kRuZoAXRm~0UNhvw__>!F6+4UoOYYq3~&OyD`*0EhK7t%iGmov-CIx!^1 z%>}@Fhn4lZPKT_()X*;xUt@FvbVKBf*(-UUXIrSRv5mBzF4eMvQh9C4+HFR70=+9F zTYBQJ-rd?pM*8RGX~IKpv3=)Oq$Q5DMM*+{*QD`4U3d^Ym(=CrLDLayNX0rMO^u6Q z492INTvplBvO2VrG5D%pO)LgEpIVzNp0@;`CwEw$fHBcU)(5Ra|iBb6h?k5_bByVkfSW1+Lei_n35`otm8wrl}n(cj?dymmY=Rtj! z0a+KB_M;5G2spH5!9nfGSGLS@RRT9;wR&ARc`9?s8CdKoaT=P5na_-I=eN189gfZb zu7+C|74@l@jNXlpKfrI+1X%@y4q>2`h2w;bP0CezjGPT!)fx)2+EPt|$d#~iY@8D< zHbZuxC|amfjugw=^g9a#gh0%Ac1oEa1hx~CWK<=7P&1umjxu0(ovAjIj{*l&oJ~-~ z`d$*(R5R4$Wpy4;p_H}d+)yU4`qv-;%pE}r*xkxYk*>9xTyq5ICi1mkLnM1yZ+Cy0 z`!5zjs??^KX$>uB#8jftNf4?S(`|Ko!5>9g{ z(eM>5RQUiO@^J(*Kz;)*OS$MZ41*thF4}sqVW)v0u6=lTjm1nK&URb+YE)O}ap3ZZ zycyA{s=H&fV`6wmi>vu4u~AEUHj2YfS3N|NQOCJc z=UOQ_<8#K)-HT&E@=pQQ#b^5$g|s={L)lIGMTDugSPu|~uNzE$vp0x+WwTYXovGgJ zP9NIwc=?2(A3mHQ5lbJz-w3>c=ww^+y$axslVM2zqR@USKgp0uM@~q5fyaE>bai?< z8=w-#FQv6=?$d&Cz}`GI(_&=|iiGR`e6*0~bLk<@w8X_;bFK6A<9UNMVV)It1sI)2mZUoG#^WY!*o%X@OYL;|!=SO>9l(<1+|pu-M)V?| z-p|5^AA5+s_7Vu^ZSe6nhkZJ=hUFn{rzs;;+gu!iB37=k0IpQq zVYtc2jcW_6nZsAdb7a^F9Uzjv%hgU#QH}WQO_WL~p2by_0Dt{dAc7z)8xSQto(n*b z_}S`gkfvO8i$WF&ThQBr!xDY#+V)Gkqe@?8S{&h6mXmk&3a6bI1oG>TImLHr{XfeR z4n#7CzIgEfnV+@Vv1?_cmdfr*t~|YyS1Xa+|JX9p)6@yI#g$o>*7~E^x0gb)Upob4 zzk)(?{S8sDK;+2KyY(J;qdiqxNpn|y!W#U^ucTG5UVxTGD5O$t7R`LKCm!!23|iTnK5~v_bl*7J^Fghm6EPg{)mOg?rqM`iK`xR87Pn zSMa^9@Ud}*3z1YMZU&08;l)0_`+T2(Y-o*+pnXoEO`Dt-$99VaAXo}`aID^CQ*xb& zW``VOaeBNFr0gJeSvZ6RYpu1pu!vy5B5p7Ypisn#g|;YPQfo)9=sZRGRBb;+L%joL zILrCd)}*L~6K#zl%n84Bq*W=jNBs+*WW+kQt>&3xHTvyUd$zv3dc>9SFyHmsmB;*S zu*zSP9p<>vfJ-wo?Y4sTd6h6$$|UK7{n+b8$)+-aE|=+v;l)(v152Nx!ru7o*S%-# z(GI2lndjWR66s5Mtkad41FB8Oy|NL%1`2TIJT<3Nw|RG;p}w!1HhG6!$#+>KLtDHv zr1dX(D843o1{Blm339g_WXbo)F&-YmgE!}%krv-yHBI-xHYP$6%_zG%b@N{jl&3|R zU}ZkplW}~K@)B;R)k9?nVT9NSet}JwQ=oL{(PXA z$5r6ReW$}r@Yn$YqPC%QuIx0fO)Dj#L{XK!VN{LV7lFrS7k); z&-#`8m>h^D#bm1u+S}`EqP1X4A z$evajLJ9{|h+7ot)0!uh4{iqx`w;%`?oX*6E5PiFKxPIxFX0d77s$60gp5DA@J~SgB2m-)dKQkd zp$sW}=ezM96p|*f8Yy-b3wea9qk&cltcVKnps-O=N(snENK9(yZllS!elo>rN7b{M z>m{#5f%<6<$I{A;1|OmlngLn_0P%^hb=-9AFkfJAKIsJ}Ed~M6G1xa{xZO=c{TD={ANu^rYG3Ar*$Vy7PCg?9IW?a6DY1y6wtTpF-!kS0gE|mPMS7MPF`ibjm=w!)PzD{%G&Ulp-q%LN8dhm?>y#gT=R$ zdH9`@U!uRL_+UKx(s~-wXlln08?Uex0d;=@-IW`7ci8_kX(gbB0(pmdAkg@&*KJ5* zwm$*B{`cttmoo*?aTS4U71-44FWHi=1>&^`pPl~1IT|X4uk3QWIiH~8Uk|b{=(QRs zEr>Nhe$C+pOEZTeNqw3l6U{GNRMFwbFes4cv<>gs%(?f6i|u@Oio=H^)~dvb^La0E zHSh=l*JzA7c)K;HG(XfPG(vmbkd*5$H8FXMNJ!)62+pd+i4qpTY2ms) zLsXOa+hz{$4ta-@?aFJEL1+&YMdqKi0xJ&i{O7#hvZsoe-LchF5<|2tk}D1;G>(v@ zGF8F?PTbL}9BqZ1$TW~{v>qq{(|x8Qeh$myzMX5beI`wKQ*EgtSFx;JG30`1WJvKL z9hjWGlmDfbAiUzUVxKv?8&VE4xV+RaT}(v$Ua&2Grq}~3qOv8C+_;UNf7SEf@`-}m zUQb#9RN{Oe4FUx17 z`Nr}Af042}_Z!htT*VANDq z<&ru=6Z-fVAm@f>k8n5 zh*`YK`Ei(nD6vY~8DoaAwGPAns(M^ibylvJPf-%H6Hoh!*lVe(#mRek<(NLJo1A$Z zX1rOXz`Nn)m!f{sA7k+5zn{Ek6xu6ZW3o zi#USwRHK_7G^2!_Frh(xp{a2x`I%X?wS3p+D@#bzbyW`!N7OIkG{$3CZzG~9+FCIB zW%z$`=;go#Dr2mzL}ff4w0D5?-{qA@%(p2`pn*L9MFak&BuWX^M#OqE2g~oY|KA-U zcx09@gY;Nd;b`E%v@gul18jCXhrPazUHptyjmGcNr%uw?L$Pg|T!F$>JtLts&5LQL z>%8f}%ofU12s#kK*D7m8j3mvos6CAwK>x0(8=)ZPpW2OG0u^J<2H^$w5pxo~6BXTp+d(nuRYB!s z;cm?&j*herf{=@FI~zvd)PjUkzI; zJ#a+2Iu;QnB{~if7AQahhxk)E;imt$yvyjnzsk{+zX+=h`mcW8`~UkI6hPg`#K_gk z!T!(4N#Z{xVOu~+*oRZAsE=6#mW@OY`*8kh^607vGIW(RgXUm^-N!r(@ffcTw0abM!ES4s|}JRY{{?;Z@7 z%oK7TY?L8r;!TxGPv31pbjk166}WOKkj|v4(q`yB1raO}!%xJmgm;G)q7HLch2Na~ z1(Dxo2-q`WH^dzRQg*O^<2jL!3#+50&Gxx!tCY{qoxd}Qj*glwBhZR@|HgBImcNyi zFe%w9u&6*__s<^q%$jMgp4-Ow>A2ck51i~z51h)EmYn{#c7eD*T)J+9XWf#~3 zM}yU@%x;i`y*R}1z0xTQKtuPN_p~}r<{Uc-uXa8ZlTrTMUpK*w2Td%i0VE@a_YIkr z#)ZT+AZ@0}SCt*6Xhi`j`P#e`K5dwlQIG6R?wRraV&YRT2xZdvmU`n$e~Q^KZ97*D z@w|Eg!AY30K@cPQ%H?W3<_ixT(}vR`;MfN}hoN0>k)0d`l*-w;O!1mXCptU2Z;Gm@ zg3(xk515Z|d!SEW0GP$khPu;=mXl88t)ZXFFS;*wnkP5GO4I0GSA3b45y@ z^B>*YWR54sx~fw@!eg(af?xY0f?x5EBfJCjQ=$JBoXmThv?m$>JFtO{9PPNjJWQNA zy4lIk!SL+=ut#k_uvi0uCR_YhQIjIL221&mkoGp=QQAa^Xa6y9ttd8?f=sTgzuWVv zU`n1Tn@t(%?iKKePP{#+e6m3I$pYA%&^{|0z^MVeC)z0YmSF)UQ*HNJ!-k>TOFipQFPCh_KB9=p#YjlfieF z^O^8BWa1$2L2qZ=C^TDD0d+kk3_1=;O$*gef5O{R4o$Qm@RY&+o#h>YlWr+f>#)dw z%EuH4;NaT^EDpq5KuZBuL2pk;Dd7o-#7*WKu==2XzBarG%kl@9y&-Sle}_yV*?PkQ z>UzMzL>k@g(BF~np11&4 zCKK-x-j+6lY*Jk)vig1NBa#A|{v=j?MDS$5?FwxscSx-^p?L#O26j#y-MaAHOk}OJ zC!^d6HBu&4J08P&%R0xgfftUZgacrxRDmV|9b745S}?Kgos@6I&JQYWa}aHy)=L^& zU4dM_3O8mSgCnI36Gc)(LYGAFD3(g=Cn+&VbY;uxTf4-p9JOC^ObUQ68eOLhQRH}Uviq%_|Pt+rVc1kGDpseRccBnm$G!Rm20X&?& zMC_Jqr5HpM3-02Pn`ya>A~y7`LXgwLxgpUhc_+*_2Q;yY>+;Q7ajIc>-bNgYKPRpx zJjhvvY{vP^iEKg|KY;s_L(h(;DI>wkE_Blu`S4{6TzdI?eINctJZ=cEp|_beRBkr> z#38({JQ?17f!x_Uyg;{G+A>sl;NGTB4e5PISI^%)ylFoMZKF;1nE6p_9excdcaPIS z#MNemW2+nldaW7&8t$MwUa-BkFd`k2gw|MB(Q-WHC{kVy6)z56rM(fyc%=4->)!6* z<(#a-&soX;zAGA9!l4{+!IVWcW^-7eybif>e(0m6KL-f^-WE+izcy*GM`*n+54=i* zcA}=8_*xcj(6HCA->_Gh!b8I<(=IP&iT>p#x@{)gjJpy*O&faAHi2sKNeoszqeg}#i{&o(i zl+DEd>(gqi*#PHS0Fwqzhi32T@2=*NhNh6Xq1L#m3qF1b_pNCdjgQ;Sf4J~aKJ_cN zBNORvZOb~B@t~rx(WSe_1$nN8^4eRdx1DyP#$8c~OVFzo6m zNfHs8swmd2D|dV+oesPr5QZXs)7f4Iz~Iz^gDI6m)Sa!%a^j9=7by7^FYtsyCf@ZG zJ~zMKeYIg5tH(*@<4|}sJ`2xix+7Z7cJyQhs`AYlZ}pXoJ$`ioY6g1g#0=lUPpkHt8p)3#?*EwgZ8O z)o8rah4Oq!>oh+!6Lr4L4HK0K<>_=q$~+JG*C+{=devHT2;JC%Xs;wx9~94sjBUwxDlfs$U(tRQ zoJaN6+}zE%{GdpXHGnnA=(3Hij0v|V*G$jKnEk$+y@jPN38@Tgja-wvQwjKF&ydIi z%tOt+Y!`d=hE!@Fbvq1Bw5gM2UVqTQw7_WDv58@SnYYP#lt>O$;G8IG4pyI)hWiB( z*6?xK4K0GWR92H{KFgMgxb2mS(ZOD8{ZV1jQ#ejVV02A1%fWtY(h3Z_TF8WEUlaN~ zxb$WotLb_4yu7cG1Uj5F!w--vUFPr59P1-Ci2`8g!_xGDrARAStKTAAqGnx*NI2j+ zqe=usD_Y*aTVBZ;Sc&#vmDyoz)wCpMg2MvkhT{U`q~<62rFi4NsdvZojidY(r)n6x zf0jk&o^cDe!{qrj5b#E=jc&LhECJnu@~@RLe*ZfC^3V6_mM;1h6liMeHR($fLYmm z=QQsvvFUt_#r8$J4@w6m?>a6=MA%HsIw{zj8CAU;jQZyyZFwH6F4MlST;jedR~ykgpq19}GK?lUBt-;`UgtH_O}o z)@LnOtLIA-tviYBHVi?=x10U72x=^v77vJi@P=!sI&icGZKB0Td}g3{qUxo2V7+2b zo}OBLbO)?i*oz&mv6aoeh$AR9C&!l~6~tuxa(Yr(FE;H*bUh^KC-1CM3M8=CrL?r- zdIjF3P79sI@v5dT<)(QBJI%tX7B;0?vB2a@QKs9ZP6!h~h1Nss+TH?Or+8?}Z>6GJ zV*rINW7jYE4chUuuQ^1GL=pW;?yO(hXm0n{NiVA!LWlF{@mN?HuItVzzquRMx$65; z;303CHKacw~{jnv#%m5c5rfq*;a8;JdzD zHK~i4ypKDin$;-n(hW0BEgzdtnI%3BE`@-rppH#uY_eL~IWvD8g`t5OkRLFl*KM^) zMA|Qv1)-0`nPDrap!k5sPBo1;QzXvXnpqa`xI(wz${;4o9@Pe{aNGc5xtS4NJFto* zU8jYEE1(t|nsZ+zda((OUD#8w;8pcu=Rm<%4ht}R z-B@*78ic3Y@d09vS5G>T`SHE@{;6Fz9n*88`u73;D|XcvXl!zk-`yHgUnJS9P*rq3 zj$Tfu>@%@V#5X4>7-K5e3WYR?fh03|D0qnV_<{u>9OSVGjg1Kax?W_c-;psVk{NIe z-%WoJtTYY(AjHo{kn1wn2-luvUK;P6(O*sLh(58y^u44&wmfk>W4jo|t#95>w<3u8H!Qa8ZX3p!> zFdKSX3gh$Ge#^=opn$6SXk7$tjK&x%InwmC4d+ETc-NF=xR90Vx@C|qywtmI@e51j zT_*h(DO?hik#XKv3;qIlh32!CO;tlI?HQFc;-SU1{dLa7%An<0-S2Ak8Y(9H3nrAv zj{Bqs9uSo(`|O4h*9H=@tF|)sADb(Ww388=L~9i}slPaN1L6(!mh&uX>JKWph~UuqG_IT>cG{p zCrk4O#yh-Q^36bQ5eN#RRU^IaH2t*19i@wabAT`XUALh95x9GEp8rr1kdA0ku?M=) zo2tu3=9FD12uPvpFOSom(6fOc&KBjIZZ4(*-LFPp{Q+-YzWYcdVR(X{*K$&PUmQ6wl`XmjiFX^iVK@jMb1&dm{*j zCm;{4+BBtcE2unD(Q~(-ZSdqU-@R* z6H4SOs6Q*HCto1;MehW+=4R}t-5aEi@sqYtI=w2O_=T0vO>2zWA^x^Zf$0+)Z^eaBDhN$H@CLNQYSzI@`LxoU4NuS?QkmN&3d6D7g)3k`g(r_HycilOI% zsE{kHtgw$-fH5axwILkokq+2xeyD>Z@sxH{Ekkwtt?qyWsX-8j=Qp zq4^~kKdr$`jt0iWMg}Oyrp8GG)?~UBt{4#X69w!$n&nq(-|Q#e8%y%q!D*Z$>r$Kx z;-U6>I}cxE$ESOH8Hh0w%T%B3Uv~4=o}Hp@cr`FXm`IAFM^TKC5p*kj1WY_JcriW= zkqjCQ<__*S$9idsOMD<&joLf2u#j$!h`M45WOP4hM7 zRb*(Q=V(6TrS6daUSvjc1c1A+)2+5fWTw4RKcUPfa!Y$*P3aIXxD}?$H%T_iJDoFe zF^YBubELd=N3GNcyEkKYUgF|p1+})iJf(CaB?oMzCF8>7B-`?MT&wq2S z&s|Sd_3ED0RjX?0vm?1eGXpm&)(g|7d5ODSQ*K5epPa$W&%(#NFrRK6G4Lz`z4N11nYih|l8a-;3lw7XlIZ2e^0g!;w2F?aA z{)MM1`{I|W9jD*DXFmHldh2B;Cra6L2^z}>JKQF>(y>8P#bC3Z@ueq)%ZSwRPzZM_ zdDxFFfoGbH-111ZN%}$&x_@uJt11rDo45=Bb1f=~+L>>yN45vh7 z1mF=A8)9+Irv^wA0F5)7e(Iy-^ttlVCYfBj2GUHB4t^vg%_KP%xR3Pw*w$mU9Y)WE zfr*m4QC2g}O(-73w39j5^L?2uL;WDdNPCf5$b=`0&_8pdb}aW$M4A3qe&UZRNh(VN z&I0+EgSVWJ5&jHo{Yz-W$6u<`4)Siff>z$?gp4$ce6UVBTae!w*Rt>rY8d6fKs+j4tCG1SCcDG5ky*QRo1Zn?&iHzUhFN`WPx2a z>Edk;`5_V3backwbXw&66`xGxcO-cTX7`i%F~I6rMQcC&WeD0kJEP?Pn>*INL^)q>RAG^5f+p+bz3 z#57x{$4Ml5I|YsU_ZJ z(x+LELiY>i=dY`>x}1~BjZye5?IOP|L))t_Y8ba8Oir{0r83pGr5|KvXO1{{OR(yp@XJ-wl`76(X~P>Wn1qb?HZ?(gZ06^f`slZP7dG)Mc24WTa6Ix1a>J(9s(uD;^dHJK$V!L~ssZi9!-{ zOIL6eLcijpL^BmBnEz8OU-VmC+Qy4L45iBa}`W&zOJ+Cj+4aD_u$+%+d=@L5R+F3vWK`hi-HkLd63gleo+Y7 zY49beuqe{h#tWK?sU<5%U?QnZqd9m&*pcOv4*J8oeA!Ajgz@BUzA=q*!D}NLh3#e- z`?J7GKM-lwjHc_JP+;2{>2-78O^<(SJyd&iF#_l~Q)l6Gxy9}t5!(&&C=xD0g$k2I zs?q_5P==CHv69*-uaU2#6xWSMaX%n|?U$5s_(u=9q!DG%eAWKUXtXApu0f81IFpj% zEa#Th=@0Tel=3~<&lZ)bL1Eh%cjI3gPgN$fv+vZlUV)s7b2QqM? zxqmZ-M6}z*GsY2Ak<6bCKIb_0U8yItBi01I(b)Wn`hn9?YJy?yO-{_!C&#U_Z}U}; zZ7g)tSyHchG7@|tEMVCj*ceP%t<`&`)PW4sjaa=r^2c}C3`Mdfa&HxEA~H8gX9z_y zs~QVd6)DDlj3##WeE1AotWrn^TiJx_ljFT`U|q3m(WIL*5u(2rdp%8<3A9MnQQK?< zsch-&8dJ%W3N7 zgl&W?bmtKjwIcXyD+cDpL_J75@+AF!-lwc6FDpJNU`!|$3fBFXdmK}-o&s;v{oqz? znE;1#C&TKr!-^`9!0C8%`7Zht9lS{K;Xq&9LqCBd>g8WbwEugX2Z6N?G7xw_K>@ve zgnz*hNF90h;K4k1SUGt43kx)SLu!irf{ofCzdVt0&R z;Al%N@XDae@NGDKh2K(b7FsDfurpXtB80fFqxhrID|FWjN=>Yn0i!T}Ve8Ny19m5SW9v9oh;px;S)_C7$r zKi<^g5=r;BWfI2s2x{uF{ppPjmkj9P&jaMAE7CYr>LC#eIzT8LX54Lx27He1)`(bI zK6>XZ0n7>QF`Cg|%V^*k?E|I*P=^u|bJaS`RhtkU;M6;9p*hZ{I`TBe!kM9$!vgV> zsVmAyHYPzEPRcRFnBkJP=I{c3eUU2j9A3%F@LG-hjTpuEh=tNuzAzrmff?`~riixR zVkg6wVcQ!wP7pXH1CA|r|HA%2-(WgRQFbjUnZ+b$+2vd&_^apP` zbN_&U0fi$zAERETE+-@cA+S9JJafUgFR+*6!q(^)O49qv?z>qST02>B%n8(0c(W|y z;7wv#am_!sDWx|E#xKuJUjB^2t<>aa8Lio?Q+oUk?%KRrH1a~&G-}2epXuG64ZPo# zd1SK|bC=+vtNqSkeC^BcTls|+1(4>p;mk zJc&KBzUsSEf-zY)AdyBEwZ2nI)O@i7HEYJZDQh@OaM@LhoFERq!2TmxHyd5V9hICU zj5iSp*YHS(XEpbuMb@4;m{!eDCZo4xxVjOJFqN7M!@ubDQY52hIrqgKQuvjd1qP2b&+` zwkJ*8n}6~B!eiazaNF7Z=v*CcaZvk1y}1TI$mT7il$1K04(R}aj6Qx^GDQ%2?>ni- zY|G8QgI>zbbUMyD&t7ZfNdrnub10>f-kBCmeEsQ4@e%v31mJI&kDr1B;wJda(3Mhm zXoe@gc^<{7B&eDtjax?ZOUd2e*IuEgdh*Z0C%xSl@ z7wL!U(7i&wqB}=8HoOX0sTl?Oq#UYlkLzp|G!4j>6Rg@kyJ*YYJSJqp6L9UH6Ywbw z{mHiQBvc8K0a)Nl=0ks>hg!C2;f|^y>cSTS+b>Moy!F1|I5T0SMAYu|pzPwfrSJ`; zTPs;&4<%Evkl>KDMiNW4XVdkGzsL8kr2Cp3dRxif3#moROFBK<>-oU$j;Lu+IUIpd z(C#*z`8i<>_IECK!sj4~Uxr>BM1q=K(mSbISyfAn!dk#tDA&o);vVCYXzysGB0bYE z#jd{(n~$L}`0xn9(cke;UGTyYvoPVjoq|i#kFHVI3a1iiN|u-p?|gt}L$2B?_BiS3 z9>_a0-`8}W%mIqSIw zKsTQqZ*bFlO+evD5ERjmQJ6tTks|TfbHEByZn-lgy}nUPFb|a?ob*mZ3pl%F(b}BQ zPZx;Yb3=&t>citnEXDxHek1SFDD5T2)BEDh9Ig-qRP)49?hZ4+OA|zZOees}vcB^- zsC^?LD2sw@CN~x-&}t@kmHHMyKA|=F7UAA_o9?F~rRm)&s*%dn`5EIDf=w9IWy!{xcj2d_aB=j&Es?NO=-Z;;CA+-VWNTC>C#2-8F3T4yF0jkkj?;+Qctj z4K2G!lE{6Z?Ua;s-Qrtv4LlLdFD#!zeAU7dAdGCKHzf&)K$$AhpOa93A_9i4Q8Xg@ zTa%AFB(pMbl(}v?Muo9z0;c=55&WF_cy@>k*OF6(_4a)O{V=5ZBLNg*<-g13uPC+&3)UolS|`DG$6qHMVH zcyRFFUgiW(5@N(3^G9}J%J9vra4X!4RhE7AXkE zd!z(waLr4*uz6TtKbvrC?7o*DYS)IE;WR*inaP^>n+9fX9V+ts zR1hZ5)c%1bl-8fIvU)gB#do#7>h)npD~+T64Gf!^76oD$Yf}4sL;xIXtoK*lb;2AJ zp!IKNsfDlinQ9A=Gg4c9@GXnpksh$~|AvviO~%vL5z9{bBfDfZ&n7S$AtPPyBR^A? zdNQKgZ{+Px3d$V}$3M&oZaa{QC{{kiIjPCs1$e&sq()!$K!FEbzcv@CH0Pi%o$$O= zgr$poI!Ux%?J{m6uTptH-J#sP`kMvqv3)c0$sipJRG&c9nvM8?h781f4!rtiJuN^3 z7Ck!uD0kYR1&@G^@MI}y07qI!syv%&IRE_hf7c+O{Z}XnIDRqrdBhVcRAw#$Y6F%9 z!dtlK#-~{Azl|Vk2Lw2f`zM6fXVUx*2;`X0W1=Gw7(uZ?2n8=a!3grNpD)2ZurKBd z{$TK+)<^`HhT$j#L-_x=^D!L&12RiS(0*=v8VGK~X+TOr;Q6oDzy%`oiEkRu;gZOQX+qsg%Zf$*T?&SAlvv887VljZ^aXr$^w4 z1LA#?*l6EeE;)Lnx_7W6Cw&mTef8?hKg>|6n@YB@o5WOut~i=?Y{YgzGe9X-VdICr z)<)7Ka&V2x#H0e^2R0G^mgB_ls;9WeaaIulC5H4gz*8(?-vT3&BEg7pWg*O*Nt$<3 z8PUomLT4&}v`Qxp`%vB@uqEW2mSq#j)NDge=pZ7%P0jp@LFAWOD4sktGsTt_=9C%u zu$ujg1=rM=dz$19rW5jQK&qRB;~zBRrSIHlOSy6$%wVMLutgW{d6z2GO4KT>YRq{V zd!eN;YhaIaRufnWBoMXaRdkj2(yq&ezWdBp!{O ziO$59h!l8se{@5zy@vkA!?0_}Moq;(WO>~eGKp&ffQN9QbKtgZRN_F*?kezYAQC|#q_|P;$L&F1IgM4`_ zy9o?pu|2f#qGq2;S*9t#I&>LNMD*F5^rUBzS}36?sJ^3iYojndlr1=Y96iIATNbcn zyi@0;J-DpbYSpPT^?d(r_kzjm;?S=>?Y%1jFCZD)YU&ZMAbjfkpJ{nn?3A))itSoZ znNM-uqm?JzK>>yT1$7d`uNZT&8j^$DeG&odfQBa+JNyCskRxdz=G1t+F>au}a}O6Y zcKm6}_~)7F3C2z@4}kt`DQZ@GXS>dfvVR{E@VnPnIWI~@$5GY$ zl@xJl(VtHSF=)MYeok)vs+Upj{mmORvj}UQRkYZ!&`}Gx!}NKST}q+se~?J{^Qf$E zy!N%wp!3FF$I#99(zOoo3nMeA&L-^USv4DHYEf^H{RzMyQx(xxi+kgTuiw*Q4m`~q zRj9)WKx$%lWl_c2_@yu^swm~Ir8?`O*J&0!q6)VjM+pll^jI?TyHSLgPeN7$NyyK) z(Us#z)ip{nu=W7Y-`Y%}klwl7tGVmjidUs|%5<~RPi+NQk;3Zx?-xXTh1fwvUruI8 z#7*6Ad?vXcvz_POijjy>Xws-!#{gF(`6E)hhqJa%FvRhw)Fg86JA3eYV56U zS^GU8+n?huqm)C%+>|)6n?U(IDzsR0`2PuF)ZW2gF~5>Lmf2BW(Z4b{USbGc4A952 zs%a&=fBM*NtPoy5z^5MCe^%&dgG78mBYcEJ6a<6w{&%6#?+t|ntY6D!1WzawZI|Eq z(6P}X#S5Me0v`m#$qQ<6?rh1S`SM_N^Vk`nGO@aUGeXk2b&Fgu66a~XRybW-nd2ao zHb}c>`0eU%#eon7?~C zAD`;vJe=EugZ%6wE3jYli?AyKjLb_y7tZ~2*v$o5b9v75Th5a_R7Z&E`% zl^0=C`gQ$JxWy@h903qgwOwp&Sm-Wv@1b~3xJ=~L&V&e{BH-tPt?K*j{Xf1vn~V8g z`Vy6m=RlYeIQt&Bb^h5F8Ou!4=8%|AK5arTJd5}v#!9%jDN6?1ItIxLFa(KR#}b7_HubJ`;-0= zo&BF~9enT)PysX|<#TBE(>~Xd3xEY_L^u8Ob^}H+p#?|K{|}z> z=4XhiJxH^~&rAwj%#&(^k^4S04Skwls^_4KM^SJnWCjOsx56cahcVQ)T=fStWPRv` z!O8my)jCppuV9WU!p|L`6=!oyrtt&>MB| zPLSmym^&d#hk>ax*-FrPt3$!1ZSX6>^H6IqLb1CJec0dK$ zqEY^+nR3QZ8u99#pm9Wlsvim-V8D^V@t_T+!I;}n=VLo%*O}+Tn`SWS&EKS;<^SdX zc?wemCnget_zJ)>@PD({WEy4*sac5qUF=-Qbu^z8xb*IaOay?B5KGKkx>*-t}@PxkBB_> zxxN_pWfl66klUs4y`R-BZt*C12aRNMf-+v(#c554tm}!dWa*ANCj=*r%nG>fW4pCz znH31?v3#Eyo2YydQ@ap^-Ue^*`qNJin26&aPiZ9l&+arE(uS(&!xBHJXvG%Zk%4Tp z2HLBN?QGeofOr2<&eaG!`9Fg54s$)|9?DHlW~`gOrH-dRKBZoNXFukC2j=bJKY9D) z?+5c14wM3qi10VY!uF{u9BD zf7~YiQ2nW_sBRupP^V5jONnp*3!KK=@tR^7xt2+9w(i$gEG~Q`BKPgDK2C%N*kd`0 zxs4s|lJvtvh>62dsP%A48XI7cmgI7X$b=d}>QEtaU^m6Vrx8s}wNGh(lmeOgs?i~Q z{2!$YZuSEr-9HfFR>Mh0(e&b5A=`XPs3%_X%*ju}{)l~mdw-yMrakp*lToMZmi`{c>nUF<_t@w`75ov1Uj)y;tAPAl z@PM+Q5z#?M$cP9H^oWSrP|uPDoc}@ixA8@__~4F6)4==&5zqRmy8--LT;X}-(@JTZ zLqh-WEK)FjoG8$Co#d~rPn>^RyiqkiZDMI&gwb6~ZvU$ggmpXT?EW+pr*nL*g)gP? zyE7uYl|HCE;~X%63$wJ;Os88So}s^1_F1PY$1y)}sGKx3uz0_4XVN8twUB4P80t?h zUV^HKgsL(>EK_EwVF33fyJhiIO_bWjs|crfH-4+r7$6Oel*BFFTLjeZL?+9lZAu<6 zT3mT})6GNS2L*BQIwNG6hOE~-Aw|L>%f5X*@ zAC*{hPpOdkI(TXem$&W&by^xO(-5B88Ai(F!Q}>1Am)WIpr!U*M)%CHo^z#lNUrBr zkGshv4gkOTEZWs8xxqoTznusgo@sgff<66c3DMdFVOhKKwataf>CN?AQM#%bgbmbr z!?X{<`o`R=7=mV@ugXj^TT89*V{{2W%L{qP9}N7&W%(#R{Lbu7+ngA#9y(>uYa8j7 zVU|1(UAP;?s34mE^bJViaHX@)?w5ncPWq2+&h0AAKPH=L8n1`O`WKM5v_6G}XaTKb2*B(Pe37O9=`Ygw z7cWV$!Rq?}7T`tYoy7v!fm!?Cr@8-EHva#rZ2W(49PH9y29dM_{*g8Bd5`qeK?i30 z|EtdOe^H&~KbQ=zK)?qYB>=qn?@gr}4`2#DF|ItzYgSXE8nCo$S`oI zQ2FJ{m=RKwSPx9Xo@Y~*D2->rEgxaMS~B+;MAS6OisbmezA{@3bR)B4#ucC`e}1{{esT{capL!R=euc@&kYDf?>V zhS{0~aSE1d$K|tbs*> z>Id1o*|Uh`7RG4#l0Lcnmj4sy6qmc-DMgS1iD2HIbjg{~li^_MuBZp`jmgZvjJU}_ z9xKbB5HL%IYtwKOMIeIaP8Y*au$WmZm#H`&<1|TV$M9Bb?le%X{TnP}<0g$-zK~GY z0cq5V15~nTG!73uOIWWM&@lNsnbgF77dEGb(V)SX@W8fgy<3D5h`Iq_8-0Usrda6P zlExLIR)q4?w;$NsseOiETaFaG25WGS@6BFA{7@`$o|CY;#=`UI#^`Gq@g#avJ-_WX zb5KMv>|U2~O21(Ghi>iK;~j*dujuO#Kt0Whj|U!Cq^>a2-{jB_KyY$sgMVY#-i%1n z`h)j7tJjVo6N(AKAG{-fol{`rqL5ct|f<<-MCgVVCIOGT>T zb(y($N2F&+#PV{YF0+-AAp)(S;a;~S{E~PbQ29*`l-KK}^d^X3K6|iRwkzLK?iYC1 zDeckIa9^!14h^{%0^{cd`5+<^XaO|ZJ8_3nA{*6S`1I=IDr!bD+_b-}e_FdY8VIR! zF_QGexg0SfFR5StFzDAM`{n1(_&Yas(cWIf{?>4U#9bjzdC0uiJ4VRk#(@0~^xY?^ zT6bcsI7FdEMdZ2o8I4x2F|tUtC&I!Sc!kL}a7%u8;XulahuQ48Bg$4nFo+{7^0M%@C&Gx*k zkzqXs=|ciK>Xe5c`yOK+o}AJ>&P}&*VEa}QSgQONQe>16Sh%Q?0A4bp%}D@8!1=!i zRnHOiFxPUq(^?x7v%2~1113@QL>xR1)F{#G6fc?9(wVB7A&yVS(!GXT1j7Vvg83d6 z39R0uEMheCUONdJV9B!AyKTMwzK{GCK~+O(_#zou&V~<4Q9Zp_kk5QqmC>RChEn(V z)%S6|9H~@6k!wQ~mhW@El(DS9?a07XG6d=VaVj&5{*f|pwU-5E`|yai90o1B5?Gr; zUVS}x5t1>ZwK9$`>QuUx*X}OR{-49ugi#lM=GPw&K&Rjeyqlw3`H5HC{ym{bPwh7! zoZs+fX@=#;N|;}3)tOphYKX_B#O_&5axGGk*b%6~s9&){FjFWvqbkVPfiryP{6s&4 z*E_4%+>{e1z{gg4fhE=@S)8h|uHo^@g72NanYUDn@N%gMooj!5vl$WX)i(AoK52f{ z%D0ni_m;2hm)E0a=pp7Uhu5=|s%ZDQg~z=BMW42O8cB6|&~k?v7ds62`4=h)4WPc7T_i>j&W$?ScFF;W$M2U?aJCYiZRw({W9jrG?W-0@QOI@q**1I`B`f!}=?L2P3{mby!Yl%o2FvIizsn&yQgKPiY znqM#r0zl801$(*8ofujoWHGhU3)wCAO6I6Y=3vl*gQpTTxuYBV&M;AGS&FJ6slq|I znUi#)6tr4%W*^toPW!Vk(%O}kU!y5ZrH@jd8`F(fcMQiRrp3xLFGVSGgyvP#ypN4$ ze}IE1!-)P8sz^>n4J5Q@>iUxQaavOs^zH+`3msV$LeQ#pYdAvDS#C6Gr~<7LE{u`f zUbUmeZ8$Unax+wrZ4jyD1je-(e&9&KZjiCM`n|bE60&rOVVog>gEf2b7sq93JH2zM z4$Fnl+pdE|vfJ7YNSsvGk1#%9U3r zayPvo1;=VWrs!TG`u#ro#$Ee28gyfWXElBk_ayIJ*j39*$%E$p?LyxBK6d)kf!hY@ zqp4%QyC-!k36*o}ul!n)<2uTMMtT7l z|G%jlCZK3C@TnPmBWZ)a48Z+ghRm18KRph#)CYF{vB&|e{)ejG)8YizIedoqc~zAH zv#To3_$@a0IHxo3_W?eQN*=h(q2|nyC+~W=qg)-IsIWiC%HN?-1RTRo!^RnzyOH$a zq{5>fuTZgXX(i8!P)e~DV1PavN-I@@=B}*I%OTLg7Kk)6gRQS<;uys)M@gVX$*0Tk zB^)QF_Gc_GMkI}^qBlxR5mHEYSi`Y=U6C8*N*ZM< z4W@&)IrQh$?vIO6g85T!%J_Wj0GOlr)cO=tr2OFoR;LSY5}Gl8rtIP?1{-%QYH#!o zT)i& z!5BY#B#Zn}12sZ{(YL<$f0t$6)a4!-c!nhZV_7yZ$pflh_zm9p_(AqV0Od&aH!{Fee>be+vRopE78~!upf?hB=j1|LNAEf(^Ulmhwd@u;b1%4 zBT?+X45mgUW4g068_6e6Tt#_Ky5Qf-;W6BqQc9Ly%cS)`li4lsJla|e;7 zBh&v5bpIcD2)@t&`79!7G{DUxnZLXVSbt;&Rl))g|2_p5lu-qq^K*;;dZ)-!B>x8M zB_v{u=f{A5M?dqJ;tXl~`Li{=`GeH;!tR+1q<=YOz-V$$3?u^CT_NE--wx&$52&>U zfDc-|LK=B)1GD_)1&*$fNdNtB8su+~Mj)Yw!6=e{qb3Ct>cIyTyL<4P{cUOhA6hUV zo_oPm|Mud54jz!;o}0j1FL=t;0jL_}ACX*M#{H!N8f^fRnL`9yg`Oyb$vm}Tg1$fi z#{Nz3@3?;uY-<2efxrY|8jzs?Utg$#KN}Co`#S*TKc?mrY4BHk>c9a>zyKzmNrOM9 z-qTeB_)FTnPyl~BgXeBA`<`wg05M%6AvZL^0p7guco-hg^zXl+{yhBYhU={V1c z<~35$_T7@0Qmfj`P~EM1le~`tvu8=N#w$=#(q9fz>s4(IP{2GY&iE^e9pSKw92K$; ze+$*9IUC-2Kt;#OPagksAU1zH(OoGJ>1#*tpQM(@lcGV)sBk+{uCf#vZU5OieTh5i5#$??I)VfNkR}W)N#70~3z*?X*%qNCbp}U_> zM7#%f@$uG3%1ff4kSr1=4O{*8wyC=s$J71vV9Yl9h<>xEQR{81#p25d4DTbl5f!)! z45xg+M=hc;s|W3)L-Q%lF^Pl@f|Nw!_X}=%P=B;DDH*CideU0B{0@&~*~s?5F=rDA zL?8DMen2W^$uhymO*cjAtV=IxR&)0b;Qxebm`9UBa*7_L%on>Cb_K(8Phqlyq?2(b zC=gvP|3mT?_N--j6PGa`C_<|WWyGxAYL)R#{);GuvWixq(cF-%%xp3TaQrLrj==Fk zcAo?2qO^lA5kAMeNnR~>ho9zfESac5;~MK^R7KJ@x=4TG_uEM5pFUy%xpg~AV*-bl z{jQaIZ$6K@JjiySq9!eM3+tf7Lm_ZAr+Y1o0hOdaJkqs;$~4)DcS7H(79y`4Y3YJrP%g=TyRK-54g@D)H)-&`5&u)HE$2|<#FCQ$6KBX>=4 zw|o6q$5gwFP&GM1<%Bd-BvD!V%54|{g4}p!A9Xw{IG2pbpObA;rrepr@uL=kSqB_L zO;G@=)#`9Tt>P?A7;t@O57$*>A%Rdr;GHL3-)qSI%oM^8AH}`QC};#$UI| zu0ja3p%_Ihx@bf+tD|kQWBd}IzIOWtN$wsi!E-MbDn+#8acGqiS%0qeWd_K}0;IWn znh)3GWFs8nG~XKvCmQ`AgIyq-@lvh4hk|xj!rbqJ@Z~E*xB#BNYJX6}+_!rTcX3&) z4-^orJSy?^1bXX_6#Me=2v%;Zwx<&l%`ANqtAt-Q@F~L+`h(2u`&%_U^9w*+A;sBd z=+MSdj{Qedqf9yyoF4fI=ZAsDn`HL3hb_QV7ehLJ)s6|;0@;8Yp#abudby6aN)eesv7H!BFsmu`+h{l0Bx{BvjaM6s zuClrsO<@J4ub52j6C>&~_^&C<0~8Uj`x711jV|gQ>>Pld<$_@&-|fEc8Hq2Rhn46| zuAtZIN8#Jnr34NBY~a*pi0K~kZPKrN9lgm&buESGX^8n1Vd4&2c+lVZwbhp(!)v8T?u`@a+@*EZ(^)7LXCrd5N1asfux?;DB@2afgVT>EOdgH>+&_0LLwE* zDLC?7yWz+9| z6@Dxh5N%P!y0`9-J^n)QQ|@Rwcg@h0!H>Nx4+Rs;Ga%1SIsqolmZmGf)_kdGSKq*o zf7nkR3J5m}HC#Zs{!S#syE1@bhAM61wH7I+9BKNNo~@K>eV-9lFY}C>WTXFeg<_|Q zF)qU=qtF}*td+a2+JTTWHQ~nSy4=NckuyE_`ke(tepF7Rn(UlnFO#nYXP5#;+L{fv zbHG-m>aZyJ-+)qn5xY?gatT|Y^W!{PuD`(3v{MPE~8H}k&(mG#v7RAh_R4a zzam%u#8$Rg(KjTS(OtoH32P-Ak^nzHb^=7`sr&dvInIV~v3+5~&Z;~^i|WS0=qu5; z2t6xOW~5Yu;j&8uBkUz3w_TIlp`xm*@@BsGYP4h{D*6XVKkjf{?rnPBK#rwa^A}AS z_le{w1=Sl>zGh7SEeo0H@^EM1{zm{0=Tf|r&!aI5J9Aeqk!hc(=-b$3PZIi!Su z^T>w1WvXYhsi8&jXOU`3%~^IT%Io$+26!!sz_uTceK!Qnpkd8${{}O& z32`VHQ3(%8VUB<+p4=Z{tlimuQZHk#d}wGmi0Ku!PN+}ALDGrVcfWWvCk$G&ZG~BX z*F_165D<1lNt)YWRMQqZ6^1*sZwa$roq6VuzWymkz;X-K zOtg!}m`+z&h4N5zcng@G2J+_n4uI0&!;2noWj(}7fOL_di6aUQ7n*z5=Hc%Zs z$x3Bbwag7^6s4!<+-zx`zy)sgb%@@bLFoOqNMj`}`&DKoZM>r(tGed@+ovs>0}o-J z-^2s8uA|S9gOePV@l&U-ns72&&rk(?3Zq6@_K&mA`b#NAs`Nx=9)u*Bv%k{|nbD}r zlW3c+rHU?=ZsU@=6o?D3QGNpx=mx*(SbG_m*7HkZYjJ}H+_g~-RTghI?A()ya{|0M zBR5^PA|0qD=*3PreVHSJ-KEPBhnn{{ezJr@2GInN*r7Y`yAqk0;fbR6a}%j?wvnUt z+Dd9RM5&gh_w`>WVpXfcyB`F&+qS8Kcs{-Ta;lcFzNAr|j~TkkVAu@&zMO4sIE;Kk zL&AO+m-U$U;Y+IzVJ^!h-v)<>uc*BPt{9P}puXRjG-oA~-&VpNst7NFI@sA`FUZM; zdlJO&!Qtn2>j&q>vx@v$k^UhZi3~CEJzsE(RiWfiKF`dAuQ_MuM8_LX^(Od!gF`Dv zlmp#wS5wX>cGQ9#19A9<_Vqta=&&Be6KKKreV46s=5!>KGVy}<^TyxpuI4w@)8}&1 z;<0Dhpdl59w}5*8IYAqnVRr(N`k{IJh>_r|r1TN?uOR}|CFQ{ku3j+q1pa!PaSyO;!1f6#&O(_jNrgnjdI+P@ayqX3##tDVi~Qj3HDa z>Khn55{-t@gDAd%!4NOK;l!zsAp(W1Q{@pG~qEv#8S-5F+6TGP1SAKclk6E4MMB%^6jEb+z z9`Fw%HTjZOyt_kb@c>j5bj~5T;ZmN_!R7row!vK&Uk7QQN3EdcLe06SQYWMc%8Akd$78Mz^c9(nHbBb_7A+~Fh zC?)*4ww*{v!+g+*$yTgcQ{XU?4ZbUJVF1M(nFQ zQ(>c5E_6%;{UP6+3Jz9&M9jQ^W;MprD1}U@)~<=VN#DBNr17UU6U~nWVx3sHRh5$z z2OQ=!9z#uIUO!adF&`A%4-_=o7rXgaoa$D~93s#v14ZxH<|`@YYC{+j(6nMCFiur~ zj`XgDGV58~1acGS3DjKKRoj)3tjZtkagwV5!!`M2&V9Jh=Va$n)1$0Tj;_D?IHiU; z9gEfBrICXl9zE!fMCkMg5xXJ;RIG(xW4-a4p0unm_}mdnTjhgIewL=uC^$p5OWYRD zp!2?`(ppQCxsGgvtR$B-(SPl$vim3^aKtsR*pFuIjW;Xmp(?kjydn{TmZ7ViXG=4~ zS9Of$&uJ~aPIEM%aB9B+-Uy$d_wT|+wqv}f+{p1Q@hCEOm`%kGJ1g)9kLs#Fes*E0 zILj874Aam0tj917%M5{jKJBrZ8Z9wzym6o?My8o?^Qcs`b4Tk}{blBUG+&uF2&mqK zx`ovG=*4Hhf_oLC63_P*N%I75A=)`sgHdXBdV@>0Z{1lScwRfu%-<$4KQijne*;y& zv}6`nv@E`Sla<|w_uJcO1^)Y887hr=6UqrgZ2VK8qXQ zr)wM{zQ)e14=(4mdyijc_F4$1@M7tOJVG{4uZ_v0Ta?;LXQUGY+R%{Fhq zirdgP_`YA?1uM+9lICsj0-~%|^O4@&TPSCG(!$Rpc7NVE(g={?QCqaMxqJz0zp5JL zffDl^#B5_IMffsGAy9zt=54Jd`lsLGcm2JAT;@I80Hix~33~ljRqDm>RG77G*O*2M zYBK|_FFAKURwpux^o@`Ev&^(uKx0Q@=cI&GH_V2Q9Xf>R_!m1}Y!=*U(Tz(*HL1QD?_E49dW1e8cE>O`Jg zZ-=4V3kc;C_pzOt+Tb2wwv5q-sHWp{?!DLj_AzUzeDU75dTvn8J^+)8E5qM-%pG^r z!>%&=_-FE;3To|~6ER}l)V=#3W69T;4)uTZn0S4&(^T8z&$|4COKKOE0!3kcu|R!t zq{mUc#cf1|TE6P%Ay=h3e}JTeZ^?Czxrpg@r}|Y75NDj5ntur#v~=6DE&~s>+pg9x z%k9J;EF+RAh^N+EqY#Sz^l~jSz2DkZvMVs{o|6ay2__lY>XyVO*geSop4Mz;A}ckT6M68z9It;vf?CQQldmHHa z`mD?0PksQ5S$vwVJZpM(6f|4M{%nQaR@)WSVEBjHHO6n&h7_*;O@@<$1F4fv+=UD? zpP6fGHBk$Z((ezqreCW-hdH%pCI#KS4ImjujWnx#7cUnPd9Bkl^+Zf0R-ot}xE@k&ju@J)#htTv+=>K4jpb9Uc2fb$`rmg9q;Q4u zNo1xQ0k$k8M@}|H(nh`Sk?>kb1Ybj=FppMY_)z@*7Fk#wP^-lP{Eo&xx)QD8TPT+nEM0Sqx#NL&KK-+=3u-jx!8NRG|9l{zd&q7B+xspY{RqY|g?U;(qX*IjejY__w z`cuZe!VJ|VlQ+xn)m?vK8>tQqH88AO(tQ%J2dInvpjv8hg-m&qs98fgYc2MtVb8L@ zrg+OBp^PfRwXjb5`}DnJJ)Q_=^ME49Wbpo1DJ#Q6Q7$#NW}t})RHdpG=4+nWp?()k zecWn>`O-scTW=2>R}L%s=^q;KST%KIgSsM}jOHOB=Re^2b9F)Cb*7Hr#Up|)SUJ-0nTd?}He>Hq-7#)jOw{P=d?XhOH^lkzR@deS!bAy!(|p8nfU#o9 z$wxp3-fRU=NHY*+3p<;j|L*d}VR&t`wExhG@~6eOU%$AB9RFCo;S4NyWV`u3Po&SL zxvgK=_Oz zR+qLkW>s9<)ux{=PjWMgp%j$M$5|mHR}CJ;@6BUVA)8bn_57uc(&|q9|F5v?0E_C_ z!n>%zE(}GagMgqS$O57$3Puxy1sj-05?hKQg4i2qBBHTlR}P>cHbg-Ym52>nY$&28 z#%FmXCK_M#si-lQ7x0~#TlUUgzP$au)n(>C|C~8fZ#icMRL!iZYI|+D%gaByq`V#V z!m-cPH}lR8IU4Xh=->Z_0yDn|*jXD!aJ6IP!5sX?Xib0eYvgb4mx?c|oq;*&Chn>GcseU5BFs zMbf?-i6i57jhuYI{U4_quIk2q^d$R(yE#LSOg$J}zO5>K%=9bfzji#huGr8ud|3VZ zA&bg>n$u?Ak?e6%wJo-n`6X8$d{h2@=>CSS$NWY&oQbCB##d!9B8m9%)@;kLX%GI>h?f^d{i(6!nZ$yYr6f%s@7*h5{6u_eV^op4T&xSd&~^kqQ5%R4 zxt(QEszsk9@R>ncgtFjTf|&7DK^ciZ9OOS}i4T*hm}7g>f^L_rsT+m`S>ih*23dj@ zg?(gpTH(GL=rNN7GabgI#Qgpq z>M#r&w3CdYm0ZkFzHr4&+d@^#4Sk+`eh+Q)4R(@_oLE2;O706IJhcwspGvG*G2i{$ zIqNZY9UV3{eg8oC&|)Ux<2s6;nJQW(Dfs>+d(`MhG<&Fo)KKU#odCU&N<0{=|Gdz+ z6ok5DT6XkK^juW9410|$2YqG(chiZ}|L--9vKTdDg&h@hh6`z8 z73Ey~;U@nuB1C29m!~SS7oys=Xbc=r;)fa|$tV^e zbckBY7VjXlxkAWnLRjs$C1>oXK{frb_8&_u%%(e)_|zb+)Q^lFAYZp!V%Y(W`~`Zh z59DO0I4a6A1Z&+?>JRXo_The%{QQ~j{)4vZHZRH=1Bd2_&42H5=F2%z8qKqwIIGG~s+W~Fh4zOP z5n6LqbxLmD)P95aK(5X<6|)#Ah?S<3=1iH9aZ%pIZdy%0cdbbYx|X^mZ9i`g<9eUiCsu-yx?Tqv`g6 z%>;bwc@nU_~GlhS4f|A34QD#pyqmQQxZKfx+^C%B|{<9u!vYg_eI2BHITw( zAv%ygpU(?5G6$~u^Km2=NFxFdkY(w}I$$Cj!pdr%INde`@kMBs-W-110+X^}LcY#k zWtNo0qJfK$;ErmFv0Ee)xWcVrkZ5lTH0%8Q=z=EfGz&v~OWP2e@QP zy*wxr)y~XP(Bets9DC zR!A1JUWpdlahN8zf_^JSJ1NiZA__~=}tsO zQ3Wy>suRF!(v=Y^5C22gLh(bPgHOS;)ubCkDbJg0BY`v&b?Y=O)|nj;2;C16^ESrK zkn;RACr+yD3>2&(e!_TMR*36ir*k@peV}uI*K4FX;^*y{o*<=n|4FA4H-*M4Fo<1? zn0y7sA7&R4Yqp@uCE^bk`44KVeiv9_uJClNh*h3P#doW@61LMi;=*{9hxFjppZKB1 zIC6>cwuSZUq&~Q79V+;^hNTAt@-u+)G#BGMPl-BQVFLd25Fgth(?P0?uisrNpS8wk z*F?FZ^~9GctBeru%VB%m)IsQTofoXE!>QRWOESB67HWL`7R&U85tz=1lu@*eJ&!8e z{5HdOgi4v?GUbS@Wy&}JjiC*C{D%=K<3qRQG)m58LLCr)hEfLaRe*anl>AH*LB0q zRbq|lC1%543>ydm8>D_l`-s`MzRk ze3C%lB@cTh3uqCWhshTw3(3p#h#zaj+S<&G<*0aToPv2vw@ibpd8Csdtj|Yb|5-Gp zHDKH@2UxjPGR_2=cXB=@_Q~2rnnGzlv18=d`x`uc@ai%TnfXa$$Tt$)mmxiHZw(VSNrk3w!b0s<2zeNLtSzHSz8XB&2Wk9ijqodcC{2$% z0otlSyt?QWXz!DYH!cR@4YQ6Cl1)qpMCkMa(n_fPh5{^X?`DC4g(#~n5UUv9rBAy^ ztl|P(p7~Dw)fO4whA9_aP#i?J4LSJbm1|inK#!l)Tfm0RQXPvoW3k0z9>zLzQW%|V z!MvCQf*giCbB52iNOF^C-k5SBuVf1`2(_rC$>Wa;$r$`hy&=~wSZEzSYrAK|6}@Ve{~R7}mfjmGOE)B$UuO1XwEw zX<}sySGG$wryBsXFP^Y^z~QD=dT=i!dbYz^IOoN~?plo|8h1E+PsAIJ6= zUF-DtK8}?m9777Gk1|dTf0HX2v8Co#ZmPLZ8Ggl^tHS+fdI;V@1mh_KgzzRF{er=q zSd13P+ac9-_YPd)%wOu^u8oyTsA1I9slq&^XNAzIMlKD1@SB43J+b6~3nu3m<~%cTbWoD*Gx!GVmMWB2k0|w}45TL1+jxme&7F3FF~`BdQ-m=g;pBam83ylYI=vhM+q0;a z{cmFWXJ_$Y0ZY%N>9-%S^v-}Te6~=3RuUrTFmvkfEOQ7vy^Jx#O4kx|p`xtcwSR=e zAO_uy{C0e!iViVo}EYS z!k)71F{-|FI&yG(+F0xG`vKQzcF(L}^93@PSy<`dW-OSFkZTBIRU1@AS_)O3T!kf0 zdLgD?tRiBZPG~sl>ZgI{6_rwb1uK!cypdMaedr4{t zuS=L2|H_!z$%nSy`BAQZez*j>#aAhYx__4TT9@FHp#$@KLW&wkXC71t#qX;-? zA!VfVFM2#>kez4)g7Mh zmR8>S-3ZVT9>5&!)VFqf%f-@qd~RbZlyjKaGVA^G=*zem>|mvMM-(qp#19>&XH-Jy zduI>BOQklMSc>{&*_%>R4?We+@cpEi@6B4^!w_8TXG*1LXfgWcjSz&ug1w@GG8lgt zC26h7+B6~=20>-g;EpOo1*6+Gf{J4sJ->$Ac^$BgqOkr+aye9~&~}XoIm3i~#7!8! znfS}>Z9pR^9lY8{L~lgf{fLThuRx)zp&hs##hoUdX?1SzZqti7FH|C$Q((7J2ptmJ z3dKI8gg*u;2+=3e75X2L`p8h+UYLa&6ae&6^nl|B&?e03kM2LrdW8xAbU^fkfO09X zYdPj^GUm00ymIWFOimbp9b~x<-ZZ&y&7aplLFIGMg8VY-9wtKtmqb$?{?kzapwFUG z2mL|Rp?4=aPo=};a5+!VVdaNSS4>158dN%5H$qi9urYkBi@=5B+g%vGv{Eh3Z~fx{ zw#Hy2<%h3RgpBtUMlQ1r8@WBY%6WdU_mE`M6LeH>G3K>nc3{Sn8ytV|U5gskrJTn=s_`RxW5>4=e`zN)H zxn8&h%WAy*7}l!a2Ld;`fwtDM%Fwr$&aV%xTDqhs5)Z6|MjGxN@W*8Oip0F+BSUmd%Cqi)$h_?dh>efxYI^L?{?y-w@a=LbO8Zjr$&0-}yN zYh1$}7CT?>_lPTGdB6KU20ap9=dWY9z^jO;80l?r>hd9YeHOsAnE`JVHPHFBv87b8 zDCY&J(ldO4g^Kum)5`QnOGEH?f+#(B+M3hqX^_QlfFDBid&2UR^$4sOGZ(pa& z!YKpO+k8VKod&OQrp`}87}1a_0EZDb>n>S2`xfttx!9xd^8T@g_G;+25k&b^E%G_CE`v)b7n)bZ1@H75+=HD6by0F+JCENio=9VYmU;x;+;@&*yaKpN^3It!iI<(W+bv2W0*u z75pwIttE3A7CrC~+}dYR0IK&G19C;KtgnwZ)VKQ>e86>2OoCaJ&~j|Z7?uyY1#Bj_ zrK!ftEnNNJ{GVVuM9`juN33pe6U`1*sC*H{%V*U(D7t!~n@_TeB#fMPqWW}`wkKU2?SmM^%slAF@dexdGjGUcZZvZ$vI+tE9_00J*x{oGlZ*LeBg+*%~ zR{D^Gk~lJnu{+PPsLZFFA|#rrQK5RR$mzPwR)@o`3h!Sj&VmA)L%RfDCwI|j0ArKr;k4N5 z2F3)n%7VA#SfCAWDUy`g5h%|_%4?$(X01y?Sj}dt|L|O%o`{WpYGyuOT0f7-Xx5`= z3AY%4ui-*+Q#29w^VLuOE~}ot3<4dqWM8@UEiqZG-N6Dy{C12VCDvW#k}5p9T=%s? zz3ArPkSx~Z1nOl*Sf4v|FLUsz-_V5MtNE)3uCUFXi(fp|Ts0$VUB`Mp9o1Vr1CHMA z%6O!rCgxJIS&AxM;(&-x^49C^kFqIt_c1*Hde9kcn9PhioT5VdCk`JjzvHw3t6lkR9SC!`5&gIU^eiJV!SW?#?B>ha?>S&x#^ zvyL8Ydd9yDmtDq#tNCl-<<#@d&%! z@&9HAc3JWgn83;5UAhjm)X5iggrtGOT98*GSR`sIn$2^r@pQj28CJ1PUxK;W26 zPKualH}}g3DDsLYZ2rhEf0u8orKit4x4EP1H7;0y9ytt?k_~fc;{D{_*n{N z#7e8BlmzBURSJgs#7e;MYSXb(PmKyNiyR^aHb#m z<=cT#rA>=Cl+axNM3W;9P$U6lfec1OdjmObMss);UNyUQ$L`OEgz>Wpa6!6w#W({Q zI&Y|UwB`vTW1OH8(Rn0T19K-yu^sGK1KW&*qLY8OWwDh<&ANE5YlM~fxPpgpxSIfOqoO?2Z$IJ;fQ>EUd@#c*H?EP>{7l+=*IjViFKe& z8Z~*eZ{bE-zK~3f=z1L>>k%5EL-yNkO>C9+>)an}Z$luRN6ye-^)WUJDuU*7sq&Pr zw6|9?KjTlkdO-$HyLw@U^jZ~?J+8u*&nw#*bpp+@MF-`Z2PdTAM(Ex#HhRRPK?B-^ zP?Z)!@cZn7F{kJ+iyTccD#YJQlSYU@&TN{~8Mc>85z74ysQa#f4Wi?JJJ9LaC7yjt zA`G0W6f=2cgY1iUdIZATKn#o|CTB_|mt55YMd_b>F=+&c{l;WN#7wil^2v_4OT#!6 zEhOgK489^uPxF>^**vN9RBRT$*)9AN;ZxG*@XEr(5m<_*1JdVAC8XWS#_3IkrDM*U zmu!;~hrjwa@kONpv3I))ibKRKMaaU^Y4^Fs6KM*HWLe`SQ=#eYO=}cIRevXLie881 zkqfwo1J zZ@9}TUTJ~08}NF{nBV*!<~h*0XKTB(diek0p2YytZ9jNlKX`y@^P9w7wk$-J-;8Vh z^+hH&51zOG2e51>F8%HYuFgD76ep=X5$03cthBM}H=b?=ja{4&+f#b0EeEflGlLGx( zsp@Xn{=dc9IB@51n|a)6rbUxin0KdvEJ0nvPXPZBrGO4}@ZhBk&{4Oh^Q5}+HrUDOgKCeq^*8E!wM=mA0%{Ou2)&D4 zNVAZNX%nWop%ulu!Rf-Tj=w6naF7t|Wi6Hd69=qFoKs-9UHTC_++cNR^^F8YxY3kI zoK;|Ws-OzurB0`_co`f>bX=t7u}*m#`~DTL+TnVR+!!8Ev&Up(890L zrW&jQ>(*Knt{iIr%8Y>Pp7%N3#V4UZPg9+g2i4BSLiZ8G_~k8w(c*WqK-3!Ws#3M+ z(;3NVt^m3(g5wqpPu(q?d*TXYa^0^cQQKC}t2U*nle))4Lc#!iiUdYAPawC|0Ja>N zojAr=4+_B7UXkco5mQ;A$LR!R*Mm@+rE=!6W@o+z6k$ z9$@0R8oyP&#eFj!mfCXrVD+<{Z7*5J*RB#xg!B3ilS}1V+@K$VXMxUrM__V){zqdE}ovUjCfM zRVo%)sOvOEx{pv!m%sM4l7wwQ3MUtR0m@Ak5Y)Pl%JgW$@-sfS_qt`wS%!>3N>rH% z+Nn?>{@N$VBBZ~A^Kc)lv@axgsPxB>%mq~_ExqVoMC|5JEgEe_2$lx( z=Oy;bI%UdfjIb`t76_2#bWUCla4hkT=exveB*8nUEL9=Ogqn!uWxWX#E;wBn0|Z^N z;t><>bj~d&baC2qs4t@U{TTl`bZF{fu|0QkCmCcg_y@vfGe~4;YO8tYwI4+~{F=a2 zZ|bP5XaAy#a8gJRXd|hrr-)W;>vPnoG#XH{a)&`;WVbbz8rMmMl*In7pLSYE-T}m! z)8z1D5mTI#qWg@fX}{1*@J^680mO$`vQ7?O?i*R@?y}YbYH`Sj+Coj8?x}wAb9C^| zK&Wm(PG3123%hm2+MPBG1d?cz$p1vZJ{^|`PC@4>kpOD2RMTX)G4a`(i-F|)jeM6h7>an>1(Dm#y#BwGW zct#ngG)!d7{z2a`q>aUjp7NW zKo;DQ7j2IvxA|uFIjj1OBQeosxKbY49+ulq5N9^ADxgh6p#|@-r~9oZh6gNRhbPAd zO#zKBtom4(b?QdL<10si9zsIU+8&~33b8{Lk%H*^MNrD9V%WzAkP{Nh7 zVihQ+FGL?CF?9l6wmf+Vlnpy41JZ2H+0NIz0nG7JKuxindA5ps;OY=(X|@lw71)M1 z#Y4`N4MsU71POcq(3_v!TIAWqT*1L);&538x*q=1&AMrFsSTaB0%-_f;FdC4H#TW_~HIb+^bCOmxmWttYKLt|bd0Bn}Auh}K|?^k#+#z=3?r&mxL zkRGI2MkMoDH_yKsOk2qe$roB3`k@}bxAoT(-~s3UjaIO;`(gvgE0`p_f)tE76pVI1%U+Hj;Zcl{tq@k&fHC#Kd=F!|-G@{^M>5JOPF5=x1$ zZKzkz>9`C*2c(j#%S&E4n0!e?@Ifp2ut<#bW4x7H7r&cQ732FrFE8$rWKdjlB6YCoqntiu0k^X9>i;WqTZL%mE%h_9GQ5z^|SP zGlM~!+<*Uomhg=FcQa@fmUFhuOxtW`NOuV*>2oRDC;>VK!oiK2{h?n+h|F^IwJBqr) zV6RpUl(9h?I2Kpz46sJ@Zv3@rLH^E2U2<}|CjygI{v*EgEmrLgYD%!Oi*wvza>2;iQA&Z@BK==nyEj2_ z)08|B3rwb)sHO=8oMLF#%SW>2oq#}C*zVv7I%e%nxiy1sY-ggY)PvorYQ2qfkPPeg z&GaI!=V$my0J59a&l0&=X%m2`fUaRGL3Ar|_;X!DZShojNSm{~1?9l(HFG@Go&C6D zpsHOeYVM;JiB{%vems8vuJ=@Jp5cb?R9$${gJQIydy3b5;Da4&_H>3UPloiUHF3>R zJwtj^;-_p+u{qes$9h|Jv; zlKFiJ*r>DFD8WlCSD~cIRi=7J{7A$T$1iLyv_TOx6Aj170U-FlO#B5+GHLUtHL6GD zb(#=_e{OsF_69bhee2TnvwtT&HLvZUX=*yN_UYK!nUm_QeP{VgxW_iHwqY%C`Is+f zA~;OfE^iUuzkGrvYtd#g_B}F6X0E5Q@w#wXeGe&|5lyp%EKNy}2|Z zla|~nVe$gdJX+~y)}EyPDgnVlt^IrfY<;G3RaLZRDPvxH3w~+iD+p#ysJ)-Fl#t@^ z%-~fVgm*QqI1{GX*-!^`DKmoXr;>NQESq-e-Lw%|7orCz7n-|xg{Jscr#Qp-Y?}x8 z-y<}GrIqAfZUr`w$ewNahU|G)~nrmd)RSUoT?>g>FA@r6XRo^i?vz@Noy= zUD;}v@aJxL(NHWS+%l))N~L!(=p`-#vxU)_MD6}Utj=gLK7NWbchTH;Ke79n6->43 zm|zlcUK~FmTI?svJ#%f+!$&FLEitLJ{0T#M#RpD4bmsCYyW>)Vc-~^9VkQrUXG51r zfS?dD{8o$@id=$7O0orhJYGjUoDXWM2o&fCji8!6nRQQ!748MM;8z$MQAsdNAYxpsSRV{QfK z%s26Fpf`_KO4uW-kRmYRrdX`CRF()hkZ)SE6waoO))+({Tnj+Qtb(nWQI0fNhCY_6PehA?Qg=R$5iTjF0G1gfRDDV@ygtGt?`0M5B#VgZ z7|uxd-|#%^VwAZbMoaM{doJH3uVQ}SQOt#1{=oHUtx3zTkpui3s6U(#x3}7I^53m9 z&hrGQMnV6jnuu*LzS#kED)nLUG>GSKKRaU~mJfIe+^mVM^DfFjZ=;i?a{I_rak{kc zM0-pX5d`p-jkb!8?@b#_w_Fx-eu6nKbaP%^na_Vm%FMq3#yh`sOW38dg-`gv3W}&; z$^|x$$CF9UVfsvHKBjm=zfN!4WNskd;Ri1!X^}VIPW=lCVfZ| zPt1xgosM`{zpAo>_l|!i2R{`Oi{cD61H!-{38FsCW1{LWe2_I>q0W_!Vp5oGx2X4F zma3k2D_wWbB^iUR-8zqaxv!*jo3d%5k4H;&8`P=g4|S|}#eiZp*0Bqi``ez%J^<`l z-aea~-Fs{gVHRijXdmo)@Li$VwIvTu)pYwrU(CA}r7g;^Ikb!Lb+YGt&d8R2!l(P< z6ev__^#R(x!G!b1#x4l*L_J}>q#41ot%sx|*rp*XHXxo)P5@k$Q195WKO;WY8D%nY z&%!KjFL#ZfDt(Us-d=vK^8sD90Z@FvS1zPC|6f4RodNY%FjUmX6Wyzh??m74dzPkhbEf*l=C;M~YT)JBW+AOQl7^6j@tjmeo&X;H$IF!#~ z@uxn*`b6!=?1zu&XlN|!9&=ziuSAj$0q=Lo8$FLDI|q{|7Finrq}o#F3Efz3Hm98bT|^9EM3W+6Uj;Vq__0k}iSM*y>OprfF1HY`9}cVXS||V~V6WyBG<#0) zRXmJdsGxtbaR~X77nhoeV%B97xH3{n#Nq|SgGn({jm*}1Pg|kOKy^Q?m!rXSOKUD{ zVzNFJJM>dS4P0>ynY1aOMZjY)4v-QFeUYw#iEc&i;NSpa9;>*)@T;T(e@Cu+jR{DT zthPWQ7y^$Dn)%>fq5diJsCtcru@zmZ!16r#;azp`rR1K1l!$CyKsh#|@UHZZpqb|y zLcbPMC?L~VyIwTp)#)rRU$W|qPZvq3OHUHtyUgZpeMUV#0(WlCEf0T;RO47D)$_26 zf-L@0u5ShCXscGDON4uA8|qTK1SN8!+&!$@(Kl`HPxWF@^fP0|Jxe2SdtGD0*mC`| z{!bu!ZkGlPk-PNR567-(qfR{0B_8TEMaC3N!libEQzdU*7grQ;tbxJC%bN}7?f)m^ zqg@JVoBwd^f-Dit5`l~<{yubA=f_#0bbVC41T5Fl|8;-xq~Pl+saW$YpFt{OOSFuE zY{1Uk1iFMUXOrvbU4ye4a29iaKin=Y4FvNs6B)GG^G4w}?knfC(YqbmF@VE^?HeTV z#{{=H1TSRZEN{RJ3lShnkF1z&&G@})hfoZPPx~-5HFrPs$z4DJ<<*uN(*fL;5!->- z2FQr(AZ*Ks-%O2l+mxD$+eoueb+l(dJD^6+>u8nfKf>(9$giOEVEmhc zGehW3;6)2n!6oCKA@GL7k523?$*zAf!E@`RclRsKms3u4I*hXA0EI{(s0m0F!f~H| zwuX{|>?n4U0xdS3y2KNPS}CIQ=KqCkrJ9o#7T5ilT9U=2fSH6TN2Vq6;KV zyI7&@eeS}&I_Dp?uMYk{YWfnEv5&K>cglK(n_nY)Lln{kTYTs#dumrDOrsLWJK%iP zqP`6^+Fk$?)Vp{xcI1%UKG-BL=c?l?-3|tOC@6x){uz5zh2uSh5A}CSg|>GE8C9FW zrn%5f1016AO*?B**8jYaQ?z}prM_=7{ijQ}Es+Bd%R3^mWztw1 zPcN}?f=x65JjbHtkDxa98pnjA^vN6og8&_TWEQ9J&~0)XWD&zl*ES3LjGHY7 z2+xqDtstwgE$5xTWY@AS`ryO5wJ%^R%Xlo^tLD6Knr*K2a5d&AgAaMxlTs6ACF3ZR z9E)DoDVo8h2q{+t+o;dlB@!I0`^1GcYo0HW8Az4!bxP}Mc-Uu{<65*F*4iKlCql7V(1z{)=|3K0- zgs{FNbCECKb$8UvmKMZ1(Y;s>( zW>@{_SMOo$)0K*p%rc?n+LS~UCn>#PiBh|lSpF1@8YIn7fT=}b#+@H-eVaL#f7hN1{+KjxtX z^DA@d?BMF3roAU0z+E{yd5I_$Zq@DLX#ZymLRQeIFb#Z3B%lKa)lKv>49_U_FP5zQ z`(JURm9*=mv|gu_GbMwteW@3ad3=bpD7w@yvlzFDrxwSfG+iuF>h4yFlR(W@3pb*~ zUMX5u0xf+5{pJ+`BSKE*D`SH%@^K&^FGzv*SR}?ND8eo+6o^_&)ZRy(M-k6~E>e$3 zWdN=2T!%_FIHSt!D1!cDzou|b^}^_EY%ax{c-~cRT_x!noL>nF2Fn3{FR}++Tr-B< zyUt1sF6@dxWzfW^;__{G(P7$jT}31B-tJ9qbpHHP{II5u6@@s0sp-|KPuVNvTdnCy zU-nXf$Xq@j`jZy-N(A0jGcQ>gy$b3S0&1Y6f!dRihZ(XlFZzK!g~h=>q6~eSU0>LX zFmjr4I|o3k;*OXr+#0|P{8KJXk5!W=fkZwX07n+fGQg5#H{%AE)RcRk&&XXIXFoZSyXg-e=c2%dE5f?FbO^AWH1gqN11@f5Gt zjX&?re7mO76E=U`Z-3kkBrCgzs)H7=#38h%z3x_eUG^vfc(13j#&nM-pP009XxLOI zZ>|cCnkw@yOdkGmVFFW9H)_LN)U3Pv=6OVOobb_B9iEuZ*6Fy@dA=umzX=KYs_rU2 z9s4t%nyDwk_G7kCw^tnf9_G9!tRLKf`V-w8z3%mlS+#pa=9{5yehs4nF0L`*t%@y+ ze!u0|AzUL1NVn`q4EWD>va6nqv{omsHU7_R*L6qVN*4CxdQ(S}uelwv#7ZdIehJjN zF~YgvT*J}J9BCcdWU+ZhYr?Mt-Lb@`%E0dA}-jE}Fs zBn*E%ro^GQON)22lAOOPSVCs@jdN<-^s9go2}7sQraJAaQ`=)NtoYIizx;M5;;%%s z&7H-58jswE(-}xC9+)^ZM_dXAGU2$%paP_dDI1j8r9Mt(FQXWpqs402i;*1(Q_~#@ z%qagbz<~l?ckftSKh1{lGrqz)idAY5Ma|oJiXe0u6ydx8VO)mr%Fr$xn|70trR|5s0ITP-A%Xjn=_PA9y~m=r5ekYDGmiyTNde_@z>3wt$vp z4`A5&x2Hm*5T@=;rXP}=f(L;1+W`>N++klZaI?L{usujZI1?Q+&Ggvlo_9m1Z*inN z#V?EM8CJu^|5f3({jX*O>p>+y0hP>KZ^?AB$itXk*%d!ru~OogD~B_z9Axg! zmvpO~UB{}68*^=qfn=Yb0?WK@(K43@%hY8i@f1T7SM?m{JyDgvj|ekM5I|jvXcn zH4a+tk_lh4!-+t;9&RC^9rx!8Xhd)(OeWoyRn~&(*?z-t0qOHsW@QZ8fa#5+KpAXz zlB&J(;g6yFeHT}$8|j1ykS0tQVLlVI884#4s<|)_??fy7M{!f13-yV1$-{&vk@Q;J z08;m;`E&Aq|AQY=%j2uOtsY56iXxjvBY^*UVy8i{n3)!jpos66FmEV-8rl5Y=e5vE zHa0U@2j2)BhKnqFAxU}&8m$CvShKe;dfLqP*(=WhS%qo*YoFv0Fj+LTEMJPzLE zI_C~F48zr`83fA>pX(w+@?BXCUu975v{q~FKsOlcQiF3{TmARAjBo8MO2?W$qAH7D z5TY6Rp?VX{h1>U-yHew}A%5mbTDLvggPE`cF=)Yg0r;suBN|CkeIPk6j~Q&RN{6sU z*FI{@(0fJ%A@hX`aMFiLKH^9l4gGsBokf)yjEb>YmkO6G0r{UM1Nu4#1`^{-Uj0e& z+bEw1RE^q4vHryPTXwQ&Ox>aCPwAOM-$}9P0Kd{# zmB!}-OUJZAGIKvm_jbuA%(2f%M^`ysI*;80fM*`Fn(5*Xp!)U0n#%EG)wCikt3eae zJGeeB;gdn?^mXX#UbIV2)!6}$b;@f7&5^puZuCZr1y^7$>pGGYy;lu7FLO?fo&n;9 za7(^SygKfA=Wv(Zq~!lT3pE4yf@=KXTVdROzaa}0@LuKf@+SYSOMEFqC>lxR1x|$e z%W2#f!FVGAs3HSl%VSq54))bB^DS`-^3a9aklOI#9dHYVRY5U8cZ;1I#;Y*o!vWkp z&L6|$f49BE-|M;tbYUA+2moZQ;S^$5i|DuVz6`f+ZlQV!8k??rmL8&@Tq-;O7Yi?+ z``h2}a*~ixi%)%WanwLS-4Y-`|I-EB3i{IqoPa|^448~wXGQ3~R+Iv7>{3%{X+zOe z=g%NA^KJB8L5au)3C9Twq*Oo^x7<|R$~*4X$}SZ8bR+d-I|T_QoSJ51+P3>UR%GjB z56<7CMTC5thKKzC+iH|0)FbI%Glw5vG*%1YIx3*Qy*5SuujQJ3Ia3A$daYB?P46l=LYOW#cnTv3Ts1z@c(tNd^-3P)Kn;QWPF9pamwyoh3< zndOmDiFHUrY>mjZyP=r&O5SlDp#jaLbGu6PSvgx84JOkC{8onw@|Mj79Z4XJgn$PA zH!6&^DZE6k?;R8fHCiLzV6L6aTDGDhdQ)3!SQWoJBr2nNks|OF-2wXwmkZbY*D_v%die1ir?F(nSH|Bfsc$ zDEb*Te%(LG!Z54Tq4vr2Yd^!1bd}*DOA?*Y);!v?OA!lOt7Urp0xcu9`$IwOlt}Cl z5&KdZ-rPkzb28{db3M20G6T^2P1-8763fmo70F4tg$vfvf^Qf332PBHq8T{uB*0*x zZ)?j2#_BL;ZLnLdMPWFGMpKf<(({iw*c=TrsX&LH!#Cg5>{gQLdfeCMzb>N}vUenD zXz^&_Zl>HRpLKt;L@ZLWpY{Z24n{<`Lc@&CZ%L0n_RzPFS+mOYHsNy|HW9>)c;9!o zVPRdjMEmmIzw$k**Q$5JapjYb3LvWU^zXbOad(|g&N1C>5D9XY=d&DtzEKU;w8`?q zWC<_;Uq*XQq?jv@a!t8nF@~!aY2F@?=P^&`-~3|^LnWQDGd~PaJpr95iTVE5LExd> z-*wmhcb}W8L5A3q3f{rzPu#Wj&AvbWYCq)P4A2r_uF1JZ*zT{dj+gFnJis!9xJk-I zw4^1AI8KQ)n%T(Sv9yAl%9+@2>f{P4(};eUd|36ACqE<3sS}hySp$r~42;X5({Bk| z2Hb5Uk{td+L8t6*b#S_hUg*O6nG{7}k^p%mp;@1gp~ULXTVs)rq0USoacbGm$k_46 z9Mgv=W^dQY7$^DQm^x|?bmD>Qx$hrhfP{J;32Ks-A;y<2HqyGcAXg5|` z-)v?}-?_R1v$l6_*|{3rRNUCy)HI9eND-8r1sar?B^qpM^_*q9Y?$Vq?!In&@4~;r z-S=6+BqsiDTGHxiJJM227%(rT)XR^{0|o+;5~;030|Em3@F^hZ<<)6bT>$|~jQQe( z$kssPWkzsi(}Xm|#**a={T&5}ssXi{b?ttQ5_*CGel8`a7F29yGy@gcYo@C=H&q3( zbhwmvq5N)mRzBqzw)Bq0_&0Sj|Jk&xsOw!FH=Ic<3E8XmnJ+34sChN-eRaEX_PY5h z_&IvWD(by{8}3DJXu6uZIyiawzV*p}Hnl^{1iX-RSORI@kThbGQ}G)R{e}IVJG{RB zuHtx1+ki_xVCp9dx!f?4b&+=7aBI50o-!$tFa*y>UTvevgZD{|Z$mORid4_+CfMwf zxw3_et?M;}T@j_x?GV?&jsGgV@oEQ9%NSZtA@p{UE%(;#?|M%RH*#@(7HB254zi)$ zQ4f17S2H%K_>4{iS~Ua!nTp+wr0#0hsE;hYPt|0o>$~!%lo;wpB%GV}*y<`E^XZ;? zNafg9h<0;zcDn8Gd5f$_T_(`T^NqYs(p;;$Pdcm%4!aC*Ofx^!p=T+1!VF#xcVlx( zkAs?N)5soBH!NEpTlXx5O7e9w-Dj>v=7I277DVMG+NxXDnCb&2eYy}+l&1%`)Yv4S z+>eddq%92Xum{3-l>+Iuv=T_K7KfZ23#Z2l&dE>rh;tTQwPK&i&DP&@u6zcavbNt&9)pXCA5&=70#8ohe6O|Tb_7DdFacT93)yYg@SVfQ&BWa{V&fFQ`yt53arhjKlN9bcTFIF(T?PzEz1P&@lEO;x( zw;ir<8yk6@EHWQ{2~3X^J;iT->p{JEo4D$&ey>2^b#Vb;IC9E2sp1xBmu<5j`zgM0 zMf%e6wm0t2+GARbh(t3!#4r1utwXXvOBpo!dVIL4r|-K-y^9u`I}RVrX92r29_i|hYA&}m5C!brI!Ipt-nK@*L#Pa>o>sb&$#5ZCURY2 zemPK6_^pS4P-41>~Al03>lVM#KJy#zLNFYUp{5_h}*2>iD3_Z92R-GxY{Rt1I5<}bx*qT@K_*Z(>>9Y8BV%0|L5W^p0?&>~G@TR7Z=dE8&|NF-c8ZF zc2oEuqn#+s?Q9a(#$G%q>6CfBbx}w=zVz|jwRmQBEeoCAmU^S1&F(*7t|$_8RmK3r zKqO$GN@yFjufx#CY+R#J4HDkZLC-LIF7rEM9i@|k;bZ6j*aP~?+_YF_KztXEF>=() z9cwzu=v-U{Q!dPUw_ema_db|{;$Bt+Xl=eejo->pr>abIa&uxhD(}I(!a{kIh}92g zWh&+d4>!H5P3W7aKF9Q;`rJtBgn$6#&Ec2R#nSP{KC|oGy02G;r-3&4IdB{~>mSZ$ zEWe4i*dC8RTG!0ok}F>#iX(ytd6~PnC7vyp?F$@gZAA*RrJAE2{sb`}XSm_vG8gP4 z``ju^T@Ofm0I@*w~tqrvuH}d7j5z)mj;uC#v&&2TI_UFTLvm9XdzoIe9lu0^1w86j+w zcx6LwiMY%_%C0Kp;@Ut0SJ}(m5Z1*FgoM#!o)1sh?oCJJJ{7O*IU{_z6Xwnk?llH|O(BQf-4 z-C^6SwSZ5BYCE+ddPj$MpH4|ez)*}3n|a_1ML5^zom9dg7MtCDA&brtzY`dCE@bhI z_c^HW=-SKB84xI47v|x){QwF2H_G3P!#~bES$hVHO4}+9sY(@`e|KDGb!Li#D(;Z> z24a@jypLn)-EWmT#7E@3(F6);C&uHAnZ5`+%7-OqE= z*D7+o9`zd=;a5*jnuM#cB_-TJsp00jm`Sp=)J}?n^aO2k($ZJ;lmCm0p~Nk!J(+oO z`U17Eu*91vapD@;tdx4tQYZv}j7E{Mn#z4tai>_xcL)`D;273h!BYy2E{@W?AP5@^ zgYWiJ+jvt+OUHsJB8tW4k5*W*k~}|!;RzUswLk^^T0O+oy~dqua_(czK6)s)xqICS z1pfP3Tb3%Id(W2`0(Sb?4)L}9l!;I}kB?rv=+lJBD3sR#kpZEIfWhGuwv#2Z<`G5N z*nkTC=78S3rsb%EKD#gB55g?zH87ZvZ8zgDFGa$Ycna@7k;klswX>{;Cqh1AkrE)% zE*b@3F&P$fyV%nXD8ibOX*g-kda;A@)~o42BiY3OWBOmDDUE4TM@5@f-|nkw2q@0OvuzW$bwhKwB*8omjXOZ zW&~yckfMkHa7%y`kei>~8mUh5DjrD^cT_o)4QJ8@RvAraN@CIOXxe&_KNm@jFSE3v zYWKW?j?)DD;okgSC=7FMOmILx%~3y(+^X7GjxSjXroQ8O8Ah6y#>=j>knYy9Bcif= zB_^agEL-q(>YnUO)#~DHUe*I{{25}Fz)%5TyMzZa?OhjOMT=Xy(~jv;!f`>#BaZCR zARdXg%q)}sbF%hqbM zlWLkQ)Sh|oyj0(EX|FL{WhRn2ygwc7#}gmK8VQ}C$iCvSza^#y4;o6FC0dFvx- zH_<5|3j~yYO`hUQ8zB*PUK>~K%|rkhSLL;1Ib>&FQ?^zxx`unVCZhQ{VBN0jzeMKT zwT=^GRSIieW5OELFt}-r0led74bcEKLMR|9*IhqXFmae+jr5->yE_GV9xqLij3B6V z%m)S>&*dm5bj) zpA)s)O4F`}8+h_XGh$Qy4m4|*`vd~0G5J2*9C-i9V07(Y6PiQM%I6&XOo9byVq}Di z{V|DpO`wgwJ%>RV$QO0#&N+kWheq&+p0N~*fp$b2K)E|WcX{=w_9>Npt(xG*#$ zqn^+d2*Z`VAdw=}zUI%dYij7{aNhd|_Z>lVL}Hknp{e$pfBalt%2S)aAb5)}0`wuK?Bxx$XPw|^G##4^y4$Udy~*wymvVXla@$iuOaO@09wahVu%>tI=4 z>iH~g#kC=UkOW-2L%^Ofszsz&=_}923;+Gle`%qP^NijikV#Idf)((g^9bNQLOq%R z#PQH(*E>`;h~BXiHq6r`&7%#2Mj+_z@PhOhFb63Sl%~trh&i0H*z*L6h?Z88wC))g zBp$zaS5hfHS^c|_)w%+}6=o)r5-g`hQV8|=rHVxDPPzNas+jhh$QGJiX)+z5s$bFs z$VkRA+;UtK_2&p!XX*yoPUUk{`l)~aN>V@WmiLVI?wIFa z(ft%C!0i*Z-f2uZqv*;)TRgi?03(PLF&3eLpd}McX1=tmAx#J5^}rM3gu3uP@U@lh z#%kRjr4=&p^v>LjEdaL=L_@u6v>?mtdl0V7f`2-lL#h!l9_@q;h8|ZE^#~V+530j< zm5DbGs4R(lgp<23qFw%-P&e@W25t%>ajcsF(ws)3vf))Fi>dTa3%r($<$q>reD8SJ zAJSwi;jsb1HIW1~+eXBE_}y+2E|VkBZtCsj$gf{b6SBJ@V>@AuN@!pAA(lO9gEM#{ z*&%MV`%BtYQ!&@Dn(3H3vE-sxhUP$_K3@0U^E}UTEdo>?{ z1(9*vfD(6iFg8%M5|p3?l>Ux$S|3|YK$wV>1_S5E5R(BIeb(`K&2rQ!S3BkH!)&^i zO^c~{?c)~rn3)>}jOCcQGrBJoS8`358*U;~Eg`GyT%Iw8 z4bDf4wf8e1tXdiEDP}{T(A!NrsLvIzToSzP;Op35MFcIi%5zgkxAPZaHGR@{ODGzUD?XOn3?Blco(dcbDTW*!|_q_KyYvYS= zB#6$0>(j3PKL9~MzQ3EK&{{*ffnX3|0C#oX@e=HW8<`r2eThe+6jeC^}?EFRWGx6tXLeD8NA1Xtf^?&JyFUXOhF-*^U)lu;H z2qt`Z(?g`nNg0=?=`buy{GiWpL0eoApB3JP#vis285I^bYu@i_C=`gB@0=%sEB0UbLj&mld7j=Ju=F6)>_(|K<28H{_tfirpn=DUbe35?deIR;; zq@H|V5)UWsuJPC(L>8U?k!_Z@51B-5&UMQdwf2U9rOL%+p7<2>sbFHpetd$8Y=bX5 z(r`Qu0e|ypYTUeX6cid&@`QOGwP=8{S%!UkGs3L&>);yGz6Gro7{jDHK|d2JAX>s4_Q`7G#8%j9gzRTFqqKi>@zW`DLC7g^`^Z!OMfQpy-PNiI;GkJ&J# zMlR|?%R&}d$dUzGn7a$J+>7{;_=mO1aug9?d_hAikQ8%#1tuf6IMmf5+p@2tvbPu{ zSUuXpy&Sg+)TVNoDhwXD^$B?SE=J@>^5Usv=*VC#jd&=>*U0Am)ldy(zzU@1E8kDa z;(y%a=uoed$q9L+v#`F@6(nm;Z$^{$rRAqAVgBsXwV_g%zVSn3k7gF*|G z9*`LQT7N@krzWbAZwDc2Y*llYc9XlTkbg~vMf3Hpl_Z}bOSqZkrIMf+Tb=pF)>`Uu z;X9mta#s!KxeZK)FfP3*z8>N@ovWEScC-q=Tq5zQjN6?S1*9ZC0-5LtgB?KXS&slR z9y8@MYKcz|r^;;>v9OEsYS^A;)G2fSuC-LrRY92OTv5a~SqA+_nNRjlWV)bzvVWU# z<~N;vh}f9N7?%jMbhA#ycc)?{a4w2(28;JXze_zU$^}ftE)OS3+QZi?iV|UysL(UB zmAo@~5howw>Yz=I)sBQT>6AyIqDuC2)GB$kCSSqB)!uqryvZ+5|7`DJku4o93GOY@ z?F~OjHWosgjvx*!%FUubR6d)E!hd2U-WSU7%X`z~1ou!9m5hx3?xO$`cel*@d9(d7 zT0hK4O<`uU-4Qk2;>|RIi#k2lws$2yaFhD*OKWHcI^O3BVO4@BVP8^lXrJ>8PFl#| zRPl;v5x?&)#gS_+hQH=Y0vYoNr>3L^uL62_+r>C5>2>kd zsT@to<`Gl}DAQ3WP%G53wRBPJX*Th7pAtj8gF}T=Uxt)y>`0=77U!VI>Hg%}MdP(z z!W*4hoEj$va>f{Ns(%t-fpxfv6fZqrP9t>!?9xFe2umn}QVT%gaKrHrWc`@g;>EG# ztQeoKlg5m4lV&`hnR<#HZN8fZjQbias<%&)5^H%uBS$eE`^zx#FfVvxFcbnN@YL*w zn9k>w2tW+)`e^1KC%VO6S=2C0HAlCMb z$+%oFywEVHINj2ng%3^|BN8&diy>IoM(=<0wthc@*4I4H8ByyhRRb;sSXymqM#O~& zSP&x}Q|OxC=OH4oXY)s-d7isxfz~sHVq4jik2S?AoBJ#&p-QgQL(0yN5v{er)l#0i z2d><~7^xnTL4VNT%@zf^1JiCOz$@<23aB99mUR?g$w5sP_a{%`CN>aGUs4OTYBy@BpF;Nw3hvh}hRn7^0jearNH)Nb=a+Q@3s_}eL zf*UzEb4;sz%*0){p4}$Y#o%vek7xSV3+OH4RYc@G4u2kO_`5L$EaW=Vet7Uy0&n-% zaF`+W+**m8aGtVqwx%vk6>De9y9J+wkRbXASRG?sD8h=$ofnk8IOq(AsmkT}=J4PC4)^s}0JecX# z{*2)roqv6mZ&JxA7ko%z?Z$Hot$}2fEING^G(6`c;V&x3PQCS^G#z?}c__Q^?9r`I zM6Cd@Bjr~*Taruo>MVQFm@C3!Z)9cfVJDhz9^X)Iu3orJv!nFID@JE-Y<3{XFDTGC zsoU+gzh)GlACt}~VI7g5$);aWBAYyI2NQ`IaeoAX*xRoZRP37fq8q4{a%0r>7hw z29U-SYgN-)8nBh+4Hg|3$^1?YNWW`~mEZhasfv7u+E$>8#*^DD(8Ve;n4nZ?;(wBc zi#1uYW*D9#y;EwRU}!9-NY36YNI%%e=0jEQARD1JqRd1$;CDA5O7i@=nuJ*|F2*Fy z&X+P#x#S|&H}cNOet!SL@Ekppl^fpyy=+ohiyFrh>3UOYT&E)Bm*2Z6Nx$!3O_;uF z*Vp;Y6aFAWn5i{pil3+BKfCxEs+$$tnn0&p;V zIjZxB@N+i(ut5JAvpcopo!34UI?h8ydPFOsg%$WT3cXLlp8f^)39I%eKAto2R0?&4 ztzujTU+ttOZH`ZF$KsvfyY?G&!r4j=*oh|;9da#uNgR-K#$HR_Ef`yFa5+cz@+F*w-{a#=g1gIozrK`H5JiFOQwlLVr4(orzDbN%*)<-!WAXpB z&35ppcC2tXHTepFLuAR1`E_C^Dx0=XxJ`yNwHJXx?c@UZadopam`|6<2%d2xqdtW zfT|aG1q)OtNIxyVzJJyWK;>mD1)f2ciZ%#P$eBn}lX6oyG-CbgN(=~9mtQ7=pI;E3 zIdy&56un_LVFGa6-hH3544QouKYa3*yr%BlgWAa}M9h=eb3|n52jlw+Gh+Sv^2iTr zP+Z2v@O!>KRqG=ymf5BFZPaM~-K1fOuqP)KqdZ5mw(AT)FMnVY-Yzx=j*$}7T#O^3 z_ed#KaujwNt5ol%ZP}gG5}ngx%9Ha#B^4{i=Yc2vDjv!dV?N$B88-Z^B2Y}H5%jTo zZ$*AHf`&^q1TRE7L;pNin74{!zAj3Y{0fh5KXs~UdtC7|dgI8dmmp)YlBaW;z?QdH zJSBeFOs#=aO@BdfrAR?38gnKU1(CS&BMmJkdeKI+uvxgG@e~isUhe0#z#8XAVI*gQ z;bYE&M^V$K{rab0=)jU4Y{~l&prELW-*($j3;+PI`yYP^c7S+V{r)9bEWR5vloJE~ zDJL9POGJZPZThM^1^EuWT3S%a`IqJFgXco_I%i(kAb$x}u9@U6mR_Iycr&6*-u{eS z+YSMc+{fxGnhCa9UlZ~5Gh(-GN4k6f02t{YBcq`xBlBM@VT|4erHO%iB`NyMzAHW0 zzifzzm5JW7meTp6S*;O?R;Xt`-Mu-)-alKXoNRIp(8V~*07J{50WjLsrt;DwZ=fo(PylcJ(0 zh1vDV=_Pyr2jToXkI3n_eSmzh=rG22#$}qks%S^;QK+Zz72s< z#8-%Uq+H)C{nk<58`xWwCK*ml#g@kwSCwgZrhlFq{A}+tWYIS~&%2K*eB0Uh%`3MT zY>um(N+T^r$dGA4Cts}=A4PCDAaWD)qDz)N>IDO*J8J*)RtP9Za7novfz%>u8we*7@cRD4W|ie0?$ z>wh-OpKYE)??{8RiAY)y{b$>kbMFL$0FzU?XGnsA2=eHe9m{J=ONSi~0cCS5*rVL; zHrNNHV*mhlf&vi3*z@mc4iL>B5>F>Fkb$ZOjf|VS4Gk|lFFPljoUem7H%J_fM%3NfR#;0`{vQyq zkr>F{(-R`h!QtcM!|ubw?&faC!6hUl#KFnU!OhJEqhRy!bM>_FWpnkQ`wj6IhJUP$ zhm||bpdH*?X?~9_EZw|3#Xum~I?X@8f1A6UujfA*{2u>-_wcmlP=pP5VTXkgaBy>S z3bJu>vvCV?{Cz)cRaNz$yInp0p+%TJIeaZ399-<294;>Zvctnu&fD|f@9@xpc_N3F zjfb0;yOoWcw~ebO-QOV~&R!mWM}P40u=zdp=iJWLwj8iS{lWSB9tA~Jjek+2or4SH z&yL^Jf2Xvz`X?R4%iZ}8jkOhrjkApl>>wU6WUhaq_jIte{h#Iez4E^u1jg>)OaF)X zk6wjk-K@NRGgXuo1N}a)u(g|&gSGIVM{a9AE-pT68#WsOZXq^aAxmyHA%7bi3pODk zZX0eJE(<|ULF>OkDY|-iTDV%-{Dy+fusgtTtONyYglu_u*{m#i_}O^5U|<$}Li}u8 zLRS1dyjC_=R#x19gHU&OfO&$2^WRVP8_F66CBS3F&u77H#b#>_Ge%w^3tl!$UJHIU zZa#h+K`S8}K^q~fKTyB#L4R0ELs1OG&CdDXGaAkop0;l8E@B`R2UjoO|6b5>aIw+$ zwD_$wE`A;^PF_JCJ{~SX9v)u7|0dG2arb~3`EN`vPIm6U4sC5EEDuApfEk;Ei-nyH z2gKFx&%*C(`7I1g1PjkU+qnKqN?{py8w*c2cO5r3XED%kY?|MYe}7zxM)V)fBCO(O z^=IQBVjJr}i+_2Xw1pkVU$h+mj`)8=(zbW=as7XW^WUWZM3Hj$^l@`{Qg>IkbhNSZ z{P#Hj6Y)Qhv|zE$!_(bQ@&6#y|AkKUF9QL?=G@%<{88BFk@aWTRwhnE*>@kTT7Vj30hgPS;9Pn zjnBfG*NRJk*UHM);$Klb+-yC4EZl9R>|izkyJwg`{kdlv=0Dc=>|d#U>}_C&WZ~o% z=Hvu%{6jj9zl$fz@xLoT^mj-SR{U*w+FlTdvxANMzbfXxbbtDPL-)7+|1iq`)AqlU z{k2=h4dMrLT6<4*AJ>1&{(m6+3qi%f%Er~>-}3%D$zN*uTi*Gd&N%*&&tU11A7I`He4Z64_HxRSx+lDl&lxrp(9n-+eo&r<{SO zjGN2v_5|>cikrsA!PEXvpP(OxMGOGY02F1VbbRLz-}${Y_L}bR@+tf7-TEPu-v!R* z!(e7}C{!m}6(}Xo--jfJ03;+x)sJieN#PI>BOsbdy??v~(eOH>p?DVbf(Et7uEd`0 z!j+Z|tGvp&dwi+poNLRSv1uzYww;0PX`BA0?d`Ttu$>jtk+aF_VKNvW5 zc;-cnC<;(Xuo4mE;fpW$;Ovp2;gUkpza=3QbG5mL(|V&~=vp7hgmOWx%|*<^9IS>gYQfoa0f2}%Wgy77ziw?ajLKad5{eqjI5)4vKl<%MX`lLRrK z&+)=pO}G8f6H7eQ5>3EuorZ*(79blS2BNS6mw$olP&jki1_A?0R6Twn5+KQQn`Sqp zD}XpQMOnYVR76TJF^YWn#AniEA-Eq>id&NAuS7c%=+nP6VEAJD65e2+h@Ox&2;wEy zalvtt@RO_=teUUtm`B(3m==-?vfw2?K65dC&jt~Mur`P^7^b-tA{$_|V|<&|C-CiB zq<;#>4J~{TEuock!fFy0L%7Bnf;5_lP%K6!xd<A-8&}>3)#Tlmqb9RWxiC_aWUSg{} zAliuMaR~a!i;%sH_Ud`}BGOx6pzifmR)4Y=8A}Ux3!yJNUZOWSkfdtqgxoX#Nt^zi z{=xPU!|FA3XzxmY!=sbJ7w(4TM3SDw#2Uf8Vy5FU2Z{*2!K3tM!0V$ng?|Otu7IroTwY!{PJ-bZAB5l}+1o>*bAKZA zFcb(S)|i6rmO6sB6-FQDqXV=VY`UT$$|}u`+@+sVFa{IXbz_CFh3eT)zDy+aRP(jV zH1i8gI)KdQ#1Okxb#Tdw#w|&=6O<2H1Lkb~0;5;jSW!#r8mW^voJc6at_K_?z*Gv; zf+hKruh-o|g70f_{-zBwr2gmT{C_7N5Yt$MZMzy)=cavY=JA_1Vfnyr5Ib{qSPG68 zwQ&eXVT6jDQSBOgM2f3&aKn^E`%gB1{;xjD#ImVEw-Jg6R-E2rB1$aDNOWEC2^n zGKA2q$_t7nOKVSBgt?l%+opnmMI&c2BrApaKzic}9nK+eZYsSt22+Q;ACD?&9<5DR zo+*DHf1TETkL-9rmj&&ovt*JPZn`{zcLjE4g#L=1AAj?g)rRQv$G%D~xqtuh68r>>g6TKnq9d$3)$zVKlo}YY zAKy&hd;Ao$etBLGUnl(>^;0cpgc(A6Y^=9vsp|v1S9KS{LB(uMdicImXmwZuUH6Vc zPB=W0%=1nZidyy!1X)8S!h9qww)Io$@#%{mZZl-!-JuYV{_V`=ON-q)w^R+k;mCeYkSEbHLa4>ZWj_ z==b=(IvY5cP|wRitbUQcbxX?}fA_8wgkq<=J35$=Ot!>So*oxSIF1K7Kewgn6^f6- z@@mFrIaPY4)Yp$@vNkrW`|tzI=}!q7|E0JZlD3{R92QhPc(Wq!iQ`6= zs1^#d6j)&VI5i!jGhhEvA=;W%2F@Ls;3Z+FqW;qu!KqF_mVf!gR2Y{9D}eD@~RKNwr5Zt_Qds>%aC-nzvgTygV7C&7C=9^3m7PMmPe zWS^?Z9v^v7QGZ*Zo^a43Kgzl{&z@re%p~c1%k@sZe;^*gjlx2=+t#fuU8q0*qahm> zdpR8S@LAwN1VX`CB3I_zphGla z@#5_m@)RrZi;Ot3qFoZwM@cmOkCRWy-yd8v9{sTK2!C!R^^*{|hg~Wo7I=i($7_cY zHXHGae!QuL*ih5Yn$&cYsnhoIq!e<_L5NX9mulos9joL`0~CgB{S!Z=j`lcWht?wm zqrS-5o10>TvFT*wJ8}tg0Ke~7YfV|AK;7frP4a0JmEF(6$%Z>_6+B<3T`7k0K-(T6 zma1$o>VK~c*)Usgv75H@&<^BYhFb$}F^lT1`hm`~s$#bnD9?`dUMlC|5Bsh6tXvHa=o| zWij(J(pZ%rcdxbk4t}!9dQnyUL*vYNG=Jvy<-?N;NlW3DO~(wAZ1}_-56Kfhn0W1p z_UG5;GiRpI^U(8l{>S(gIM~(Nmauw;cYd7e_@zN_Fq?$1PqZHlK~4UEHrs($dHg6; z`iy0X=ozWlbE>lk1m6;^4S1MCSfveye8#j+b6t{b#CY&49!}$3W)wyKsJQElOzgIoK=x3y6N@eSWfj$yG_m8P6A_0uq1~>? zCf96XoF-E%c;egMxKDRN$F*VD_iJCO@ai6uz!}3sgpz;|=-PgZU~5kZ?N1-&u>H^# zYi@wa<+~=)kYaWsy1ap!d$3V*f#MPfTb?VJ1 zeCuFA6jyd|gYEK>2v)iwLL*>ifVqd7IJNB(`PfF=2YAD4+62$NaDVcFY=PAD%l>!* zg1{5pA_c1a3fpB8iI#LPb;P%L31$69iz#Gp#JZH2z;c)>o=QG{-VfUd!-d`Sn@7m{ zJ5b$Y?@8xe8P2S~X8dVKaufVYwql2T0Ff=tZr4r3evx z-$Ms?LMQf+Rq)}7Kx>*`VEEbv7>r0E?UGd;QgHNS7JvG=H1Ue~9e}sir;*#c0LgVm zCRXXdZ*!)Cn`9B;MZwY9!0k&)4tVyf82o)vn$X^~tsM7$v)fd|kd-)u;(D83b$4_T ztXBoz?~x{s+bCPeV{MiE^hStisLotcm|IPC>H4wpT13GnpFW8`9?*q}Awwv~fNJqE zjDAv+`G2e*PV3^L2IXIT?LJeV1SW=fl-%vTB5)HAEHy`%G|uEV5c)Ql=kDTQXtpuy76XZ1M|zqCVcnMKf!ge%`Qv0{Z5(M zo_}3WF7W~kWs?nJ+)`Wqvf*>+n~k5IK;#0$o8d(9#-q8Y=wTni-q>EBhdMc)VU#5K ze-P$*9Kc~%A^iCW!W1HVsspEP`R=*Z7>H;^-_lt#20oj>h+L;NQ&s~eCKDk)lVi7e zekiv3rmmN5SIfkqKcv+^&1(NZ$RA%ZqJL8x)vSybd1FOAsq6Jd;S60L*HY}ksr!;b z@ar?9x~~11u0xv*?lDV?5`VGdz2({|LK6`H@m3=tq{N~u^X>@&@^OQA@#XfnZ*W9= zS0RKBew5mF{apk%uCS)FQLA%2Rf_D17OXp?gPlAVlNlCVg7naNL@Y5L!l6y~gnv@` z)wnOZan96aB$}o&6BpbR$XZ0i%k`7bG=yJXUxOn){YoL+N1&S66C8Iu%LR7nsg1b5 zn;=jhlb}q`3A97LSfZ1}S2%f1})_bI)KNM(7@66;u*^q!6(p5X%c^%a1 z&!~T7{qEzNvpdsEq?w&4Wq)|;oqxwOlb}AYX+LU%xL)BG13;fxvIi1+w9e+bNH%El z?eWO@BKbJhd7|1@`Rn#2Ht~TE!2eDCID>eZjqNEM1-#l=bL} z9fR1`-B zEmpp2iH%vzWeaejK?kWstnifj^O2hmc#@)Xv+yZjX+l zn*n5%pF?mLBb6Yv(ic0_uzzAF2~6OxKtJe{iWiac?bhuLPyv=>%V7b|D>irH1TX)3 z7W$cTw|FeNHdRpaeS`e!; zyi&;I_KvB6rtXkzRjjVya*9a zp=S=#HGn*Afj}09BQ4LWPPjleyhL#$OzglAu29t0*0+_*q1tw`<1yB_M-vbG9Sa_2fWlkhEV=#yNgM@LT#SoxT8?y=%`4+b@R7W5?~%HIRK z%IAv9WL)VIqYL4!CR_iQB(dE7qq>xJ$Hy}9_d3)S`(d9SAw?qS4pdQ@Ek}mZpcZ7o zWooqxXY0sxpDy5WbZ8B%OFRoBGk|r1{4(Jc$aD_hDSy*O6*zeC*tO^yHB64wOb$(C z9}j%RTq}v{x2F$7+H%G^MC%C5H+32XO}#;f+tBZ6L`@qHWgv3F!Jg+TE$*0cU}LLE;p`d=w@@qur7KxQeXds9+aqOrH^9Idh1OiA zHi5f~DAzPHPjpTKhZC|G*`rSrhufpAJ?heAZ@*GzJ^~b9n*Q$Nb2!9+YPlPaCYUf(yB}{p3CI~@^LESs+to;&* zm0tOIYa+F(FE{jeLi9fre!%CupBf#VxFsu$)NmlJ@KdUK8q|AyA%Kwj@oUfvlO?M( z=^TH2OvB_7%=&Nq+v-e=4>+hq{)D7mRDyKPx$irQ87f>I#jh>6AkwhpM4xafuz&yc zX>MD5H&Fr%++0nCbLsnx#e3tVfgl7k&>al=T#4jM9lPu9t7!m zzh09miuoc@gR*?}fAz+dKD?kt-hY+6C*>AwPQ81N^Lh=NX&G!-SWauxw&8wX^BMXQ zzU8rvMrxeW@rH_BGv#OxW}td(dFDe``mh3~=_tTQCOk$v?f%4oo;llj!$mqi*|G4p zf%t~$M9k#!u8m)O6&c*E+bLZw2DO8AOuf(Kg>i8ah8UI`C0ww;l5OEDiI-T zYsVy$@7G?JowyEUw|{QuD)*rLh+cwK!PN%e!E58yBb8iuSWk5bGd3hGIbv(bJVr4$ z&h8tq(|HqcaIXr?*-AgWcdW2=pH$HkFqzm9T;k>MBFYw+l;I zhw@zgte;@zy^g)3u1##FnUb0-Ivj>Ij-B|<+Pb|qI*+GEfq#tUP*`IF%LSuS@fvEB zUmnP^!C$5#8*D7wEmjJexrEIms+}0IW~#YxwlciJB+}fuZ)svsGdT9UAhozz*he2c`iVU z>I4Ad$1S;8GTHaiO{5L_NxkP~FK?u!K+}wZHJLtN+g&6Fj(l{nW>$nVIKpP~w_3Rt zN>=6}mw$PjBD-8pOBo7pvhCGs(=te{)}9}Qz>eIRZGR(j!VDsq&#;9W)9L1DbGO^^ zgHETHQea_0?=X@q;Og!|+}n|L)d2$QpMQUy|5XNVB-U51BGNcqe95XSrsANptmK4h z^7JyTj>PHGjr>Q8l}mW*xd`o&<3dF@_V9VzBGOw};XriZk>nq zIK9~rmo4TVC2wV#fZsi31{}WKuisyZ(1x9Yzw&AmF4sbdAJ$~ukYvQQP#LFtTk$Jz z_uVd6q{Sjh`JCa|wcv5!wx*C^z;YqikA=v zfrf77hTiGxV z?Yd$ABs1$?=Om9BWLFr+IiqH~bTKc3k?O}wC|8>K#YdQfWDCpp>914@obb?xh%399 zi}}In56E;T%J5OnzJm`ms~`Frh6+uh#eaSH1%@_sO^2Xq`DiFl=dg1#+*+?5z@jWt z^xj@;LQG&Uu1T0jD(^yraEk)_iO(vzQuOX@32F;Mj*6#7$UOYBeoDYq5<>AO+uMhU z58mDsv!78=zsxA(h^u^bUKGDR+KZis~<_+w102mf3e>O9NF?Pn-jYN@sNkS1rvLx|j zX_6$%q_Rxb8L|~ZmLj2NN>WI+tRu;iY>%}JgUU7-WM_Pj&)@L<;au0bu5;h-^WI*s z_v^l{b6z=;C!o53mN@4*HEJiQB;`kahUfwUZ!!s(-!PGztCKys_XjKUz<-nK5kmRO zQU7)3P4|+O=v>I2rawTZ;XkeFk`2hpFPi!2BFs0YWuh00^9JOsMAqJ!?||MOQCL+_ z`%l{1U~Y20>B!4y-G+z6JJM-Gd&gOkv>g70RZYk&FZWqNahKGq(g8}G^$Yx9iHGTMU4O^sPe)HT=8#AAtd%wHHHt+v5W(@?a8c}3X2gdR`oqT?-9v7BbZPv@}UUw`7Fm`7BegSh!i za`WI4XavBgnZnbcMM)JCzK$wY+&>vgDC@MYXVZ@vr7K9A%(j{)pZ_=DzC7 zu!<|2tIM+YknHHc3iV*+4xJ}70*oQduZPb&h`>KvM9CQc<~Zl7o#sQ%*_$+Ng*Bw} znL%@ob0!WSNXK{xU8dOPryd37tA!=tF zf=%71l^)yN(=bz!hDsOy%$=hpQMyZx+-jPT+HzQPO$LF`>xbV0h^N^{3Z!yG>i3RT z4!nTjK+pp}qkj!0PUfrKamiH6&wZ9$+iopxfk~n=^IE)e<*v7>#XIQn*_&GAI$YZ4 zQ|P&b8c`%%zi#L?KkZrjz)KIV3PkG3JdVB7y`$^Nr@>~R*d$KbPs?&uTTyyoSwqp7DIw&es|tlGMF zIysW!Q9tvp`@OFl$pxZGj~JBxGxZ`N-i@gfUw>`DH_PlCPz+EMXzxPg!Pr7RK6Lt0 zJU_W0;HweV4pIy0Fh)HfYFMHBYnlr{q5fmF&9-DkE%HOdSGf1DI4 zB!B0$>Tq|Vbr~v!4hUL*748;|eV?_tXUbUE8HM9O(dJ)`g!q+D=8nbaWkR2Mj@^z; z*9c8epl3^X1b;`;7zr!O%QBV*6S78qX~F9m$%{(KLlY#%(GOKa2|=5H4;(EgVKtaJ zrFO&`<*~+I7%$ba2{U3-1<_>Q*MO)AF@JV$^SUGl$ozqd-kPJ64kC?xqOnExUuI?l z{5Q+%ykLa(o-K2kw5y>aEOnpM%yF&4C_8*LL0z3+PjzTWe{AVBKUp@o%M_k26m)m974tjKqzH9 zHfJmL>eFsGBb2QV3cMlD;Vwz2X@5mw!$)0`Y8WtP=b!zCv7FK~m*P5%A?nnMEiKcP zYM~J@HyjJbXq2!8$@T_~Z2IWsE#sTRwZNr96D3Dx5YG3)B*cAuv?u=o9K@pAcH6^r zHO6qczUW7lmDV;@OaQtsOtO>MXIC5&Hw*R6%f!K$hgCa|A=Y0*EjEaBIDb{D*pAMw zqkIdD1p#P;u~ZntbIU83Co3n~Z>d4va59q=*GNg)Vwe9;)<69c}at$%{b zPJd?o$n6JK7-vW@vV5_&%CJT`VmQ!E8B1&c z3%E}^_S>#!ChfMai7m}2!b_og=suhQi{PN-W^V+P1I(%&d1>kqo8 zY@$b-t_QBUcpaLRc7MOtwy|gQ?+9h+(7C*k?4;0DSH^vh`5tADGP42*_Pg&frOX}| zO3^%L{o4r@$AC=}&r_4`azNSx6GQ?(oKe`^gX>{QuxFr(Plz@z&;KS1w#~+Q!QF5+ z83spii;_@wx)B#UWD@)olTH*gBlD-qbOrK5rMA+r;ix&}^M9p2_1K$gYSrYKDU`g| zXll!hUPy@zj>o1AS`9g$>Ki==!1kc=Gpt5+S~X=ISQVPu_1TW*_XiAY#>GN(Avb}p9LH~O_mK(*hk0CHN|_xS z650BsNp46Xet&kE80G@#@rw8?Gelww&PqRx1_F!$dfpPTgbWCJZ?(c@hBGm)ciP`2 z`%rv%b8ag!5PEJ@@B+^!_y%pVfP|{h2iF4O8Hqk{XKZONqg6KOKNh@Bju9 zDl3z1cIlQ}HmcTx%R5%d%cqdX+3FBAk1t09OI;M*5Pv7Q0)oPUp>Y~jqdYW}oz3N9 zJt-N1)~IGYlj!ge@F&x~0laYmbK-&}D8@ahWN!_)M?i*W$4_NAWlknBhtc?dR{ACK z-v9eIj0eC)t6pF+cWVPp1wer-Wdib3c1qg$6+i9D;}=hCK-_o3CIVKa1Bn3OEUc)k zuq^=w7k_o=z)}a9m<*}9fFnCdg)d8Xxa#`~l;zOx;y^9%EhQHL<}&Rg{*2w*&$fc% z#XP0GdSp?r%d4F?&i8rT0Rf9%7rV<&VIJ{smzbnTvHynF6ut%jTile@urIhq^4tIt zq4U#E7ovt#uytY|M96?$@P9gMAAgkPtBD`>VRH4Ik0|J)vqZQ904< zt|(xv1r$TK;^FI*{R1f8c5xay_Fq-{HHq7x;%}rM$^2w~@?=w0%BJ@ibWa?Ko@%^c zlYhYbg|hiAYzmx%_JG-LBD?19c0{6vA#_8gVSE!Ez4erRaFOv|BX1{D$OcU(z-%3y zGG}((&b(ekE5xdCDRG-|-gJA`b04+c@kA^U>7)DB7G*Z)V3lDbg zRG&~@yXV=H%})lCc%9OxLx<+Q$5W;oPU`~`3Kb`u?wI_o`P8BbkR69<6UHlpD$tWv zy`gd1rSFCY4|IQkw)0E7)RDmB8!~`ElbY>X@w+hJKl4x}#qO%iL&Ha%0Y4f@r+<8U zfw%^ro+tX%e#d*ON)PWo1w7ZI%FK>xma*_dQA@Uk|@?) zU6=Ti7qH*z2fYjmPH)HLjLP)wBgc96x;T#iFDCJ6qCC!)OM;8};0^Mi5H(ZVRRua! zbu0S*HVMhv{992=tv9o-iL<~wnSUHWA5e+V5Q@>oTI&WuGKfXsJpEW+1TM97cd-N* zEjnL6(iV^C4<*xPQo3p8mZanppS~rC1KjtS+lkjDDSbY3$}Lj3=xEKey`O3K&Z%ze z8XuNLJedkDEzrui`(KLsRafJIX@^Fmcg@Z>+yUPgjS+EdPEr70q?@9J7JuZX4E=s& zOC5o6mZ6FtzP2O(G9&%yx)*>PKsXC9%so^G7tcXRF=@0Dcr${|xJ9guX>5uF_&IVc zyL>+Kjq0I3;FjWupj5CuKkw24g$(Bk!Fu)yzlh608ew81fU*rlyma1DVq9dXcOJL& z#xTB$9fJYD?eqS1)N?Dakbk`=MX=%BU>Z59GKkb$?c4@13Bg(B4!)-iYdt_Mtj>Hrah+Ybr zZkb&=)}yH_TbLfv)nb+&h(0n!80u$nc;)D`;j>K1~fw4STv{D331Zgt2iY!%sPQ zo!Na7gPYm^v&24CP$Ow$`dtNbwaG$gDgl@}&Hng~G}v=uQCx(E!vNu&N6j}s_36vpdZ=XwXg5&2Q zAamZpOSaT`{G|>3M}5cZa80EeCOv1e!lPRP?bCZ2QiZyh)vcey$T-y#k;wW{JP`}O zm!<(wwoZ|r0WYq60NO+m4@Yj$6E^3^!uCOKoB70s;IHrCzc>0E+o$3sQ~?3uH~72J zCvd+{;NQ338-3DRQ9`Kx{-SP02^N!_1h66nP%4H{yh`d%bX=aq#MnBIHf>dd^o@}l zVVo*14Zw&L+zyD(-3a(95G3?wM(!6KZ)gs~!q}wC*5;}W)_*-Nf+%h|L`+tyR4moc zD>0sjwla&|k^C5OR6)TQA(H6Y$e8$(r#-^vyYD3J16^|na z5A-5R@=xqFLL`e}pMdA((dRaNeh#P63e3w1u~G3Z5?jO&!Kl)xn1w;iQHzi1#jQ&b zr`5wub|sQ`A-1T1zutjBT;YX*0uZUQ5KILU#L>kn36`TACW}B3QN1nKmQR0rUU4zE zoCTdlGYj3~Sx;T1Iw0&)-|^nH6>_fT@6{g9ZQ#Y{m^#cs7FIg-qbakKNKPV#;jweH z<`8nx=3p&dlt;xc=@6fkxmR^>Kgk7auqx|VT3T@Pjk0Y(m%HVU_02uDw$xi=)1T9A zDyN6P${sXyknflP{gtHDvxSs>uEpzcbBSvqck@m2c|j#L*yw{pk6I&`{utu`VmpSklJzGh1~KhT4!ED1evd4mat+5zeI7g*leg5pk@L*+ll9qO%G zsKCV%I1-O6%Zr2r&*q$oXB7k*+B0sW7Ah2OWKItAFozbN`))H!PLzb-feSNbzE4`$ zs3+1p?;*bJygc<&Vg350sSsf-wxjUo1n^;PZNuk>=-&OTxZ=M3Qd<;>rOE4TDGRyqWGcS2+i&Z*EhfH++^fq%z(_$-A^nV_JB9?A=jj^wa6 zokWDQ6&4pk_&_LOP*eRG0ta64en}(R#;_X7nv`=*2@CHTTu_r3xGktw$!M|=2W2_4 z*ii~a0d>R-YDQFOHjC)owp5Q3N=O~yOMoxsFGkf1L7k0-!s$!ZVJSgBeC5kWIROf8 zlH(%Yk)Q?8UAafZD~vm^75LAANA^Fey0chc^cvqU|Gd{TnY?_gU?3o&(Eo2>rFG^1 zd9OdFp%@`T0#ei`fiZ^Abwtf|$s;k6FUq+B1&06$hoBSHd?ZwtkseNujh4gaoyk9* zYpZ&OKAAZ{uoLv?i#{l*BrjcEVGBlNpj^Pvr=7}PAKI}nMOvyfKK{t#C4;SJf@25M z661y^Y>!xox=4?qTLNiMHSEFY1I98?RIzf@*5~RDU{X!c3hJkc;k%@{BQMaT!DpDa z{H_wxv%J{$jw%9K1l&}iGvruO*V4IWP&%uq$6I&oN~=+F(CprvNngI#MWzr6cN_Vxl9~7Nrft% zGNQ8K?3sNo17(6rv5ZTQ;{dS}1StLw+jlUk+KN{+%dzT4y^YpCnp2 zYTX8oheAD%nx>98bFJGW>N_EF(9h&09+4aY!-?pW)XQ=~&Ytkth&{?-gziBIooXFxd6<0=U)_2TV<*)f-t&9UGX}_v?yKn- z+R~XU#6;Cbmq`{5pWnVcKYMn*Jvn2T0sLf++=d#Medi=krGq%U$oG(JY>MpI3!%3F z+M^U1DepWqWOa+`t6#@PYo~Bd`RPq}uaQ=|7^fn?*?yegSo)F1;9B*3y@GK9YrvJ- zCPnGTHzv0vV~8jsR75?{k!lvffNse$B~C67i*)#Fot_P;A0CSN%ohH;G?yoW5EU{c zH?>p~JpS{-;I+{iYy^(HO+o1JR{WU1V4wIim}e@FXm+rI|79M)pY%HBs!dk)K}ccW z4zZga0Q$R15nbPiW&@+S6XyS|Qc3>Kf`5ur8ZjRte#4HlOU$3k6b(?`zxU&PVe!-G zOc2r2yp0jj0h1cD_G?V&zDKl`e2l@B>y2u`Y31t#+GWbL=T0p5kUDO7rrU}K4)^pg z^{WAmOhisB0Tc(oGo-UmSB{MBOTb*%aZz`3%Rt87RuEl;q|@_;z|55*q8?ouap%~= z=(J@#v@oDZ``}{o@PCRsqhp6PnW8KweHOEh0JiB^0Odq7Sz^*ZER2QB5(cFMFhCfR zm}*A~uDP5PV&XEIVoc@fQHsn@wtpN&;;8=N%X|@W(f+y2pJE6N3jkRLFIFgE>rXa_IV*G7=$U`e3ewBjUFUZWg?n`7&lot_ zf3}``h<-dX^5J!-*-}tj)>W9~7oRn7Q`xUT1N6pAPzbYfJ+y~v^neu3HM;+JBP#8Z zi3%xuChV!wr?DC|)Ad71Ntwv)=9{uvP_tVI6aIwA-3(y7#RYAxh$n`u{~5h8>j}8# zq)H8~7W?_0{!qtpIZt%U;Ja$pGEi*jl6 zM3y{Dy{5rIwrzcyK^i)reFKdTn+KH(jt~?%uiL-#WNP1yOO9hIZi6%S-Szbk`ux$r za7Y6TK4GMPrBe6^U~EO3AY!C#8zZ6t&ei!Hfc1LwjTR}J_QO`B$Xw!uR$z5sL`QOP z8FD;j`!nYg{gYX-DQ&pT_*{HG445U+wztnPuQHiRf66!~$h8b&KEYa@7Ah%KkN}EB z!QRn+yNAM}rV<5GYOLL!mcO-i36FG~dc!Cier18_nGd**PV;eM-i%UnR&+L?>S1Tp zjKuMh3ajAQl#k!SxIN_>_qqzs2uInN$ndT^Obdhl8OvpNrJi(VB)zs}%3X~`;n%OU1@Zf{Oa*9+v0Q3Q*N)7ji zpep8cv9u98Tcn)fOXi1Ga`y~?L7`@8L^%iGDp*zs%ge*-^(j5N0#ag}!v5zxobqGB zn0tucQHl8XPn?A*ngkpd&+PTW;pBSI)RCwkPh|^Ys@7uzUO0Z$sHB25B5Lx?Wu$9^ zndXLKp0>t|=TlQT=rqgG-_)Px*W158gVivW;eG0|dk&!zS{qDfcr~+slBvu7<`?SpFeMWk=I4-lEE|%_oxx*{k=A#4R(4 z!ucI{2jdRean^U))28I+PH1i5X!6SZ75;br$*IBLodd!&p8s{yz;BrLhl%{>UmD#2 zJnHXMLk@^h*K;W3LGit;!6L4*rv-(zYTr~RQ(pXGU9q?+P_(v83l6Ty%uz4re0zDh z63lTT5tz)u#F~Nqh1-It%8nG%0_0B0#x$h8WE_e|JOSbzbJM&l(NTft(C39#BREUm@HRBh;v zgz*%P_s*T{C$5sBu_4A?589qv%rdQ!1jeg`sM5_67Im+xBRZ_ElQf$01jo%%{V;j#G>IxdbwQ#qTB|7ag&6ZjSbt56564->7$EU_rp%1g+{ByBEUJ&?89am`^GYpFlY`-~$&R!OzuxUeW> z#(-7bU}%pdv&7;uzfxR9aFy1{nZN7+rmFi-T;UpZ>FqxEBeIJ~I$lR|dZffy+9?nr zNf)#ZZt$Ra|rDbu-W77Y0pMi=@jXnf82qM3{-Z9-IgBQfE}+2uOyMU8)nu0Fz%xo$ymaBd3$Xb zXJI~mgp|VOR*FFq-@oC*72R@men$18*%#|kdO$r&t7gRek}1gS$JEJ+w{fxApR<9Spo+EdH+8%LfSMeC_f-Ztv5D{357omm;}@|Q{dS6)o6&C zyifSU%1f<{6^uEDKHUp(ls{jx2iqpuqmf{b-fl6)T~DMdJDL1|AgWeI9Wx?qL1Ye8 zJO+14aqpNCC@xJN3@vY5ZnVicLJw|`=`R1{-QylJeS<73>#xz-JK^f3zw@Sk-Et$AK8h|83SWyb}Jh{pD|b6qwi zRTboxs%4S471hGaBVON4zc8%K-cWEVx)8=f$d@jyqzDO6jdFo(;zA}oH+2?(Z=BR0 zY^!or@GqR_cE)ZG)gN|XZfWIq&+Q)G699ZUUR)B?g$ARCQ5Zqb`dMsTJ74L4BZt)M zrY}pzZ!$lWIx${QHNK>x7yGD+800?xJ(R^(rx3EOVx4? zMi4X=%aHHqt&uQ^$DEFc`JE@?H;$fK+^f55mzz>Ls45<5iOv1oS9xueqJ~Q>k!1i< z5Uh~{_7~xk7?x`zJChOvx;&#B4nGgVqtO_tX}DftFjo*hyd<}4HdYw1FjBhf?MH@; zk&d^=?-eH{s0653XZ1Zeno2HlUyGWW$w0yR=+h_%aidt5Nd|pNCtD}DHi{hLHOgoQ z#2>*P;hvGXSQVnv?6mOg`^oez`nQR`Gyaa02d;>SE9^KZ$n6%x{h0;r}D z%*ozJO-TE&zL*Bv?``-`6eZ}k@&I<>L;-}7qqd0T^wGS#REj2avj;=M9BF4Ndn=pqw{pXI1iHj3=QC%aro!D^c9GPb(pPw8$wmLbCr zK8Quy;PdEl>siXcy>m5QwSO~>=2=t&cvv}p!O(%05f6!(V}UO_9#HO8oIr4Bo6|CZ5g#aJB*o8O z?5|tvh{DL4n=7^6NljGewitMLHpe6f;x?z8K^-lkYZ42CJqhXYj>_3SN$spomTPy#xDTu)&YUL&+F^eD)BcQ0wMA(_qBvnH&{RGwP*$w-U25<~@fy(O++}vR9d`a> zPJdteNO50#ytpqc?PzNfch;ZS@wqefz~{LwOFtJt#7TH|rpv+?!&HgT@%;lY88%9G z@pOErDzX!r0BBdhFYwq6@S{b9j(Z;L*(Srw#qQsM_(VHsqXERR`u~yy{^FN3NMukl zfU2;4&~M2JgLVp%wuL4z+v^9iS2;&*gkE&a89AG;uN;__C3sOHayx5(I=hMTXv%MO zRhryrb}_#)9Mw5u>Vt(+|H~tHTQP!qvbcn}ogKbJyiUJqV51u3cx7JU7_|VWLSD3S z2+uvY_1IESf_e#r1Wy#-7dB5R^lU&;p)V$R1XqyM#arHXKBb{+*hR{gjjK_AfXQHH zp3qQw&RlufE^DK2Qw-}@6(_59=0PTlmD}YnYle$b@OguvKow&{DA+@y1`oMs;6eP@o6vSIJwe20mhHMhL(bs1>6zdPK&U z!5O_BftU5zc$puf{@m>iKe*LPq=PX(!FEo}B)aJP+#@){Xt=P&w#GJdHatBJA?wt_?N~$p@6de{l<(6D)RRmK`bzT^x%Rb zrR|s@Vgnc~UF~dRRORA=h)_BoG*G5&q#hP*i%L5m=GukR8HyfJvDSZXGiuvex6r_b zWjy3MVD(6`W8T*ilU1q)DeB?%fhnSth1~jQb9l(#-(}E;-6-kn=I=kYLw$gC%2+m zg*;>C|{P4-(3s}f@BHvJGGI$Po&BWVnr8F-w)eU;Y2C$>Lp`wHl1u9v5BuHBMcPk49mHEziN~0`w!qe-iya+z8YlXn*?%4*?tk9RvpW z`QzO)&%d{E)AY>|i2*VHefPe=Q?(E{BKZmf6zR=X+L^Idv&5c!5d+{d{ez+#d0BI{ z=zzzdn;`T0f0LHed~l<~HHIjjg*K+1@|oBg%(kv0re+AO&bg%%YE3PRnX4$%8qZ|- zq{PAIV5r>>WrvBbo%k|3l6eo2TZtavkQzu4DZd7oSBm6gJhVaCrwO)l_ze;O4|~3D z$0m;hbw)CZq$WdKnlASBpgca-%V-0{bcP302pUHUGoBBkk>k4zKadO369_8z&* zE~ljG7KR+97~??jrT#c^OWbQ9nT&X)h;u~EI>ZA`5R@}ROp83-Jn8;T?;xGnRh;O zhdzUb4}1NQj@ z#!~Dhr{pY_6QPkVR${gqWLPjX|!$r zb+U#?IYLn#dISrEXncO>UgocJcaWG5AJ5#r#7D#ktHiUgJosM7u#r8NK7NM6#p%90)Q&#rEy!UK=YSwF{g}A6-!p#mhEMGPemTEc6Pd7zlcoT z$pgs9g5Pdjilv_xn@`)CiGsSt?Uib~fg;(6Xx-FmC5({WeS%_r zz7guR%0|lAmlr1%Jb|}1>eT|{C@<`562Oh1u)5#6u$ov97l9HbfH;=bHDcIMEU-r| zT*7F-ZD(lN!xu$SLiLsUvL(FhjAZVrUSBfdI)`SpxYI4?>3pO0h5Nxhgc60IMffokI=vxAXQvrU4SE**3 zx+TcxzhYp|e<5BZ3Ejc)oFLuMxrK7UegWAQeg~Df2)H#5y}xM1Keng`qR2m4cmm>Z zn*dlH)BX+9fKeo#rf&hvuvO~4zs2&-2U-{d_cFUX4s>~>b;`<~SV&UVR7@=vvNd7% zHHkC$2l7H)Ub!WT>rhZAx@#pL9}@c3xsA1-`2Kt;6qWOuq4dmwb66zTG^d_ffC+ix zF#4+c-kGl309M50B#4NOj{q{bg(6J5Hsc>HI9?)uV`Nhr^@d7AqhY)O4KY+KR;#VEmNmK zq~}c0U#>G~F|OADh?nbhj_rIRhFJ)&e=HeHPVtF^sBBvuG6>-Y9}!UvAH|H-TSGy0*fIe}B;+Cy_FBB=eot!cNvtUO>D1q+jey^H-5EU{`p zGIA5T_`NTa6@ck5Su)P7;EH%`bb5g-1pcuoSw0w|RYp5vJyX)Hu2Cm980S>o9_IvM z^-8#;j&v}wZ|7VHb)UkdjOs3DA@7uPiOL(qO4nq*WTSs!RYqDMDi{-=BiUUmycsm4 zQ-jWq%$rW6G6nr2?mQz?#GYoY`%}0Knfk%G=ymEiqEJ}H6~+~bE2zivYwUH*33C7H zovAaP`oTD&A0?;5^Y9bmZ=lEI67H4*4CNpHQp?kT*nu{!#{v=ge-|QxFj%fMlsjjfk^oTQ~FlaX56N(sR` ze)GOO!B^nZt^Uf^j%aed4=3#Igdjs^7y?EZFQz=t+$kfVf+>wIRajS*T^furg|MboXM8XhHeN@w3Q$&JjcDY6hk{UWuh85F5)8)Pc(b=@#3Hr!4l*X z68f}b(B6JddsTNcl0Xq83nnbBkE@qvg?!%pna)gMN}B8775s&`ZZJs$X1<^6@+T&c|a$!$d#nDWfUDr4@>ceEZhFNFz8RJU$&* z@b>=GH2w$B01DE79EtcFNB*M_LJ@#!0`bLoY!DMd$1R4^6#Ul~ew1H^-9`t2>zat5 zWzXQ5zRCwB5PN?>ib>2hfa?5&Aiwrq956~I zHC*w5EaahomDK|s;bKkyvIX>GAF!{77>R~u>~4CjKZu|F9t={ip_I_c`b_uMbAEin zhk7UC_fm8US1Z#FkaU1d0U<>ZJ`hr*`spj9 z=L)|}cKpF|Y}wihWIzks{d+2+mIv_<=B7wKnt1R`rn%^_IZ#Ty$-W0hHkMdhM}hZ z@4c4WDVU%C`3(@5S^#2zlO8}S2*l!jH*NkaZUHV41bLY|`2>SPrV8QTexp&GUu2Bt zTMr&4Izsl}>eD2{Yn_AgUU-r*Si<}KZ%3pBzC{Zj;4LcVC(?hv-Qr3uu(TfH(fm@h zN)nVMUxdsx5)W@hUTQT;TX|ak_AZyK%PXFQ_~xdzNIj&-&<(t zDEM~Yb-B}b6~SC5o*zJLE|E&0#wVG^Sn0MRD-*4s90L#Sy59=MC<6A`^ZDlI=LGq* zSAZ3n0$wxxM;ld_n&{nhwn<;k z!U=9!V`q~}MTWH`Qo;KfwgR#&!7ImTceCykG#eWZYbNHGB~U^>Hou#_g8fdnP262k zB*0+d{x|;oP0&*PU@8Ai&1524He>D^AN0LAVdg`^2@~q{-rouqOPbZBxF$LteELD; zE9+{*@QM8fae{xC5MufVO48#%r_W$cpCt(>7gG`Ce*|A{vyMm8N`Wa((~l9!q56ge zYbz-bPK}6Tl#$dYf+qKADVf`!RPB!F>0{yXl)AACX%+z^eI zA*agUmE;VS%)*xssJ;ZK|4|7j>qfM2ts?VuWNwWKhRO^t;Vh{@0cKGU3 zIlI0pa7!RAd^J<>xYQn2PPXe`fjG^f;b`m2l~xtKCH_iGQ9G7qsC1+fUwlY|r%lf< zNaq!Vl^ER*h)T7}oSZh4l({Tzx45Fh+E94yxJ1&$5@4oirlK)aJR6y-QV(){hNHNl z%RAM!{)S|iz^|k$m~|gF*;++lqA%V_Mek8_@a>R`S|o{)GQ-DLb|&e1j^wIbpXGtF z3%Im7b*!zq*#6Yp^b7v1$*)+GJM>kjrG$f?+NjSvToh{{6*rNOByS%u&nus3qt2c# zlCBK*;=X_U9qle{&aGHLTN3^|+G7E*GCK~<+jpp} zconvjz3|?(Qdjsb!j3Go{ULYT$)9*ubLA~Go(T<6+06+CUP#KBJ_j1Tv6s}l^g)#x z9_7w1#+}!)UdFI##KL;y;5 zV^CqIc?&jfE9HIFfxbTTzTWfKXYyQnhzA(I)R5C(NT?w@&^7*ztEa`Th^p$io zY6vVSCqWTye}R(D?yvibyz`4Y~r~l zF2{Ub19UDnXFP<3;qwq`o$ow81ONdveTi_~c7`9*PSKSg#t_cFMQN5rYV9%0d1nu0 zK;Wt@Ax^CpSydAYV$9`G^)@2`tdLC?8Og^yGPD!}V^L%1#z=Mc-^dD5V}>hr`j$C~ zzn@ZC%GHx-7JVGivJU+pCQQ~TV{g<~^Kp|xS7j6a3i`Ki`iBBPKDz^*1M`27m;hL5 zAOiS@I27T%_CMlK27}luO!WEl<;N5^_&HVpV;wMKp{w$60PM(HmjcVkP(wt-4q{*QTbf zYAEobDq%UGr63)EqHD<@+iOTirv)tYx<9)cfsGDQQ)|( zbOA*N0fG9rIAj$3SH;6kdk%s{!d3iV$nBr~Ww|uwCRn<(mmpZO{}yNNkW)9<-$|-~ zUy`i{BF>np9=c$oD^v&r$B)GGyXW>T?sT6#yT+j_3Q46ZDf*j$Ev+d^E7Va!itQ7c z@2G{UXo$3XaLW)+DoG2w34SFfjb;TH?-(;qq=GOzb3lX-5|kPXBzAdCU%t}Z?PlI` zII$Ejpo7YjZ)nVngL7`wIE{#Kh_#`^<_@iO^D4)G zluaYGiQP?an`GTK?&9_{-lb6MYBz#Cr0ucRBvKAAAbKIlRMY_V(mvk_P zsXHp_@Y^p(4*c z@lN+wX*#N;kt0`a^JZXPX4w?CF-vBIO2Kcz3tVu<9_P!ak-9!769!wlGA7zz%dGtR z`WcL3URi6odBM&%?yP~-Yhv3eI+qY}K>LcWW;~9L8%aR09uLd?8file*HBF#)u4#d zXm%>|okfPAMi8#1<(={M4@{2e#(yIO+LYkmHU%WxnC(Aia67Desn#y`#O{0#aWg2S>+|(0qT0-cp|qWmG-X|jq`6U`r-Qa zF#)(5N@QcjP3b+*#570I+;CWDKw51AC(df^A6m4W3*u92{DmxRv)iMfH&KNjwbIb| zL?D`Lw56#M!79lmC#st*-{A&Ymme&w0YKO$5u=x+Q)o(=bwK73@)6<g)`QVr3 zoW)eqw)+035O@P%dH$puuz#l;AVrk_i+J=RV0Hc(=zmfE>K)M{1jRMgp~QVKRm-TB zS3M3G2HUHYzQ@+X>kuin@?`NS81bt#yU6VMTeBEcf=w-w)+p|meg$rEjO4GTG9C`r z1CB_!P#{BNY6o|3fdkTq0uNqNQC{nGsx z>5F|25T^jfyZOK4{l7WH&lM3N?ZgccDa{}X7V_^9fDl6GrG}>NeLc!~RaotCIjx(* zc_+&b(-s1&<&e6bx^{kudNWLb zSu;9ff;vlpyO}zA*6nG$;sSH-RuvN(OejawL&b33erbBGW*`)#3#_f@@eTOh%{)p+ zLb-EgjxDDI8})W}QK|SrmM8V%6-?70*0`ww&n`0NX+kV?FU=c9>+@UW1N)>Z zYDeidF@fRg{N-z%g!MY_*_Uf}>{Dj|TLr)q()rS_1Zu!Bc;>o_n!eSLcR8MrA1f%q#Al~+^Kc;a33p$V0jyzKiV#N2M(l$*d!$Fp0ya^i5W?9z3#i*N<2h@NK~ZUL@% zPp(KbvxG2S)n+iNJ-AaCIfQZp%;a!qbKKMy$1RmaiK9WWXx#Yyz1V~9^EJ+kpIy)W zt7s&k*Wx+G@K1v^Z5#Jc;^?^nm(Hb+lGX!D&TJ^&BAZp;3dUc_T*9GsI3R?}sM-0S zaVmO^)8QY>gFF>+=7JVGXQay1DV2giF7CPl;fz=+8_)}V%N#XH0~3 zqUkkLb)}kz-+uZgCJD0;Mm#7Q1|S$Fpi>J7C};ZO>)hT61#fp@s-NI~sS+!xHzy<` zQ1|7t_tVrXr)zQ6MAROddiqu{w@QUsQm9@hK!xo}ozFl0O;RaO_*&a zW<0Egb7DcWM)fG~#6zw)cYpYiX4h;6b94>~oj=kgP5Ihx68C7Kw=fGs9orG1kGt8D zMd$TgP_eed82Vv=&sFJV-d?8L_tImgORsYF~ z!$Efwsd1op^;r9+>x}ed7;vMLx!&fz_VP@QIc}?L6+@c^@cMYr#XQkoTGNJVd{bF< zQ%!n_psADKTu6REiL-*00VXa{hY8nbQ|^{0Mp9{ul7bFjpmagJ{33KAsmslasw3W% zjx>onAtoXAdGAcgyPS^}k-+w3x%or3s8RrbNoDb(WmAaodNrpoFCdEU`*J_``o8y! zllHvBt87TJ<>%~BFWiDt9)=mckkgnzUtp&lSrv28WY6DV5nN(4W62kO*raOx+;5ql zYWG5?{PCRp9ddQXU=0h0JMSJm&3C){+N^l@E3|6sp0dB!1V!0}Zr)OHk&iTG7ew}{ zxMRnvPxa7q6AkO`3&8*QLHHF$znSVej)*E2ktUB?D1myZOqd7{TSeOLq*UNgSBQFs z`_69a(Dd8)Z^H2OeKY}fn+MJGZ?MCLMXc4CiQA;*rMhrV=y9R77sYbUNo)FQ<87$H zx~1n(rS_|wp5BW#={4$es`C{sUF{NP$LvlQ>F!_hqj=+a0nCmiCj;DsP{Z(VEBO|vFu-}xDn=^23Cs};8mjqmNvU7F=*z-Cd^(C^gJ}_-(>!^T2 zrDk7N>lV~=);(}75mqmty@v&~Y;OXbHdtFt994WppYnNsfDg9sehzjJtAWrMj~X1O zyqb*Lh32!Fe~14o0=qwkf~5in&^Ukxg#B;Ikmer%%blk0jtE4tKmZ1mGJs^9Zkk+u zt+<>>5Of-b z_{x2_JfALKb7}H>g1@lq{}@BF@Ki%f)%TiBR3*8tbcuf64>?gzg8I;khd|LjJ92z8 zK$jWJYmLYg0yxe|9yIA|(Q(q@Z=cM;6`bfHCao3R+?vCwtl@Jm8YM~+LP=Qs#3{ZY z`m)T4S;v?+ByDNp1le9axZ<8>nqmu0SvF0_xue?`b`gq$U*X*=_uDG~Y7~#qMmi9JMT(l{ps=v*(JPZzj95wlAsFAp z!1{5$z2y{zoJ+`48Ho38^xE2cA%DDDced0y5i8XPflqw3Utw&O?y_KbI8dGK>omKA zH7mRG*heD`6ZDBJ%CL8-Um;$h`9YHI7+OQ>zD>2p5UOmx{#~;OJlOsL(+vm~{)h4X zLyi9*4H-AB<})JRf5btcZt~Yvxo616#}&Q4;D9O3LDcSl zzvw*re7~BmsbthlJM~BrT}dlobbC?;=ASkmM*)C0vTqnNS2-2}<~YBHKOVFz^uKE}?AnXYarP5OGGRc!+3X8&gvjp! zTqgKh1{iLMBbj0}7T0SwUoO}&-Tc2Xj~D!k4IAMhHnkj5DUw!Cxc*216j8!{Gxa4z zx!+8kY5Sw$L$;F63*$HF`X6bmW%#C0W_`oq(3ltjI_PgCfol{Z&zMmMqTz!#h}!>q z90&K9&@n}y?1+gPv(&=j;7i%Xn)5)DcSvMsV;msJ_B(ojnAWF zc27j_^`)+Qoxw=-$APCvC*CCHi8$xO#OLvD%{aFd0rGXOPf+T9^D|z#?qsugl9j01~#1+PpD#Cvy# zEa8;5yba0$Unq?#t4602#UoETS;#X`qUT8WiP(j7gBkq|^4|R$uE-woN_IUu>32gG zUZDj3EVTS}r9)c`bSmP%l(80>4A@27zg{J4g0%uNqRH4`B9vg@ehJ?@EIZDH4{I6g zjcP4U!g&IgA{@GRjz4{V%?JipGtioWtz%MMm+8~g3;|Ue@?BXHinJ=shED7#%zE6H zS@?=Wc8N;xu!L&SW(Sjr;%g}NDRrh0ia8QF6cMVyRWLt_jiN*7UZ13iPM3w}DgN?G*U1>F9X6TIB?^{TXA8sM$6jH}HyCb@BTJ zr$bu;o=6)VBo(O${&{sz#wWIQRl@wy<)0J=uFwgxqiQnb`jN45o~4FJRXKJJ)0+=* zBh0*oN3S^p$<+0?)eR$3J1B%bdX3;5=ZLq=gU=R~`y#J)K;d`gxA4oj^GEoN_tlF- z1zHgH-{c2aaJbSST42%sH{*|KQ%xCN;FocS&yo@DB@A>?et$6@j@@NzPQbd@^7b1B z?GiIFdcYOwlV+1#93-X#As=mWB~YA!Qux#3pc9&j3b4`RE+VUu4rY<8`IL_d$3OwS zMCmY)3>DKjaWogW5(DgUSnT$|{iti&VHW~8&LPPM+PA!RdAVnK3;Lx?Awv|uoZP1_ z&4rAShC$JzkSnpc4rP`Y@;APFP)6gq?R6yD^*IFg?2?zMAYYAEjRXl#zUVhSyH2guy(4bWY7A*6(BN0nB`0k|Ip> zPQO~uUJqtoocyaWc0tWWxMKXD^(JY@7C#N89TqLE#}l~Xvr3gY5jezh_68T7$(F!= zp)9$40G@G&ogN$;Eu|#dcXQ0?Io^3Dv^tjU(p*HsO5?wI07gc<6x!*%3Ob^JE0SXZ z%g-Fhg7v{kCA*cr8-uV6iJyJY@MJD*1oG<)vl~gL=48n%o2K|dvJd3CR`c;#(TtKy zdQA4YJjy6LKzw&riA8MJl%z?nZd+s7q2QjT*mDu}1E`75WX#(SX6e-olkr#~Qj^hH z9`E}Dh)$o&Drq-2xf}Hg&l+xSDE=+HMtmV|*)nQ-oiW+U|f0$k_VekXdvSy^#9-jD=MCfI-ZTP245$>^5^bYaZD8~dfe)sw${_yOsE zgS{kbn?Lt~(}T&=v4Kn|Lze=Bw$o7q>jYoZd_y`NK4F~?+)(DA?yWm0G1bGR-_1Pv z5pKJJk-KO=pTiMVPoQFM3fRji2X7dmDBH-lDRfPcme-QmXqULCK(og$rzm4oSuiZD z25L`Hw_<+j!JsWvAd^sVXNB;rjzt;KA@#Z@i>0Dy1qgZDES=tURlDXyAs}BU!l3u( z^R7Dt5xWzl*LwwmVSGS5ds3y)uzEQMi%O-^^7_ygF>kbAy|Or1tU&!OWTP;g{msx)`;sH>d!6>rC8Y^wPwC9dTlpSC9NL;DYB%jKq_?&a41cuXf{N8&T&a)z4-T-# zPG4JOhgFD6+EI8FiV z6LJIlga}||l(0uwopx%n#dd=T^|WFez!PfKCHsgxm40p?eT0%NDFe21O^nQNh%bLA z0^wRRP=Y7xo{{po@m3WHNaTd7aXScSRZ9srtJRm2*FIdq3Mp{7pGXcx(EN^}nLLVR zD(7jARJEV09i>kiN_GyoBJ)Hae5l|Q8+*B4BmE;0w|9QQ0X7O*SWFWRgosA4Z5Tq1 zi~BjLh*VMnngpU8j9acfHawT{Dmw5Jo#&a%dc8-({y+BKDxj*Z3maCtHr%o zp8-PW7A#8GM9UCHM;dUfRLL1xVRZ1AO7BK8jUiQdoirzGf?#eKN zWtOzZ>^})s5>6-;=bG2rhgRmZ7lOH`Z$=-05WW|~y?+kO!qmS{m&Mz^$R6$m!UK+& zd-p5=ieT_TLDf-Y+2Dw3vd3skGb(&1m;wAUK^z_wD=WG)5@ppgE@{%}+?#>9iHqOq z@|Fp3e9TFP^~paquzcyP=uxEFpM2n22CI;5H@cBnGvDNlaS& z+4x7_%V*++=0BQ0TVo|8fOMF^jZ5pR$Cx{BqdqTiKf^`)Ug))Wjwgvi!B6MPfW~1? z+V?`;0%OCy+W(0*W-!%0C+;QAzU64>_vST&_g=3oi}2A?{!T%53J$)h3wve zj05*c*-IN5+krgz_(2LX`h*N5FC|LE0_-Gs|2Cpv9e%|DYQDq2o{fEx_R(y8nsKhD6FY(x|HQp4LcA|{8HN`bhTAQsl=powgr z0qOR<(GxYN{j+Lc?eeWfo{pyU(I3tvci-H+8YkHUBWvHWjz?s)%H#lviT=H4=U+TH z^^hQ-t~+Z%2_Y3O zAguIh6Kn2c!OSePAPX};4t%%LSK5jXua+2SjG~zIM}n%Rc^^= zqPJ4jv078gASgg8@S7hZ^+9Z_c0+>DZpQ~*j<P_iBip|Gt;{4>+#; zoPY_!zWo=z3Z%UonGRUxoj|MyTFAZ+3iJBom3r9k^?Wlv&NwyC?qcGa+ioOL)pb!d zR*b>FE0(GfRf!x8TVZ8iS|FXO7FN^Bs3J(wB(L--ow4oF#8< zZ;a=^wm9?r6MB-#{AGHg0^gp^SZZs4`RjvQcS!54@WpCVzjPbxpUhM(5?|P95?|ICfVe0-C9Xj2M?DL1) ze7^u<;{f;P7|470Oob#ico{(aAnSHtrX+`g8qp!j`gks7<;rtqS9{Fc5{N{^Phi~!oN zFB?g&-LJLc$dQa)6ixTlz9|9pwgdrM-6M@zE@3ODRuo(k{Au!NSr#Z`{5aA!iGPmS zh3tvf7E8IdT$<$sPFAh!-hmb^DGc)budV?J9dxe_*?387xNvygk3VME1Bx%G$cUOp zYvfM4EkkWvRZ}g+uB?CH+tQ}%)4q98&+%%9C&`>_YDV)VH^?tpA%LG2+W|8yu$7hA>hEBnkTSz(h_~} zcHcVZo&2p){?wYc7&nvl4PhLK`}pbGti>D>&DZ#HMh#=mC<6J{g7lcy zJ3)~HS(0DBpf-2*ERm{YQfDLU*|}yjmlDm7M8U9HK28h!s%?;10l&Me18ceQl#2oC)i+UkfhLl}4vGJ+pB)sw%$x>UxsU#Qvew zrfkEjt>);(hAS@Xx*J8cp2Fh(i}2{C?+q}xU@;!`&+1?MOqe zr-y!MA3*#nOkV6w%v@gPoxY`j(qr6X{K>cn=FR+jp3#uVZI0#^P4-j+4t~@Rk5we; z{V*me7?wWXs*{Gl3Tp2ae&6;>`+D;X9Pl9bjE!cVPXZ1aROEk}asL7p2xv#azuyh2 zU=R)f*Rx~?^n~saZRP*U|K$~`_DgGi5_0T%+qa=pq#Wn5DPoy2jlGV=qUP)ZK@u(?WLSG+$R16 z*E$RcI>a7^9aB}Xjh1rjO`1TfT`R)2Zg*XuKoWI-rNE*s2fgfMew9Z@I^3Bfp>qTk341Y1c&aNqu z5lN?}Q|^ZdZj_l*bfqyOLz2aM>k(aYFsUCY%y!*Vte{5*fmKA_H-{w`HYXG;AN%C| zBxWkAqXQxrzmNp#=(M`(+tRYUOhC#dd<1fhhs=z}MM@UHUs6<0H}RqL#?L9ROD8>( zSVS_*c$F_ZT$SUC8aWuLVB3OD>}V3K@hB`uKI#m|P?fOTA5tCCrCHp6keXXL~@Sooa>bFx1zc7_+bbR=x(^68NpyRD>@#%=; z))>})=X$@TrP<138*H*d#98o$)-A4aapCj+FJVgvj1ibK)AyUxuf3?lrA^BDu_~SfTel z>B=k$h3sjJ5aiH=HJqN@0_qUA$$f^UqT3gwVHH8^CdqqCQrw=y7uqW?@8l=ph({G& zz~W~CbgnzK_P?rEveTbK0a*0t7(f8e-=f*?BBuV@66g>#KM*E3U+p0?=Zcw!cg7+i z2~Eg8V@K+RF@(&Ouu_T>E}~oJnT6cDl)Rg(er3|GVGcCHEZ9p~z+0)2>^ZF!l~l-L z%{|k--FfY|GtoxoKoXz+XW}KsmVB69= z7n1Rmg!g5G!KTOtpSfH4`|z_kX5nH%6?PuJX0?0HnJ9dMu+$m#f%R{{essw+4f^3n zq@<@R8QN?VrFu1Cirj#i6aU`Q|OjBNTySVWZsUT0_$f`7}sug1afGJ4hxX>>+0o$x5Gc3x>jdTg-m0i33HeB4a z?V-8tt_D?B_wB`O)VQ02*ZPsL~CNBC{H))%n(oLNSzHeXAWp9&{s!A zD&e`l7ipW{7Aq3g31jf?lASMGN51`o~l|j3X<9f9h@n0BX3m9}2&CqE>aTZdQZk zQyO+8v;AH5o90myv45nR#r6$ZzvFSeE*z~^`4T!qzwMTH$T}iDTfn3GI^g+pLBaF= zbSJH*rnF2Xe-*8GmJ6Y_sULZL3N|c_#}eyn{n~*(YSeau6fAgUdJf;je>6FLHQtuT zD;H+B27h#xzy7RKBqKmu(zRBdbF57wlVn>Sl)dF`ywLPSAKPEu#@bgjMR9z$SDn7G z?tLJ)jU2xXKFhoXGstoAOS&^&xTIhze=gJHWcbUpwxoJo{6d522t5Mx8Xi@hQFVPLn9d=XG%dLZ)qscO;G59i1>`li$lYptm?_f@}r|;3V9bY!v zo$j4pF`Q43=ZGrC&SF7(ul7z)gj!Xj#b-3}(oa0M^SqSnCit{uIg4DMBbt5BaKseP z;tdub(BaIp8xVT#N@F0GQ)8}NW*wbb5<#Ak!JR>gI53#W zvj}E$Z|spIF$!OvRH6L$SsiM`-93j?m{g9H9_rw-&aDU)UIzO&?y;JCB?TB6ls#~6Ui76p zl1L}V&5=u@H+XrGjTMOs*i!miH{UB1h{oI4%N$(jZ+BChHQL zT?tXc>+X5yEe%zyW712c8H3{b+h`dx>_*33^2-z1x#Sp+nYmnZhM#D5m;~xneH8O1 zLZ62iwGKYQooEeZNm9Rf!j{r^<0T5d3}@=^G{ypX$ep#rjg9f zFy%h2UlBzX(kNrHIdhWD;b{lSA6aO4+kp9pW~M8molgYCw=w9(JGe*5`kcurMGGsXbe5xxhXoKyIY_gRj5)SYMHm(kOL$Yop1wZIGW(ipt)|Hi%U{H<%1vaE&=X z-r9^FV{B?OIw>S_!{CoYRSFOj$E}D{IUgWSKX`_jnI-A)1_A zz2!Y@ny*VPRbN87{*-z26)sVhADi^jvkPbxAGR1maR=+1<*PLVC^(iGRVbl#u04;k z+*+bYHu9%TU1_??sRL&FGxOqYg$Z6rI(gv7*y?N|vcecbE(TL8ST?hL4Wk27)1Td8 z4!;Fvyr>-xUwfaUT;7nrn{MA)2!388Rw;F0qVaub&9>9fq1fKC@3o_AETYg*Lo0^WRG@9swKe%@%z+Ief-#DM;21yJrVnMOPdSL zRXD;?vCHfGq)D2O9BdkZbMTVrpJ&h`h{`N77ho#*lMW@&-M0-hP>z~z82jZdZ)d_> z1ZN+)tn*b`I|I+-Cmx)~ZM`J=)&0DXvr5=7=INl~5;I+FYFuI;%H*8y>PL*^ai8P! ztU-ob12uj*&Wdb$>@ro!5qj#X<9rmx=_Y|sk>P>te8xUvHv|=}hz>pl37l@g+`CC5 zoo4xY>xEtrhtJzC@s15}bM(#Ejn$cOAUi+n9jD2wQk#K12>McQk5ht`)N}^#d-QqU zUipO{Bnv$TmJrHr_X5tAKuHm)w$_sLMxvp?M78?CuPjn*hUoR}3wV^@M!vb(!H_WmNLPHH z$~UT|l}7vqjMy!j4Sl_GMqiPSAd&tfOa6V{-eC*ZHhc z=`c~tw5d9<(?h2>PYXtINcmC6u!-H_yPA{DW(|diq-5BP2{9e)R8b_Y)(;XC>Z=$V zaW;jm95TuzKPe9r@^$%_T!{>TYwK+?l7^#LCKq|p=IEBku^KHi;ok{-jO%sN40Z)! z5ZeWyM-vgQl*qsJhK0x0Dy~YUCVyln?ujK%I6B?I#!Y*2aQsb0OdJAN`36hSgb}Mp`y2nez?}ivS!pfw(p*^5TkS(ctP{}B3j9<=@H)aKhSfIh z^^fCIRuJ>#PcvQ9FRD3)@7AA4M0jU<(Gr?|QBjb&A!i&j5d2>9J#UBB+xSgd5#smO zZ8dXtFmrtaeqMp@koS+snOJ9xSmjw<-(|fCQU71_O&y#c{lu_-_84cq!)35v#1b7Z z!xvF~gTuGqPeNyv#c(Kk(4o^C^xpal$`s|?z}wU!fodJr@}>Q0$#OUYmzS?I-)1-o z+xhlfbe;6Qt`?aiO)lv^pm6RL!`j5yy>}+jlMJ%f0UAxwA9enJ*7}D#i!fjsLx4Ce zBIDh!_&Y7R~;ZTJJ zpL^d+m=Kv*s!Rwss(X?UE@Mll9&jo>rg%rwJ_b0ItiDP_#-HQwPe;;^e9foc$vJi8 zCHhzeMd|+H%`vZAz5GmdS#?VNUClzOhf6%7CqEhjCmm5Nn7)6ont0kz9`94_Hqv7v z|KD;1S8V~Yy~a30$`Wq5%u7XjpHwxtt!lRUPzF$6b#kLS)51&}0;gkQuc zfBAZBt-k(E2X~fNfj<)RZkKuyIYse}g|5E(^eJog@Y#kaxHnEjsqRDFzfw2Ybg#Z% zCn@oYo;(qqIoSl?>j&$cb{In%{ z>G?WSuHH~?YfpAf3^hZU36H7ZM#Of@r&cyj@?gX-GBsLCiutx+4sbdd@0@VpXS&!h z43JthL#A!$ys&)y$whQ=9!;8?11?pivyh7Y0wcYN6`7qQCQ~<)Wg!sVdWeMg0VMQ3 z|9NL&+DN0PiCM|#AKBwx3?$Nt&(-AG zZO^ctJoQz1^Aef|Hk=C837QSl)HbK-=4@UmDdV`5&=u^@LQeEoR2tUeb~~X`8lwsH zog&lHqn+ASW6xg_N;7{G3AhdblmZRSg=77V-W z7`gXt9N3?yxTePH{PT9Ch-9iptMF$5GbGDzU;6pk_`2|)E~-e<0KAizOA`SGc7}7i z6w)mM@|V8!!<2vm8pR@wtWf1_v-5#jTnnDy>>A_Bq2RCR$kGK=Kng{q3s;nJr{rse zm7q#+l#NVdiR6IEj6TT<%X=JT?+u35l`QN>wTZG}p~}#0&33h~pd`KD(}_%!X#=Uq zEPWrJLG4m4(_q7k3d)nCYM#7RNd8^<$R>acD7yK@)2<;TCBj;hBzz_yD4mJd#a5%v zgIdvZel1}!#DPYzZY?>f@oMOcFW*yyDf#(yFvO#|q51NP=E_28+_Et`Bm>>{=WT0P z)|EQeK%)**4i05DTybh&SXjT`lnUFJpf-gtM)h9&ur4}Qt|66GW_HUy2MCvrIB#_| zRl|z+ph(3UpBF(=7QvJ8N4f=fPVjOB?m#;04LBcF5S@1L5Ogg9eI5Igg+KIl^t_xj zSi^Wyz@1tn0j|t=m!-%&N41FAze`%HSUu(xwb+ix*5~`aWC2xQ5Q3ZMTBhl5cfr5j-i%fvi)5S*Sff9GyLEPDUAP35u?XKbHunMQ5I+$F(^kKMf=zY| z5?%YCTOW0#W7t6-l-ariq%q@kWasH`!KqG2U*&CN$;4y=G@cQCDm#B|x(Uwx62oG+ z6qZ=c($M=6KWZDvaj&jKZ!(53&Civ$+$oE~ zT6snWb{4S>EP|&qrO2Em2oP$5A&R16p_yQg+Hu^8?sdb{xgt0YGvsgR^bk(q0WUoI z<*p7RQvZAorG#uwg(cS+FC}#6Vj`YHBK6dtR4J0b=g`SMW6rK|piVs9Bj6m*QPsku zRKLy^wvpCaXvQr1GcPDcGHxxn=ZUZ@(@-&P5mPU}Ls-WP7AXC&o#l|L_I@qQ)GxZl zCaH6FprA{!$n?s2F)f_r7TF_hEO1BSyVzX7l44qeCIrQANPjMkG&vBo`Qre!WRe9# zfkl7fWeIChoqpPSdhm$@x3BofZ}qA7P%ZXX2H@5;)+V`p36l!<*w=;Dq07=|s6$qz zU_$*L2#4$Z2gRc;=)T3Nql-&-Thf$M;YtrUM{fS0IX|4x4+5z2EbnnUOQP#(}lVpY|Unx#BM@pMtsQ+9IT;#<;GtuEp-=F+!1Ta0N zBD}yA6BQx(Ipz4$AdA+RhxvoPR<2VVloT}?4xTH-J_uI{@9fKULS?BEq>E&7n&cJg z*?=U$!g4Mq>ksTQrNHd+&Sv_-3B&!Ln_|<-qQq!!>EA*}uSsLLx;v+=2|S4AL-%?y zI71sbUDH39f;oqKbSIBV3{_8hKM^mCBDwl}i^bKf#1>Le71MTlS zEGfU!GH&()S0(v`sYD^4I2y-=oT0?8`^`yZ*}R@MS%aPN_56*_X4D7=jr(iOC7DqI znC%ar^5tY=M`|!fX(f@&m^Dzj60{dU@yn$Z+&*D?a})1bW3@I>)Vx^=I95XSP2{2a z_`UC@hpJuNUj1r88s7Tn+Ol5J8haMgGV0pFDZa1FK`Lv5ri|Kj8~&&=l15{$Gj|A6 zq3>EA>UVI#P^`lK%bZuOWp&ka_6^}a4daIGuup%tomoqYA}e!vE^r#yw#FwK5-)sx zT2lAZe#|14fOb2Sdp?h3gzY-j@Wkq=@2gc$m&aYJUgksQUCWd{e%};!sf>bNKKcM4 zR0(b2{CuIfGVHe3=TmwOd5HLjWzNER1so=iu>NtH0Af(980fzX6dB?b1R@64X-SN} zzXPk%*4e3+gV*qZ*f6En528=xDb1OrG2x(@gWzZjG=JZuCu{At)xW-^p)nQf^<@u- z-44-DV1M*OmoLbIaIg|^bAtp`(xqXw4|_L=w<_~l=4|H9r<~vhTop5d_TKg@X^ks0 zN5uAEyAl~%hRHFl#xzzN&^npOxwq4Z?Mw?9YxN4Vq0QwM&E(gXK)3hN5fMH zs9*Tp4kssGpQ`dNOp;IWXSRnlo_`omY%;HaHWjLwnHpvwFyB-s{ESg3{MovhQASo@ zMib`TB)N>DTbKenFDEaFVg)x$br~5EO%J6e`02&8%yZ`7k6rXx@>d1IrUqC2tKg?I zC`>14+GFF*2Y7B5QUVL$H(Y^pitxugQS-;jaug1NgSZ4G7t)UJme@LBJZaOqf z5C^chBpR%rQ5b6M@bbAD6MBCUeggr^V|S;5w8_JRak7+;C1-_FLh=mpN$K zjV|X&`V#RJXX-i{!!S@dVSSmAC6^PvxD2w&zxdCmt8p0j@8MXb|}$w*|NK3WMJQjzi3=Tn2@O>2KeB zwaH$RSO-z!3vZRx^T&=X-P}_%1Obbh;J=DmUZ*{;Y28wsbML(6U2{Y8SCR3i1eJ^*)q-IFBs9kBI z9;Ta~dEtN9sq;wJ6s)F6ilS-KMjFgit$(2N^To1Ha3^I%{9!|XE{$C5syMAQ(rR%X z3R0=}?5iEO+?F6R0lIR`T2s85!iYIRQSp)wI@zVDx}LRH_7j{7i#kHB6wi3xs%kI= z2@_Wn|L_`TVgEUNq^KVi+IcK#K?25XqOgqV*!XKrfbSMXM8?{>`_M5~h2?30P|;-b zu}=k=GRijuqx7C1B7P?rxU8Rhnu%v9&26nEK7R{hw~2TLK8%i+1uE=J_L5YVnCjqW+PjWvbO-x+&uDU9B(lC)uon%gN;D5S zLrJF%*vB~o>o{#DHXx%^Wf>xY>ijWZ?TOGYnBXdNPp2ZK)t^SqPlv+j`)3nW?RbBU z%l*_O;@WVEqpA0aZ9mh|wHuUhbYA!?=dziPOI2r^hGhF4P(9%}&2zED4Z? z{gmY^Xx{i4smmvX7&b|3M?f=ifmU};@yt?iL25;v4F}zAQ|O1%7Q&rIE^N^(uPZ~a^4*F9J#s}SZ9F2GdM{8SLx#I+gWN~p zMh1gWp*%OpRvHgt8emD`hl{xD2BPfp9$%t<6nF?s5Q_eN6BHQA9|c$lWkNrKY}zD*#U6&rh-K&;bULRVEvU%SIb*V#vMS)Ad>-K6# zS$?>>57)Z?rsxioP(-+_yZ7DY65O}R^r67P+_ypQ<4Nxuy$4X{{#bK?@^P#W^95LW z*#YQGeL!d?1S(=wy3b66Nu^27Nfg`LG%Xes4;Ndo_jNk%bQ78j<Fzf4(g5ld8wg%Rtnq{Dz$E!tb;!T zRvHrZFyRzW$B$s?E;c%f$2f}IT@H9u%3v5Pv#!(>SUGoN#?~LtUPwmaB>fPm)MK?S zhj}F}?~tq*_e7jpU{D3GKsHT;FWoW?$1hH%9#Cwh?Fm%D=_!VoXWwnpv{Cr-*Ai?3 zAa)o-M&ey@YW{WQ*1MSrUm2U#*N5k#Vy8aE_kZ(US8r9o35+g^+UZ5l4n1TlNCTIc zZC}zwSQ6*TU%g}qU+b3)B%ymfMjFNbm@ce@dpY-Q#fviaw+JT57Oc3rOX1eia%fhJ z-gL6;G&Vmm`URA8m`V9}UFT0*63T5>!3G;rwGPP;@=7Y!ax)_Z?54u+L^+El6WQ5f}fkY;m?f}|xI8ah#xtKvR~uM5 zxm>6Pe|e>AMu~Y6>!A6Y_=MAH6giTrNRM`J;puXTg`p z@&&agk5v!QRW|9t1-6^w2a6qb4#Lg_X~fxdo0A$qA?Vf@@6h`Zx$7jT9f%WaDI@y( z(tdps*6D;@WPt;TE6;rf%N?)`Qdnhi;e9%pdVyffa3kP5Sa>WSNAmNFc>KKH*C z!|PjGur^80HQ760Ki&n`(avI)jx+ywQYYRLyyVCJg#rk=rfsKEGS^uT!sjx2?RIBi zv2ipm5CrJI{_p5uARL(YArkoExZ6QNfDZ1Vc>J;01Hr>A4=2WNbYP}1k5J&jvT6?^ zW#X`75G8K#xhTAeAv*0w={I`^4{p6ZWC-t(E- z2FmEIq1s58zj?=d8VtU}m21&GAf}|TLCnvx8Td?iT6^GY#ph~8SF!pgV zlQB^MxO9YKpAMPb7=XUN$D$m2c3^my^dbH4jD&{_vLk?}0iNu;1lQp6%z#RA-aSjI zOcO^A#wt(BXfc0VA)l+q`t*WjS3aCy5JV1OpC^sIHP%Q29t?NxnQnv98X33POaF8ZMgb~DP{X@b6+_KW^WCiVP{Bb zuc=^K4ns_&)X#^_lx@*c0leXvS94lIgrXk(iC-lkx=O}CcTMw9UYNE9=ji}!JT z7JHfMT;Bb);WlPfB-Rb2>EIX4K3L5~kyGVy?JCBp(Dj<>Ls;mz{~g{T>Mz8nyTzBx zgV&e7*uUXEE&aGppAjN-le@#V()c$e@4VJ`s}l)g5P#=OO02rWiwrpz?(SDeh8dW8 zY~=`TlXzRjUKiQf*M|9X*ABZ#l7uoowE6ed62Dq`siG^vB;LDB$|qI0 z^rDs(E9AU73Ah>gZ?<7kRohH#<4^5*Nj`q8iKwH4w2GwK72vAhLE_=EBrUBe6l|8iid}A( zb7G0qUy9X>syQ3(+#bZtaX=g}iBdzO1|5p{QI{0m#x(#|DAY}I`v!2kePhv~f1l9K)^8EV@3OFgKEyZd%RiVn1s-PSQ1YDE_f)`-gjb!w=Lj zUrB)C!T+ZCeICK>1qupO=oBRf_JK(Ni33~@SN8~dKsPE>>=K38{vVBy4+$Xh!dwef z)rSsXBM3fR-E$$;Q&gO~r)cqiMg>g0au2;kaA-FVS3nRV8RYJ{!AZcrF!Tf zw|(=EAlm;07Sw@MVS#j@{1_nXKOa`uhROk176hT*y@d#}Tn561pkV*?iS2ZtAZR)^ zhywTFHNbt`Ll&6^J!t*$!=)G_sQck_p-9Z2zr3<{h`9IvIJpu)$SPy`Ye;~2LO>G< z1dA0k`Y{m|NGh650Bq}EPEsHu@2&( ztcNz>V~roK{`2R7C-5P_|AvQtkpKn#8RdSu?p8hotqDW~&6Wa9{2}%rGH^r#JroZj za?(Ssv(|NHnRHYw$4M0DEg!GG{6YWmWKD+H+8p7`g<3JMe~C3p>F=RXnPHk|8GfU#H&GDtLPz&6xyS&JX1xF1`+6|Xjm7#FCV6!IZ?2$!F~C$334VC(u=J9uJkcY z+AXxyzVuflo*u7jeA7XAC|>?*MEt_<_5|i@>-N-uB3I2xU*au{bUT_%!Dws>D3>0P zR`R$9rcn?dG4zwg(-DJETQcPQ<2-c3)*QWTyQ}wkd}0ah0YLd=&3e<1je2|efU(aw zIg{$88hcpb0nP#H39>uVen6~Exg)_MosrHB#e>Ng*Lg9u9bmzK;m7_@_zI8|dOzQk z_iOimI)Dg_7Y|DbNYoX9P$mJ~FE$B;1Vpkd#C!t83?R4e)9HADo7W5Pq+z67OdC7n z(#?6)8&22VSY$b?5jTDgWLA*op1Uzi`8ef>o?7^4~a?R_s=n78lJ_42v}04M;L1k|1BqnEKk4?%(kPLjnB2I+j<%B`n9^GbmO9 zmB2SRccL-VaCa9PK;G*=aV-BsMIg8Q5ABwlP~jnwO{jm4gVZL}SO1MY{QsfY|35*o z{||uyHqHT2?Lq}TtkA3$RLuXd$A5GnfF<90P&(My+x?|`{6EHn0sjpU=Knn&jOgD0 zVg4`iVE%{J|6R=DDIoZN9(I6iVF|40&X_<-Od#<#B79wQVxBxNw5`uF$c8G1kkH}R zS)>-7KpDytF$6!0x41ke z1f`;x80p{DMxHkD5@Y?P<8294&S5ZDoF%bq5+uu?Xl#~x%`35K08g;~eFw;}@AwXL zbcqm><+3Gep;3Tn!wDCsh?rpuQl)^@oj8@L(uCT~KCwt@GhZmblna=x)mXH%+iGf) zuAe1eSpUE;di+e=E28YNoedL82b*t9QPx`rt1+o}A;gy(rePp5uYoz9X{X1PG9fI? zN3L$%m$#{BEJ7hlEswRwP~4f@0VH1VrzhShw*}I-?*5?{uR}h31>`zJBv$d5YdL_k zl>A%i2GAY0O|96M35!6o9_yE&UVv#7YdT!;m- zKopYgwA9HX5rx?Cgv7j^F6Ha*IerA`=ONs$EM*7sU$>SzKDw^J?VGDS8zd)#WlO2r zNS@tj>JHs`r&ii)QBU;^eXaqmK?^;}Z9#3jtGXNHWbkYiUp9`Kjv$#keDKPLQqC5H z@RO^?G2R+J2OLX-<~qnS8mZmBk?_Xue4fM-iz*!2CBu7(N)Z$@h2)L@ zzE(bE`N&kptyjiWakQ)>CSGYZnI&{kY@!7UEq3!73}B-4;-!8R=;r3OpFQRY8iuoX zkt6{d7Y8f9CkN5Q?9MOCGV2R{*5lF5w<56=s>Q+nn#j`0C_R$fUio!8wk!Ay0`)zL zHA&FqM)M+kLfZASsCKU>J+hFzFP(2+scQE>s3kp9Daad7W!AD z!~gIW$}UvJ2gd!n3)Kv);P{ym_uD$IN~v8!>94qq;@zfJ$rBj%5CkwB%?rngniKQx zn2e_m*Dq)X15!;E{T|Z~tXm4eBB|scSuCIrrwa$DT9aKS?q1V1nTdUbc_Tjy*ejXJ ztSARQsbl3KvbM_8?$%`$ZGQ7(tDUxfLjOgzX(K9%t=_mlZ|E`?OjQ^bkWgJKr%QT# zJW*Nox}2mz=K1oN<=cAA;HMgU{1vTK?>0D(v`AV9a}o4J_hbAj*~aAiBt2&m@iP^} zQV$Yxj9?baBo=fbM>BKst%xRH8WZc(9Z;w8^bGJdB0FvUGwaOQy`f_i+uuK_qX~}D zI+JZnT^&+crjVHRf-e~(Y|^rdlRr=(SI{x=3C`P(ceU+TVU~z3^fp!sOeVynq?(*`mfzF+gwlz3n4-4BqHuI>>86%y~V~d|?>?yv* zZS+C+?!t}th?HRQtAN*Bzqy&dyNe=AO%UI(AX6+co5f>wQVNTRpQ(v-X$nI$s-)`apmkKdgI77CQy`1A*P4Ny|>vF`;E4hq~Q}`A>d7!$YcDhf(pkXnPtA>9j!Z)oG!N8)u_YMh5 z#RN<7B_KT_ywE#%tUHMM;VaZznpdO9;<>v6$*5YQ(l8)BCZXv&ROVt&e(^>w4o6N$ zq2>R2iTk5S6g5_Pu!AqO^GOfQ_8~aWBF%D?`%5jFNt1h!UqI*Y)1|ZdfY=23o-Xv@ z#|Yh-q=rnqvY{WWb2?z=>a){IX7FcWPn)eKj(pzO4>=5Re+?g(K+=m5ib?RaKE9-R z&mJ4@$z_xVpE;?&cGjf=0I(bAPECD%>l0~TBhoY~1^}=>nIE02*&%#-h+x1k&20R_ z2y+SG_N6{HnHF&(i$2&C_P@0o9x8@v36$T};2{0CrQ}YXyHm?3Asp`kQ$X2!plTg} z3reZk3AkQf|5yAB%ER6D5aa?$-*fYx7^6S*BDL{OX8nd+W*{x{m!O-tpUhf znJ9`7jmehQdS~|&wi*`%>4&(>DC;KX(6&q^Sv~gnNoZJW^wF3V)t<5UN3u7JfTR|5<>j`Tiz-k7X!Z=KFb`=udI(F<3ih^D!rRmKQ!7B7$!tOe&la>4!WU46@28XVEs7wi&)o6-{pP#s{1I8;pt%^GO6J!dJf&7 z>Z4@d8k7r_EBg5 z(%=tK{}h4(9yhw*SioA4KEFZf@{~8ey_;s^3$$VTar(7dKFp;al~FF zs%XO)HPN)F%5d=L7M$<`^BP0B3Bq57O*q0h``v{Vz?p#9g~p>!rAU!UNlAV1d(#n2 zcERsqYTi#Z0U%cCTd~&>=21%&5t=LrP_i6{rqquV)~Ua-J#|nVueTbIK#Gr@kLJea z>Glp`Tts~KlVi^6Mbd@reCFx@m1@Sd5_&>6GzVGJO}lBsQATmJL9WDpN*?a$l&sak<>ShU#dWwnGn#XKBS)LH50WFqW;a@GHq%A&8n4Vx+C$>{-C~d~%hkA|g{JTa zPkajdUsu2H2-;G(Vs@wN!u)&3+}pwc9z_eG$OR$)k9u&wZOqS6+x~1DV8x0+0CL0M zJxB@#U!jWrcdtl7-sghQ{ptRBsTy;(7nh2UA#r5`7^e=3{Y`* z-g%xM8^CWhHmr-qXPxDiD;A!O*riF(NH?ecKb3t6I91Od_qAld_I=-#EqnIJniLU* zq7brVEhKKTXDi8(XpyC;EM?DL3Q?AXWGxDn5+Tbw=ickOr+&}>ec#)2pRSqDcbS>* z%$YOi%x5|#xv~YBRQ9@&yh&OQtJbyPh-dts`q9*ix1D^&k6Y(1iPF7&W|ZqUI3gSB z_a%2xheaoo^rTkuU%T{W_W@xotaU8kH>*>}sV?jN9-pqq>$R~5+dxqh@k@0Jw0K5tLchOO!6CSffhA!D7} z>hjkrdUfAlTrxQuv8-=?khp z(Nnc_G73Do(UJpZV-uWqb9XIzqei^hzIRCUT&1fL6`HXH zY}jr;=^5jrca^nH-(Qp-FS&PlNLa5i@2vz=>*W=8wv_H{%jct>Z+1>Ju7vuT)BzIU zgzK+=?xS(U>_*qw)Pvh{jTp7Im1^ zZJL`MOROdH)OQO=KZ;3ROo%<?A67QcC!l;1GJ zic6N7A;rh-c+Q2_U3;$FXC>)kw0Ccv(y(fiKhkU%|F$`oetT^5n`gcEa{T+gf9M#P z6*ao&oLZPAg8imNcV}<1|@5-z4 zxI=4~Gc>tM8KFwe^P|Q0j@*>0bn&u3Swj2Z#6pzk-lpD6t;+W2>zO9C{mm;CH@7*w z8*H7f|8`D7iUSkwKflmkb28WbMZQUZHiu>}iRQgGOE0@UIXTZdCk~X9{T`JL{u!~q z$s`1FJsvCegMP`2#CTVwp}lC~=VZH<9ba!&&$34+elYqJ7yO*B>TRb}Th8Oq7o>vq z2l9uWSG5PV(abqgy!hfq`Q_^Gl*6CPDjm2izZJedJ-s0vGK*n}{bBQ4#$SuuZ6*DGXgM-J|-BthJEJ}+x=_YuORC2EzBeq)dZ(z?ZYlN@ zl@M}Us@WQ~K(7IryjKOMS*G$0nZyE4$xs^!7qQCMJ)Usyk45 z@>bIkf%h!@(WZSglaB1@3tZv{PXwN@EW9r~FrcH={r&gL(FYqCKc{HvOs${N+4n1r z@*)})`g+FcpE{RFcRQlIU-1^$$o;L~qhCWyXNz z)Qg8x@^4={6pR>X&&#b0L|!ir=50pzd6>{v73Vc(bX&yI#MfoFDeh=bc^#ND?xK%R2qC+itvxJ!G$R!?F}P#P;28?^nS6d)6{p+Jmn@XMX>s>p8lY+4!s$q&zgU z%zlLrc30o|Jhx^N$`T`Y{#;;z{Ji*TX7Zi1rgIfEZ5b-3C6{I}WLFt7wQQa9pFgB) z%vbNtsB^CwmGP?69a3gv_Bi5DMk&{R)$QOY?Yyf z=l7geHSj(*bHKKVcEc1?srEheM}N=mh4PFe-3|Nm=&tK6Zp22(wx``lD;N1ghA!)5 z_q;TC<=j`x+|t~P?6lbjz9bo5&c_1AY;31xcD1Tj1l*M2Zl_Ky7g^(}5RATfRx~45 z+Rl03ej2;!_MyJ3!TZ*hj@_GZ;~pv+xN(p_`G(qW3J+70KI->fKQ3WfsvL^9x0TZ$ zlH0ZXo_mHPEj+BN-;lxHs7RTKlcIC`RNtR_CA8m5p8hIb`}VM8=}~Q{_X7+4oA(>~ zxPq1yzpb<}~vQ zvh6&qu^guZUn)L-_+5iR*$ER=ztomI9(db1Qph~wc<={~ga_?@{YwFcja>0Qek*e; ztge}Jhe~ZeS`LH^Svv)W%4gAYyJeu!VhaNz$1=5lQF4u!D-RvRyg6b?-{X~LI2>N` zv3#AG>~prNL$xqXN3Op%Nlx*hHU^=~DV*xeme<^_3DA8|<=Q(v>^ek>c{J+vxRFaf z$cKs6PkY?ol;2+Ci{wYgUDP**bM9w9oj>I^*zw?Xytm?cZswd*GYxh8%o0f~fn%*r zsTO>z=p}_KRF9~^$=)(-2~XeJ{`AeU(NwVeo+BlbmHW9jOZCQ`lVh^gii4ho$?T-# zL-)J0<`0x*h1k+2i`b~1VD7_Ayo+kFXMeVzeVc+fjqW$*v$H|pdcO=MyU1mk-OJPF zQ*>A$%_LUz}R-|1FPQ5-!}^(!O$l*&mp{sb`(+Y-)U;l9FQp@h3F!)}s$Dqvf}64b_!DM&UX%PPwl^53{z#_` z>nT3UD5on-nAs1myV9pd;^q>chRo`hEV*{aNguy?Mq-83JkI{r@8Udzt{{DqrsPno z8rnABM;`u+d`BynhOB?Qme5h@Nu7!JN$xo$y?)))l3ng~K!*Exok`w_B9YvV_!v=_ z6I|`*lroo0+12mFweHfzdt`s)`G zxeq+F8xE--<})7|sTVsK|Ln3!dLUK81Zz&EltY}a!F%Cd7oVDLY|{>*PV^YXoIU-; z@s+7M`I!>uCFABxkULt+k(0@J{+0uH<`mwLKeJ4IQoZVX>*(o$*3p^E+HzS>_#$bKxLJ_zSMgRm+CXJXmwuTozEd`3v_^lCBSV=ZM~UMe2R<UiyoDLQ2zZw{nU6r)2@LST@H@$F~ zQhJiAlyF&xei3UaW#L`hYi@k}@?d_ABQ!_lu-Qc=RS+Q{N#e;V)3W_7%JW-Ea)ka^^?WYsl`$fHe zt=zs^a_=pB^&h`Y>MH|Y9k$uP5@>iyAG)eUi$ZmsBPP&*r{%=28o(=gr%pSc41yo6 zRIDFF^Wx{@{FZ15OiG#OK%Bp?Tm%=Li$=tUv*BJfI}MoLFnjrm#Bryzo{B$Z- z`)(KYMeA@?G?SfR>y889b$eueImB3O!tGMhx6akEpw9w#Ni#1eH~8FJ zsTJNa#(7yJE&H7`-|aX|@^G=nlDwM1`lne>O^up8MfUYQA2vw5O*tiE^JrUG9z@FN z=;~jzd*)|DFH|X(QOmFYlJsD?sgZm!i=V!wkT37d;RK(cn4SxfBD7tP8AYx?qdd3A zB~w05dqy{e-+0$?`3e60b1C3moL>R2e0^$qFH)SkwDeLya3hAKx*D@Iwp4w?B8AfC z?)4=ZC2Adyv54dYuUp8J7TLz`uTYQ%S{4PpZOvdc>>6#BCG%w5t=tkTdzW*4-_FL> zG#_vNsb`F)t0j{PIviI|XNXCND(g>B&sC{!%bssPot=uir^imJ=+ z=;@)IZ>nMyQu=NuN<@uHU^w_hGarzLsznXE9xfX;jC)dgPPmz5KcuL{e_*f0*VGmz zv9Fk>ufeD6g7AJSuynLEY^X1fI%kDYyHF6eZ?brMdXm#pY7t0ki&BlXG z4HdwHpToCw&3=l0(!at$CX{*yUABHiA}{2WL*DM-JP)^yH&4QUleFK$+}Rc?c*k)> zF>wBak8@z;&Q}k5`T8mAAT4yQ8tEr7O*(Ou6V(O9u|=!4 z`>)LJ7xEowDVS-q3Fcug+CGbsQs9jqJPvCyOHtRtOr z=#xr4vYkr$`f6qF@pmHAW=W!?5A#ZujO}?5&2KcJ@Sr+aOld)Saj$%Z6h=%{Dx;u( zTfESZI|GMIbFvVa=*s%P4Ah{@#&iB;xg9BCMmJi@75e-MUQE+ zn_Dyd5g7E0=9rsyWT%PVyB>|Bm=0-sT7iVcvrCru%DFilS@3k)DuOl2PanQK--DZr`?}2~!gAHkoCy zb{DqF?fF7+PET6@GDY*OZ{3n#n+hB=WtVM=EGKV0GU)ZyvKf4` z`vG<8^%jF5)8l8Di`2+xR;@lp{t8f#ksfZl&XY7;dH%TFs_iblZ@WWO0&d4(GRG%W zdMp&Y#}_@)Z!|w{=C4l|?{M)iHP^7Zm34E7uZzF; zsMY(9+`fAM7L~r>pbq(bZ_@iV>iX29g*Hu(9A(OvO{!c>zuxjo9@2e$&o)GF-0<43 zmR1UiONO6WZKypQ%D0UL97!2GHJpg4G>?gaJhwY?t9Fr^aKED7JbnDNhld1C&Erw0W9)0yU+Y=kFx!qbfMtM}FAs#UjnaEUhuBNy9az!kMowVRJ(j7k=amc#d3L&EJ-^ZMl;DMMNfTu2J8Y zuv+=o!ev>uoHMAe4y0$2a?dk=Ai(xzHrCl;IKUw>!gKxgVSGIOpKkTb% z$ZNwTtz8=~F5@988(KFojh2W$Yk_1Sz*hcQ@H=TJtqmKc}S68rW! zW8(wPw-40(q%%evMH#(YY}{$$*uZfAXW5CypU3p0grDy)oyu&`*)g%*SzqT~s+^Bb zCO7JA@ASQ5L4h)t`NHOBeFKlO*7{qOO1_YNU8ncdE>^^GU_k=zH8q`Vov#DankBniSZeDRWE!zA&-GYs($Kg&oRJ^IRP zcmAyhGM(q1SzFyY9T3%|N$DWg73fv>xbooI=>3o9qxUdh`1;~?SnUn6eu?cD1`|yG zjQ(U5q2GJVAz|ogK#6%##NdTv40`P!F6kJ|&0+#;90bhyJr5RTDhgbPL`>ebLcUf}Q9?XF(_@|#jK0_PED%^T3wa4;yAG}s3 zB7W^6G(#1A(#G|Dzu)&%Yo|o{53(%ptuLH;nRm1zIBkyn<646vkHmtcqDbR(v;o^> z`KeVEj9bB_Ur(ur^N+ntEc>K-&mif~qN11L=kI4$6n_2g;Eld}w`E@c^`+XwQi5yR zpH7|KUhW%u;1c`uH$jK1r=OlbJ7jBH%{4~bnr$^v&lM?C>JZ4PA*2+&c(~I!+_K_x zv`S`Sey4}uwY7{r3D@i{J!gri`#E~*{bC`{?n%>l6AYu7xyB*+opMu!XL;x4D6vh(yxB7;6oMFqqG}Gk4~Sv+S792eUNQE ziPi2aXB`jqIF;N_{w8&KEQG|XA z)yhA-HCVB_m!WyRy%EP7@YD|zwHHjx>-6D?ISHu@8IFbqo|?a1Y%;$h1@cTtQFJKi zzCC)oU?oWZ)0P{&0p3!(3Fhleg!#K5Dkr>M3i@G>77&0@Z6CL52w0*}S`H`_9|A=U z?Q}p(lfxj$!2!)p>K_4xIG}k1;pe`e_XVBa2ObSP0FMSZ5MnnYu6FscLTwIcCfqar z5m;6>3Z$|@jK|S*Sa}h}{iltAydfa7GC< zVo?hQ{ImjzDAel)6v~Kzf-A8u0qENceK>)p!-dLIwDZn76pFq6Z&czT3Y_t2FMI*gP6PkdSty}K0TL6) z^)#9VSKcroz?v0PL#>-Ui{D9EEUGH`(L5Klj^hMLk{eSkqV2CLYEd??7g08*- zy1D?|GXB+mRq(qp0>H^bh=_SbfU9DQ)7)}#j%P4Fq1eh0+12<_~EN*N3Okt6i^70r0z#3 z4ERe(6q?x-imT^agZHTM10m!EhWqBm~dg~*X0 z1{_ubM*yfYZfJV|zEt{S;RfQsmJ4ujAEHzPTX-#OYt%$l>6i4Oy{L8zAKK#KE1!DZB}5N$BtDeO6wASC|nIrW`5 zNic}eV^0(Pr@&Af<@WZR9v8}#AKU_#JRxVCr{ z0<8DGBUopFHbTJo3{To2hVvj#te=pl3niV$S1<9AWHJa7zXovlq$V)#eA&cro{$9} zkR^`5d%cJ89N6>AAgxfme&VyA*b#Vz4-iQNngtqtPQC5lIop*`;BxLT3}O8@w+qgF zi_3*NUw~$y0Y^XK3d_&0VugsA$+ZzeSHJvi$>#!E6e~nbx-EhbvYf*S`3z7qK?4^yLRn^AFS*3GT=OBQ}Scga{DFGwX1&7}ODg zZxaIHADHRyM7S=!frIi#qB*fsLSn8qFkQxf;8HG;&_GEa!Hn!&Bw7NCB_{MjP5^F@ z~B7!h0)USjWsdqr#dk)uW8WddGQ5ay#guX>^ZZg)@cMLHs$frDbn zs)FLsj99WNC?O7*t=!7v#1;z2UNr~jY2C%i0TwGxL73D^>F9b=D?PY3vHSZT`b-WE zYMMmDgHr>uTtP*bfSTOLxV)K5XchrDSzn4tC-14oio6AuiIZ6#AefF}#rS~yNDp#%VkXoTg2 zAo~Pxe+E-%p_C4#YJ)DOEcUlYj7>P`=Rz7boJ%l)RzXEGX(e#y3TSj>z!kUQTmrmW z9MFzL5F{{uhvJa`bOjdg{omS zxudvbz~hB2F$K-ma1FtWabzWHG*H(p4J%{{x-fQlAf{2;x^%$h8{fn}ngZSG`lbLe zLl3BP{0A1OLeav?g`lbA&7l!q86ztt#ik2G8kg}#iCJdkHdUZt9Y1hbdFVR8;^tED z^nxso9IJyB8oZ2V6@o7f(P8t`+Msp}!KDEiicOnXz)m9sX@K{Paf;ws44ESZE#!Lz zEr2aNG2sewRVxL+O0J;Au`psb5kZ8ze<*38@OcpO^eJc#ES8uD16iML;FL^&6_ok= zDtzI1-C88*RP>-z@gUUyrU4WVOEjENVG0Nr_=*j|lP0of^w@MBDdg4FOperi+yjN` z2Vdlnvw{=gf&j$^KV)+i-wx*&a^6gup-@BMixkia!CK&g={F>Cma%j4OYP8)R4}6^ zta4(`l4G2K^JJh8BAekQ4th<6jun3q-ik&-DZ!7eiz7UFNP3Mka5)eC@15R6r9|cx zAW{Lodk8wRz<$>zP zl6ic%w;9RBPkq2RUD8T6!1YMlaT-jzDk(7fn`4Q*c zD!?yq6RHdRKz7*)N+MkY<(t=^udps-Dxy4?#s)f40m2a54}2;Bpn)0*V1_0tz(kKw z`y?31_dZ${D%J&oU{i@-{e3PKml+NmX#-yqf@j!%OMw3q7d>=vdl*CU#rVPR>Fqm# z?x5Ow{%ML`Xc%gPbEC5g_{q%x`zZ|b_%%6iK#o8f#rq$sK}@CN*LVn<*THng6`^|J zza;_Ng780=j;#l?a5K{g5^S>mwH`vez4{=+oGo7H_A^@fe;V*Z$BLppm@2M=?;(WP zSz(+lASMlUWPrPDxLU=Cwj3iHL{ppK8*cM9wEqUamWg-GB8SyiyNQIrCS_dLA@~7) zAS>XaE*}4fmLA?iOO7ZIJZemSxjeWV^x5N}&mJQvf_r}V-?C72CVCfcsAFaF-3SGWJbXALT&T3jQ?{~L$-FG zIZoF64u0XBcrz(-c}x5t4hnYR?!eVL_L7)of!FYdmKnRt^q+XiGrf5cZcQWLIatxa zf8cmo{7V)M-OWaC$HmL*Y*2NThmgwgkC3qg&k<`v9&+Ijj-Z!LT%zz}aUNh3+%FN? zEZq{@Np!!7RcUzyr_v{9(~Ha;;KjqOWM0U14ea=@&&Kz=;x?P!8lW9sK|qfGKDK!G zo&h2xo()>$%op~N_%(ipO&3vcy` Date: Sat, 3 Aug 2024 23:36:02 +0300 Subject: [PATCH 09/19] ci: Add workflow_dispatch to main --- .github/workflows/main.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 1d9552f96..f8a2afde6 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -5,9 +5,11 @@ on: - 'develop' - 'feature/update**' - 'feature/server_esm**' + - 'feature/new_icon' paths-ignore: - 'docs/**' - 'bin/**' + workflow_dispatch: concurrency: group: ${{ github.workflow }}-${{ github.ref }} From 880b0420ccf883b264d1a5378320589b1f730de1 Mon Sep 17 00:00:00 2001 From: Elian Doran Date: Sun, 4 Aug 2024 14:15:35 +0300 Subject: [PATCH 10/19] client: Update icon in CKEditor --- libraries/ckeditor/ckeditor.js | 2 +- libraries/ckeditor/ckeditor.js.map | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/libraries/ckeditor/ckeditor.js b/libraries/ckeditor/ckeditor.js index 3b5fc0094..2cb19aefd 100644 --- a/libraries/ckeditor/ckeditor.js +++ b/libraries/ckeditor/ckeditor.js @@ -3,5 +3,5 @@ * @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved. * For licensing, see LICENSE.md. */ -function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.BalloonEditor=e():t.BalloonEditor=e()}(self,(()=>(()=>{var t={9246:(t,e,n)=>{const i=n(6931),o={};for(const t of Object.keys(i))o[i[t]]=t;const r={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};t.exports=r;for(const t of Object.keys(r)){if(!("channels"in r[t]))throw new Error("missing channels property: "+t);if(!("labels"in r[t]))throw new Error("missing channel labels property: "+t);if(r[t].labels.length!==r[t].channels)throw new Error("channel and label counts mismatch: "+t);const{channels:e,labels:n}=r[t];delete r[t].channels,delete r[t].labels,Object.defineProperty(r[t],"channels",{value:e}),Object.defineProperty(r[t],"labels",{value:n})}r.rgb.hsl=function(t){const e=t[0]/255,n=t[1]/255,i=t[2]/255,o=Math.min(e,n,i),r=Math.max(e,n,i),s=r-o;let a,c;r===o?a=0:e===r?a=(n-i)/s:n===r?a=2+(i-e)/s:i===r&&(a=4+(e-n)/s),a=Math.min(60*a,360),a<0&&(a+=360);const l=(o+r)/2;return c=r===o?0:l<=.5?s/(r+o):s/(2-r-o),[a,100*c,100*l]},r.rgb.hsv=function(t){let e,n,i,o,r;const s=t[0]/255,a=t[1]/255,c=t[2]/255,l=Math.max(s,a,c),d=l-Math.min(s,a,c),h=function(t){return(l-t)/6/d+.5};return 0===d?(o=0,r=0):(r=d/l,e=h(s),n=h(a),i=h(c),s===l?o=i-n:a===l?o=1/3+e-i:c===l&&(o=2/3+n-e),o<0?o+=1:o>1&&(o-=1)),[360*o,100*r,100*l]},r.rgb.hwb=function(t){const e=t[0],n=t[1];let i=t[2];const o=r.rgb.hsl(t)[0],s=1/255*Math.min(e,Math.min(n,i));return i=1-1/255*Math.max(e,Math.max(n,i)),[o,100*s,100*i]},r.rgb.cmyk=function(t){const e=t[0]/255,n=t[1]/255,i=t[2]/255,o=Math.min(1-e,1-n,1-i);return[100*((1-e-o)/(1-o)||0),100*((1-n-o)/(1-o)||0),100*((1-i-o)/(1-o)||0),100*o]},r.rgb.keyword=function(t){const e=o[t];if(e)return e;let n,r=1/0;for(const e of Object.keys(i)){const o=i[e],c=(a=o,((s=t)[0]-a[0])**2+(s[1]-a[1])**2+(s[2]-a[2])**2);c.04045?((e+.055)/1.055)**2.4:e/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92,i=i>.04045?((i+.055)/1.055)**2.4:i/12.92;return[100*(.4124*e+.3576*n+.1805*i),100*(.2126*e+.7152*n+.0722*i),100*(.0193*e+.1192*n+.9505*i)]},r.rgb.lab=function(t){const e=r.rgb.xyz(t);let n=e[0],i=e[1],o=e[2];n/=95.047,i/=100,o/=108.883,n=n>.008856?n**(1/3):7.787*n+16/116,i=i>.008856?i**(1/3):7.787*i+16/116,o=o>.008856?o**(1/3):7.787*o+16/116;return[116*i-16,500*(n-i),200*(i-o)]},r.hsl.rgb=function(t){const e=t[0]/360,n=t[1]/100,i=t[2]/100;let o,r,s;if(0===n)return s=255*i,[s,s,s];o=i<.5?i*(1+n):i+n-i*n;const a=2*i-o,c=[0,0,0];for(let t=0;t<3;t++)r=e+1/3*-(t-1),r<0&&r++,r>1&&r--,s=6*r<1?a+6*(o-a)*r:2*r<1?o:3*r<2?a+(o-a)*(2/3-r)*6:a,c[t]=255*s;return c},r.hsl.hsv=function(t){const e=t[0];let n=t[1]/100,i=t[2]/100,o=n;const r=Math.max(i,.01);i*=2,n*=i<=1?i:2-i,o*=r<=1?r:2-r;return[e,100*(0===i?2*o/(r+o):2*n/(i+n)),100*((i+n)/2)]},r.hsv.rgb=function(t){const e=t[0]/60,n=t[1]/100;let i=t[2]/100;const o=Math.floor(e)%6,r=e-Math.floor(e),s=255*i*(1-n),a=255*i*(1-n*r),c=255*i*(1-n*(1-r));switch(i*=255,o){case 0:return[i,c,s];case 1:return[a,i,s];case 2:return[s,i,c];case 3:return[s,a,i];case 4:return[c,s,i];case 5:return[i,s,a]}},r.hsv.hsl=function(t){const e=t[0],n=t[1]/100,i=t[2]/100,o=Math.max(i,.01);let r,s;s=(2-n)*i;const a=(2-n)*o;return r=n*o,r/=a<=1?a:2-a,r=r||0,s/=2,[e,100*r,100*s]},r.hwb.rgb=function(t){const e=t[0]/360;let n=t[1]/100,i=t[2]/100;const o=n+i;let r;o>1&&(n/=o,i/=o);const s=Math.floor(6*e),a=1-i;r=6*e-s,1&s&&(r=1-r);const c=n+r*(a-n);let l,d,h;switch(s){default:case 6:case 0:l=a,d=c,h=n;break;case 1:l=c,d=a,h=n;break;case 2:l=n,d=a,h=c;break;case 3:l=n,d=c,h=a;break;case 4:l=c,d=n,h=a;break;case 5:l=a,d=n,h=c}return[255*l,255*d,255*h]},r.cmyk.rgb=function(t){const e=t[0]/100,n=t[1]/100,i=t[2]/100,o=t[3]/100;return[255*(1-Math.min(1,e*(1-o)+o)),255*(1-Math.min(1,n*(1-o)+o)),255*(1-Math.min(1,i*(1-o)+o))]},r.xyz.rgb=function(t){const e=t[0]/100,n=t[1]/100,i=t[2]/100;let o,r,s;return o=3.2406*e+-1.5372*n+-.4986*i,r=-.9689*e+1.8758*n+.0415*i,s=.0557*e+-.204*n+1.057*i,o=o>.0031308?1.055*o**(1/2.4)-.055:12.92*o,r=r>.0031308?1.055*r**(1/2.4)-.055:12.92*r,s=s>.0031308?1.055*s**(1/2.4)-.055:12.92*s,o=Math.min(Math.max(0,o),1),r=Math.min(Math.max(0,r),1),s=Math.min(Math.max(0,s),1),[255*o,255*r,255*s]},r.xyz.lab=function(t){let e=t[0],n=t[1],i=t[2];e/=95.047,n/=100,i/=108.883,e=e>.008856?e**(1/3):7.787*e+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,i=i>.008856?i**(1/3):7.787*i+16/116;return[116*n-16,500*(e-n),200*(n-i)]},r.lab.xyz=function(t){let e,n,i;n=(t[0]+16)/116,e=t[1]/500+n,i=n-t[2]/200;const o=n**3,r=e**3,s=i**3;return n=o>.008856?o:(n-16/116)/7.787,e=r>.008856?r:(e-16/116)/7.787,i=s>.008856?s:(i-16/116)/7.787,e*=95.047,n*=100,i*=108.883,[e,n,i]},r.lab.lch=function(t){const e=t[0],n=t[1],i=t[2];let o;o=360*Math.atan2(i,n)/2/Math.PI,o<0&&(o+=360);return[e,Math.sqrt(n*n+i*i),o]},r.lch.lab=function(t){const e=t[0],n=t[1],i=t[2]/360*2*Math.PI;return[e,n*Math.cos(i),n*Math.sin(i)]},r.rgb.ansi16=function(t,e=null){const[n,i,o]=t;let s=null===e?r.rgb.hsv(t)[2]:e;if(s=Math.round(s/50),0===s)return 30;let a=30+(Math.round(o/255)<<2|Math.round(i/255)<<1|Math.round(n/255));return 2===s&&(a+=60),a},r.hsv.ansi16=function(t){return r.rgb.ansi16(r.hsv.rgb(t),t[2])},r.rgb.ansi256=function(t){const e=t[0],n=t[1],i=t[2];if(e===n&&n===i)return e<8?16:e>248?231:Math.round((e-8)/247*24)+232;return 16+36*Math.round(e/255*5)+6*Math.round(n/255*5)+Math.round(i/255*5)},r.ansi16.rgb=function(t){let e=t%10;if(0===e||7===e)return t>50&&(e+=3.5),e=e/10.5*255,[e,e,e];const n=.5*(1+~~(t>50));return[(1&e)*n*255,(e>>1&1)*n*255,(e>>2&1)*n*255]},r.ansi256.rgb=function(t){if(t>=232){const e=10*(t-232)+8;return[e,e,e]}let e;t-=16;return[Math.floor(t/36)/5*255,Math.floor((e=t%36)/6)/5*255,e%6/5*255]},r.rgb.hex=function(t){const e=(((255&Math.round(t[0]))<<16)+((255&Math.round(t[1]))<<8)+(255&Math.round(t[2]))).toString(16).toUpperCase();return"000000".substring(e.length)+e},r.hex.rgb=function(t){const e=t.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!e)return[0,0,0];let n=e[0];3===e[0].length&&(n=n.split("").map((t=>t+t)).join(""));const i=parseInt(n,16);return[i>>16&255,i>>8&255,255&i]},r.rgb.hcg=function(t){const e=t[0]/255,n=t[1]/255,i=t[2]/255,o=Math.max(Math.max(e,n),i),r=Math.min(Math.min(e,n),i),s=o-r;let a,c;return a=s<1?r/(1-s):0,c=s<=0?0:o===e?(n-i)/s%6:o===n?2+(i-e)/s:4+(e-n)/s,c/=6,c%=1,[360*c,100*s,100*a]},r.hsl.hcg=function(t){const e=t[1]/100,n=t[2]/100,i=n<.5?2*e*n:2*e*(1-n);let o=0;return i<1&&(o=(n-.5*i)/(1-i)),[t[0],100*i,100*o]},r.hsv.hcg=function(t){const e=t[1]/100,n=t[2]/100,i=e*n;let o=0;return i<1&&(o=(n-i)/(1-i)),[t[0],100*i,100*o]},r.hcg.rgb=function(t){const e=t[0]/360,n=t[1]/100,i=t[2]/100;if(0===n)return[255*i,255*i,255*i];const o=[0,0,0],r=e%1*6,s=r%1,a=1-s;let c=0;switch(Math.floor(r)){case 0:o[0]=1,o[1]=s,o[2]=0;break;case 1:o[0]=a,o[1]=1,o[2]=0;break;case 2:o[0]=0,o[1]=1,o[2]=s;break;case 3:o[0]=0,o[1]=a,o[2]=1;break;case 4:o[0]=s,o[1]=0,o[2]=1;break;default:o[0]=1,o[1]=0,o[2]=a}return c=(1-n)*i,[255*(n*o[0]+c),255*(n*o[1]+c),255*(n*o[2]+c)]},r.hcg.hsv=function(t){const e=t[1]/100,n=e+t[2]/100*(1-e);let i=0;return n>0&&(i=e/n),[t[0],100*i,100*n]},r.hcg.hsl=function(t){const e=t[1]/100,n=t[2]/100*(1-e)+.5*e;let i=0;return n>0&&n<.5?i=e/(2*n):n>=.5&&n<1&&(i=e/(2*(1-n))),[t[0],100*i,100*n]},r.hcg.hwb=function(t){const e=t[1]/100,n=e+t[2]/100*(1-e);return[t[0],100*(n-e),100*(1-n)]},r.hwb.hcg=function(t){const e=t[1]/100,n=1-t[2]/100,i=n-e;let o=0;return i<1&&(o=(n-i)/(1-i)),[t[0],100*i,100*o]},r.apple.rgb=function(t){return[t[0]/65535*255,t[1]/65535*255,t[2]/65535*255]},r.rgb.apple=function(t){return[t[0]/255*65535,t[1]/255*65535,t[2]/255*65535]},r.gray.rgb=function(t){return[t[0]/100*255,t[0]/100*255,t[0]/100*255]},r.gray.hsl=function(t){return[0,0,t[0]]},r.gray.hsv=r.gray.hsl,r.gray.hwb=function(t){return[0,100,t[0]]},r.gray.cmyk=function(t){return[0,0,0,t[0]]},r.gray.lab=function(t){return[t[0],0,0]},r.gray.hex=function(t){const e=255&Math.round(t[0]/100*255),n=((e<<16)+(e<<8)+e).toString(16).toUpperCase();return"000000".substring(n.length)+n},r.rgb.gray=function(t){return[(t[0]+t[1]+t[2])/3/255*100]}},9047:(t,e,n)=>{const i=n(9246),o=n(802),r={};Object.keys(i).forEach((t=>{r[t]={},Object.defineProperty(r[t],"channels",{value:i[t].channels}),Object.defineProperty(r[t],"labels",{value:i[t].labels});const e=o(t);Object.keys(e).forEach((n=>{const i=e[n];r[t][n]=function(t){const e=function(...e){const n=e[0];if(null==n)return n;n.length>1&&(e=n);const i=t(e);if("object"==typeof i)for(let t=i.length,e=0;e1&&(e=n),t(e))};return"conversion"in t&&(e.conversion=t.conversion),e}(i)}))})),t.exports=r},802:(t,e,n)=>{const i=n(9246);function o(t){const e=function(){const t={},e=Object.keys(i);for(let n=e.length,i=0;i{"use strict";t.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},4597:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-math-form{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:nowrap}@media screen and (max-width:600px){.ck.ck-math-form{flex-wrap:wrap}.ck.ck-math-form .ck-math-view,.ck.ck-math-form .ck-math-view .ck-label,.ck.ck-math-form .ck-math-view .ck-labeled-view{flex-basis:100%}.ck.ck-math-form .ck-button{flex-basis:50%}}.ck-math-tex.ck-placeholder:before{display:none!important}.ck.ck-toolbar-container{z-index:calc(var(--ck-z-panel) + 2)}.ck.ck-math-form{padding:var(--ck-spacing-standard)}.ck.ck-math-form:focus{outline:none}[dir=ltr] .ck.ck-math-form>:not(:first-child),[dir=rtl] .ck.ck-math-form>:not(:last-child){margin-left:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-math-form{padding:0}.ck.ck-math-form .ck-labeled-input{margin:var(--ck-spacing-standard) var(--ck-spacing-standard) 0}.ck.ck-math-form .ck-labeled-input .ck-input-text{min-width:0;width:100%}.ck.ck-math-form .ck-label,.ck.ck-math-form .ck-math-view .ck-button,.ck.ck-math-form .ck-math-view .ck.ck-math-preview{margin:var(--ck-spacing-standard) var(--ck-spacing-standard) 0}.ck.ck-math-form>.ck-button{border:0;border-radius:0;border-top:1px solid var(--ck-color-base-border);margin-top:var(--ck-spacing-standard);padding:var(--ck-spacing-standard)}[dir=ltr] .ck.ck-math-form>.ck-button{margin-left:0}[dir=ltr] .ck.ck-math-form>.ck-button:first-of-type{border-right:1px solid var(--ck-color-base-border)}[dir=rtl] .ck.ck-math-form>.ck-button{margin-left:0}[dir=rtl] .ck.ck-math-form>.ck-button:last-of-type{border-right:1px solid var(--ck-color-base-border)}}","",{version:3,sources:["webpack://./../../node_modules/@isaul32/ckeditor5-math/theme/mathform.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-math/mathform.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAAA,iBAEC,sBAAuB,CADvB,YAAa,CAEb,kBAAmB,CACnB,gBAsBD,CAnBC,oCAPD,iBAQE,cAkBF,CATG,wHACC,eACD,CAGD,4BACC,cACD,CACD,CAGD,mCACC,sBACD,CAEA,yBACC,mCACD,CC/BA,iBACI,kCAsEJ,CApEI,uBAEF,YACD,CASC,2FACC,sCACD,CCdD,oCDHD,iBAqBE,SAkDF,CAhDE,mCACC,8DAMD,CAJC,kDACC,WAAY,CACZ,UACD,CAYA,wHACC,8DACD,CAGD,4BAKC,QAAS,CADT,eAAgB,CAEhB,gDAAiD,CAJjD,qCAAsC,CADtC,kCAsBD,CAvBA,sCASE,aAcF,CAZE,oDACC,kDACD,CAbF,sCAiBE,aAMF,CAJE,mDACC,kDACD,CC9DH",sourcesContent:[".ck.ck-math-form {\n\tdisplay: flex;\n\talign-items: flex-start;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\tpadding: var(--ck-spacing-standard);\n\n\t@media screen and (max-width: 600px) {\n\t\tflex-wrap: wrap;\n\n\t\t& .ck-math-view {\n\t\t\tflex-basis: 100%;\n\n\t\t\t& .ck-labeled-view {\n\t\t\t\tflex-basis: 100%;\n\t\t\t}\n\n\t\t\t& .ck-label {\n\t\t\t\tflex-basis: 100%;\n\t\t\t}\n\t\t}\n\n\t\t& .ck-button {\n\t\t\tflex-basis: 50%;\n\t\t}\n\t}\n}\n\n.ck-math-tex.ck-placeholder::before {\n\tdisplay: none !important;\n}\n\n.ck.ck-toolbar-container {\n\tz-index: calc(var(--ck-z-panel) + 2);\n}\n",'@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-math-form {\n padding: var(--ck-spacing-standard);\n\n &:focus {\n\t\t/* https://github.com/ckeditor/ckeditor5-link/issues/90 */\n\t\toutline: none;\n\t}\n\n @mixin ck-dir ltr {\n\t\t& > :not(:first-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-dir rtl {\n\t\t& > :not(:last-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-media-phone {\n\t\tpadding: 0;\n\n\t\t& .ck-labeled-input {\n\t\t\tmargin: var(--ck-spacing-standard) var(--ck-spacing-standard) 0;\n\n\t\t\t& .ck-input-text {\n\t\t\t\tmin-width: 0;\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t}\n\n & .ck-label {\n margin: var(--ck-spacing-standard) var(--ck-spacing-standard) 0;\n }\n\n\t\t& .ck-math-view {\n\t\t\t& .ck-button {\n\t\t\t\tmargin: var(--ck-spacing-standard) var(--ck-spacing-standard) 0;\n\t\t\t}\n\n\t\t\t& .ck.ck-math-preview {\n\t\t\t\tmargin: var(--ck-spacing-standard) var(--ck-spacing-standard) 0;\n\t\t\t}\n\t\t}\n\n\t\t& > .ck-button {\n\t\t\tpadding: var(--ck-spacing-standard);\n\t\t\tmargin-top: var(--ck-spacing-standard);\n\n\t\t\tborder-radius: 0;\n\t\t\tborder: 0;\n\t\t\tborder-top: 1px solid var(--ck-color-base-border);\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: 0;\n\n\t\t\t\t&:first-of-type {\n\t\t\t\t\tborder-right: 1px solid var(--ck-color-base-border);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-left: 0;\n\n\t\t\t\t&:last-of-type {\n\t\t\t\t\tborder-right: 1px solid var(--ck-color-base-border);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},4199:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content code{background-color:hsla(0,0%,78%,.3);border-radius:2px;padding:.15em}.ck.ck-editor__editable .ck-code_selected{background-color:hsla(0,0%,78%,.5)}","",{version:3,sources:["webpack://./../ckeditor5-basic-styles/theme/code.css"],names:[],mappings:"AAKA,iBACC,kCAAuC,CAEvC,iBAAkB,CADlB,aAED,CAEA,0CACC,kCACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content code {\n\tbackground-color: hsla(0, 0%, 78%, 0.3);\n\tpadding: .15em;\n\tborder-radius: 2px;\n}\n\n.ck.ck-editor__editable .ck-code_selected {\n\tbackground-color: hsla(0, 0%, 78%, 0.5);\n}\n"],sourceRoot:""}]);const a=s},8708:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content blockquote{border-left:5px solid #ccc;font-style:italic;margin-left:0;margin-right:0;overflow:hidden;padding-left:1.5em;padding-right:1.5em}.ck-content[dir=rtl] blockquote{border-left:0;border-right:5px solid #ccc}","",{version:3,sources:["webpack://./../ckeditor5-block-quote/theme/blockquote.css"],names:[],mappings:"AAKA,uBAWC,0BAAsC,CADtC,iBAAkB,CAFlB,aAAc,CACd,cAAe,CAPf,eAAgB,CAIhB,kBAAmB,CADnB,mBAOD,CAEA,gCACC,aAAc,CACd,2BACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content blockquote {\n\t/* See #12 */\n\toverflow: hidden;\n\n\t/* https://github.com/ckeditor/ckeditor5-block-quote/issues/15 */\n\tpadding-right: 1.5em;\n\tpadding-left: 1.5em;\n\n\tmargin-left: 0;\n\tmargin-right: 0;\n\tfont-style: italic;\n\tborder-left: solid 5px hsl(0, 0%, 80%);\n}\n\n.ck-content[dir="rtl"] blockquote {\n\tborder-left: 0;\n\tborder-right: solid 5px hsl(0, 0%, 80%);\n}\n'],sourceRoot:""}]);const a=s},9826:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-block-toolbar-button{transform:translateX(calc(var(--ck-spacing-large)*-1))}","",{version:3,sources:["webpack://./theme/theme.css"],names:[],mappings:"AAMA,4BACC,sDACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* Give the block toolbar button some space, moving it a few pixels away from the editable area. */\n.ck.ck-block-toolbar-button {\n\ttransform: translateX( calc(-1 * var(--ck-spacing-large)) );\n}\n"],sourceRoot:""}]);const a=s},7793:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position{display:inline;pointer-events:none;position:relative}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span{position:absolute;width:0}.ck.ck-editor__editable .ck-widget:-webkit-drag>.ck-widget__selection-handle,.ck.ck-editor__editable .ck-widget:-webkit-drag>.ck-widget__type-around{display:none}.ck.ck-clipboard-drop-target-line{pointer-events:none;position:absolute}:root{--ck-clipboard-drop-target-dot-width:12px;--ck-clipboard-drop-target-dot-height:8px;--ck-clipboard-drop-target-color:var(--ck-color-focus-border)}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span{background:var(--ck-clipboard-drop-target-color);border:1px solid var(--ck-clipboard-drop-target-color);bottom:calc(var(--ck-clipboard-drop-target-dot-height)*-.5);margin-left:-1px;top:calc(var(--ck-clipboard-drop-target-dot-height)*-.5)}.ck.ck-editor__editable .ck.ck-clipboard-drop-target-position span:after{border-color:var(--ck-clipboard-drop-target-color) transparent transparent transparent;border-style:solid;border-width:calc(var(--ck-clipboard-drop-target-dot-height)) calc(var(--ck-clipboard-drop-target-dot-width)*.5) 0 calc(var(--ck-clipboard-drop-target-dot-width)*.5);content:"";display:block;height:0;left:50%;position:absolute;top:calc(var(--ck-clipboard-drop-target-dot-height)*-.5);transform:translateX(-50%);width:0}.ck.ck-editor__editable .ck-widget.ck-clipboard-drop-target-range{outline:var(--ck-widget-outline-thickness) solid var(--ck-clipboard-drop-target-color)!important}.ck.ck-editor__editable .ck-widget:-webkit-drag{zoom:.6;outline:none!important}.ck.ck-clipboard-drop-target-line{background:var(--ck-clipboard-drop-target-color);border:1px solid var(--ck-clipboard-drop-target-color);height:0;margin-top:-1px}.ck.ck-clipboard-drop-target-line:before{border-style:solid;content:"";height:0;position:absolute;top:calc(var(--ck-clipboard-drop-target-dot-width)*-.5);width:0}[dir=ltr] .ck.ck-clipboard-drop-target-line:before{border-color:transparent transparent transparent var(--ck-clipboard-drop-target-color);border-width:calc(var(--ck-clipboard-drop-target-dot-width)*.5) 0 calc(var(--ck-clipboard-drop-target-dot-width)*.5) var(--ck-clipboard-drop-target-dot-height);left:-1px}[dir=rtl] .ck.ck-clipboard-drop-target-line:before{border-color:transparent var(--ck-clipboard-drop-target-color) transparent transparent;border-width:calc(var(--ck-clipboard-drop-target-dot-width)*.5) var(--ck-clipboard-drop-target-dot-height) calc(var(--ck-clipboard-drop-target-dot-width)*.5) 0;right:-1px}',"",{version:3,sources:["webpack://./../ckeditor5-clipboard/theme/clipboard.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-clipboard/clipboard.css"],names:[],mappings:"AASC,8DACC,cAAe,CAEf,mBAAoB,CADpB,iBAOD,CAJC,mEACC,iBAAkB,CAClB,OACD,CAWA,qJACC,YACD,CAIF,kCAEC,mBAAoB,CADpB,iBAED,CC9BA,MACC,yCAA0C,CAC1C,yCAA0C,CAC1C,6DACD,CAOE,mEAIC,gDAAiD,CADjD,sDAAuD,CAFvD,2DAA8D,CAI9D,gBAAiB,CAHjB,wDAqBD,CAfC,yEAWC,sFAAuF,CAEvF,kBAAmB,CADnB,qKAA0K,CAX1K,UAAW,CAIX,aAAc,CAFd,QAAS,CAIT,QAAS,CADT,iBAAkB,CAElB,wDAA2D,CAE3D,0BAA2B,CAR3B,OAYD,CAOF,kEACC,gGACD,CAKA,gDACC,OAAS,CACT,sBACD,CAGD,kCAGC,gDAAiD,CADjD,sDAAuD,CADvD,QAAS,CAGT,eAwBD,CAtBC,yCAMC,kBAAmB,CALnB,UAAW,CAIX,QAAS,CAHT,iBAAkB,CAClB,uDAA0D,CAC1D,OAiBD,CArBA,mDAYE,sFAAuF,CADvF,+JAAoK,CAFpK,SAYF,CArBA,mDAmBE,sFAAuF,CADvF,+JAAmK,CAFnK,UAKF",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor__editable {\n\t/*\n\t * Vertical drop target (in text).\n\t */\n\t& .ck.ck-clipboard-drop-target-position {\n\t\tdisplay: inline;\n\t\tposition: relative;\n\t\tpointer-events: none;\n\n\t\t& span {\n\t\t\tposition: absolute;\n\t\t\twidth: 0;\n\t\t}\n\t}\n\n\t/*\n\t * Styles of the widget being dragged (its preview).\n\t */\n\t& .ck-widget:-webkit-drag {\n\t\t& > .ck-widget__selection-handle {\n\t\t\tdisplay: none;\n\t\t}\n\n\t\t& > .ck-widget__type-around {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n\n.ck.ck-clipboard-drop-target-line {\n\tposition: absolute;\n\tpointer-events: none;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_dir.css\";\n\n:root {\n\t--ck-clipboard-drop-target-dot-width: 12px;\n\t--ck-clipboard-drop-target-dot-height: 8px;\n\t--ck-clipboard-drop-target-color: var(--ck-color-focus-border);\n}\n\n.ck.ck-editor__editable {\n\t/*\n\t * Vertical drop target (in text).\n\t */\n\t& .ck.ck-clipboard-drop-target-position {\n\t\t& span {\n\t\t\tbottom: calc(-.5 * var(--ck-clipboard-drop-target-dot-height));\n\t\t\ttop: calc(-.5 * var(--ck-clipboard-drop-target-dot-height));\n\t\t\tborder: 1px solid var(--ck-clipboard-drop-target-color);\n\t\t\tbackground: var(--ck-clipboard-drop-target-color);\n\t\t\tmargin-left: -1px;\n\n\t\t\t/* The triangle above the marker */\n\t\t\t&::after {\n\t\t\t\tcontent: '';\n\t\t\t\twidth: 0;\n\t\t\t\theight: 0;\n\n\t\t\t\tdisplay: block;\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: 50%;\n\t\t\t\ttop: calc(-.5 * var(--ck-clipboard-drop-target-dot-height));\n\n\t\t\t\ttransform: translateX(-50%);\n\t\t\t\tborder-color: var(--ck-clipboard-drop-target-color) transparent transparent transparent;\n\t\t\t\tborder-width: calc(var(--ck-clipboard-drop-target-dot-height)) calc(.5 * var(--ck-clipboard-drop-target-dot-width)) 0 calc(.5 * var(--ck-clipboard-drop-target-dot-width));\n\t\t\t\tborder-style: solid;\n\t\t\t}\n\t\t}\n\t}\n\n\t/*\n\t * Styles of the widget that it a drop target.\n\t */\n\t& .ck-widget.ck-clipboard-drop-target-range {\n\t\toutline: var(--ck-widget-outline-thickness) solid var(--ck-clipboard-drop-target-color) !important;\n\t}\n\n\t/*\n\t * Styles of the widget being dragged (its preview).\n\t */\n\t& .ck-widget:-webkit-drag {\n\t\tzoom: 0.6;\n\t\toutline: none !important;\n\t}\n}\n\n.ck.ck-clipboard-drop-target-line {\n\theight: 0;\n\tborder: 1px solid var(--ck-clipboard-drop-target-color);\n\tbackground: var(--ck-clipboard-drop-target-color);\n\tmargin-top: -1px;\n\n\t&::before {\n\t\tcontent: '';\n\t\tposition: absolute;\n\t\ttop: calc(-.5 * var(--ck-clipboard-drop-target-dot-width));\n\t\twidth: 0;\n\t\theight: 0;\n\t\tborder-style: solid;\n\n\t\t@mixin ck-dir ltr {\n\t\t\tleft: -1px;\n\n\t\t\tborder-width: calc(.5 * var(--ck-clipboard-drop-target-dot-width)) 0 calc(.5 * var(--ck-clipboard-drop-target-dot-width)) var(--ck-clipboard-drop-target-dot-height);\n\t\t\tborder-color: transparent transparent transparent var(--ck-clipboard-drop-target-color);\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\tright: -1px;\n\n\t\t\tborder-width:calc(.5 * var(--ck-clipboard-drop-target-dot-width)) var(--ck-clipboard-drop-target-dot-height) calc(.5 * var(--ck-clipboard-drop-target-dot-width)) 0;\n\t\t\tborder-color: transparent var(--ck-clipboard-drop-target-color) transparent transparent;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},6610:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content pre{background:hsla(0,0%,78%,.3);border:1px solid #c4c4c4;border-radius:2px;color:#353535;direction:ltr;font-style:normal;min-width:200px;padding:1em;tab-size:4;text-align:left;white-space:pre-wrap}.ck-content pre code{background:unset;border-radius:0;padding:0}.ck.ck-editor__editable pre{position:relative}.ck.ck-editor__editable pre[data-language]:after{content:attr(data-language);position:absolute}:root{--ck-color-code-block-label-background:#757575}.ck.ck-editor__editable pre[data-language]:after{background:var(--ck-color-code-block-label-background);color:#fff;font-family:var(--ck-font-face);font-size:10px;line-height:16px;padding:var(--ck-spacing-tiny) var(--ck-spacing-medium);right:10px;top:-1px;white-space:nowrap}.ck.ck-code-block-dropdown .ck-dropdown__panel{max-height:250px;overflow-x:hidden;overflow-y:auto}","",{version:3,sources:["webpack://./../ckeditor5-code-block/theme/codeblock.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-code-block/codeblock.css"],names:[],mappings:"AAKA,gBAGC,4BAAiC,CACjC,wBAAiC,CACjC,iBAAkB,CAHlB,aAAwB,CAOxB,aAAc,CAMd,iBAAkB,CAGlB,eAAgB,CAjBhB,WAAY,CAUZ,UAAW,CAHX,eAAgB,CAIhB,oBAaD,CALC,qBACC,gBAAiB,CAEjB,eAAgB,CADhB,SAED,CAGD,4BACC,iBAMD,CAJC,iDACC,2BAA4B,CAC5B,iBACD,CCjCD,MACC,8CACD,CAEA,iDAGC,sDAAuD,CAMvD,UAAuB,CAHvB,+BAAgC,CADhC,cAAe,CAEf,gBAAiB,CACjB,uDAAwD,CANxD,UAAW,CADX,QAAS,CAST,kBACD,CAEA,+CAEC,gBAAiB,CAEjB,iBAAkB,CADlB,eAED",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content pre {\n\tpadding: 1em;\n\tcolor: hsl(0, 0%, 20.8%);\n\tbackground: hsla(0, 0%, 78%, 0.3);\n\tborder: 1px solid hsl(0, 0%, 77%);\n\tborder-radius: 2px;\n\n\t/* Code block are language direction–agnostic. */\n\ttext-align: left;\n\tdirection: ltr;\n\n\ttab-size: 4;\n\twhite-space: pre-wrap;\n\n\t/* Don't inherit the style, e.g. when in a block quote. */\n\tfont-style: normal;\n\n\t/* Don't let the code be squashed e.g. when in a table cell. */\n\tmin-width: 200px;\n\n\t& code {\n\t\tbackground: unset;\n\t\tpadding: 0;\n\t\tborder-radius: 0;\n\t}\n}\n\n.ck.ck-editor__editable pre {\n\tposition: relative;\n\n\t&[data-language]::after {\n\t\tcontent: attr(data-language);\n\t\tposition: absolute;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-code-block-label-background: hsl(0, 0%, 46%);\n}\n\n.ck.ck-editor__editable pre[data-language]::after {\n\ttop: -1px;\n\tright: 10px;\n\tbackground: var(--ck-color-code-block-label-background);\n\n\tfont-size: 10px;\n\tfont-family: var(--ck-font-face);\n\tline-height: 16px;\n\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-medium);\n\tcolor: hsl(0, 0%, 100%);\n\twhite-space: nowrap;\n}\n\n.ck.ck-code-block-dropdown .ck-dropdown__panel {\n\t/* There could be dozens of languages available. Use scroll to prevent a 10e6px dropdown. */\n\tmax-height: 250px;\n\toverflow-y: auto;\n\toverflow-x: hidden;\n}\n"],sourceRoot:""}]);const a=s},4098:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck .ck-placeholder,.ck.ck-placeholder{position:relative}.ck .ck-placeholder:before,.ck.ck-placeholder:before{content:attr(data-placeholder);left:0;pointer-events:none;position:absolute;right:0}.ck.ck-read-only .ck-placeholder:before{display:none}.ck.ck-reset_all .ck-placeholder{position:relative}@media (forced-colors:active){.ck .ck-placeholder,.ck.ck-placeholder{forced-color-adjust:preserve-parent-color}}.ck .ck-placeholder:before,.ck.ck-placeholder:before{cursor:text}@media (forced-colors:none){.ck .ck-placeholder:before,.ck.ck-placeholder:before{color:var(--ck-color-engine-placeholder-text)}}@media (forced-colors:active){.ck .ck-placeholder:before,.ck.ck-placeholder:before{font-style:italic;margin-left:1px}}","",{version:3,sources:["webpack://./../ckeditor5-engine/theme/placeholder.css","webpack://./../ckeditor5-ui/theme/mixins/_mediacolors.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-engine/placeholder.css"],names:[],mappings:"AAMA,uCAEC,iBAWD,CATC,qDAIC,8BAA+B,CAF/B,MAAO,CAKP,mBAAoB,CANpB,iBAAkB,CAElB,OAKD,CAKA,wCACC,YACD,CAQD,iCACC,iBACD,CC7BC,8BACC,uCCOA,yCDLA,CACD,CCOA,qDACC,WAmBD,CDvBA,4BACC,qDCMC,6CDJD,CACD,CAZA,8BACC,qDCsBC,iBAAkB,CAMlB,eD1BD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* See ckeditor/ckeditor5#936. */\n.ck.ck-placeholder,\n.ck .ck-placeholder {\n\tposition: relative;\n\n\t&::before {\n\t\tposition: absolute;\n\t\tleft: 0;\n\t\tright: 0;\n\t\tcontent: attr(data-placeholder);\n\n\t\t/* See ckeditor/ckeditor5#469. */\n\t\tpointer-events: none;\n\t}\n}\n\n/* See ckeditor/ckeditor5#1987. */\n.ck.ck-read-only .ck-placeholder {\n\t&::before {\n\t\tdisplay: none;\n\t}\n}\n\n/*\n * Rules for the `ck-placeholder` are loaded before the rules for `ck-reset_all` in the base CKEditor 5 DLL build.\n * This fix overwrites the incorrectly set `position: static` from `ck-reset_all`.\n * See https://github.com/ckeditor/ckeditor5/issues/11418.\n */\n.ck.ck-reset_all .ck-placeholder {\n\tposition: relative;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-forced-colors {\n\t@media (forced-colors: active) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n\n@define-mixin ck-media-default-colors {\n\t@media (forced-colors: none) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_mediacolors.css";\n\n/* See ckeditor/ckeditor5#936. */\n.ck.ck-placeholder, .ck .ck-placeholder {\n\t@mixin ck-media-forced-colors {\n\t\t/*\n\t\t * This is needed for Edge on Windows to use the right color for the placeholder content (::before).\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/14907.\n\t\t */\n\t\tforced-color-adjust: preserve-parent-color;\n\t}\n\n\t&::before {\n\t\tcursor: text;\n\n\t\t@mixin ck-media-default-colors {\n\t\t\tcolor: var(--ck-color-engine-placeholder-text);\n\t\t}\n\n\t\t@mixin ck-media-forced-colors {\n\t\t\t/*\n\t\t\t * In the high contrast mode there is no telling between regular and placeholder text. Using\n\t\t\t * italic text to address that issue. See https://github.com/ckeditor/ckeditor5/issues/14907.\n\t\t\t */\n\t\t\tfont-style: italic;\n\n\t\t\t/*\n\t\t\t * Without this margin, the caret will not show up and blink when the user puts the selection\n\t\t\t * in the placeholder (Edge on Windows). See https://github.com/ckeditor/ckeditor5/issues/14907.\n\t\t\t */\n\t\t\tmargin-left: 1px;\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},8264:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-editor__editable span[data-ck-unsafe-element]{display:none}","",{version:3,sources:["webpack://./../ckeditor5-engine/theme/renderer.css"],names:[],mappings:"AAMA,qDACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* Elements marked by the Renderer as hidden should be invisible in the editor. */\n.ck.ck-editor__editable span[data-ck-unsafe-element] {\n\tdisplay: none;\n}\n"],sourceRoot:""}]);const a=s},4341:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-find-result{background:var(--ck-color-highlight-background);color:var(--ck-color-text)}.ck-find-result_selected{background:#ff9633}","",{version:3,sources:["webpack://./../ckeditor5-find-and-replace/theme/findandreplace.css"],names:[],mappings:"AAKA,gBACC,+CAAgD,CAChD,0BACD,CAEA,yBACC,kBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-find-result {\n\tbackground: var(--ck-color-highlight-background);\n\tcolor: var(--ck-color-text);\n}\n\n.ck-find-result_selected {\n\tbackground: hsl(29, 100%, 60%);\n}\n"],sourceRoot:""}]);const a=s},9627:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-find-and-replace-form{max-width:100%;& .ck-find-and-replace-form__inputs,.ck-find-and-replace-form__actions{display:flex}& .ck-find-and-replace-form__inputs.ck-find-and-replace-form__inputs .ck-results-counter,.ck-find-and-replace-form__actions.ck-find-and-replace-form__inputs .ck-results-counter{position:absolute}}.ck.ck-find-and-replace-form{width:400px}.ck.ck-find-and-replace-form:focus{outline:none}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions,.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs{align-content:stretch;align-items:center;flex:1 1 auto;flex-direction:row;flex-wrap:wrap;margin:0;padding:var(--ck-spacing-large)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions>.ck-button,.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-button{flex:0 0 auto}[dir=ltr] .ck.ck-find-and-replace-form .ck-find-and-replace-form__actions>*+*,[dir=ltr] .ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>*+*{margin-left:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-find-and-replace-form .ck-find-and-replace-form__actions>*+*,[dir=rtl] .ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>*+*{margin-right:var(--ck-spacing-standard)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions .ck-labeled-field-view,.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs .ck-labeled-field-view{flex:1 1 auto}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions .ck-labeled-field-view .ck-input,.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs .ck-labeled-field-view .ck-input{min-width:50px;width:100%}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs{align-items:flex-start}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-button-prev>.ck-icon{transform:rotate(90deg)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-button-next>.ck-icon{transform:rotate(-90deg)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs .ck-results-counter{top:50%;transform:translateY(-50%)}[dir=ltr] .ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs .ck-results-counter{right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs .ck-results-counter{left:var(--ck-spacing-standard)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs .ck-results-counter{color:var(--ck-color-base-border)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-labeled-field-replace{flex:0 0 100%;padding-top:var(--ck-spacing-standard)}[dir=ltr] .ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-labeled-field-replace{margin-left:0}[dir=rtl] .ck.ck-find-and-replace-form .ck-find-and-replace-form__inputs>.ck-labeled-field-replace{margin-right:0}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions{flex-wrap:wrap;justify-content:flex-end;margin-top:calc(var(--ck-spacing-large)*-1)}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions>.ck-button-find{font-weight:700}.ck.ck-find-and-replace-form .ck-find-and-replace-form__actions>.ck-button-find .ck-button__label{padding-left:var(--ck-spacing-large);padding-right:var(--ck-spacing-large)}.ck.ck-find-and-replace-form .ck-switchbutton{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;width:100%}@media screen and (max-width:600px){.ck.ck-find-and-replace-form{max-width:100%;width:300px}.ck.ck-find-and-replace-form.ck-find-and-replace-form__input{flex-wrap:wrap}.ck.ck-find-and-replace-form.ck-find-and-replace-form__input .ck-labeled-field-view{flex:1 0 auto;margin-bottom:var(--ck-spacing-standard);width:100%}.ck.ck-find-and-replace-form.ck-find-and-replace-form__input>.ck-button{text-align:center}.ck.ck-find-and-replace-form.ck-find-and-replace-form__input>.ck-button:first-of-type{flex:1 1 auto}[dir=ltr] .ck.ck-find-and-replace-form.ck-find-and-replace-form__input>.ck-button:first-of-type{margin-left:0}[dir=rtl] .ck.ck-find-and-replace-form.ck-find-and-replace-form__input>.ck-button:first-of-type{margin-right:0}.ck.ck-find-and-replace-form.ck-find-and-replace-form__input>.ck-button:first-of-type .ck-button__label{text-align:center;width:100%}.ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view){flex:1 1 auto;flex-wrap:wrap}.ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view)>.ck-button{text-align:center}.ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view)>.ck-button:first-of-type{flex:1 1 auto}[dir=ltr] .ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view)>.ck-button:first-of-type{margin-left:0}[dir=rtl] .ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view)>.ck-button:first-of-type{margin-right:0}.ck.ck-find-and-replace-form.ck-find-and-replace-form__actions>:not(.ck-labeled-field-view)>.ck-button .ck-button__label{text-align:center;width:100%}}","",{version:3,sources:["webpack://./../ckeditor5-find-and-replace/theme/findandreplaceform.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-find-and-replace/findandreplaceform.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAKA,6BACC,cAAe,CAEf,uEACC,YAMD,CAHC,iLACC,iBACD,CAEF,CCRA,6BACC,WAoHD,CA9GC,mCACC,YACD,CAGA,+HAMC,qBAAsB,CADtB,kBAAmB,CAHnB,aAAc,CACd,kBAAmB,CACnB,cAAe,CAKf,QAAS,CADT,+BA4BD,CAzBC,qJACC,aACD,CAGC,2JACC,sCACD,CAIA,2JACC,uCACD,CAGD,6KACC,aAMD,CAJC,iMAEC,cAAe,CADf,UAED,CAMF,+DAEC,sBAqCD,CAnCC,wFACC,uBACD,CAEA,wFACC,wBACD,CAEA,mFACC,OAAQ,CACR,0BAWD,CAbA,6FAKE,gCAQF,CAbA,6FASE,+BAIF,CAbA,mFAYC,iCACD,CAEA,yFACC,aAAc,CACd,sCASD,CAXA,mGAKE,aAMF,CAXA,mGASE,cAEF,CAID,gEACC,cAAe,CACf,wBAAyB,CACzB,2CAWD,CATC,gFACC,eAOD,CAJC,kGACC,oCAAqC,CACrC,qCACD,CAIF,8CAMC,kBAAmB,CAJnB,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CACjB,6BAA8B,CAJ9B,UAMD,CCtHA,oCD0HA,6BAIC,cAAe,CAHf,WA+DD,CAzDC,6DACC,cA4BD,CA1BC,oFACC,aAAc,CAEd,wCAAyC,CADzC,UAED,CAEA,wEACC,iBAkBD,CAhBC,sFACC,aAcD,CAfA,gGAIE,aAWF,CAfA,gGAQE,cAOF,CAJC,wGAEC,iBAAkB,CADlB,UAED,CAMH,4FAEC,aAAc,CADd,cAuBD,CApBC,uGACC,iBAkBD,CAhBC,qHACC,aASD,CAVA,+HAIE,aAMF,CAVA,+HAQE,cAEF,CAEA,yHAEC,iBAAkB,CADlB,UAED,CCrLH",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-find-and-replace-form {\n\tmax-width: 100%;\n\n\t& .ck-find-and-replace-form__inputs, .ck-find-and-replace-form__actions {\n\t\tdisplay: flex;\n\n\t\t/* The inputs area styles */\n\t\t&.ck-find-and-replace-form__inputs .ck-results-counter {\n\t\t\tposition: absolute;\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-find-and-replace-form {\n\twidth: 400px;\n\n\t/*\n\t * The

needs tabindex="-1" for proper Esc handling after being clicked\n\t * but the side effect is that this creates a nasty focus outline in some browsers.\n\t */\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t/* Generic styles for the form inputs and actions. */\n\t& .ck-find-and-replace-form__inputs,\n\t& .ck-find-and-replace-form__actions {\n\t\tflex: 1 1 auto;\n\t\tflex-direction: row;\n\t\tflex-wrap: wrap;\n\t\talign-items: center;\n\t\talign-content: stretch;\n\n\t\tpadding: var(--ck-spacing-large);\n\t\tmargin: 0;\n\n\t\t& > .ck-button {\n\t\t\tflex: 0 0 auto;\n\t\t}\n\n\t\t@mixin ck-dir ltr {\n\t\t\t& > * + * {\n\t\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t\t}\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t& > * + * {\n\t\t\t\tmargin-right: var(--ck-spacing-standard);\n\t\t\t}\n\t\t}\n\n\t\t& .ck-labeled-field-view {\n\t\t\tflex: 1 1 auto;\n\n\t\t\t& .ck-input {\n\t\t\t\twidth: 100%;\n\t\t\t\tmin-width: 50px;\n\t\t\t}\n\t\t}\n\n\t}\n\n\t/* Styles specific for inputs area. */\n\t& .ck-find-and-replace-form__inputs {\n\t\t/* To display all controls in line when there\'s an error under the input */\n\t\talign-items: flex-start;\n\n\t\t& > .ck-button-prev > .ck-icon {\n\t\t\ttransform: rotate(90deg);\n\t\t}\n\n\t\t& > .ck-button-next > .ck-icon {\n\t\t\ttransform: rotate(-90deg);\n\t\t}\n\n\t\t& .ck-results-counter {\n\t\t\ttop: 50%;\n\t\t\ttransform: translateY(-50%);\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tright: var(--ck-spacing-standard);\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tleft: var(--ck-spacing-standard);\n\t\t\t}\n\n\t\t\tcolor: var(--ck-color-base-border);\n\t\t}\n\n\t\t& > .ck-labeled-field-replace {\n\t\t\tflex: 0 0 100%;\n\t\t\tpadding-top: var(--ck-spacing-standard);\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: 0;\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-right: 0;\n\t\t\t}\n\t\t}\n\t}\n\n\t/* Styles specific for actions area. */\n\t& .ck-find-and-replace-form__actions {\n\t\tflex-wrap: wrap;\n\t\tjustify-content: flex-end;\n\t\tmargin-top: calc( -1 * var(--ck-spacing-large) );\n\n\t\t& > .ck-button-find {\n\t\t\tfont-weight: bold;\n\n\t\t\t/* Beef the find button up a little. It\'s the main action button in the form */\n\t\t\t& .ck-button__label {\n\t\t\t\tpadding-left: var(--ck-spacing-large);\n\t\t\t\tpadding-right: var(--ck-spacing-large);\n\t\t\t}\n\t\t}\n\t}\n\n\t& .ck-switchbutton {\n\t\twidth: 100%;\n\t\tdisplay: flex;\n\t\tflex-direction: row;\n\t\tflex-wrap: nowrap;\n\t\tjustify-content: space-between;\n\t\talign-items: center;\n\t}\n}\n\n@mixin ck-media-phone {\n\t.ck.ck-find-and-replace-form {\n\t\twidth: 300px;\n\n\t\t/* Don\'t let the form overflow from the dialog (https://github.com/cksource/ckeditor5-commercial/issues/5913) */\n\t\tmax-width: 100%;\n\n\t\t/* Styles specific for inputs area. */\n\t\t&.ck-find-and-replace-form__input {\n\t\t\tflex-wrap: wrap;\n\n\t\t\t& .ck-labeled-field-view {\n\t\t\t\tflex: 1 0 auto;\n\t\t\t\twidth: 100%;\n\t\t\t\tmargin-bottom: var(--ck-spacing-standard);\n\t\t\t}\n\n\t\t\t& > .ck-button {\n\t\t\t\ttext-align: center;\n\n\t\t\t\t&:first-of-type {\n\t\t\t\t\tflex: 1 1 auto;\n\n\t\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\t\tmargin-left: 0;\n\t\t\t\t\t}\n\n\t\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\t\tmargin-right: 0;\n\t\t\t\t\t}\n\n\t\t\t\t\t& .ck-button__label {\n\t\t\t\t\t\twidth: 100%;\n\t\t\t\t\t\ttext-align: center;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/* Styles specific for actions area. */\n\t\t&.ck-find-and-replace-form__actions > :not(.ck-labeled-field-view) {\n\t\t\tflex-wrap: wrap;\n\t\t\tflex: 1 1 auto;\n\n\t\t\t& > .ck-button {\n\t\t\t\ttext-align: center;\n\n\t\t\t\t&:first-of-type {\n\t\t\t\t\tflex: 1 1 auto;\n\n\t\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\t\tmargin-left: 0;\n\t\t\t\t\t}\n\n\t\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\t\tmargin-right: 0;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t& .ck-button__label {\n\t\t\t\t\twidth: 100%;\n\t\t\t\t\ttext-align: center;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},1058:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content .text-tiny{font-size:.7em}.ck-content .text-small{font-size:.85em}.ck-content .text-big{font-size:1.4em}.ck-content .text-huge{font-size:1.8em}","",{version:3,sources:["webpack://./../ckeditor5-font/theme/fontsize.css"],names:[],mappings:"AAUC,uBACC,cACD,CAEA,wBACC,eACD,CAEA,sBACC,eACD,CAEA,uBACC,eACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* The values should be synchronized with the "FONT_SIZE_PRESET_UNITS" object in the "/src/fontsize/utils.js" file. */\n\n/* Styles should be prefixed with the `.ck-content` class.\nSee https://github.com/ckeditor/ckeditor5/issues/6636 */\n.ck-content {\n\t& .text-tiny {\n\t\tfont-size: .7em;\n\t}\n\n\t& .text-small {\n\t\tfont-size: .85em;\n\t}\n\n\t& .text-big {\n\t\tfont-size: 1.4em;\n\t}\n\n\t& .text-huge {\n\t\tfont-size: 1.8em;\n\t}\n}\n'],sourceRoot:""}]);const a=s},6269:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-heading_heading1{font-size:20px}.ck.ck-heading_heading2{font-size:17px}.ck.ck-heading_heading3{font-size:14px}.ck[class*=ck-heading_heading]{font-weight:700}.ck.ck-dropdown.ck-heading-dropdown .ck-dropdown__button .ck-button__label{width:8em}.ck.ck-dropdown.ck-heading-dropdown .ck-dropdown__panel .ck-list__item{min-width:18em}","",{version:3,sources:["webpack://./../ckeditor5-heading/theme/heading.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-heading/heading.css"],names:[],mappings:"AAKA,wBACC,cACD,CAEA,wBACC,cACD,CAEA,wBACC,cACD,CAEA,+BACC,eACD,CCZC,2EACC,SACD,CAEA,uEACC,cACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-heading_heading1 {\n\tfont-size: 20px;\n}\n\n.ck.ck-heading_heading2 {\n\tfont-size: 17px;\n}\n\n.ck.ck-heading_heading3 {\n\tfont-size: 14px;\n}\n\n.ck[class*="ck-heading_heading"] {\n\tfont-weight: bold;\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* Resize dropdown's button label. */\n.ck.ck-dropdown.ck-heading-dropdown {\n\t& .ck-dropdown__button .ck-button__label {\n\t\twidth: 8em;\n\t}\n\n\t& .ck-dropdown__panel .ck-list__item {\n\t\tmin-width: 18em;\n\t}\n}\n"],sourceRoot:""}]);const a=s},2626:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-editor__editable .ck-horizontal-line{display:flow-root}.ck-content hr{background:#dedede;border:0;height:4px;margin:15px 0}","",{version:3,sources:["webpack://./../ckeditor5-horizontal-line/theme/horizontalline.css"],names:[],mappings:"AAMA,yCAEC,iBACD,CAEA,eAGC,kBAA2B,CAC3B,QAAS,CAFT,UAAW,CADX,aAID",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n\n.ck-editor__editable .ck-horizontal-line {\n\t/* Necessary to render properly next to floated objects, e.g. side image case. */\n\tdisplay: flow-root;\n}\n\n.ck-content hr {\n\tmargin: 15px 0;\n\theight: 4px;\n\tbackground: hsl(0, 0%, 87%);\n\tborder: 0;\n}\n"],sourceRoot:""}]);const a=s},265:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content .image{clear:both;display:table;margin:.9em auto;min-width:50px;text-align:center}.ck-content .image img{display:block;height:auto;margin:0 auto;max-width:100%;min-width:100%}.ck-content .image-inline{align-items:flex-start;display:inline-flex;max-width:100%}.ck-content .image-inline picture{display:flex}.ck-content .image-inline img,.ck-content .image-inline picture{flex-grow:1;flex-shrink:1;max-width:100%}.ck.ck-editor__editable .image>figcaption.ck-placeholder:before{overflow:hidden;padding-left:inherit;padding-right:inherit;text-overflow:ellipsis;white-space:nowrap}.ck.ck-editor__editable .image{z-index:1}.ck.ck-editor__editable .image.ck-widget_selected{z-index:2}.ck.ck-editor__editable .image-inline{z-index:1}.ck.ck-editor__editable .image-inline.ck-widget_selected{z-index:2}.ck.ck-editor__editable .image-inline.ck-widget_selected ::selection{display:none}.ck.ck-editor__editable .image-inline img{height:auto}.ck.ck-editor__editable td .image-inline img,.ck.ck-editor__editable th .image-inline img{max-width:none}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/image.css"],names:[],mappings:"AAMC,mBAEC,UAAW,CADX,aAAc,CAOd,gBAAkB,CAGlB,cAAe,CARf,iBA2BD,CAjBC,uBAEC,aAAc,CAad,WAAY,CAVZ,aAAc,CAGd,cAAe,CAGf,cAKD,CAGD,0BAYC,sBAAuB,CANvB,mBAAoB,CAGpB,cAoBD,CAdC,kCACC,YACD,CAGA,gEAGC,WAAY,CACZ,aAAc,CAGd,cACD,CAUD,gEASC,eAAgB,CARhB,oBAAqB,CACrB,qBAAsB,CAQtB,sBAAuB,CAFvB,kBAGD,CAKA,+BACC,SASD,CAHC,kDACC,SACD,CAMD,sCACC,SAkBD,CAZC,yDACC,SAUD,CAHC,qEACC,YACD,CAMF,0CACC,WACD,CAMC,0FACC,cACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content {\n\t& .image {\n\t\tdisplay: table;\n\t\tclear: both;\n\t\ttext-align: center;\n\n\t\t/* Make sure there is some space between the content and the image. Center image by default. */\n\t\t/* The first value should be equal to --ck-spacing-large variable if used in the editor context\n\t \tto avoid the content jumping (See https://github.com/ckeditor/ckeditor5/issues/9825). */\n\t\tmargin: 0.9em auto;\n\n\t\t/* Make sure the caption will be displayed properly (See: https://github.com/ckeditor/ckeditor5/issues/1870). */\n\t\tmin-width: 50px;\n\n\t\t& img {\n\t\t\t/* Prevent unnecessary margins caused by line-height (see #44). */\n\t\t\tdisplay: block;\n\n\t\t\t/* Center the image if its width is smaller than the content\'s width. */\n\t\t\tmargin: 0 auto;\n\n\t\t\t/* Make sure the image never exceeds the size of the parent container (ckeditor/ckeditor5-ui#67). */\n\t\t\tmax-width: 100%;\n\n\t\t\t/* Make sure the image is never smaller than the parent container (See: https://github.com/ckeditor/ckeditor5/issues/9300). */\n\t\t\tmin-width: 100%;\n\n\t\t\t/* Keep proportions of the block image if the height is set and the image is wider than the editor width.\n\t\t\tSee https://github.com/ckeditor/ckeditor5/issues/14542. */\n\t\t\theight: auto;\n\t\t}\n\t}\n\n\t& .image-inline {\n\t\t/*\n\t\t * Normally, the .image-inline would have "display: inline-block" and "img { width: 100% }" (to follow the wrapper while resizing).\n\t\t * Unfortunately, together with "srcset", it gets automatically stretched up to the width of the editing root.\n\t\t * This strange behavior does not happen with inline-flex.\n\t\t */\n\t\tdisplay: inline-flex;\n\n\t\t/* While being resized, don\'t allow the image to exceed the width of the editing root. */\n\t\tmax-width: 100%;\n\n\t\t/* This is required by Safari to resize images in a sensible way. Without this, the browser breaks the ratio. */\n\t\talign-items: flex-start;\n\n\t\t/* When the picture is present it must act as a flex container to let the img resize properly */\n\t\t& picture {\n\t\t\tdisplay: flex;\n\t\t}\n\n\t\t/* When the picture is present, it must act like a resizable img. */\n\t\t& picture,\n\t\t& img {\n\t\t\t/* This is necessary for the img to span the entire .image-inline wrapper and to resize properly. */\n\t\t\tflex-grow: 1;\n\t\t\tflex-shrink: 1;\n\n\t\t\t/* Prevents overflowing the editing root boundaries when an inline image is very wide. */\n\t\t\tmax-width: 100%;\n\t\t}\n\t}\n}\n\n.ck.ck-editor__editable {\n\t/*\n\t * Inhertit the content styles padding of the
in case the integration overrides `text-align: center`\n\t * of `.image` (e.g. to the left/right). This ensures the placeholder stays at the padding just like the native\n\t * caret does, and not at the edge of
.\n\t */\n\t& .image > figcaption.ck-placeholder::before {\n\t\tpadding-left: inherit;\n\t\tpadding-right: inherit;\n\n\t\t/*\n\t\t * Make sure the image caption placeholder doesn\'t overflow the placeholder area.\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/9162.\n\t\t */\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t}\n\n\t/*\n\t * See https://github.com/ckeditor/ckeditor5/issues/15115.\n\t */\n\t& .image {\n\t\tz-index: 1;\n\n\t\t/*\n\t\t * Make sure the selected image always stays on top of its siblings.\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/9108.\n\t\t */\n\t\t&.ck-widget_selected {\n\t\t\tz-index: 2;\n\t\t}\n\t}\n\n\t/*\n\t * See https://github.com/ckeditor/ckeditor5/issues/15115.\n\t */\n\t& .image-inline {\n\t\tz-index: 1;\n\n\t\t/*\n\t\t * Make sure the selected inline image always stays on top of its siblings.\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/9108.\n\t\t */\n\t\t&.ck-widget_selected {\n\t\t\tz-index: 2;\n\n\t\t\t/*\n\t\t\t * Make sure the native browser selection style is not displayed.\n\t\t\t * Inline image widgets have their own styles for the selected state and\n\t\t\t * leaving this up to the browser is asking for a visual collision.\n\t\t\t */\n\t\t\t& ::selection {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n\n\t/* Keep proportions of the inline image if the height is set and the image is wider than the editor width.\n\tSee https://github.com/ckeditor/ckeditor5/issues/14542. */\n\t& .image-inline img {\n\t\theight: auto;\n\t}\n\n\t/* The inline image nested in the table should have its original size if not resized.\n\tSee https://github.com/ckeditor/ckeditor5/issues/9117. */\n\t& td,\n\t& th {\n\t\t& .image-inline img {\n\t\t\tmax-width: none;\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},5247:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-image-caption-background:#f7f7f7;--ck-color-image-caption-text:#333;--ck-color-image-caption-highlighted-background:#fd0}.ck-content .image>figcaption{background-color:var(--ck-color-image-caption-background);caption-side:bottom;color:var(--ck-color-image-caption-text);display:table-caption;font-size:.75em;outline-offset:-1px;padding:.6em;word-break:break-word}@media (forced-colors:active){.ck-content .image>figcaption{background-color:unset;color:unset}}@media (forced-colors:none){.ck.ck-editor__editable .image>figcaption.image__caption_highlighted{animation:ck-image-caption-highlight .6s ease-out}}@media (prefers-reduced-motion:reduce){.ck.ck-editor__editable .image>figcaption.image__caption_highlighted{animation:none}}@keyframes ck-image-caption-highlight{0%{background-color:var(--ck-color-image-caption-highlighted-background)}to{background-color:var(--ck-color-image-caption-background)}}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/imagecaption.css","webpack://./../ckeditor5-ui/theme/mixins/_mediacolors.css"],names:[],mappings:"AAOA,MACC,2CAAoD,CACpD,kCAA8C,CAC9C,oDACD,CAGA,8BAKC,yDAA0D,CAH1D,mBAAoB,CAEpB,wCAAyC,CAHzC,qBAAsB,CAMtB,eAAgB,CAChB,mBAAoB,CAFpB,YAAa,CAHb,qBAYD,CAJC,8BAXD,8BAYE,sBAAuB,CACvB,WAEF,CADC,CCdA,4BACC,qEDmBA,iDCjBA,CACD,CDmBA,uCALD,qEAME,cAEF,CADC,CAGD,sCACC,GACC,qEACD,CAEA,GACC,yDACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_mediacolors.css";\n\n:root {\n\t--ck-color-image-caption-background: hsl(0, 0%, 97%);\n\t--ck-color-image-caption-text: hsl(0, 0%, 20%);\n\t--ck-color-image-caption-highlighted-background: hsl(52deg 100% 50%);\n}\n\n/* Content styles */\n.ck-content .image > figcaption {\n\tdisplay: table-caption;\n\tcaption-side: bottom;\n\tword-break: break-word;\n\tcolor: var(--ck-color-image-caption-text);\n\tbackground-color: var(--ck-color-image-caption-background);\n\tpadding: .6em;\n\tfont-size: .75em;\n\toutline-offset: -1px;\n\n\t/* Improve placeholder rendering in high-constrast mode (https://github.com/ckeditor/ckeditor5/issues/14907). */\n\t@media (forced-colors: active) {\n\t\tbackground-color: unset;\n\t\tcolor: unset;\n\t}\n}\n\n/* Editing styles */\n.ck.ck-editor__editable .image > figcaption.image__caption_highlighted {\n\t@mixin ck-media-default-colors {\n\t\tanimation: ck-image-caption-highlight .6s ease-out;\n\t}\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\tanimation: none;\n\t}\n}\n\n@keyframes ck-image-caption-highlight {\n\t0% {\n\t\tbackground-color: var(--ck-color-image-caption-highlighted-background);\n\t}\n\n\t100% {\n\t\tbackground-color: var(--ck-color-image-caption-background);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-forced-colors {\n\t@media (forced-colors: active) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n\n@define-mixin ck-media-default-colors {\n\t@media (forced-colors: none) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},4642:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-image-custom-resize-form{align-items:flex-start;display:flex;flex-direction:row;flex-wrap:nowrap}.ck.ck-image-custom-resize-form .ck-labeled-field-view{display:inline-block}.ck.ck-image-custom-resize-form .ck-label{display:none}@media screen and (max-width:600px){.ck.ck-image-custom-resize-form{flex-wrap:wrap}.ck.ck-image-custom-resize-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-image-custom-resize-form .ck-button{flex-basis:50%}}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/imagecustomresizeform.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAOA,gCAIC,sBAAuB,CAHvB,YAAa,CACb,kBAAmB,CACnB,gBAsBD,CAnBC,uDACC,oBACD,CAEA,0CACC,YACD,CCbA,oCDCD,gCAeE,cAUF,CARE,uDACC,eACD,CAEA,2CACC,cACD,CCtBD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-image-custom-resize-form {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\talign-items: flex-start;\n\n\t& .ck-labeled-field-view {\n\t\tdisplay: inline-block;\n\t}\n\n\t& .ck-label {\n\t\tdisplay: none;\n\t}\n\n\t@mixin ck-media-phone {\n\t\tflex-wrap: wrap;\n\n\t\t& .ck-labeled-field-view {\n\t\t\tflex-basis: 100%;\n\t\t}\n\n\t\t& .ck-button {\n\t\t\tflex-basis: 50%;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},3350:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-image-insert-url .ck-image-insert-url__action-row{display:grid;grid-template-columns:repeat(2,1fr)}:root{--ck-image-insert-insert-by-url-width:250px}.ck.ck-image-insert-url{--ck-input-width:100%}.ck.ck-image-insert-url .ck-image-insert-url__action-row{grid-column-gap:var(--ck-spacing-large);margin-top:var(--ck-spacing-large)}.ck.ck-image-insert-url .ck-image-insert-url__action-row .ck-button-cancel,.ck.ck-image-insert-url .ck-image-insert-url__action-row .ck-button-save{justify-content:center;min-width:auto}.ck.ck-image-insert-url .ck-image-insert-url__action-row .ck-button .ck-button__label{color:var(--ck-color-text)}.ck.ck-image-insert-form>.ck.ck-button{display:block;padding:var(--ck-list-button-padding);width:100%}[dir=ltr] .ck.ck-image-insert-form>.ck.ck-button{text-align:left}[dir=rtl] .ck.ck-image-insert-form>.ck.ck-button{text-align:right}.ck.ck-image-insert-form>.ck.ck-collapsible:not(:first-child){border-top:1px solid var(--ck-color-base-border)}.ck.ck-image-insert-form>.ck.ck-collapsible:not(:last-child){border-bottom:1px solid var(--ck-color-base-border)}.ck.ck-image-insert-form>.ck.ck-collapsible,.ck.ck-image-insert-form>.ck.ck-image-insert-url{min-width:var(--ck-image-insert-insert-by-url-width)}.ck.ck-image-insert-form>.ck.ck-image-insert-url{padding:var(--ck-spacing-large)}.ck.ck-image-insert-form:focus{outline:none}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/imageinsert.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-image/imageinsert.css"],names:[],mappings:"AAMC,yDACC,YAAa,CACb,mCACD,CCFD,MACC,2CACD,CAEA,wBACC,qBAgBD,CAdC,yDACC,uCAAwC,CACxC,kCAWD,CATC,oJAEC,sBAAuB,CACvB,cACD,CAEA,sFACC,0BACD,CAKD,uCACC,aAAc,CAEd,qCAAsC,CADtC,UAUD,CAZA,iDAME,eAMF,CAZA,iDAUE,gBAEF,CAGC,8DACC,gDACD,CAEA,6DACC,mDACD,CAMD,6FAJC,oDAOD,CAHA,iDAEC,+BACD,CAEA,+BACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-image-insert-url {\n\t& .ck-image-insert-url__action-row {\n\t\tdisplay: grid;\n\t\tgrid-template-columns: repeat(2, 1fr);\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n:root {\n\t--ck-image-insert-insert-by-url-width: 250px;\n}\n\n.ck.ck-image-insert-url {\n\t--ck-input-width: 100%;\n\n\t& .ck-image-insert-url__action-row {\n\t\tgrid-column-gap: var(--ck-spacing-large);\n\t\tmargin-top: var(--ck-spacing-large);\n\n\t\t& .ck-button-save,\n\t\t& .ck-button-cancel {\n\t\t\tjustify-content: center;\n\t\t\tmin-width: auto;\n\t\t}\n\n\t\t& .ck-button .ck-button__label {\n\t\t\tcolor: var(--ck-color-text);\n\t\t}\n\t}\n}\n\n.ck.ck-image-insert-form {\n\t& > .ck.ck-button {\n\t\tdisplay: block;\n\t\twidth: 100%;\n\t\tpadding: var(--ck-list-button-padding);\n\n\t\t@mixin ck-dir ltr {\n\t\t\ttext-align: left;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\ttext-align: right;\n\t\t}\n\t}\n\n\t& > .ck.ck-collapsible {\n\t\t&:not(:first-child) {\n\t\t\tborder-top: 1px solid var(--ck-color-base-border);\n\t\t}\n\n\t\t&:not(:last-child) {\n\t\t\tborder-bottom: 1px solid var(--ck-color-base-border);\n\t\t}\n\n\t\tmin-width: var(--ck-image-insert-insert-by-url-width);\n\t}\n\n\t/* This is the case when there are no other integrations configured than insert by URL */\n\t& > .ck.ck-image-insert-url {\n\t\tmin-width: var(--ck-image-insert-insert-by-url-width);\n\t\tpadding: var(--ck-spacing-large);\n\t}\n\n\t&:focus {\n\t\toutline: none;\n\t}\n}\n'],sourceRoot:""}]);const a=s},7378:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-editor__editable img.image_placeholder{background-size:100% 100%}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/imageplaceholder.css"],names:[],mappings:"AAMC,8CACC,yBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor__editable {\n\t& img.image_placeholder {\n\t\tbackground-size: 100% 100%;\n\t}\n}\n"],sourceRoot:""}]);const a=s},3469:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content img.image_resized{height:auto}.ck-content .image.image_resized{box-sizing:border-box;display:block;max-width:100%}.ck-content .image.image_resized img{width:100%}.ck-content .image.image_resized>figcaption{display:block}.ck.ck-editor__editable td .image-inline.image_resized img,.ck.ck-editor__editable th .image-inline.image_resized img{max-width:100%}[dir=ltr] .ck.ck-button.ck-button_with-text.ck-resize-image-button .ck-button__icon{margin-right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-button.ck-button_with-text.ck-resize-image-button .ck-button__icon{margin-left:var(--ck-spacing-standard)}.ck.ck-dropdown .ck-button.ck-resize-image-button .ck-button__label{width:4em}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/imageresize.css"],names:[],mappings:"AAMA,8BACC,WACD,CAEA,iCAQC,qBAAsB,CADtB,aAAc,CANd,cAkBD,CATC,qCAEC,UACD,CAEA,4CAEC,aACD,CAQC,sHACC,cACD,CAIF,oFACC,uCACD,CAEA,oFACC,sCACD,CAEA,oEACC,SACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* Preserve aspect ratio of the resized image after introducing image height attribute. */\n.ck-content img.image_resized {\n\theight: auto;\n}\n\n.ck-content .image.image_resized {\n\tmax-width: 100%;\n\t/*\n\tThe `
` element for resized images must not use `display:table` as browsers do not support `max-width` for it well.\n\tSee https://stackoverflow.com/questions/4019604/chrome-safari-ignoring-max-width-in-table/14420691#14420691 for more.\n\tFortunately, since we control the width, there is no risk that the image will look bad.\n\t*/\n\tdisplay: block;\n\tbox-sizing: border-box;\n\n\t& img {\n\t\t/* For resized images it is the `
` element that determines the image width. */\n\t\twidth: 100%;\n\t}\n\n\t& > figcaption {\n\t\t/* The `
` element uses `display:block`, so `
` also has to. */\n\t\tdisplay: block;\n\t}\n}\n\n.ck.ck-editor__editable {\n\t/* The resized inline image nested in the table should respect its parent size.\n\tSee https://github.com/ckeditor/ckeditor5/issues/9117. */\n\t& td,\n\t& th {\n\t\t& .image-inline.image_resized img {\n\t\t\tmax-width: 100%;\n\t\t}\n\t}\n}\n\n[dir="ltr"] .ck.ck-button.ck-button_with-text.ck-resize-image-button .ck-button__icon {\n\tmargin-right: var(--ck-spacing-standard);\n}\n\n[dir="rtl"] .ck.ck-button.ck-button_with-text.ck-resize-image-button .ck-button__icon {\n\tmargin-left: var(--ck-spacing-standard);\n}\n\n.ck.ck-dropdown .ck-button.ck-resize-image-button .ck-button__label {\n\twidth: 4em;\n}\n'],sourceRoot:""}]);const a=s},6386:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-image-style-spacing:1.5em;--ck-inline-image-style-spacing:calc(var(--ck-image-style-spacing)/2)}.ck-content .image-style-block-align-left,.ck-content .image-style-block-align-right{max-width:calc(100% - var(--ck-image-style-spacing))}.ck-content .image-style-align-left,.ck-content .image-style-align-right{clear:none}.ck-content .image-style-side{float:right;margin-left:var(--ck-image-style-spacing);max-width:50%}.ck-content .image-style-align-left{float:left;margin-right:var(--ck-image-style-spacing)}.ck-content .image-style-align-center{margin-left:auto;margin-right:auto}.ck-content .image-style-align-right{float:right;margin-left:var(--ck-image-style-spacing)}.ck-content .image-style-block-align-right{margin-left:auto;margin-right:0}.ck-content .image-style-block-align-left{margin-left:0;margin-right:auto}.ck-content p+.image-style-align-left,.ck-content p+.image-style-align-right,.ck-content p+.image-style-side{margin-top:0}.ck-content .image-inline.image-style-align-left,.ck-content .image-inline.image-style-align-right{margin-bottom:var(--ck-inline-image-style-spacing);margin-top:var(--ck-inline-image-style-spacing)}.ck-content .image-inline.image-style-align-left{margin-right:var(--ck-inline-image-style-spacing)}.ck-content .image-inline.image-style-align-right{margin-left:var(--ck-inline-image-style-spacing)}.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__action:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover),.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__action:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover){background-color:var(--ck-color-button-on-background)}.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__action:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover):after,.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__action:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled):after,.ck.ck-splitbutton.ck-splitbutton_flatten:hover>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover):after{display:none}.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open:hover>.ck-splitbutton__action:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open:hover>.ck-splitbutton__arrow:not(.ck-disabled),.ck.ck-splitbutton.ck-splitbutton_flatten.ck-splitbutton_open:hover>.ck-splitbutton__arrow:not(.ck-disabled):not(:hover){background-color:var(--ck-color-button-on-hover-background)}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/imagestyle.css"],names:[],mappings:"AAKA,MACC,8BAA+B,CAC/B,qEACD,CAMC,qFAEC,oDACD,CAIA,yEAEC,UACD,CAEA,8BACC,WAAY,CACZ,yCAA0C,CAC1C,aACD,CAEA,oCACC,UAAW,CACX,0CACD,CAEA,sCACC,gBAAiB,CACjB,iBACD,CAEA,qCACC,WAAY,CACZ,yCACD,CAEA,2CAEC,gBAAiB,CADjB,cAED,CAEA,0CACC,aAAc,CACd,iBACD,CAGA,6GAGC,YACD,CAGC,mGAGC,kDAAmD,CADnD,+CAED,CAEA,iDACC,iDACD,CAEA,kDACC,gDACD,CAUC,0lBAGC,qDAKD,CAHC,8nBACC,YACD,CAKD,oVAGC,2DACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-image-style-spacing: 1.5em;\n\t--ck-inline-image-style-spacing: calc(var(--ck-image-style-spacing) / 2);\n}\n\n.ck-content {\n\t/* Provides a minimal side margin for the left and right aligned images, so that the user has a visual feedback\n\tconfirming successful application of the style if image width exceeds the editor's size.\n\tSee https://github.com/ckeditor/ckeditor5/issues/9342 */\n\t& .image-style-block-align-left,\n\t& .image-style-block-align-right {\n\t\tmax-width: calc(100% - var(--ck-image-style-spacing));\n\t}\n\n\t/* Allows displaying multiple floating images in the same line.\n\tSee https://github.com/ckeditor/ckeditor5/issues/9183#issuecomment-804988132 */\n\t& .image-style-align-left,\n\t& .image-style-align-right {\n\t\tclear: none;\n\t}\n\n\t& .image-style-side {\n\t\tfloat: right;\n\t\tmargin-left: var(--ck-image-style-spacing);\n\t\tmax-width: 50%;\n\t}\n\n\t& .image-style-align-left {\n\t\tfloat: left;\n\t\tmargin-right: var(--ck-image-style-spacing);\n\t}\n\n\t& .image-style-align-center {\n\t\tmargin-left: auto;\n\t\tmargin-right: auto;\n\t}\n\n\t& .image-style-align-right {\n\t\tfloat: right;\n\t\tmargin-left: var(--ck-image-style-spacing);\n\t}\n\n\t& .image-style-block-align-right {\n\t\tmargin-right: 0;\n\t\tmargin-left: auto;\n\t}\n\n\t& .image-style-block-align-left {\n\t\tmargin-left: 0;\n\t\tmargin-right: auto;\n\t}\n\n\t/* Simulates margin collapsing with the preceding paragraph, which does not work for the floating elements. */\n\t& p + .image-style-align-left,\n\t& p + .image-style-align-right,\n\t& p + .image-style-side {\n\t\tmargin-top: 0;\n\t}\n\n\t& .image-inline {\n\t\t&.image-style-align-left,\n\t\t&.image-style-align-right {\n\t\t\tmargin-top: var(--ck-inline-image-style-spacing);\n\t\t\tmargin-bottom: var(--ck-inline-image-style-spacing);\n\t\t}\n\n\t\t&.image-style-align-left {\n\t\t\tmargin-right: var(--ck-inline-image-style-spacing);\n\t\t}\n\n\t\t&.image-style-align-right {\n\t\t\tmargin-left: var(--ck-inline-image-style-spacing);\n\t\t}\n\t}\n}\n\n.ck.ck-splitbutton {\n\t/* The button should display as a regular drop-down if the action button\n\tis forced to fire the same action as the arrow button. */\n\t&.ck-splitbutton_flatten {\n\t\t&:hover,\n\t\t&.ck-splitbutton_open {\n\t\t\t& > .ck-splitbutton__action:not(.ck-disabled),\n\t\t\t& > .ck-splitbutton__arrow:not(.ck-disabled),\n\t\t\t& > .ck-splitbutton__arrow:not(.ck-disabled):not(:hover) {\n\t\t\t\tbackground-color: var(--ck-color-button-on-background);\n\n\t\t\t\t&::after {\n\t\t\t\t\tdisplay: none;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&.ck-splitbutton_open:hover {\n\t\t\t& > .ck-splitbutton__action:not(.ck-disabled),\n\t\t\t& > .ck-splitbutton__arrow:not(.ck-disabled),\n\t\t\t& > .ck-splitbutton__arrow:not(.ck-disabled):not(:hover) {\n\t\t\t\tbackground-color: var(--ck-color-button-on-hover-background);\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},7693:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck-image-upload-complete-icon{border-radius:50%;display:block;position:absolute;right:min(var(--ck-spacing-medium),6%);top:min(var(--ck-spacing-medium),6%);z-index:1}.ck-image-upload-complete-icon:after{content:"";position:absolute}:root{--ck-color-image-upload-icon:#fff;--ck-color-image-upload-icon-background:#008a00;--ck-image-upload-icon-size:20;--ck-image-upload-icon-width:2px;--ck-image-upload-icon-is-visible:clamp(0px,100% - 50px,1px)}.ck-image-upload-complete-icon{animation-delay:0ms,3s;animation-duration:.5s,.5s;animation-fill-mode:forwards,forwards;animation-name:ck-upload-complete-icon-show,ck-upload-complete-icon-hide;background:var(--ck-color-image-upload-icon-background);font-size:calc(1px*var(--ck-image-upload-icon-size));height:calc(var(--ck-image-upload-icon-is-visible)*var(--ck-image-upload-icon-size));opacity:0;overflow:hidden;width:calc(var(--ck-image-upload-icon-is-visible)*var(--ck-image-upload-icon-size))}.ck-image-upload-complete-icon:after{animation-delay:.5s;animation-duration:.5s;animation-fill-mode:forwards;animation-name:ck-upload-complete-icon-check;border-right:var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);border-top:var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);box-sizing:border-box;height:0;left:25%;opacity:0;top:50%;transform:scaleX(-1) rotate(135deg);transform-origin:left top;width:0}@media (prefers-reduced-motion:reduce){.ck-image-upload-complete-icon{animation-duration:0ms}.ck-image-upload-complete-icon:after{animation:none;height:.45em;opacity:1;width:.3em}}@keyframes ck-upload-complete-icon-show{0%{opacity:0}to{opacity:1}}@keyframes ck-upload-complete-icon-hide{0%{opacity:1}to{opacity:0}}@keyframes ck-upload-complete-icon-check{0%{height:0;opacity:1;width:0}33%{height:0;width:.3em}to{height:.45em;opacity:1;width:.3em}}',"",{version:3,sources:["webpack://./../ckeditor5-image/theme/imageuploadicon.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-image/imageuploadicon.css"],names:[],mappings:"AAKA,+BAUC,iBAAkB,CATlB,aAAc,CACd,iBAAkB,CAOlB,sCAAwC,CADxC,oCAAsC,CAGtC,SAMD,CAJC,qCACC,UAAW,CACX,iBACD,CChBD,MACC,iCAA8C,CAC9C,+CAA4D,CAG5D,8BAA+B,CAC/B,gCAAiC,CACjC,4DACD,CAEA,+BAWC,sBAA4B,CAN5B,0BAAgC,CADhC,qCAAuC,CADvC,wEAA0E,CAD1E,uDAAwD,CAMxD,oDAAuD,CAWvD,oFAAuF,CAlBvF,SAAU,CAgBV,eAAgB,CAChB,mFAqCD,CAjCC,qCAgBC,mBAAsB,CADtB,sBAAyB,CAEzB,4BAA6B,CAH7B,4CAA6C,CAF7C,sFAAuF,CADvF,oFAAqF,CASrF,qBAAsB,CAdtB,QAAS,CAJT,QAAS,CAGT,SAAU,CADV,OAAQ,CAKR,mCAAoC,CACpC,yBAA0B,CAH1B,OAcD,CAEA,uCA7CD,+BA8CE,sBASF,CAPE,qCACC,cAAe,CAGf,YAAc,CAFd,SAAU,CACV,UAED,CACD,CAGD,wCACC,GACC,SACD,CAEA,GACC,SACD,CACD,CAEA,wCACC,GACC,SACD,CAEA,GACC,SACD,CACD,CAEA,yCACC,GAGC,QAAS,CAFT,SAAU,CACV,OAED,CACA,IAEC,QAAS,CADT,UAED,CACA,GAGC,YAAc,CAFd,SAAU,CACV,UAED,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-image-upload-complete-icon {\n\tdisplay: block;\n\tposition: absolute;\n\n\t/*\n\t * Smaller images should have the icon closer to the border.\n\t * Match the icon position with the linked image indicator brought by the link image feature.\n\t */\n\ttop: min(var(--ck-spacing-medium), 6%);\n\tright: min(var(--ck-spacing-medium), 6%);\n\tborder-radius: 50%;\n\tz-index: 1;\n\n\t&::after {\n\t\tcontent: "";\n\t\tposition: absolute;\n\t}\n}\n','/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-image-upload-icon: hsl(0, 0%, 100%);\n\t--ck-color-image-upload-icon-background: hsl(120, 100%, 27%);\n\n\t/* Match the icon size with the linked image indicator brought by the link image feature. */\n\t--ck-image-upload-icon-size: 20;\n\t--ck-image-upload-icon-width: 2px;\n\t--ck-image-upload-icon-is-visible: clamp(0px, 100% - 50px, 1px);\n}\n\n.ck-image-upload-complete-icon {\n\topacity: 0;\n\tbackground: var(--ck-color-image-upload-icon-background);\n\tanimation-name: ck-upload-complete-icon-show, ck-upload-complete-icon-hide;\n\tanimation-fill-mode: forwards, forwards;\n\tanimation-duration: 500ms, 500ms;\n\n\t/* To make animation scalable. */\n\tfont-size: calc(1px * var(--ck-image-upload-icon-size));\n\n\t/* Hide completed upload icon after 3 seconds. */\n\tanimation-delay: 0ms, 3000ms;\n\n\t/*\n\t * Use CSS math to simulate container queries.\n\t * https://css-tricks.com/the-raven-technique-one-step-closer-to-container-queries/#what-about-showing-and-hiding-things\n\t */\n\toverflow: hidden;\n\twidth: calc(var(--ck-image-upload-icon-is-visible) * var(--ck-image-upload-icon-size));\n\theight: calc(var(--ck-image-upload-icon-is-visible) * var(--ck-image-upload-icon-size));\n\n\t/* This is check icon element made from border-width mixed with animations. */\n\t&::after {\n\t\t/* Because of border transformation we need to "hard code" left position. */\n\t\tleft: 25%;\n\n\t\ttop: 50%;\n\t\topacity: 0;\n\t\theight: 0;\n\t\twidth: 0;\n\n\t\ttransform: scaleX(-1) rotate(135deg);\n\t\ttransform-origin: left top;\n\t\tborder-top: var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);\n\t\tborder-right: var(--ck-image-upload-icon-width) solid var(--ck-color-image-upload-icon);\n\n\t\tanimation-name: ck-upload-complete-icon-check;\n\t\tanimation-duration: 500ms;\n\t\tanimation-delay: 500ms;\n\t\tanimation-fill-mode: forwards;\n\n\t\t/* #1095. While reset is not providing proper box-sizing for pseudoelements, we need to handle it. */\n\t\tbox-sizing: border-box;\n\t}\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\tanimation-duration: 0ms;\n\n\t\t&::after {\n\t\t\tanimation: none;\n\t\t\topacity: 1;\n\t\t\twidth: 0.3em;\n\t\t\theight: 0.45em;\n\t\t}\n\t}\n}\n\n@keyframes ck-upload-complete-icon-show {\n\tfrom {\n\t\topacity: 0;\n\t}\n\n\tto {\n\t\topacity: 1;\n\t}\n}\n\n@keyframes ck-upload-complete-icon-hide {\n\tfrom {\n\t\topacity: 1;\n\t}\n\n\tto {\n\t\topacity: 0;\n\t}\n}\n\n@keyframes ck-upload-complete-icon-check {\n\t0% {\n\t\topacity: 1;\n\t\twidth: 0;\n\t\theight: 0;\n\t}\n\t33% {\n\t\twidth: 0.3em;\n\t\theight: 0;\n\t}\n\t100% {\n\t\topacity: 1;\n\t\twidth: 0.3em;\n\t\theight: 0.45em;\n\t}\n}\n'],sourceRoot:""}]);const a=s},1559:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck .ck-upload-placeholder-loader{align-items:center;display:flex;justify-content:center;left:0;position:absolute;top:0}.ck .ck-upload-placeholder-loader:before{content:"";position:relative}:root{--ck-color-upload-placeholder-loader:#b3b3b3;--ck-upload-placeholder-loader-size:32px;--ck-upload-placeholder-image-aspect-ratio:2.8}.ck .ck-image-upload-placeholder{margin:0;width:100%}.ck .ck-image-upload-placeholder.image-inline{width:calc(var(--ck-upload-placeholder-loader-size)*2*var(--ck-upload-placeholder-image-aspect-ratio))}.ck .ck-image-upload-placeholder img{aspect-ratio:var(--ck-upload-placeholder-image-aspect-ratio)}.ck .ck-upload-placeholder-loader{height:100%;width:100%}.ck .ck-upload-placeholder-loader:before{animation:ck-upload-placeholder-loader 1s linear infinite;border-radius:50%;border-right:2px solid transparent;border-top:3px solid var(--ck-color-upload-placeholder-loader);height:var(--ck-upload-placeholder-loader-size);width:var(--ck-upload-placeholder-loader-size)}@keyframes ck-upload-placeholder-loader{to{transform:rotate(1turn)}}',"",{version:3,sources:["webpack://./../ckeditor5-image/theme/imageuploadloader.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-image/imageuploadloader.css"],names:[],mappings:"AAKA,kCAGC,kBAAmB,CADnB,YAAa,CAEb,sBAAuB,CAEvB,MAAO,CALP,iBAAkB,CAIlB,KAOD,CAJC,yCACC,UAAW,CACX,iBACD,CCXD,MACC,4CAAqD,CACrD,wCAAyC,CACzC,8CACD,CAEA,iCAGC,QAAS,CADT,UAgBD,CAbC,8CACC,sGACD,CAEA,qCAOC,4DACD,CAGD,kCAEC,WAAY,CADZ,UAWD,CARC,yCAMC,yDAA0D,CAH1D,iBAAkB,CAElB,kCAAmC,CADnC,8DAA+D,CAF/D,+CAAgD,CADhD,8CAMD,CAGD,wCACC,GACC,uBACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-upload-placeholder-loader {\n\tposition: absolute;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\ttop: 0;\n\tleft: 0;\n\n\t&::before {\n\t\tcontent: '';\n\t\tposition: relative;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-upload-placeholder-loader: hsl(0, 0%, 70%);\n\t--ck-upload-placeholder-loader-size: 32px;\n\t--ck-upload-placeholder-image-aspect-ratio: 2.8;\n}\n\n.ck .ck-image-upload-placeholder {\n\t/* We need to control the full width of the SVG gray background. */\n\twidth: 100%;\n\tmargin: 0;\n\n\t&.image-inline {\n\t\twidth: calc( 2 * var(--ck-upload-placeholder-loader-size) * var(--ck-upload-placeholder-image-aspect-ratio) );\n\t}\n\n\t& img {\n\t\t/*\n\t\t * This is an arbitrary aspect for a 1x1 px GIF to display to the user. Not too tall, not too short.\n\t\t * There's nothing special about this number except that it should make the image placeholder look like\n\t\t * a real image during this short period after the upload started and before the image was read from the\n\t\t * file system (and a rich preview was loaded).\n\t\t */\n\t\taspect-ratio: var(--ck-upload-placeholder-image-aspect-ratio);\n\t}\n}\n\n.ck .ck-upload-placeholder-loader {\n\twidth: 100%;\n\theight: 100%;\n\n\t&::before {\n\t\twidth: var(--ck-upload-placeholder-loader-size);\n\t\theight: var(--ck-upload-placeholder-loader-size);\n\t\tborder-radius: 50%;\n\t\tborder-top: 3px solid var(--ck-color-upload-placeholder-loader);\n\t\tborder-right: 2px solid transparent;\n\t\tanimation: ck-upload-placeholder-loader 1s linear infinite;\n\t}\n}\n\n@keyframes ck-upload-placeholder-loader {\n\tto {\n\t\ttransform: rotate( 360deg );\n\t}\n}\n"],sourceRoot:""}]);const a=s},2267:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-editor__editable .image,.ck.ck-editor__editable .image-inline{position:relative}.ck.ck-editor__editable .image .ck-progress-bar,.ck.ck-editor__editable .image-inline .ck-progress-bar{left:0;position:absolute;top:0}.ck.ck-editor__editable .image-inline.ck-appear,.ck.ck-editor__editable .image.ck-appear{animation:fadeIn .7s}@media (prefers-reduced-motion:reduce){.ck.ck-editor__editable .image-inline.ck-appear,.ck.ck-editor__editable .image.ck-appear{animation:none;opacity:1}}.ck.ck-editor__editable .image .ck-progress-bar,.ck.ck-editor__editable .image-inline .ck-progress-bar{background:var(--ck-color-upload-bar-background);height:2px;transition:width .1s;width:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/imageuploadprogress.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-image/imageuploadprogress.css"],names:[],mappings:"AAMC,qEAEC,iBACD,CAGA,uGAIC,MAAO,CAFP,iBAAkB,CAClB,KAED,CCRC,yFACC,oBAMD,CAJC,uCAHD,yFAKE,cAAe,CADf,SAGF,CADC,CAKF,uGAIC,gDAAiD,CAFjD,UAAW,CAGX,oBAAuB,CAFvB,OAGD,CAGD,kBACC,GAAO,SAAY,CACnB,GAAO,SAAY,CACpB",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor__editable {\n\t& .image,\n\t& .image-inline {\n\t\tposition: relative;\n\t}\n\n\t/* Upload progress bar. */\n\t& .image .ck-progress-bar,\n\t& .image-inline .ck-progress-bar {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\tleft: 0;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor__editable {\n\t& .image,\n\t& .image-inline {\n\t\t/* Showing animation. */\n\t\t&.ck-appear {\n\t\t\tanimation: fadeIn 700ms;\n\n\t\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\t\topacity: 1;\n\t\t\t\tanimation: none;\n\t\t\t}\n\t\t}\n\t}\n\n\t/* Upload progress bar. */\n\t& .image .ck-progress-bar,\n\t& .image-inline .ck-progress-bar {\n\t\theight: 2px;\n\t\twidth: 0;\n\t\tbackground: var(--ck-color-upload-bar-background);\n\t\ttransition: width 100ms;\n\t}\n}\n\n@keyframes fadeIn {\n\tfrom { opacity: 0; }\n\tto { opacity: 1; }\n}\n"],sourceRoot:""}]);const a=s},4062:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-text-alternative-form{display:flex;flex-direction:row;flex-wrap:nowrap}.ck.ck-text-alternative-form .ck-labeled-field-view{display:inline-block}.ck.ck-text-alternative-form .ck-label{display:none}@media screen and (max-width:600px){.ck.ck-text-alternative-form{flex-wrap:wrap}.ck.ck-text-alternative-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-text-alternative-form .ck-button{flex-basis:50%}}","",{version:3,sources:["webpack://./../ckeditor5-image/theme/textalternativeform.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAOA,6BACC,YAAa,CACb,kBAAmB,CACnB,gBAqBD,CAnBC,oDACC,oBACD,CAEA,uCACC,YACD,CCZA,oCDCD,6BAcE,cAUF,CARE,oDACC,eACD,CAEA,wCACC,cACD,CCrBD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-text-alternative-form {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\n\t& .ck-labeled-field-view {\n\t\tdisplay: inline-block;\n\t}\n\n\t& .ck-label {\n\t\tdisplay: none;\n\t}\n\n\t@mixin ck-media-phone {\n\t\tflex-wrap: wrap;\n\n\t\t& .ck-labeled-field-view {\n\t\t\tflex-basis: 100%;\n\t\t}\n\n\t\t& .ck-button {\n\t\t\tflex-basis: 50%;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},7719:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck .ck-link_selected{background:var(--ck-color-link-selected-background)}.ck .ck-link_selected span.image-inline{outline:var(--ck-widget-outline-thickness) solid var(--ck-color-link-selected-background)}.ck .ck-fake-link-selection{background:var(--ck-color-link-fake-selection)}.ck .ck-fake-link-selection_collapsed{border-right:1px solid var(--ck-color-base-text);height:100%;margin-right:-1px;outline:1px solid hsla(0,0%,100%,.5)}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-link/link.css"],names:[],mappings:"AAMA,sBACC,mDAMD,CAHC,wCACC,yFACD,CAOD,4BACC,8CACD,CAGA,sCAEC,gDAAiD,CADjD,WAAY,CAEZ,iBAAkB,CAClB,oCACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/* Class added to span element surrounding currently selected link. */\n.ck .ck-link_selected {\n\tbackground: var(--ck-color-link-selected-background);\n\n\t/* Give linked inline images some outline to let the user know they are also part of the link. */\n\t& span.image-inline {\n\t\toutline: var(--ck-widget-outline-thickness) solid var(--ck-color-link-selected-background);\n\t}\n}\n\n/*\n * Classes used by the "fake visual selection" displayed in the content when an input\n * in the link UI has focus (the browser does not render the native selection in this state).\n */\n.ck .ck-fake-link-selection {\n\tbackground: var(--ck-color-link-fake-selection);\n}\n\n/* A collapsed fake visual selection. */\n.ck .ck-fake-link-selection_collapsed {\n\theight: 100%;\n\tborder-right: 1px solid var(--ck-color-base-text);\n\tmargin-right: -1px;\n\toutline: solid 1px hsla(0, 0%, 100%, .5);\n}\n'],sourceRoot:""}]);const a=s},8762:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-link-actions{display:flex;flex-direction:row;flex-wrap:nowrap}.ck.ck-link-actions .ck-link-actions__preview{display:inline-block}.ck.ck-link-actions .ck-link-actions__preview .ck-button__label{overflow:hidden}@media screen and (max-width:600px){.ck.ck-link-actions{flex-wrap:wrap}.ck.ck-link-actions .ck-link-actions__preview{flex-basis:100%}.ck.ck-link-actions .ck-button:not(.ck-link-actions__preview){flex-basis:50%}}.ck.ck-link-actions .ck-button.ck-link-actions__preview{padding-left:0;padding-right:0}.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label{color:var(--ck-color-link-default);cursor:pointer;max-width:var(--ck-input-width);min-width:3em;padding:0 var(--ck-spacing-medium);text-align:center;text-overflow:ellipsis}.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label:hover{text-decoration:underline}.ck.ck-link-actions .ck-button.ck-link-actions__preview,.ck.ck-link-actions .ck-button.ck-link-actions__preview:active,.ck.ck-link-actions .ck-button.ck-link-actions__preview:focus,.ck.ck-link-actions .ck-button.ck-link-actions__preview:hover{background:none}.ck.ck-link-actions .ck-button.ck-link-actions__preview:active{box-shadow:none}.ck.ck-link-actions .ck-button.ck-link-actions__preview:focus .ck-button__label{text-decoration:underline}[dir=ltr] .ck.ck-link-actions .ck-button:not(:first-child),[dir=rtl] .ck.ck-link-actions .ck-button:not(:last-child){margin-left:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-link-actions .ck-button.ck-link-actions__preview{margin:var(--ck-spacing-standard) var(--ck-spacing-standard) 0}.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label{max-width:100%;min-width:0}[dir=ltr] .ck.ck-link-actions .ck-button:not(.ck-link-actions__preview),[dir=rtl] .ck.ck-link-actions .ck-button:not(.ck-link-actions__preview){margin-left:0}}","",{version:3,sources:["webpack://./../ckeditor5-link/theme/linkactions.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-link/linkactions.css"],names:[],mappings:"AAOA,oBACC,YAAa,CACb,kBAAmB,CACnB,gBAqBD,CAnBC,8CACC,oBAKD,CAHC,gEACC,eACD,CCXD,oCDCD,oBAcE,cAUF,CARE,8CACC,eACD,CAEA,8DACC,cACD,CCrBD,CCIA,wDACC,cAAe,CACf,eAmCD,CAjCC,0EAEC,kCAAmC,CAEnC,cAAe,CAIf,+BAAgC,CAChC,aAAc,CARd,kCAAmC,CASnC,iBAAkB,CAPlB,sBAYD,CAHC,gFACC,yBACD,CAGD,mPAIC,eACD,CAEA,+DACC,eACD,CAGC,gFACC,yBACD,CAWD,qHACC,sCACD,CDtDD,oCC0DC,wDACC,8DAMD,CAJC,0EAEC,cAAe,CADf,WAED,CAGD,gJAME,aAEF,CDzED",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-link-actions {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\n\t& .ck-link-actions__preview {\n\t\tdisplay: inline-block;\n\n\t\t& .ck-button__label {\n\t\t\toverflow: hidden;\n\t\t}\n\t}\n\n\t@mixin ck-media-phone {\n\t\tflex-wrap: wrap;\n\n\t\t& .ck-link-actions__preview {\n\t\t\tflex-basis: 100%;\n\t\t}\n\n\t\t& .ck-button:not(.ck-link-actions__preview) {\n\t\t\tflex-basis: 50%;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n@import "../mixins/_focus.css";\n@import "../mixins/_shadow.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-link-actions {\n\t& .ck-button.ck-link-actions__preview {\n\t\tpadding-left: 0;\n\t\tpadding-right: 0;\n\n\t\t& .ck-button__label {\n\t\t\tpadding: 0 var(--ck-spacing-medium);\n\t\t\tcolor: var(--ck-color-link-default);\n\t\t\ttext-overflow: ellipsis;\n\t\t\tcursor: pointer;\n\n\t\t\t/* Match the box model of the link editor form\'s input so the balloon\n\t\t\tdoes not change width when moving between actions and the form. */\n\t\t\tmax-width: var(--ck-input-width);\n\t\t\tmin-width: 3em;\n\t\t\ttext-align: center;\n\n\t\t\t&:hover {\n\t\t\t\ttext-decoration: underline;\n\t\t\t}\n\t\t}\n\n\t\t&,\n\t\t&:hover,\n\t\t&:focus,\n\t\t&:active {\n\t\t\tbackground: none;\n\t\t}\n\n\t\t&:active {\n\t\t\tbox-shadow: none;\n\t\t}\n\n\t\t&:focus {\n\t\t\t& .ck-button__label {\n\t\t\t\ttext-decoration: underline;\n\t\t\t}\n\t\t}\n\t}\n\n\t@mixin ck-dir ltr {\n\t\t& .ck-button:not(:first-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-dir rtl {\n\t\t& .ck-button:not(:last-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-media-phone {\n\t\t& .ck-button.ck-link-actions__preview {\n\t\t\tmargin: var(--ck-spacing-standard) var(--ck-spacing-standard) 0;\n\n\t\t\t& .ck-button__label {\n\t\t\t\tmin-width: 0;\n\t\t\t\tmax-width: 100%;\n\t\t\t}\n\t\t}\n\n\t\t& .ck-button:not(.ck-link-actions__preview) {\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: 0;\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-left: 0;\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},3817:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-link-form{align-items:flex-start;display:flex}.ck.ck-link-form .ck-label{display:none}@media screen and (max-width:600px){.ck.ck-link-form{flex-wrap:wrap}.ck.ck-link-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-link-form .ck-button{flex-basis:50%}}.ck.ck-link-form_layout-vertical{display:block}.ck.ck-link-form_layout-vertical .ck-button.ck-button-cancel,.ck.ck-link-form_layout-vertical .ck-button.ck-button-save{margin-top:var(--ck-spacing-medium)}.ck.ck-link-form_layout-vertical{min-width:var(--ck-input-width);padding:0}.ck.ck-link-form_layout-vertical .ck-labeled-field-view{margin:var(--ck-spacing-large) var(--ck-spacing-large) var(--ck-spacing-small)}.ck.ck-link-form_layout-vertical .ck-labeled-field-view .ck-input-text{min-width:0;width:100%}.ck.ck-link-form_layout-vertical>.ck-button{border-radius:0;margin:0;padding:var(--ck-spacing-standard);width:50%}.ck.ck-link-form_layout-vertical>.ck-button:not(:focus){border-top:1px solid var(--ck-color-base-border)}[dir=ltr] .ck.ck-link-form_layout-vertical>.ck-button,[dir=rtl] .ck.ck-link-form_layout-vertical>.ck-button{margin-left:0}[dir=rtl] .ck.ck-link-form_layout-vertical>.ck-button:last-of-type{border-right:1px solid var(--ck-color-base-border)}.ck.ck-link-form_layout-vertical .ck.ck-list{margin:var(--ck-spacing-standard) var(--ck-spacing-large)}.ck.ck-link-form_layout-vertical .ck.ck-list .ck-button.ck-switchbutton{padding:0;width:100%}.ck.ck-link-form_layout-vertical .ck.ck-list .ck-button.ck-switchbutton:hover{background:none}","",{version:3,sources:["webpack://./../ckeditor5-link/theme/linkform.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-link/linkform.css"],names:[],mappings:"AAOA,iBAEC,sBAAuB,CADvB,YAkBD,CAfC,2BACC,YACD,CCPA,oCDCD,iBASE,cAUF,CARE,wCACC,eACD,CAEA,4BACC,cACD,CChBD,CDwBD,iCACC,aAYD,CALE,wHAEC,mCACD,CEhCF,iCAEC,+BAAgC,CADhC,SAgDD,CA7CC,wDACC,8EAMD,CAJC,uEACC,WAAY,CACZ,UACD,CAGD,4CAIC,eAAgB,CAFhB,QAAS,CADT,kCAAmC,CAEnC,SAkBD,CAfC,wDACC,gDACD,CARD,4GAeE,aAMF,CAJE,mEACC,kDACD,CAKF,6CACC,yDAUD,CARC,wEACC,SAAU,CACV,UAKD,CAHC,8EACC,eACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-link-form {\n\tdisplay: flex;\n\talign-items: flex-start;\n\n\t& .ck-label {\n\t\tdisplay: none;\n\t}\n\n\t@mixin ck-media-phone {\n\t\tflex-wrap: wrap;\n\n\t\t& .ck-labeled-field-view {\n\t\t\tflex-basis: 100%;\n\t\t}\n\n\t\t& .ck-button {\n\t\t\tflex-basis: 50%;\n\t\t}\n\t}\n}\n\n/*\n * Style link form differently when manual decorators are available.\n * See: https://github.com/ckeditor/ckeditor5-link/issues/186.\n */\n.ck.ck-link-form_layout-vertical {\n\tdisplay: block;\n\n\t/*\n\t * Whether the form is in the responsive mode or not, if there are decorator buttons\n\t * keep the top margin of action buttons medium.\n\t */\n\t& .ck-button {\n\t\t&.ck-button-save,\n\t\t&.ck-button-cancel {\n\t\t\tmargin-top: var(--ck-spacing-medium);\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n/*\n * Style link form differently when manual decorators are available.\n * See: https://github.com/ckeditor/ckeditor5-link/issues/186.\n */\n.ck.ck-link-form_layout-vertical {\n\tpadding: 0;\n\tmin-width: var(--ck-input-width);\n\n\t& .ck-labeled-field-view {\n\t\tmargin: var(--ck-spacing-large) var(--ck-spacing-large) var(--ck-spacing-small);\n\n\t\t& .ck-input-text {\n\t\t\tmin-width: 0;\n\t\t\twidth: 100%;\n\t\t}\n\t}\n\n\t& > .ck-button {\n\t\tpadding: var(--ck-spacing-standard);\n\t\tmargin: 0;\n\t\twidth: 50%;\n\t\tborder-radius: 0;\n\n\t\t&:not(:focus) {\n\t\t\tborder-top: 1px solid var(--ck-color-base-border);\n\t\t}\n\n\t\t@mixin ck-dir ltr {\n\t\t\tmargin-left: 0;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\tmargin-left: 0;\n\n\t\t\t&:last-of-type {\n\t\t\t\tborder-right: 1px solid var(--ck-color-base-border);\n\t\t\t}\n\t\t}\n\t}\n\n\t/* Using additional `.ck` class for stronger CSS specificity than `.ck.ck-link-form > :not(:first-child)`. */\n\t& .ck.ck-list {\n\t\tmargin: var(--ck-spacing-standard) var(--ck-spacing-large);\n\n\t\t& .ck-button.ck-switchbutton {\n\t\t\tpadding: 0;\n\t\t\twidth: 100%;\n\n\t\t\t&:hover {\n\t\t\t\tbackground: none;\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},4808:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck.ck-editor__editable a span.image-inline:after,.ck.ck-editor__editable figure.image>a:after{display:block;position:absolute}:root{--ck-link-image-indicator-icon-size:20;--ck-link-image-indicator-icon-is-visible:clamp(0px,100% - 50px,1px)}.ck.ck-editor__editable a span.image-inline:after,.ck.ck-editor__editable figure.image>a:after{background-color:rgba(0,0,0,.4);background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAyMCI+PHBhdGggZmlsbD0iI2ZmZiIgZD0ibTExLjA3NyAxNSAuOTkxLTEuNDE2YS43NS43NSAwIDEgMSAxLjIyOS44NmwtMS4xNDggMS42NGEuNzUuNzUgMCAwIDEtLjIxNy4yMDYgNS4yNTEgNS4yNTEgMCAwIDEtOC41MDMtNS45NTUuNy43IDAgMCAxIC4xMi0uMjc0bDEuMTQ3LTEuNjM5YS43NS43NSAwIDEgMSAxLjIyOC44Nkw0LjkzMyAxMC43bC4wMDYuMDAzYTMuNzUgMy43NSAwIDAgMCA2LjEzMiA0LjI5NHptNS40OTQtNS4zMzVhLjc1Ljc1IDAgMCAxLS4xMi4yNzRsLTEuMTQ3IDEuNjM5YS43NS43NSAwIDEgMS0xLjIyOC0uODZsLjg2LTEuMjNhMy43NSAzLjc1IDAgMCAwLTYuMTQ0LTQuMzAxbC0uODYgMS4yMjlhLjc1Ljc1IDAgMCAxLTEuMjI5LS44NmwxLjE0OC0xLjY0YS43NS43NSAwIDAgMSAuMjE3LS4yMDYgNS4yNTEgNS4yNTEgMCAwIDEgOC41MDMgNS45NTVtLTQuNTYzLTIuNTMyYS43NS43NSAwIDAgMSAuMTg0IDEuMDQ1bC0zLjE1NSA0LjUwNWEuNzUuNzUgMCAxIDEtMS4yMjktLjg2bDMuMTU1LTQuNTA2YS43NS43NSAwIDAgMSAxLjA0NS0uMTg0Ii8+PC9zdmc+");background-position:50%;background-repeat:no-repeat;background-size:14px;border-radius:100%;content:"";height:calc(var(--ck-link-image-indicator-icon-is-visible)*var(--ck-link-image-indicator-icon-size));overflow:hidden;right:min(var(--ck-spacing-medium),6%);top:min(var(--ck-spacing-medium),6%);width:calc(var(--ck-link-image-indicator-icon-is-visible)*var(--ck-link-image-indicator-icon-size))}',"",{version:3,sources:["webpack://./../ckeditor5-link/theme/linkimage.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-link/linkimage.css"],names:[],mappings:"AASE,+FACC,aAAc,CACd,iBACD,CCPF,MAEC,sCAAuC,CACvC,oEACD,CAME,+FAUC,+BAAqC,CACrC,k2BAA+3B,CAG/3B,uBAA2B,CAD3B,2BAA4B,CAD5B,oBAAqB,CAGrB,kBAAmB,CAdnB,UAAW,CAsBX,oGAAuG,CAFvG,eAAgB,CAbhB,sCAAwC,CADxC,oCAAsC,CAetC,mGAED",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-editor__editable {\n\t/* Linked image indicator */\n\t& figure.image > a,\n\t& a span.image-inline {\n\t\t&::after {\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t}\n\t}\n}\n\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/* Match the icon size with the upload indicator brought by the image upload feature. */\n\t--ck-link-image-indicator-icon-size: 20;\n\t--ck-link-image-indicator-icon-is-visible: clamp(0px, 100% - 50px, 1px);\n}\n\n.ck.ck-editor__editable {\n\t/* Linked image indicator */\n\t& figure.image > a,\n\t& a span.image-inline {\n\t\t&::after {\n\t\t\tcontent: "";\n\n\t\t\t/*\n\t\t\t * Smaller images should have the icon closer to the border.\n\t\t\t * Match the icon position with the upload indicator brought by the image upload feature.\n\t\t\t */\n\t\t\ttop: min(var(--ck-spacing-medium), 6%);\n\t\t\tright: min(var(--ck-spacing-medium), 6%);\n\n\t\t\tbackground-color: hsla(0, 0%, 0%, .4);\n\t\t\tbackground-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMjAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbD0iI2ZmZiIgZD0ibTExLjA3NyAxNSAuOTkxLTEuNDE2YS43NS43NSAwIDEgMSAxLjIyOS44NmwtMS4xNDggMS42NGEuNzQ4Ljc0OCAwIDAgMS0uMjE3LjIwNiA1LjI1MSA1LjI1MSAwIDAgMS04LjUwMy01Ljk1NS43NDEuNzQxIDAgMCAxIC4xMi0uMjc0bDEuMTQ3LTEuNjM5YS43NS43NSAwIDEgMSAxLjIyOC44Nkw0LjkzMyAxMC43bC4wMDYuMDAzYTMuNzUgMy43NSAwIDAgMCA2LjEzMiA0LjI5NGwuMDA2LjAwNHptNS40OTQtNS4zMzVhLjc0OC43NDggMCAwIDEtLjEyLjI3NGwtMS4xNDcgMS42MzlhLjc1Ljc1IDAgMSAxLTEuMjI4LS44NmwuODYtMS4yM2EzLjc1IDMuNzUgMCAwIDAtNi4xNDQtNC4zMDFsLS44NiAxLjIyOWEuNzUuNzUgMCAwIDEtMS4yMjktLjg2bDEuMTQ4LTEuNjRhLjc0OC43NDggMCAwIDEgLjIxNy0uMjA2IDUuMjUxIDUuMjUxIDAgMCAxIDguNTAzIDUuOTU1em0tNC41NjMtMi41MzJhLjc1Ljc1IDAgMCAxIC4xODQgMS4wNDVsLTMuMTU1IDQuNTA1YS43NS43NSAwIDEgMS0xLjIyOS0uODZsMy4xNTUtNC41MDZhLjc1Ljc1IDAgMCAxIDEuMDQ1LS4xODR6Ii8+PC9zdmc+");\n\t\t\tbackground-size: 14px;\n\t\t\tbackground-repeat: no-repeat;\n\t\t\tbackground-position: center;\n\t\t\tborder-radius: 100%;\n\n\t\t\t/*\n\t\t\t* Use CSS math to simulate container queries.\n\t\t\t* https://css-tricks.com/the-raven-technique-one-step-closer-to-container-queries/#what-about-showing-and-hiding-things\n\t\t\t*/\n\t\t\toverflow: hidden;\n\t\t\twidth: calc(var(--ck-link-image-indicator-icon-is-visible) * var(--ck-link-image-indicator-icon-size));\n\t\t\theight: calc(var(--ck-link-image-indicator-icon-is-visible) * var(--ck-link-image-indicator-icon-size));\n\t\t}\n\t}\n}\n\n'],sourceRoot:""}]);const a=s},1232:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-editor__editable .ck-list-bogus-paragraph{display:block}","",{version:3,sources:["webpack://./../ckeditor5-list/theme/documentlist.css"],names:[],mappings:"AAKA,8CACC,aACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-editor__editable .ck-list-bogus-paragraph {\n\tdisplay: block;\n}\n"],sourceRoot:""}]);const a=s},6903:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content ol{list-style-type:decimal}.ck-content ol ol{list-style-type:lower-latin}.ck-content ol ol ol{list-style-type:lower-roman}.ck-content ol ol ol ol{list-style-type:upper-latin}.ck-content ol ol ol ol ol{list-style-type:upper-roman}.ck-content ul{list-style-type:disc}.ck-content ul ul{list-style-type:circle}.ck-content ul ul ul,.ck-content ul ul ul ul{list-style-type:square}","",{version:3,sources:["webpack://./../ckeditor5-list/theme/list.css"],names:[],mappings:"AAKA,eACC,uBAiBD,CAfC,kBACC,2BAaD,CAXC,qBACC,2BASD,CAPC,wBACC,2BAKD,CAHC,2BACC,2BACD,CAMJ,eACC,oBAaD,CAXC,kBACC,sBASD,CAJE,6CACC,sBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content ol {\n\tlist-style-type: decimal;\n\n\t& ol {\n\t\tlist-style-type: lower-latin;\n\n\t\t& ol {\n\t\t\tlist-style-type: lower-roman;\n\n\t\t\t& ol {\n\t\t\t\tlist-style-type: upper-latin;\n\n\t\t\t\t& ol {\n\t\t\t\t\tlist-style-type: upper-roman;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n\n.ck-content ul {\n\tlist-style-type: disc;\n\n\t& ul {\n\t\tlist-style-type: circle;\n\n\t\t& ul {\n\t\t\tlist-style-type: square;\n\n\t\t\t& ul {\n\t\t\t\tlist-style-type: square;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},9968:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-list-properties.ck-list-properties_without-styles{padding:var(--ck-spacing-large)}.ck.ck-list-properties.ck-list-properties_without-styles>*{min-width:14em}.ck.ck-list-properties.ck-list-properties_without-styles>*+*{margin-top:var(--ck-spacing-standard)}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-list-styles-list{grid-template-columns:repeat(4,auto)}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-collapsible{border-top:1px solid var(--ck-color-base-border)}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-collapsible>.ck-collapsible__children>*{width:100%}.ck.ck-list-properties.ck-list-properties_with-numbered-properties>.ck-collapsible>.ck-collapsible__children>*+*{margin-top:var(--ck-spacing-standard)}.ck.ck-list-properties .ck.ck-numbered-list-properties__start-index .ck-input{min-width:auto;width:100%}.ck.ck-list-properties .ck.ck-numbered-list-properties__reversed-order{background:transparent;margin-bottom:calc(var(--ck-spacing-tiny)*-1);padding-left:0;padding-right:0}.ck.ck-list-properties .ck.ck-numbered-list-properties__reversed-order:active,.ck.ck-list-properties .ck.ck-numbered-list-properties__reversed-order:hover{background:none;border-color:transparent;box-shadow:none}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-list/listproperties.css"],names:[],mappings:"AAOC,yDACC,+BASD,CAPC,2DACC,cAKD,CAHC,6DACC,qCACD,CASD,wFACC,oCACD,CAGA,mFACC,gDAWD,CARE,+GACC,UAKD,CAHC,iHACC,qCACD,CAMJ,8EACC,cAAe,CACf,UACD,CAEA,uEACC,sBAAuB,CAGvB,6CAAgD,CAFhD,cAAe,CACf,eAQD,CALC,2JAGC,eAAgB,CADhB,wBAAyB,CADzB,eAGD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-list-properties {\n\t/* When there are no list styles and there is no collapsible. */\n\t&.ck-list-properties_without-styles {\n\t\tpadding: var(--ck-spacing-large);\n\n\t\t& > * {\n\t\t\tmin-width: 14em;\n\n\t\t\t& + * {\n\t\t\t\tmargin-top: var(--ck-spacing-standard);\n\t\t\t}\n\t\t}\n\t}\n\n\t/*\n\t * When the numbered list property fields (start at, reversed) should be displayed,\n\t * more horizontal space is needed. Reconfigure the style grid to create that space.\n\t */\n\t&.ck-list-properties_with-numbered-properties {\n\t\t& > .ck-list-styles-list {\n\t\t\tgrid-template-columns: repeat( 4, auto );\n\t\t}\n\n\t\t/* When list styles are rendered and property fields are in a collapsible. */\n\t\t& > .ck-collapsible {\n\t\t\tborder-top: 1px solid var(--ck-color-base-border);\n\n\t\t\t& > .ck-collapsible__children {\n\t\t\t\t& > * {\n\t\t\t\t\twidth: 100%;\n\n\t\t\t\t\t& + * {\n\t\t\t\t\t\tmargin-top: var(--ck-spacing-standard);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t& .ck.ck-numbered-list-properties__start-index .ck-input {\n\t\tmin-width: auto;\n\t\twidth: 100%;\n\t}\n\n\t& .ck.ck-numbered-list-properties__reversed-order {\n\t\tbackground: transparent;\n\t\tpadding-left: 0;\n\t\tpadding-right: 0;\n\t\tmargin-bottom: calc(-1 * var(--ck-spacing-tiny));\n\n\t\t&:active, &:hover {\n\t\t\tbox-shadow: none;\n\t\t\tborder-color: transparent;\n\t\t\tbackground: none;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},7141:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-list-styles-list{display:grid}:root{--ck-list-style-button-size:44px}.ck.ck-list-styles-list{column-gap:var(--ck-spacing-medium);grid-template-columns:repeat(3,auto);padding:var(--ck-spacing-large);row-gap:var(--ck-spacing-medium)}.ck.ck-list-styles-list .ck-button{box-sizing:content-box;margin:0;padding:0}.ck.ck-list-styles-list .ck-button,.ck.ck-list-styles-list .ck-button .ck-icon{height:var(--ck-list-style-button-size);width:var(--ck-list-style-button-size)}","",{version:3,sources:["webpack://./../ckeditor5-list/theme/liststyles.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-list/liststyles.css"],names:[],mappings:"AAKA,wBACC,YACD,CCFA,MACC,gCACD,CAEA,wBAGC,mCAAoC,CAFpC,oCAAwC,CAGxC,+BAAgC,CAFhC,gCA4BD,CAxBC,mCAiBC,sBAAuB,CAPvB,QAAS,CANT,SAmBD,CAJC,+EAhBA,uCAAwC,CADxC,sCAoBA",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-list-styles-list {\n\tdisplay: grid;\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-list-style-button-size: 44px;\n}\n\n.ck.ck-list-styles-list {\n\tgrid-template-columns: repeat( 3, auto );\n\trow-gap: var(--ck-spacing-medium);\n\tcolumn-gap: var(--ck-spacing-medium);\n\tpadding: var(--ck-spacing-large);\n\n\t& .ck-button {\n\t\t/* Make the button look like a thumbnail (the icon "takes it all"). */\n\t\twidth: var(--ck-list-style-button-size);\n\t\theight: var(--ck-list-style-button-size);\n\t\tpadding: 0;\n\n\t\t/*\n\t\t * Buttons are aligned by the grid so disable default button margins to not collide with the\n\t\t * gaps in the grid.\n\t\t */\n\t\tmargin: 0;\n\n\t\t/*\n\t\t * Make sure the button border (which is displayed on focus, BTW) does not steal pixels\n\t\t * from the button dimensions and, as a result, decrease the size of the icon\n\t\t * (which becomes blurry as it scales down).\n\t\t */\n\t\tbox-sizing: content-box;\n\n\t\t& .ck-icon {\n\t\t\twidth: var(--ck-list-style-button-size);\n\t\t\theight: var(--ck-list-style-button-size);\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},8991:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,':root{--ck-todo-list-checkmark-size:16px}.ck-content .todo-list{list-style:none}.ck-content .todo-list li{margin-bottom:5px;position:relative}.ck-content .todo-list li .todo-list{margin-top:5px}.ck-content .todo-list .todo-list__label>input{-webkit-appearance:none;border:0;display:inline-block;height:var(--ck-todo-list-checkmark-size);left:-25px;margin-left:0;margin-right:-15px;position:relative;right:0;vertical-align:middle;width:var(--ck-todo-list-checkmark-size)}.ck-content[dir=rtl] .todo-list .todo-list__label>input{left:0;margin-left:-15px;margin-right:0;right:-25px}.ck-content .todo-list .todo-list__label>input:before{border:1px solid #333;border-radius:2px;box-sizing:border-box;content:"";display:block;height:100%;position:absolute;transition:box-shadow .25s ease-in-out;width:100%}@media (prefers-reduced-motion:reduce){.ck-content .todo-list .todo-list__label>input:before{transition:none}}.ck-content .todo-list .todo-list__label>input:after{border-color:transparent;border-style:solid;border-width:0 calc(var(--ck-todo-list-checkmark-size)/8) calc(var(--ck-todo-list-checkmark-size)/8) 0;box-sizing:content-box;content:"";display:block;height:calc(var(--ck-todo-list-checkmark-size)/2.6);left:calc(var(--ck-todo-list-checkmark-size)/3);pointer-events:none;position:absolute;top:calc(var(--ck-todo-list-checkmark-size)/5.3);transform:rotate(45deg);width:calc(var(--ck-todo-list-checkmark-size)/5.3)}.ck-content .todo-list .todo-list__label>input[checked]:before{background:#26ab33;border-color:#26ab33}.ck-content .todo-list .todo-list__label>input[checked]:after{border-color:#fff}.ck-content .todo-list .todo-list__label .todo-list__label__description{vertical-align:middle}.ck-content .todo-list .todo-list__label.todo-list__label_without-description input[type=checkbox]{position:absolute}.ck-editor__editable.ck-content .todo-list .todo-list__label>input,.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input{cursor:pointer}.ck-editor__editable.ck-content .todo-list .todo-list__label>input:hover:before,.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input:hover:before{box-shadow:0 0 0 5px rgba(0,0,0,.1)}.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input{-webkit-appearance:none;border:0;display:inline-block;height:var(--ck-todo-list-checkmark-size);left:-25px;margin-left:0;margin-right:-15px;position:relative;right:0;vertical-align:middle;width:var(--ck-todo-list-checkmark-size)}.ck-editor__editable.ck-content[dir=rtl] .todo-list .todo-list__label>span[contenteditable=false]>input{left:0;margin-left:-15px;margin-right:0;right:-25px}.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input:before{border:1px solid #333;border-radius:2px;box-sizing:border-box;content:"";display:block;height:100%;position:absolute;transition:box-shadow .25s ease-in-out;width:100%}@media (prefers-reduced-motion:reduce){.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input:before{transition:none}}.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input:after{border-color:transparent;border-style:solid;border-width:0 calc(var(--ck-todo-list-checkmark-size)/8) calc(var(--ck-todo-list-checkmark-size)/8) 0;box-sizing:content-box;content:"";display:block;height:calc(var(--ck-todo-list-checkmark-size)/2.6);left:calc(var(--ck-todo-list-checkmark-size)/3);pointer-events:none;position:absolute;top:calc(var(--ck-todo-list-checkmark-size)/5.3);transform:rotate(45deg);width:calc(var(--ck-todo-list-checkmark-size)/5.3)}.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input[checked]:before{background:#26ab33;border-color:#26ab33}.ck-editor__editable.ck-content .todo-list .todo-list__label>span[contenteditable=false]>input[checked]:after{border-color:#fff}.ck-editor__editable.ck-content .todo-list .todo-list__label.todo-list__label_without-description input[type=checkbox]{position:absolute}',"",{version:3,sources:["webpack://./../ckeditor5-list/theme/todolist.css"],names:[],mappings:"AAKA,MACC,kCACD,CA4EA,uBACC,eAwBD,CAtBC,0BAEC,iBAAkB,CADlB,iBAMD,CAHC,qCACC,cACD,CAIA,+CAtFD,uBAAwB,CAQxB,QAAS,CAPT,oBAAqB,CAGrB,yCAA0C,CAO1C,UAAW,CAGX,aAAc,CAFd,kBAAmB,CAVnB,iBAAkB,CAWlB,OAAQ,CARR,qBAAsB,CAFtB,wCAqFC,CAFA,wDApEA,MAAO,CAGP,iBAAkB,CAFlB,cAAe,CACf,WAoEA,CAhED,sDAOC,qBAAiC,CACjC,iBAAkB,CALlB,qBAAsB,CACtB,UAAW,CAHX,aAAc,CAKd,WAAY,CAJZ,iBAAkB,CAOlB,sCAAwC,CAJxC,UASD,CAHC,uCAXD,sDAYE,eAEF,CADC,CAGD,qDAaC,wBAAyB,CADzB,kBAAmB,CAEnB,sGAA+G,CAX/G,sBAAuB,CAEvB,UAAW,CAJX,aAAc,CAUd,mDAAwD,CAHxD,+CAAoD,CAJpD,mBAAoB,CAFpB,iBAAkB,CAOlB,gDAAqD,CAMrD,uBAAwB,CALxB,kDAMD,CAGC,+DACC,kBAA8B,CAC9B,oBACD,CAEA,8DACC,iBACD,CAwBA,wEACC,qBACD,CAEA,mGACC,iBACD,CAYD,kKAEC,cAKD,CAHC,4LACC,mCACD,CAMD,+FAxHA,uBAAwB,CAQxB,QAAS,CAPT,oBAAqB,CAGrB,yCAA0C,CAO1C,UAAW,CAGX,aAAc,CAFd,kBAAmB,CAVnB,iBAAkB,CAWlB,OAAQ,CARR,qBAAsB,CAFtB,wCAuHA,CAFA,wGAtGC,MAAO,CAGP,iBAAkB,CAFlB,cAAe,CACf,WAsGD,CAlGA,sGAOC,qBAAiC,CACjC,iBAAkB,CALlB,qBAAsB,CACtB,UAAW,CAHX,aAAc,CAKd,WAAY,CAJZ,iBAAkB,CAOlB,sCAAwC,CAJxC,UASD,CAHC,uCAXD,sGAYE,eAEF,CADC,CAGD,qGAaC,wBAAyB,CADzB,kBAAmB,CAEnB,sGAA+G,CAX/G,sBAAuB,CAEvB,UAAW,CAJX,aAAc,CAUd,mDAAwD,CAHxD,+CAAoD,CAJpD,mBAAoB,CAFpB,iBAAkB,CAOlB,gDAAqD,CAMrD,uBAAwB,CALxB,kDAMD,CAGC,+GACC,kBAA8B,CAC9B,oBACD,CAEA,8GACC,iBACD,CA2DA,uHACC,iBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-todo-list-checkmark-size: 16px;\n}\n\n@define-mixin todo-list-checkbox {\n\t-webkit-appearance: none;\n\tdisplay: inline-block;\n\tposition: relative;\n\twidth: var(--ck-todo-list-checkmark-size);\n\theight: var(--ck-todo-list-checkmark-size);\n\tvertical-align: middle;\n\n\t/* Needed on iOS */\n\tborder: 0;\n\n\t/* LTR styles */\n\tleft: -25px;\n\tmargin-right: -15px;\n\tright: 0;\n\tmargin-left: 0;\n\n\t/* RTL styles */\n\t@nest [dir=rtl]& {\n\t\tleft: 0;\n\t\tmargin-right: 0;\n\t\tright: -25px;\n\t\tmargin-left: -15px;\n\t}\n\n\t&::before {\n\t\tdisplay: block;\n\t\tposition: absolute;\n\t\tbox-sizing: border-box;\n\t\tcontent: '';\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tborder: 1px solid hsl(0, 0%, 20%);\n\t\tborder-radius: 2px;\n\t\ttransition: 250ms ease-in-out box-shadow;\n\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\ttransition: none;\n\t\t}\n\t}\n\n\t&::after {\n\t\tdisplay: block;\n\t\tposition: absolute;\n\t\tbox-sizing: content-box;\n\t\tpointer-events: none;\n\t\tcontent: '';\n\n\t\t/* Calculate tick position, size and border-width proportional to the checkmark size. */\n\t\tleft: calc( var(--ck-todo-list-checkmark-size) / 3 );\n\t\ttop: calc( var(--ck-todo-list-checkmark-size) / 5.3 );\n\t\twidth: calc( var(--ck-todo-list-checkmark-size) / 5.3 );\n\t\theight: calc( var(--ck-todo-list-checkmark-size) / 2.6 );\n\t\tborder-style: solid;\n\t\tborder-color: transparent;\n\t\tborder-width: 0 calc( var(--ck-todo-list-checkmark-size) / 8 ) calc( var(--ck-todo-list-checkmark-size) / 8 ) 0;\n\t\ttransform: rotate(45deg);\n\t}\n\n\t&[checked] {\n\t\t&::before {\n\t\t\tbackground: hsl(126, 64%, 41%);\n\t\t\tborder-color: hsl(126, 64%, 41%);\n\t\t}\n\n\t\t&::after {\n\t\t\tborder-color: hsl(0, 0%, 100%);\n\t\t}\n\t}\n}\n\n/*\n * To-do list content styles.\n */\n.ck-content .todo-list {\n\tlist-style: none;\n\n\t& li {\n\t\tposition: relative;\n\t\tmargin-bottom: 5px;\n\n\t\t& .todo-list {\n\t\t\tmargin-top: 5px;\n\t\t}\n\t}\n\n\t& .todo-list__label {\n\t\t& > input {\n\t\t\t@mixin todo-list-checkbox;\n\t\t}\n\n\t\t& .todo-list__label__description {\n\t\t\tvertical-align: middle;\n\t\t}\n\n\t\t&.todo-list__label_without-description input[type=checkbox] {\n\t\t\tposition: absolute;\n\t\t}\n\t}\n}\n\n/*\n * To-do list editing view styles.\n */\n.ck-editor__editable.ck-content .todo-list .todo-list__label {\n\t/*\n\t * To-do list should be interactive only during the editing\n\t * (https://github.com/ckeditor/ckeditor5/issues/2090).\n\t */\n\t& > input,\n\t& > span[contenteditable=false] > input {\n\t\tcursor: pointer;\n\n\t\t&:hover::before {\n\t\t\tbox-shadow: 0 0 0 5px hsla(0, 0%, 0%, 0.1);\n\t\t}\n\t}\n\n\t/*\n\t * Document Lists - editing view has an additional span around checkbox.\n\t */\n\t& > span[contenteditable=false] > input {\n\t\t@mixin todo-list-checkbox;\n\t}\n\n\t&.todo-list__label_without-description {\n\t\t& input[type=checkbox] {\n\t\t\tposition: absolute;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},9409:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-mention-background:rgba(153,0,48,.1);--ck-color-mention-text:#990030}.ck-content .mention{background:var(--ck-color-mention-background);color:var(--ck-color-mention-text)}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-mention/mention.css"],names:[],mappings:"AAKA,MACC,+CAAwD,CACxD,+BACD,CAEA,qBACC,6CAA8C,CAC9C,kCACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-mention-background: hsla(341, 100%, 30%, 0.1);\n\t--ck-color-mention-text: hsl(341, 100%, 30%);\n}\n\n.ck-content .mention {\n\tbackground: var(--ck-color-mention-background);\n\tcolor: var(--ck-color-mention-text);\n}\n"],sourceRoot:""}]);const a=s},9055:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-mention-list-max-height:300px}.ck.ck-mentions{max-height:var(--ck-mention-list-max-height);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.ck.ck-mentions>.ck-list__item{flex-shrink:0;overflow:hidden}","",{version:3,sources:["webpack://./../ckeditor5-mention/theme/mentionui.css"],names:[],mappings:"AAKA,MACC,kCACD,CAEA,gBACC,4CAA6C,CAM7C,iBAAkB,CAJlB,eAAgB,CAMhB,2BAQD,CAJC,+BAEC,aAAc,CADd,eAED",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-mention-list-max-height: 300px;\n}\n\n.ck.ck-mentions {\n\tmax-height: var(--ck-mention-list-max-height);\n\n\toverflow-y: auto;\n\n\t/* Prevent unnecessary horizontal scrollbar in Safari\n\thttps://github.com/ckeditor/ckeditor5-mention/issues/41 */\n\toverflow-x: hidden;\n\n\toverscroll-behavior: contain;\n\n\t/* Prevent unnecessary vertical scrollbar in Safari\n\thttps://github.com/ckeditor/ckeditor5-mention/issues/41 */\n\t& > .ck-list__item {\n\t\toverflow: hidden;\n\t\tflex-shrink: 0;\n\t}\n}\n"],sourceRoot:""}]);const a=s},8868:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-character-grid{max-width:100%}.ck.ck-character-grid .ck-character-grid__tiles{display:grid}:root{--ck-character-grid-tile-size:24px}.ck.ck-character-grid{max-height:200px;overflow-x:hidden;overflow-y:auto;width:350px}@media screen and (max-width:600px){.ck.ck-character-grid{width:190px}}.ck.ck-character-grid .ck-character-grid__tiles{grid-template-columns:repeat(10,1fr);margin:var(--ck-spacing-standard) var(--ck-spacing-large);grid-gap:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-character-grid .ck-character-grid__tiles{grid-template-columns:repeat(5,1fr)}}.ck.ck-character-grid .ck-character-grid__tile{border:0;font-size:1.2em;height:var(--ck-character-grid-tile-size);min-height:var(--ck-character-grid-tile-size);min-width:var(--ck-character-grid-tile-size);padding:0;transition:box-shadow .2s ease;width:var(--ck-character-grid-tile-size)}@media (prefers-reduced-motion:reduce){.ck.ck-character-grid .ck-character-grid__tile{transition:none}}.ck.ck-character-grid .ck-character-grid__tile:focus:not(.ck-disabled),.ck.ck-character-grid .ck-character-grid__tile:hover:not(.ck-disabled){border:0;box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-focus-border)}.ck.ck-character-grid .ck-character-grid__tile .ck-button__label{line-height:var(--ck-character-grid-tile-size);text-align:center;width:100%}","",{version:3,sources:["webpack://./../ckeditor5-special-characters/theme/charactergrid.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-special-characters/charactergrid.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAKA,sBACC,cAKD,CAHC,gDACC,YACD,CCFD,MACC,kCACD,CAEA,sBAIC,gBAAiB,CAFjB,iBAAkB,CADlB,eAAgB,CAEhB,WA6CD,CCtDC,oCDMD,sBAOE,WAyCF,CCpDC,CDcA,gDACC,oCAAsC,CACtC,yDAA0D,CAC1D,mCAKD,CCxBA,oCDgBA,gDAME,mCAEF,CCtBA,CDwBA,+CAQC,QAAS,CAHT,eAAgB,CAHhB,yCAA0C,CAE1C,6CAA8C,CAD9C,4CAA6C,CAG7C,SAAU,CACV,8BAA+B,CAN/B,wCA0BD,CAjBC,uCAVD,+CAWE,eAgBF,CAfC,CAEA,8IAGC,QAAS,CACT,iGACD,CAGA,iEACC,8CAA+C,CAE/C,iBAAkB,CADlB,UAED",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-character-grid {\n\tmax-width: 100%;\n\n\t& .ck-character-grid__tiles {\n\t\tdisplay: grid;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n@import "../mixins/_rounded.css";\n\n:root {\n\t--ck-character-grid-tile-size: 24px;\n}\n\n.ck.ck-character-grid {\n\toverflow-y: auto;\n\toverflow-x: hidden;\n\twidth: 350px;\n\tmax-height: 200px;\n\n\t@mixin ck-media-phone {\n\t\twidth: 190px;\n\t}\n\n\t& .ck-character-grid__tiles {\n\t\tgrid-template-columns: repeat(10, 1fr);\n\t\tmargin: var(--ck-spacing-standard) var(--ck-spacing-large);\n\t\tgrid-gap: var(--ck-spacing-standard);\n\n\t\t@mixin ck-media-phone {\n\t\t\tgrid-template-columns: repeat(5, 1fr);\n\t\t}\n\t}\n\n\t& .ck-character-grid__tile {\n\t\twidth: var(--ck-character-grid-tile-size);\n\t\theight: var(--ck-character-grid-tile-size);\n\t\tmin-width: var(--ck-character-grid-tile-size);\n\t\tmin-height: var(--ck-character-grid-tile-size);\n\t\tfont-size: 1.2em;\n\t\tpadding: 0;\n\t\ttransition: .2s ease box-shadow;\n\t\tborder: 0;\n\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\ttransition: none;\n\t\t}\n\n\t\t&:focus:not( .ck-disabled ),\n\t\t&:hover:not( .ck-disabled ) {\n\t\t\t/* Disable the default .ck-button\'s border ring. */\n\t\t\tborder: 0;\n\t\t\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-focus-border);\n\t\t}\n\n\t\t/* Make sure the glyph is rendered in the center of the button */\n\t\t& .ck-button__label {\n\t\t\tline-height: var(--ck-character-grid-tile-size);\n\t\t\twidth: 100%;\n\t\t\ttext-align: center;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},128:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-character-info{border-top:1px solid var(--ck-color-base-border);display:flex;justify-content:space-between;padding:var(--ck-spacing-small) var(--ck-spacing-large)}.ck.ck-character-info>*{font-size:var(--ck-font-size-small);text-transform:uppercase}.ck.ck-character-info .ck-character-info__name{max-width:280px;overflow:hidden;text-overflow:ellipsis}.ck.ck-character-info .ck-character-info__code{opacity:.6}@media screen and (max-width:600px){.ck.ck-character-info{max-width:190px}}","",{version:3,sources:["webpack://./../ckeditor5-special-characters/theme/characterinfo.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-special-characters/characterinfo.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAKA,sBCIC,gDAAiD,CDHjD,YAAa,CACb,6BAA8B,CCC9B,uDDAD,CCGC,wBAEC,mCAAoC,CADpC,wBAED,CAEA,+CACC,eAAgB,CAEhB,eAAgB,CADhB,sBAED,CAEA,+CACC,UACD,CClBA,oCDCD,sBAoBE,eAEF,CCrBC",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-character-info {\n\tdisplay: flex;\n\tjustify-content: space-between;\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-character-info {\n\tpadding: var(--ck-spacing-small) var(--ck-spacing-large);\n\tborder-top: 1px solid var(--ck-color-base-border);\n\n\t& > * {\n\t\ttext-transform: uppercase;\n\t\tfont-size: var(--ck-font-size-small);\n\t}\n\n\t& .ck-character-info__name {\n\t\tmax-width: 280px;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t}\n\n\t& .ck-character-info__code {\n\t\topacity: .6;\n\t}\n\n\t@mixin ck-media-phone {\n\t\tmax-width: 190px;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},4272:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-special-characters-navigation>.ck-label{max-width:160px;overflow:hidden;text-overflow:ellipsis}.ck.ck-special-characters-navigation>.ck-dropdown .ck-dropdown__panel{max-height:250px;overflow-x:hidden;overflow-y:auto}@media screen and (max-width:600px){.ck.ck-special-characters-navigation{max-width:190px}.ck.ck-special-characters-navigation>.ck-form__header__label{overflow:hidden;text-overflow:ellipsis}}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-special-characters/specialcharacters.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css"],names:[],mappings:"AAUC,+CACC,eAAgB,CAEhB,eAAgB,CADhB,sBAED,CAEA,sEAEC,gBAAiB,CAEjB,iBAAkB,CADlB,eAED,CCfA,oCDED,qCAgBE,eAOF,CALE,6DAEC,eAAgB,CADhB,sBAED,CCrBD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck.ck-special-characters-navigation {\n\n\t& > .ck-label {\n\t\tmax-width: 160px;\n\t\ttext-overflow: ellipsis;\n\t\toverflow: hidden;\n\t}\n\n\t& > .ck-dropdown .ck-dropdown__panel {\n\t\t/* There could be dozens of categories available. Use scroll to prevent a 10e6px dropdown. */\n\t\tmax-height: 250px;\n\t\toverflow-y: auto;\n\t\toverflow-x: hidden;\n\t}\n\n\t@mixin ck-media-phone {\n\t\tmax-width: 190px;\n\n\t\t& > .ck-form__header__label {\n\t\t\ttext-overflow: ellipsis;\n\t\t\toverflow: hidden;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},5506:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-input-color{display:flex;flex-direction:row-reverse;width:100%}.ck.ck-input-color>input.ck.ck-input-text{flex-grow:1;min-width:auto}.ck.ck-input-color>div.ck.ck-dropdown{min-width:auto}.ck.ck-input-color>div.ck.ck-dropdown>.ck-input-color__button .ck-dropdown__arrow{display:none}.ck.ck-input-color .ck.ck-input-color__button{display:flex}.ck.ck-input-color .ck.ck-input-color__button .ck.ck-input-color__button__preview{overflow:hidden;position:relative}.ck.ck-input-color .ck.ck-input-color__button .ck.ck-input-color__button__preview>.ck.ck-input-color__button__preview__no-color-indicator{display:block;position:absolute}[dir=ltr] .ck.ck-input-color>.ck.ck-input-text{border-bottom-right-radius:0;border-top-right-radius:0}[dir=rtl] .ck.ck-input-color>.ck.ck-input-text{border-bottom-left-radius:0;border-top-left-radius:0}.ck.ck-input-color>.ck.ck-input-text:focus{z-index:0}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button{padding:0}[dir=ltr] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button{border-bottom-left-radius:0;border-top-left-radius:0}[dir=ltr] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button:not(:focus){border-left:1px solid transparent}[dir=rtl] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button{border-bottom-right-radius:0;border-top-right-radius:0}[dir=rtl] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button:not(:focus){border-right:1px solid transparent}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button.ck-disabled{background:var(--ck-color-input-disabled-background)}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview{border-radius:0}.ck-rounded-corners .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview,.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview{border:1px solid var(--ck-color-input-border);height:20px;width:20px}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-button.ck-input-color__button>.ck.ck-input-color__button__preview>.ck.ck-input-color__button__preview__no-color-indicator{background:red;border-radius:2px;height:150%;left:50%;top:-30%;transform:rotate(45deg);transform-origin:50%;width:8%}.ck.ck-input-color .ck.ck-input-color__remove-color{border-bottom-left-radius:0;border-bottom-right-radius:0;padding:calc(var(--ck-spacing-standard)/2) var(--ck-spacing-standard);width:100%}.ck.ck-input-color .ck.ck-input-color__remove-color:not(:focus){border-bottom:1px solid var(--ck-color-input-border)}[dir=ltr] .ck.ck-input-color .ck.ck-input-color__remove-color{border-top-right-radius:0}[dir=rtl] .ck.ck-input-color .ck.ck-input-color__remove-color{border-top-left-radius:0}.ck.ck-input-color .ck.ck-input-color__remove-color .ck.ck-icon{margin-right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-input-color .ck.ck-input-color__remove-color .ck.ck-icon{margin-left:var(--ck-spacing-standard);margin-right:0}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/colorinput.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/colorinput.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAKA,mBAEC,YAAa,CACb,0BAA2B,CAF3B,UAgCD,CA5BC,0CAEC,WAAY,CADZ,cAED,CAEA,sCACC,cAMD,CAHC,kFACC,YACD,CAGD,8CAEC,YAWD,CATC,kFAEC,eAAgB,CADhB,iBAOD,CAJC,0IAEC,aAAc,CADd,iBAED,CC1BF,+CAGE,4BAA6B,CAD7B,yBAcF,CAhBA,+CAQE,2BAA4B,CAD5B,wBASF,CAHC,2CACC,SACD,CAIA,wEACC,SA0CD,CA3CA,kFAKE,2BAA4B,CAD5B,wBAuCF,CApCE,8FACC,iCACD,CATF,kFAcE,4BAA6B,CAD7B,yBA8BF,CA3BE,8FACC,kCACD,CAGD,oFACC,oDACD,CAEA,4GC1CF,eD2DE,CAjBA,+PCtCD,qCDuDC,CAjBA,4GAKC,6CAA8C,CAD9C,WAAY,CADZ,UAcD,CAVC,oKAKC,cAA6B,CAC7B,iBAAkB,CAHlB,WAAY,CADZ,QAAS,CADT,QAAS,CAMT,uBAAwB,CACxB,oBAAqB,CAJrB,QAKD,CAKH,oDAIC,2BAA4B,CAC5B,4BAA6B,CAH7B,qEAAwE,CADxE,UA0BD,CApBC,gEACC,oDACD,CATD,8DAYE,yBAeF,CA3BA,8DAgBE,wBAWF,CARC,gEACC,uCAMD,CAPA,0EAKE,sCAAuC,CADvC,cAGF",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-input-color {\n\twidth: 100%;\n\tdisplay: flex;\n\tflex-direction: row-reverse;\n\n\t& > input.ck.ck-input-text {\n\t\tmin-width: auto;\n\t\tflex-grow: 1;\n\t}\n\n\t& > div.ck.ck-dropdown {\n\t\tmin-width: auto;\n\n\t\t/* This dropdown has no arrow but a color preview instead. */\n\t\t& > .ck-input-color__button .ck-dropdown__arrow {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t& .ck.ck-input-color__button {\n\t\t/* Resolving issue with misaligned buttons on Safari (see #10589) */\n\t\tdisplay: flex;\n\n\t\t& .ck.ck-input-color__button__preview {\n\t\t\tposition: relative;\n\t\t\toverflow: hidden;\n\n\t\t\t& > .ck.ck-input-color__button__preview__no-color-indicator {\n\t\t\t\tposition: absolute;\n\t\t\t\tdisplay: block;\n\t\t\t}\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n@import "../mixins/_rounded.css";\n\n.ck.ck-input-color {\n\t& > .ck.ck-input-text {\n\t\t@mixin ck-dir ltr {\n\t\t\tborder-top-right-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\tborder-top-left-radius: 0;\n\t\t\tborder-bottom-left-radius: 0;\n\t\t}\n\n\t\t/* Make sure the focused input is always on top of the dropdown button so its\n\t\t outline and border are never cropped (also when the input is read-only). */\n\t\t&:focus {\n\t\t\tz-index: 0;\n\t\t}\n\t}\n\n\t& > .ck.ck-dropdown {\n\t\t& > .ck.ck-button.ck-input-color__button {\n\t\t\tpadding: 0;\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tborder-top-left-radius: 0;\n\t\t\t\tborder-bottom-left-radius: 0;\n\n\t\t\t\t&:not(:focus) {\n\t\t\t\t\tborder-left: 1px solid transparent;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tborder-top-right-radius: 0;\n\t\t\t\tborder-bottom-right-radius: 0;\n\n\t\t\t\t&:not(:focus) {\n\t\t\t\t\tborder-right: 1px solid transparent;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&.ck-disabled {\n\t\t\t\tbackground: var(--ck-color-input-disabled-background);\n\t\t\t}\n\n\t\t\t& > .ck.ck-input-color__button__preview {\n\t\t\t\t@mixin ck-rounded-corners;\n\n\t\t\t\twidth: 20px;\n\t\t\t\theight: 20px;\n\t\t\t\tborder: 1px solid var(--ck-color-input-border);\n\n\t\t\t\t& > .ck.ck-input-color__button__preview__no-color-indicator {\n\t\t\t\t\ttop: -30%;\n\t\t\t\t\tleft: 50%;\n\t\t\t\t\theight: 150%;\n\t\t\t\t\twidth: 8%;\n\t\t\t\t\tbackground: hsl(0, 100%, 50%);\n\t\t\t\t\tborder-radius: 2px;\n\t\t\t\t\ttransform: rotate(45deg);\n\t\t\t\t\ttransform-origin: 50%;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t& .ck.ck-input-color__remove-color {\n\t\twidth: 100%;\n\t\tpadding: calc(var(--ck-spacing-standard) / 2) var(--ck-spacing-standard);\n\n\t\tborder-bottom-left-radius: 0;\n\t\tborder-bottom-right-radius: 0;\n\n\t\t&:not(:focus) {\n\t\t\tborder-bottom: 1px solid var(--ck-color-input-border);\n\t\t}\n\n\t\t@mixin ck-dir ltr {\n\t\t\tborder-top-right-radius: 0;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\tborder-top-left-radius: 0;\n\t\t}\n\n\t\t& .ck.ck-icon {\n\t\t\tmargin-right: var(--ck-spacing-standard);\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-right: 0;\n\t\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},4043:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-form{padding:0 0 var(--ck-spacing-large)}.ck.ck-form:focus{outline:none}.ck.ck-form .ck.ck-input-text{min-width:100%;width:0}.ck.ck-form .ck.ck-dropdown{min-width:100%}.ck.ck-form .ck.ck-dropdown .ck-dropdown__button:not(:focus){border:1px solid var(--ck-color-base-border)}.ck.ck-form .ck.ck-dropdown .ck-dropdown__button .ck-button__label{width:100%}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/form.css"],names:[],mappings:"AAKA,YACC,mCAyBD,CAvBC,kBAEC,YACD,CAEA,8BACC,cAAe,CACf,OACD,CAEA,4BACC,cAWD,CARE,6DACC,4CACD,CAEA,mEACC,UACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-form {\n\tpadding: 0 0 var(--ck-spacing-large);\n\n\t&:focus {\n\t\t/* See: https://github.com/ckeditor/ckeditor5/issues/4773 */\n\t\toutline: none;\n\t}\n\n\t& .ck.ck-input-text {\n\t\tmin-width: 100%;\n\t\twidth: 0;\n\t}\n\n\t& .ck.ck-dropdown {\n\t\tmin-width: 100%;\n\n\t\t& .ck-dropdown__button {\n\t\t\t&:not(:focus) {\n\t\t\t\tborder: 1px solid var(--ck-color-base-border);\n\t\t\t}\n\n\t\t\t& .ck-button__label {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},2655:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-form__row{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between}.ck.ck-form__row>:not(.ck-label){flex-grow:1}.ck.ck-form__row.ck-table-form__action-row .ck-button-cancel,.ck.ck-form__row.ck-table-form__action-row .ck-button-save{justify-content:center}.ck.ck-form__row{padding:var(--ck-spacing-standard) var(--ck-spacing-large) 0}[dir=ltr] .ck.ck-form__row>:not(.ck-label)+*{margin-left:var(--ck-spacing-large)}[dir=rtl] .ck.ck-form__row>:not(.ck-label)+*{margin-right:var(--ck-spacing-large)}.ck.ck-form__row>.ck-label{min-width:100%;width:100%}.ck.ck-form__row.ck-table-form__action-row{margin-top:var(--ck-spacing-large)}.ck.ck-form__row.ck-table-form__action-row .ck-button .ck-button__label{color:var(--ck-color-text)}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/formrow.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/formrow.css"],names:[],mappings:"AAKA,iBACC,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CACjB,6BAaD,CAVC,iCACC,WACD,CAGC,wHAEC,sBACD,CCbF,iBACC,4DA2BD,CAvBE,6CAEE,mCAMF,CARA,6CAME,oCAEF,CAGD,2BAEC,cAAe,CADf,UAED,CAEA,2CACC,kCAKD,CAHC,wEACC,0BACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-form__row {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\tjustify-content: space-between;\n\n\t/* Ignore labels that work as fieldset legends */\n\t& > *:not(.ck-label) {\n\t\tflex-grow: 1;\n\t}\n\n\t&.ck-table-form__action-row {\n\t\t& .ck-button-save,\n\t\t& .ck-button-cancel {\n\t\t\tjustify-content: center;\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-form__row {\n\tpadding: var(--ck-spacing-standard) var(--ck-spacing-large) 0;\n\n\t/* Ignore labels that work as fieldset legends */\n\t& > *:not(.ck-label) {\n\t\t& + * {\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: var(--ck-spacing-large);\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-right: var(--ck-spacing-large);\n\t\t\t}\n\t\t}\n\t}\n\n\t& > .ck-label {\n\t\twidth: 100%;\n\t\tmin-width: 100%;\n\t}\n\n\t&.ck-table-form__action-row {\n\t\tmargin-top: var(--ck-spacing-large);\n\n\t\t& .ck-button .ck-button__label {\n\t\t\tcolor: var(--ck-color-text);\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},5032:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck .ck-insert-table-dropdown__grid{display:flex;flex-direction:row;flex-wrap:wrap}:root{--ck-insert-table-dropdown-padding:10px;--ck-insert-table-dropdown-box-height:11px;--ck-insert-table-dropdown-box-width:12px;--ck-insert-table-dropdown-box-margin:1px}.ck .ck-insert-table-dropdown__grid{padding:var(--ck-insert-table-dropdown-padding) var(--ck-insert-table-dropdown-padding) 0;width:calc(var(--ck-insert-table-dropdown-box-width)*10 + var(--ck-insert-table-dropdown-box-margin)*20 + var(--ck-insert-table-dropdown-padding)*2)}.ck .ck-insert-table-dropdown__label,.ck[dir=rtl] .ck-insert-table-dropdown__label{text-align:center}.ck .ck-insert-table-dropdown-grid-box{border:1px solid var(--ck-color-base-border);border-radius:1px;margin:var(--ck-insert-table-dropdown-box-margin);min-height:var(--ck-insert-table-dropdown-box-height);min-width:var(--ck-insert-table-dropdown-box-width);outline:none;transition:none}@media (prefers-reduced-motion:reduce){.ck .ck-insert-table-dropdown-grid-box{transition:none}}.ck .ck-insert-table-dropdown-grid-box:focus{box-shadow:none}.ck .ck-insert-table-dropdown-grid-box.ck-on{background:var(--ck-color-focus-outer-shadow);border-color:var(--ck-color-focus-border)}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/inserttable.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/inserttable.css"],names:[],mappings:"AAKA,oCACC,YAAa,CACb,kBAAmB,CACnB,cACD,CCJA,MACC,uCAAwC,CACxC,0CAA2C,CAC3C,yCAA0C,CAC1C,yCACD,CAEA,oCAGC,yFAA0F,CAD1F,oJAED,CAEA,mFAEC,iBACD,CAEA,uCAIC,4CAA6C,CAC7C,iBAAkB,CAFlB,iDAAkD,CADlD,qDAAsD,CADtD,mDAAoD,CAKpD,YAAa,CACb,eAcD,CAZC,uCATD,uCAUE,eAWF,CAVC,CAEA,6CACC,eACD,CAEA,6CAEC,6CAA8C,CAD9C,yCAED",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-insert-table-dropdown__grid {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: wrap;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-insert-table-dropdown-padding: 10px;\n\t--ck-insert-table-dropdown-box-height: 11px;\n\t--ck-insert-table-dropdown-box-width: 12px;\n\t--ck-insert-table-dropdown-box-margin: 1px;\n}\n\n.ck .ck-insert-table-dropdown__grid {\n\t/* The width of a container should match 10 items in a row so there will be a 10x10 grid. */\n\twidth: calc(var(--ck-insert-table-dropdown-box-width) * 10 + var(--ck-insert-table-dropdown-box-margin) * 20 + var(--ck-insert-table-dropdown-padding) * 2);\n\tpadding: var(--ck-insert-table-dropdown-padding) var(--ck-insert-table-dropdown-padding) 0;\n}\n\n.ck .ck-insert-table-dropdown__label,\n.ck[dir=rtl] .ck-insert-table-dropdown__label {\n\ttext-align: center;\n}\n\n.ck .ck-insert-table-dropdown-grid-box {\n\tmin-width: var(--ck-insert-table-dropdown-box-width);\n\tmin-height: var(--ck-insert-table-dropdown-box-height);\n\tmargin: var(--ck-insert-table-dropdown-box-margin);\n\tborder: 1px solid var(--ck-color-base-border);\n\tborder-radius: 1px;\n\toutline: none;\n\ttransition: none;\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\ttransition: none;\n\t}\n\n\t&:focus {\n\t\tbox-shadow: none;\n\t}\n\n\t&.ck-on {\n\t\tborder-color: var(--ck-color-focus-border);\n\t\tbackground: var(--ck-color-focus-outer-shadow);\n\t}\n}\n\n"],sourceRoot:""}]);const a=s},2329:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-content .table{display:table;margin:.9em auto}.ck-content .table table{border:1px double #b3b3b3;border-collapse:collapse;border-spacing:0;height:100%;width:100%}.ck-content .table table td,.ck-content .table table th{border:1px solid #bfbfbf;min-width:2em;padding:.4em}.ck-content .table table th{background:rgba(0,0,0,.05);font-weight:700}.ck-content[dir=rtl] .table th{text-align:right}.ck-content[dir=ltr] .table th{text-align:left}.ck-editor__editable .ck-table-bogus-paragraph{display:inline-block;width:100%}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/table.css"],names:[],mappings:"AAKA,mBAKC,aAAc,CADd,gBAiCD,CA9BC,yBAYC,yBAAkC,CAVlC,wBAAyB,CACzB,gBAAiB,CAKjB,WAAY,CADZ,UAsBD,CAfC,wDAQC,wBAAiC,CANjC,aAAc,CACd,YAMD,CAEA,4BAEC,0BAA+B,CAD/B,eAED,CAMF,+BACC,gBACD,CAEA,+BACC,eACD,CAEA,+CAKC,oBAAqB,CAMrB,UACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck-content .table {\n\t/* Give the table widget some air and center it horizontally */\n\t/* The first value should be equal to --ck-spacing-large variable if used in the editor context\n\tto avoid the content jumping (See https://github.com/ckeditor/ckeditor5/issues/9825). */\n\tmargin: 0.9em auto;\n\tdisplay: table;\n\n\t& table {\n\t\t/* The table cells should have slight borders */\n\t\tborder-collapse: collapse;\n\t\tborder-spacing: 0;\n\n\t\t/* Table width and height are set on the parent
. Make sure the table inside stretches\n\t\tto the full dimensions of the container (https://github.com/ckeditor/ckeditor5/issues/6186). */\n\t\twidth: 100%;\n\t\theight: 100%;\n\n\t\t/* The outer border of the table should be slightly darker than the inner lines.\n\t\tAlso see https://github.com/ckeditor/ckeditor5-table/issues/50. */\n\t\tborder: 1px double hsl(0, 0%, 70%);\n\n\t\t& td,\n\t\t& th {\n\t\t\tmin-width: 2em;\n\t\t\tpadding: .4em;\n\n\t\t\t/* The border is inherited from .ck-editor__nested-editable styles, so theoretically it\'s not necessary here.\n\t\t\tHowever, the border is a content style, so it should use .ck-content (so it works outside the editor).\n\t\t\tHence, the duplication. See https://github.com/ckeditor/ckeditor5/issues/6314 */\n\t\t\tborder: 1px solid hsl(0, 0%, 75%);\n\t\t}\n\n\t\t& th {\n\t\t\tfont-weight: bold;\n\t\t\tbackground: hsla(0, 0%, 0%, 5%);\n\t\t}\n\t}\n}\n\n/* Text alignment of the table header should match the editor settings and override the native browser styling,\nwhen content is available outside the editor. See https://github.com/ckeditor/ckeditor5/issues/6638 */\n.ck-content[dir="rtl"] .table th {\n\ttext-align: right;\n}\n\n.ck-content[dir="ltr"] .table th {\n\ttext-align: left;\n}\n\n.ck-editor__editable .ck-table-bogus-paragraph {\n\t/*\n\t * Use display:inline-block to force Chrome/Safari to limit text mutations to this element.\n\t * See https://github.com/ckeditor/ckeditor5/issues/6062.\n\t */\n\tdisplay: inline-block;\n\n\t/*\n\t * Inline HTML elements nested in the span should always be dimensioned in relation to the whole cell width.\n\t * See https://github.com/ckeditor/ckeditor5/issues/9117.\n\t */\n\twidth: 100%;\n}\n'],sourceRoot:""}]);const a=s},4143:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-selector-caption-background:#f7f7f7;--ck-color-selector-caption-text:#333;--ck-color-selector-caption-highlighted-background:#fd0}.ck-content .table>figcaption{background-color:var(--ck-color-selector-caption-background);caption-side:top;color:var(--ck-color-selector-caption-text);display:table-caption;font-size:.75em;outline-offset:-1px;padding:.6em;text-align:center;word-break:break-word}@media (forced-colors:active){.ck-content .table>figcaption{background-color:unset;color:unset}}@media (forced-colors:none){.ck.ck-editor__editable .table>figcaption.table__caption_highlighted{animation:ck-table-caption-highlight .6s ease-out}}.ck.ck-editor__editable .table>figcaption.ck-placeholder:before{overflow:hidden;padding-left:inherit;padding-right:inherit;text-overflow:ellipsis;white-space:nowrap}@keyframes ck-table-caption-highlight{0%{background-color:var(--ck-color-selector-caption-highlighted-background)}to{background-color:var(--ck-color-selector-caption-background)}}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/tablecaption.css","webpack://./../ckeditor5-ui/theme/mixins/_mediacolors.css"],names:[],mappings:"AAOA,MACC,8CAAuD,CACvD,qCAAiD,CACjD,uDACD,CAGA,8BAMC,4DAA6D,CAJ7D,gBAAiB,CAGjB,2CAA4C,CAJ5C,qBAAsB,CAOtB,eAAgB,CAChB,mBAAoB,CAFpB,YAAa,CAHb,iBAAkB,CADlB,qBAaD,CCxBC,8BACC,8BDoBA,sBAAuB,CACvB,WCnBA,CACD,CAIA,4BDqBC,qEACC,iDACD,CCnBD,CDsBA,gEASC,eAAgB,CARhB,oBAAqB,CACrB,qBAAsB,CAQtB,sBAAuB,CAFvB,kBAGD,CAGD,sCACC,GACC,wEACD,CAEA,GACC,4DACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_mediacolors.css";\n\n:root {\n\t--ck-color-selector-caption-background: hsl(0, 0%, 97%);\n\t--ck-color-selector-caption-text: hsl(0, 0%, 20%);\n\t--ck-color-selector-caption-highlighted-background: hsl(52deg 100% 50%);\n}\n\n/* Content styles */\n.ck-content .table > figcaption {\n\tdisplay: table-caption;\n\tcaption-side: top;\n\tword-break: break-word;\n\ttext-align: center;\n\tcolor: var(--ck-color-selector-caption-text);\n\tbackground-color: var(--ck-color-selector-caption-background);\n\tpadding: .6em;\n\tfont-size: .75em;\n\toutline-offset: -1px;\n\n\t/* Improve placeholder rendering in high-constrast mode (https://github.com/ckeditor/ckeditor5/issues/14907). */\n\t@mixin ck-media-forced-colors {\n\t\tbackground-color: unset;\n\t\tcolor: unset;\n\t}\n}\n\n/* Editing styles */\n.ck.ck-editor__editable .table > figcaption {\n\t@mixin ck-media-default-colors {\n\t\t&.table__caption_highlighted {\n\t\t\tanimation: ck-table-caption-highlight .6s ease-out;\n\t\t}\n\t}\n\n\t&.ck-placeholder::before {\n\t\tpadding-left: inherit;\n\t\tpadding-right: inherit;\n\n\t\t/*\n\t\t * Make sure the table caption placeholder doesn\'t overflow the placeholder area.\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/9162.\n\t\t */\n\t\twhite-space: nowrap;\n\t\toverflow: hidden;\n\t\ttext-overflow: ellipsis;\n\t}\n}\n\n@keyframes ck-table-caption-highlight {\n\t0% {\n\t\tbackground-color: var(--ck-color-selector-caption-highlighted-background);\n\t}\n\n\t100% {\n\t\tbackground-color: var(--ck-color-selector-caption-background);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-forced-colors {\n\t@media (forced-colors: active) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n\n@define-mixin ck-media-default-colors {\n\t@media (forced-colors: none) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},8986:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row{flex-wrap:wrap}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar:first-of-type{flex-grow:0.57}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar:last-of-type{flex-grow:0.43}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar .ck-button{flex-grow:1}.ck.ck-table-cell-properties-form{width:320px}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__padding-row{align-self:flex-end;padding:0;width:25%}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar{background:none;margin-top:var(--ck-spacing-standard)}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/tablecellproperties.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/tablecellproperties.css"],names:[],mappings:"AAOE,6FACC,cAiBD,CAdE,0HAEC,cACD,CAEA,yHAEC,cACD,CAEA,uHACC,WACD,CClBJ,kCACC,WAkBD,CAfE,2FACC,mBAAoB,CACpB,SAAU,CACV,SACD,CAGC,4GACC,eAAgB,CAGhB,qCACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-table-cell-properties-form {\n\t& .ck-form__row {\n\t\t&.ck-table-cell-properties-form__alignment-row {\n\t\t\tflex-wrap: wrap;\n\n\t\t\t& .ck.ck-toolbar {\n\t\t\t\t&:first-of-type {\n\t\t\t\t\t/* 4 buttons out of 7 (h-alignment + v-alignment) = 0.57 */\n\t\t\t\t\tflex-grow: 0.57;\n\t\t\t\t}\n\n\t\t\t\t&:last-of-type {\n\t\t\t\t\t/* 3 buttons out of 7 (h-alignment + v-alignment) = 0.43 */\n\t\t\t\t\tflex-grow: 0.43;\n\t\t\t\t}\n\n\t\t\t\t& .ck-button {\n\t\t\t\t\tflex-grow: 1;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-table-cell-properties-form {\n\twidth: 320px;\n\n\t& .ck-form__row {\n\t\t&.ck-table-cell-properties-form__padding-row {\n\t\t\talign-self: flex-end;\n\t\t\tpadding: 0;\n\t\t\twidth: 25%;\n\t\t}\n\n\t\t&.ck-table-cell-properties-form__alignment-row {\n\t\t\t& .ck.ck-toolbar {\n\t\t\t\tbackground: none;\n\n\t\t\t\t/* Compensate for missing input label that would push the margin (toolbar has no inputs). */\n\t\t\t\tmargin-top: var(--ck-spacing-standard);\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},8795:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-selector-column-resizer-hover:var(--ck-color-base-active);--ck-table-column-resizer-width:7px;--ck-table-column-resizer-position-offset:calc(var(--ck-table-column-resizer-width)*-0.5 - 0.5px)}.ck-content .table .ck-table-resized{table-layout:fixed}.ck-content .table table{overflow:hidden}.ck-content .table td,.ck-content .table th{overflow-wrap:break-word;position:relative}.ck.ck-editor__editable .table .ck-table-column-resizer{bottom:0;cursor:col-resize;position:absolute;right:var(--ck-table-column-resizer-position-offset);top:0;user-select:none;width:var(--ck-table-column-resizer-width);z-index:var(--ck-z-default)}.ck.ck-editor__editable .table[draggable] .ck-table-column-resizer,.ck.ck-editor__editable.ck-column-resize_disabled .table .ck-table-column-resizer{display:none}.ck.ck-editor__editable .table .ck-table-column-resizer:hover,.ck.ck-editor__editable .table .ck-table-column-resizer__active{background-color:var(--ck-color-selector-column-resizer-hover);bottom:-999999px;opacity:.25;top:-999999px}.ck.ck-editor__editable[dir=rtl] .table .ck-table-column-resizer{left:var(--ck-table-column-resizer-position-offset);right:unset}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/tablecolumnresize.css"],names:[],mappings:"AAKA,MACC,oEAAqE,CACrE,mCAAoC,CAIpC,iGACD,CAEA,qCACC,kBACD,CAEA,yBACC,eACD,CAEA,4CAIC,wBAAyB,CACzB,iBACD,CAEA,wDAGC,QAAS,CAGT,iBAAkB,CALlB,iBAAkB,CAGlB,oDAAqD,CAFrD,KAAM,CAKN,gBAAiB,CAFjB,0CAA2C,CAG3C,2BACD,CAQA,qJACC,YACD,CAEA,8HAEC,8DAA+D,CAO/D,gBAAiB,CANjB,WAAa,CAKb,aAED,CAEA,iEACC,mDAAoD,CACpD,WACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-selector-column-resizer-hover: var(--ck-color-base-active);\n\t--ck-table-column-resizer-width: 7px;\n\n\t/* The offset used for absolute positioning of the resizer element, so that it is placed exactly above the cell border.\n\t The value is: minus half the width of the resizer decreased additionaly by the half the width of the border (0.5px). */\n\t--ck-table-column-resizer-position-offset: calc(var(--ck-table-column-resizer-width) * -0.5 - 0.5px);\n}\n\n.ck-content .table .ck-table-resized {\n\ttable-layout: fixed;\n}\n\n.ck-content .table table {\n\toverflow: hidden;\n}\n\n.ck-content .table td,\n.ck-content .table th {\n\t/* To prevent text overflowing beyond its cell when columns are resized by resize handler\n\t(https://github.com/ckeditor/ckeditor5/pull/14379#issuecomment-1589460978). */\n\toverflow-wrap: break-word;\n\tposition: relative;\n}\n\n.ck.ck-editor__editable .table .ck-table-column-resizer {\n\tposition: absolute;\n\ttop: 0;\n\tbottom: 0;\n\tright: var(--ck-table-column-resizer-position-offset);\n\twidth: var(--ck-table-column-resizer-width);\n\tcursor: col-resize;\n\tuser-select: none;\n\tz-index: var(--ck-z-default);\n}\n\n.ck.ck-editor__editable.ck-column-resize_disabled .table .ck-table-column-resizer {\n\tdisplay: none;\n}\n\n/* The resizer elements, which are extended to an extremely high height, break the drag & drop feature in Chrome. To make it work again,\n all resizers must be hidden while the table is dragged. */\n.ck.ck-editor__editable .table[draggable] .ck-table-column-resizer {\n\tdisplay: none;\n}\n\n.ck.ck-editor__editable .table .ck-table-column-resizer:hover,\n.ck.ck-editor__editable .table .ck-table-column-resizer__active {\n\tbackground-color: var(--ck-color-selector-column-resizer-hover);\n\topacity: 0.25;\n\t/* The resizer element resides in each cell so to occupy the entire height of the table, which is unknown from a CSS point of view,\n\t it is extended to an extremely high height. Even for screens with a very high pixel density, the resizer will fulfill its role as\n\t it should, i.e. for a screen of 476 ppi the total height of the resizer will take over 350 sheets of A4 format, which is totally\n\t unrealistic height for a single table. */\n\ttop: -999999px;\n\tbottom: -999999px;\n}\n\n.ck.ck-editor__editable[dir=rtl] .table .ck-table-column-resizer {\n\tleft: var(--ck-table-column-resizer-position-offset);\n\tright: unset;\n}\n"],sourceRoot:""}]);const a=s},8137:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-selector-focused-cell-background:rgba(158,201,250,.3)}.ck-widget.table td.ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck-widget.table td.ck-editor__nested-editable:focus,.ck-widget.table th.ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck-widget.table th.ck-editor__nested-editable:focus{background:var(--ck-color-selector-focused-cell-background);border-style:none;outline:1px solid var(--ck-color-focus-border);outline-offset:-1px}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/tableediting.css"],names:[],mappings:"AAKA,MACC,gEACD,CAKE,8QAGC,2DAA4D,CAK5D,iBAAkB,CAClB,8CAA+C,CAC/C,mBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-selector-focused-cell-background: hsla(212, 90%, 80%, .3);\n}\n\n.ck-widget.table {\n\t& td,\n\t& th {\n\t\t&.ck-editor__nested-editable.ck-editor__nested-editable_focused,\n\t\t&.ck-editor__nested-editable:focus {\n\t\t\t/* A very slight background to highlight the focused cell */\n\t\t\tbackground: var(--ck-color-selector-focused-cell-background);\n\n\t\t\t/* Fixes the problem where surrounding cells cover the focused cell's border.\n\t\t\tIt does not fix the problem in all places but the UX is improved.\n\t\t\tSee https://github.com/ckeditor/ckeditor5-table/issues/29. */\n\t\t\tborder-style: none;\n\t\t\toutline: 1px solid var(--ck-color-focus-border);\n\t\t\toutline-offset: -1px; /* progressive enhancement - no IE support */\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},1623:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck.ck-table-form .ck-form__row.ck-table-form__background-row,.ck.ck-table-form .ck-form__row.ck-table-form__border-row{flex-wrap:wrap}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row{align-items:center;flex-wrap:wrap}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-labeled-field-view{align-items:center;display:flex;flex-direction:column-reverse}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-labeled-field-view .ck.ck-dropdown,.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimension-operator{flex-grow:0}.ck.ck-table-form .ck.ck-labeled-field-view{position:relative}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{bottom:calc(var(--ck-table-properties-error-arrow-size)*-1);left:50%;position:absolute;transform:translate(-50%,100%);z-index:1}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status:after{content:"";left:50%;position:absolute;top:calc(var(--ck-table-properties-error-arrow-size)*-1);transform:translateX(-50%)}:root{--ck-table-properties-error-arrow-size:6px;--ck-table-properties-min-error-width:150px}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-labeled-field-view>.ck-label{font-size:var(--ck-font-size-tiny);text-align:center}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-style,.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-width{max-width:80px;min-width:80px;width:80px}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row{padding:0}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__height,.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__width{margin:0}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimension-operator{align-self:flex-end;display:inline-block;height:var(--ck-ui-component-min-height);line-height:var(--ck-ui-component-min-height);margin:0 var(--ck-spacing-small)}.ck.ck-table-form .ck.ck-labeled-field-view{padding-top:var(--ck-spacing-standard)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{border-radius:0}.ck-rounded-corners .ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status,.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{background:var(--ck-color-base-error);color:var(--ck-color-base-background);min-width:var(--ck-table-properties-min-error-width);padding:var(--ck-spacing-small) var(--ck-spacing-medium);text-align:center}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status:after{border-color:transparent transparent var(--ck-color-base-error) transparent;border-style:solid;border-width:0 var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{animation:ck-table-form-labeled-view-status-appear .15s ease both}@media (prefers-reduced-motion:reduce){.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{animation:none}}.ck.ck-table-form .ck.ck-labeled-field-view .ck-input.ck-error:not(:focus)+.ck.ck-labeled-field-view__status{display:none}@keyframes ck-table-form-labeled-view-status-appear{0%{opacity:0}to{opacity:1}}',"",{version:3,sources:["webpack://./../ckeditor5-table/theme/tableform.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/tableform.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAWE,wHACC,cACD,CAEA,8DAEC,kBAAmB,CADnB,cAgBD,CAbC,qFAGC,kBAAmB,CAFnB,YAAa,CACb,6BAMD,CAEA,sMACC,WACD,CAIF,4CAEC,iBAoBD,CAlBC,8EAGC,2DAAgE,CADhE,QAAS,CADT,iBAAkB,CAGlB,8BAA+B,CAG/B,SAUD,CAPC,oFACC,UAAW,CAGX,QAAS,CAFT,iBAAkB,CAClB,wDAA6D,CAE7D,0BACD,CChDH,MACC,0CAA2C,CAC3C,2CACD,CAMI,2FACC,kCAAmC,CACnC,iBACD,CAGD,8KAIC,cAAe,CADf,cAAe,CADf,UAGD,CAGD,8DACC,SAcD,CAZC,yMAEC,QACD,CAEA,iGACC,mBAAoB,CACpB,oBAAqB,CACrB,wCAAyC,CACzC,6CAA8C,CAC9C,gCACD,CAIF,4CACC,sCA6BD,CA3BC,8ECxCD,eD6DC,CArBA,mMCpCA,qCDyDA,CArBA,8EAGC,qCAAsC,CACtC,qCAAsC,CAEtC,oDAAqD,CADrD,wDAAyD,CAEzD,iBAcD,CAXC,oFACC,2EAA4E,CAE5E,kBAAmB,CADnB,kJAED,CAdD,8EAgBC,iEAKD,CAHC,uCAlBD,8EAmBE,cAEF,CADC,CAID,6GACC,YACD,CAIF,oDACC,GACC,SACD,CAEA,GACC,SACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-table-form {\n\t& .ck-form__row {\n\t\t&.ck-table-form__border-row {\n\t\t\tflex-wrap: wrap;\n\t\t}\n\n\t\t&.ck-table-form__background-row {\n\t\t\tflex-wrap: wrap;\n\t\t}\n\n\t\t&.ck-table-form__dimensions-row {\n\t\t\tflex-wrap: wrap;\n\t\t\talign-items: center;\n\n\t\t\t& .ck-labeled-field-view {\n\t\t\t\tdisplay: flex;\n\t\t\t\tflex-direction: column-reverse;\n\t\t\t\talign-items: center;\n\n\t\t\t\t& .ck.ck-dropdown {\n\t\t\t\t\tflex-grow: 0;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t& .ck-table-form__dimension-operator {\n\t\t\t\tflex-grow: 0;\n\t\t\t}\n\t\t}\n\t}\n\n\t& .ck.ck-labeled-field-view {\n\t\t/* Allow absolute positioning of the status (error) balloons. */\n\t\tposition: relative;\n\n\t\t& .ck.ck-labeled-field-view__status {\n\t\t\tposition: absolute;\n\t\t\tleft: 50%;\n\t\t\tbottom: calc( -1 * var(--ck-table-properties-error-arrow-size) );\n\t\t\ttransform: translate(-50%,100%);\n\n\t\t\t/* Make sure the balloon status stays on top of other form elements. */\n\t\t\tz-index: 1;\n\n\t\t\t/* The arrow pointing towards the field. */\n\t\t\t&::after {\n\t\t\t\tcontent: "";\n\t\t\t\tposition: absolute;\n\t\t\t\ttop: calc( -1 * var(--ck-table-properties-error-arrow-size) );\n\t\t\t\tleft: 50%;\n\t\t\t\ttransform: translateX( -50% );\n\t\t\t}\n\t\t}\n\t}\n}\n','/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../mixins/_rounded.css";\n\n:root {\n\t--ck-table-properties-error-arrow-size: 6px;\n\t--ck-table-properties-min-error-width: 150px;\n}\n\n.ck.ck-table-form {\n\t& .ck-form__row {\n\t\t&.ck-table-form__border-row {\n\t\t\t& .ck-labeled-field-view {\n\t\t\t\t& > .ck-label {\n\t\t\t\t\tfont-size: var(--ck-font-size-tiny);\n\t\t\t\t\ttext-align: center;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t& .ck-table-form__border-style,\n\t\t\t& .ck-table-form__border-width {\n\t\t\t\twidth: 80px;\n\t\t\t\tmin-width: 80px;\n\t\t\t\tmax-width: 80px;\n\t\t\t}\n\t\t}\n\n\t\t&.ck-table-form__dimensions-row {\n\t\t\tpadding: 0;\n\n\t\t\t& .ck-table-form__dimensions-row__width,\n\t\t\t& .ck-table-form__dimensions-row__height {\n\t\t\t\tmargin: 0\n\t\t\t}\n\n\t\t\t& .ck-table-form__dimension-operator {\n\t\t\t\talign-self: flex-end;\n\t\t\t\tdisplay: inline-block;\n\t\t\t\theight: var(--ck-ui-component-min-height);\n\t\t\t\tline-height: var(--ck-ui-component-min-height);\n\t\t\t\tmargin: 0 var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\t}\n\n\t& .ck.ck-labeled-field-view {\n\t\tpadding-top: var(--ck-spacing-standard);\n\n\t\t& .ck.ck-labeled-field-view__status {\n\t\t\t@mixin ck-rounded-corners;\n\n\t\t\tbackground: var(--ck-color-base-error);\n\t\t\tcolor: var(--ck-color-base-background);\n\t\t\tpadding: var(--ck-spacing-small) var(--ck-spacing-medium);\n\t\t\tmin-width: var(--ck-table-properties-min-error-width);\n\t\t\ttext-align: center;\n\n\t\t\t/* The arrow pointing towards the field. */\n\t\t\t&::after {\n\t\t\t\tborder-color: transparent transparent var(--ck-color-base-error) transparent;\n\t\t\t\tborder-width: 0 var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size);\n\t\t\t\tborder-style: solid;\n\t\t\t}\n\n\t\t\tanimation: ck-table-form-labeled-view-status-appear .15s ease both;\n\n\t\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\t\tanimation: none;\n\t\t\t}\n\t\t}\n\n\t\t/* Hide the error balloon when the field is blurred. Makes the experience much more clear. */\n\t\t& .ck-input.ck-error:not(:focus) + .ck.ck-labeled-field-view__status {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n\n@keyframes ck-table-form-labeled-view-status-appear {\n\t0% {\n\t\topacity: 0;\n\t}\n\n\t100% {\n\t\topacity: 1;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},5562:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row{align-content:baseline;flex-basis:0;flex-wrap:wrap}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar .ck-toolbar__items{flex-wrap:nowrap}.ck.ck-table-properties-form{width:320px}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row{align-self:flex-end;padding:0}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar{background:none;margin-top:var(--ck-spacing-standard)}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar .ck-toolbar__items>*{width:40px}","",{version:3,sources:["webpack://./../ckeditor5-table/theme/tableproperties.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/tableproperties.css"],names:[],mappings:"AAOE,mFAGC,sBAAuB,CADvB,YAAa,CADb,cAOD,CAHC,qHACC,gBACD,CCTH,6BACC,WAmBD,CAhBE,mFACC,mBAAoB,CACpB,SAYD,CAVC,kGACC,eAAgB,CAGhB,qCAKD,CAHC,uHACC,UACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-table-properties-form {\n\t& .ck-form__row {\n\t\t&.ck-table-properties-form__alignment-row {\n\t\t\tflex-wrap: wrap;\n\t\t\tflex-basis: 0;\n\t\t\talign-content: baseline;\n\n\t\t\t& .ck.ck-toolbar .ck-toolbar__items {\n\t\t\t\tflex-wrap: nowrap;\n\t\t\t}\n\t\t}\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-table-properties-form {\n\twidth: 320px;\n\n\t& .ck-form__row {\n\t\t&.ck-table-properties-form__alignment-row {\n\t\t\talign-self: flex-end;\n\t\t\tpadding: 0;\n\n\t\t\t& .ck.ck-toolbar {\n\t\t\t\tbackground: none;\n\n\t\t\t\t/* Compensate for missing input label that would push the margin (toolbar has no inputs). */\n\t\t\t\tmargin-top: var(--ck-spacing-standard);\n\n\t\t\t\t& .ck-toolbar__items > * {\n\t\t\t\t\twidth: 40px;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},8423:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,':root{--ck-table-selected-cell-background:rgba(158,207,250,.3)}.ck.ck-editor__editable .table table td.ck-editor__editable_selected,.ck.ck-editor__editable .table table th.ck-editor__editable_selected{box-shadow:unset;caret-color:transparent;outline:unset;position:relative}.ck.ck-editor__editable .table table td.ck-editor__editable_selected:after,.ck.ck-editor__editable .table table th.ck-editor__editable_selected:after{background-color:var(--ck-table-selected-cell-background);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.ck.ck-editor__editable .table table td.ck-editor__editable_selected ::selection,.ck.ck-editor__editable .table table td.ck-editor__editable_selected:focus,.ck.ck-editor__editable .table table th.ck-editor__editable_selected ::selection,.ck.ck-editor__editable .table table th.ck-editor__editable_selected:focus{background-color:transparent}.ck.ck-editor__editable .table table td.ck-editor__editable_selected .ck-widget,.ck.ck-editor__editable .table table th.ck-editor__editable_selected .ck-widget{outline:unset}.ck.ck-editor__editable .table table td.ck-editor__editable_selected .ck-widget>.ck-widget__selection-handle,.ck.ck-editor__editable .table table th.ck-editor__editable_selected .ck-widget>.ck-widget__selection-handle{display:none}',"",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-table/tableselection.css"],names:[],mappings:"AAKA,MACC,wDACD,CAGC,0IAKC,gBAAiB,CAFjB,uBAAwB,CACxB,aAAc,CAFd,iBAiCD,CA3BC,sJAGC,yDAA0D,CAK1D,QAAS,CAPT,UAAW,CAKX,MAAO,CAJP,mBAAoB,CAEpB,iBAAkB,CAGlB,OAAQ,CAFR,KAID,CAEA,wTAEC,4BACD,CAMA,gKACC,aAKD,CAHC,0NACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-table-selected-cell-background: hsla(208, 90%, 80%, .3);\n}\n\n.ck.ck-editor__editable .table table {\n\t& td.ck-editor__editable_selected,\n\t& th.ck-editor__editable_selected {\n\t\tposition: relative;\n\t\tcaret-color: transparent;\n\t\toutline: unset;\n\t\tbox-shadow: unset;\n\n\t\t/* https://github.com/ckeditor/ckeditor5/issues/6446 */\n\t\t&:after {\n\t\t\tcontent: '';\n\t\t\tpointer-events: none;\n\t\t\tbackground-color: var(--ck-table-selected-cell-background);\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tleft: 0;\n\t\t\tright: 0;\n\t\t\tbottom: 0;\n\t\t}\n\n\t\t& ::selection,\n\t\t&:focus {\n\t\t\tbackground-color: transparent;\n\t\t}\n\n\t\t/*\n\t\t * To reduce the amount of noise, all widgets in the table selection have no outline and no selection handle.\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/9491.\n\t\t */\n\t\t& .ck-widget {\n\t\t\toutline: unset;\n\n\t\t\t& > .ck-widget__selection-handle {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},1801:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-aria-live-announcer{left:-10000px;position:absolute;top:-10000px}.ck.ck-aria-live-region-list{list-style-type:none}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/arialiveannouncer/arialiveannouncer.css"],names:[],mappings:"AAKA,2BAEC,aAAc,CADd,iBAAkB,CAElB,YACD,CAEA,6BACC,oBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-aria-live-announcer {\n\tposition: absolute;\n\tleft: -10000px;\n\ttop: -10000px;\n}\n\n.ck.ck-aria-live-region-list {\n\tlist-style-type: none;\n}\n"],sourceRoot:""}]);const a=s},5727:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-autocomplete{position:relative}.ck.ck-autocomplete>.ck-search__results{position:absolute;z-index:var(--ck-z-panel)}.ck.ck-autocomplete>.ck-search__results.ck-search__results_n{bottom:100%}.ck.ck-autocomplete>.ck-search__results.ck-search__results_s{bottom:auto;top:100%}.ck.ck-autocomplete>.ck-search__results{border-radius:0}.ck-rounded-corners .ck.ck-autocomplete>.ck-search__results,.ck.ck-autocomplete>.ck-search__results.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-autocomplete>.ck-search__results{background:var(--ck-color-base-background);border:1px solid var(--ck-color-dropdown-panel-border);box-shadow:var(--ck-drop-shadow),0 0;max-height:200px;min-width:auto;overflow-y:auto}.ck.ck-autocomplete>.ck-search__results.ck-search__results_n{border-bottom-left-radius:0;border-bottom-right-radius:0;margin-bottom:-1px}.ck.ck-autocomplete>.ck-search__results.ck-search__results_s{border-top-left-radius:0;border-top-right-radius:0;margin-top:-1px}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/autocomplete/autocomplete.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/autocomplete/autocomplete.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,oBACC,iBAeD,CAbC,wCACC,iBAAkB,CAClB,yBAUD,CARC,6DACC,WACD,CAEA,6DAEC,WAAY,CADZ,QAED,CCVD,wCCEA,eDuBA,CAzBA,uHCMC,qCDmBD,CAzBA,wCAMC,0CAA2C,CAC3C,sDAAuD,CEPxD,oCAA8B,CFI7B,gBAAiB,CAIjB,cAAe,CAHf,eAoBD,CAfC,6DACC,2BAA4B,CAC5B,4BAA6B,CAG7B,kBACD,CAEA,6DACC,wBAAyB,CACzB,yBAA0B,CAG1B,eACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-autocomplete {\n\tposition: relative;\n\n\t& > .ck-search__results {\n\t\tposition: absolute;\n\t\tz-index: var(--ck-z-panel);\n\n\t\t&.ck-search__results_n {\n\t\t\tbottom: 100%;\n\t\t}\n\n\t\t&.ck-search__results_s {\n\t\t\ttop: 100%;\n\t\t\tbottom: auto;\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css";\n@import "@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css";\n\n.ck.ck-autocomplete {\n\t& > .ck-search__results {\n\t\t@mixin ck-rounded-corners;\n\t\t@mixin ck-drop-shadow;\n\n\t\tmax-height: 200px;\n\t\toverflow-y: auto;\n\t\tbackground: var(--ck-color-base-background);\n\t\tborder: 1px solid var(--ck-color-dropdown-panel-border);\n\t\tmin-width: auto;\n\n\t\t&.ck-search__results_n {\n\t\t\tborder-bottom-left-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\n\t\t\t/* Prevent duplicated borders between the input and the results pane. */\n\t\t\tmargin-bottom: -1px;\n\t\t}\n\n\t\t&.ck-search__results_s {\n\t\t\tborder-top-left-radius: 0;\n\t\t\tborder-top-right-radius: 0;\n\n\t\t\t/* Prevent duplicated borders between the input and the results pane. */\n\t\t\tmargin-top: -1px;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},9715:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-button,a.ck.ck-button{align-items:center;display:inline-flex;position:relative;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}[dir=ltr] .ck.ck-button,[dir=ltr] a.ck.ck-button{justify-content:left}[dir=rtl] .ck.ck-button,[dir=rtl] a.ck.ck-button{justify-content:right}.ck.ck-button .ck-button__label,a.ck.ck-button .ck-button__label{display:none}.ck.ck-button.ck-button_with-text .ck-button__label,a.ck.ck-button.ck-button_with-text .ck-button__label{display:inline-block}.ck.ck-button:not(.ck-button_with-text),a.ck.ck-button:not(.ck-button_with-text){justify-content:center}.ck.ck-button,a.ck.ck-button{background:var(--ck-color-button-default-background)}.ck.ck-button:not(.ck-disabled):hover,a.ck.ck-button:not(.ck-disabled):hover{background:var(--ck-color-button-default-hover-background)}.ck.ck-button:not(.ck-disabled):active,a.ck.ck-button:not(.ck-disabled):active{background:var(--ck-color-button-default-active-background)}.ck.ck-button.ck-disabled,a.ck.ck-button.ck-disabled{background:var(--ck-color-button-default-disabled-background)}.ck.ck-button,a.ck.ck-button{border-radius:0}.ck-rounded-corners .ck.ck-button,.ck-rounded-corners a.ck.ck-button,.ck.ck-button.ck-rounded-corners,a.ck.ck-button.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-button,a.ck.ck-button{-webkit-appearance:none;border:1px solid transparent;cursor:default;font-size:inherit;line-height:1;min-height:var(--ck-ui-component-min-height);min-width:var(--ck-ui-component-min-height);padding:var(--ck-spacing-tiny);text-align:center;transition:box-shadow .2s ease-in-out,border .2s ease-in-out;vertical-align:middle;white-space:nowrap}@media (prefers-reduced-motion:reduce){.ck.ck-button,a.ck.ck-button{transition:none}}.ck.ck-button:active,.ck.ck-button:focus,a.ck.ck-button:active,a.ck.ck-button:focus{border:var(--ck-focus-ring);box-shadow:var(--ck-focus-outer-shadow),0 0;outline:none}.ck.ck-button .ck-button__icon use,.ck.ck-button .ck-button__icon use *,a.ck.ck-button .ck-button__icon use,a.ck.ck-button .ck-button__icon use *{color:inherit}.ck.ck-button .ck-button__label,a.ck.ck-button .ck-button__label{color:inherit;cursor:inherit;font-size:inherit;font-weight:inherit;vertical-align:middle}[dir=ltr] .ck.ck-button .ck-button__label,[dir=ltr] a.ck.ck-button .ck-button__label{text-align:left}[dir=rtl] .ck.ck-button .ck-button__label,[dir=rtl] a.ck.ck-button .ck-button__label{text-align:right}.ck.ck-button .ck-button__keystroke,a.ck.ck-button .ck-button__keystroke{color:inherit}[dir=ltr] .ck.ck-button .ck-button__keystroke,[dir=ltr] a.ck.ck-button .ck-button__keystroke{margin-left:var(--ck-spacing-large)}[dir=rtl] .ck.ck-button .ck-button__keystroke,[dir=rtl] a.ck.ck-button .ck-button__keystroke{margin-right:var(--ck-spacing-large)}.ck.ck-button .ck-button__keystroke,a.ck.ck-button .ck-button__keystroke{opacity:.5}.ck.ck-button.ck-disabled:active,.ck.ck-button.ck-disabled:focus,a.ck.ck-button.ck-disabled:active,a.ck.ck-button.ck-disabled:focus{box-shadow:var(--ck-focus-disabled-outer-shadow),0 0}.ck.ck-button.ck-disabled .ck-button__icon,.ck.ck-button.ck-disabled .ck-button__label,a.ck.ck-button.ck-disabled .ck-button__icon,a.ck.ck-button.ck-disabled .ck-button__label{opacity:var(--ck-disabled-opacity)}.ck.ck-button.ck-disabled .ck-button__keystroke,a.ck.ck-button.ck-disabled .ck-button__keystroke{opacity:.3}.ck.ck-button.ck-button_with-text,a.ck.ck-button.ck-button_with-text{padding:var(--ck-spacing-tiny) var(--ck-spacing-standard)}[dir=ltr] .ck.ck-button.ck-button_with-text .ck-button__icon,[dir=ltr] a.ck.ck-button.ck-button_with-text .ck-button__icon{margin-left:calc(var(--ck-spacing-small)*-1);margin-right:var(--ck-spacing-small)}[dir=rtl] .ck.ck-button.ck-button_with-text .ck-button__icon,[dir=rtl] a.ck.ck-button.ck-button_with-text .ck-button__icon{margin-left:var(--ck-spacing-small);margin-right:calc(var(--ck-spacing-small)*-1)}.ck.ck-button.ck-button_with-keystroke .ck-button__label,a.ck.ck-button.ck-button_with-keystroke .ck-button__label{flex-grow:1}.ck.ck-button.ck-on,a.ck.ck-button.ck-on{background:var(--ck-color-button-on-background)}.ck.ck-button.ck-on:not(.ck-disabled):hover,a.ck.ck-button.ck-on:not(.ck-disabled):hover{background:var(--ck-color-button-on-hover-background)}.ck.ck-button.ck-on:not(.ck-disabled):active,a.ck.ck-button.ck-on:not(.ck-disabled):active{background:var(--ck-color-button-on-active-background)}.ck.ck-button.ck-on.ck-disabled,a.ck.ck-button.ck-on.ck-disabled{background:var(--ck-color-button-on-disabled-background)}.ck.ck-button.ck-on,a.ck.ck-button.ck-on{color:var(--ck-color-button-on-color)}.ck.ck-button.ck-button-save,a.ck.ck-button.ck-button-save{color:var(--ck-color-button-save)}.ck.ck-button.ck-button-cancel,a.ck.ck-button.ck-button-cancel{color:var(--ck-color-button-cancel)}.ck.ck-button-action,a.ck.ck-button-action{background:var(--ck-color-button-action-background)}.ck.ck-button-action:not(.ck-disabled):hover,a.ck.ck-button-action:not(.ck-disabled):hover{background:var(--ck-color-button-action-hover-background)}.ck.ck-button-action:not(.ck-disabled):active,a.ck.ck-button-action:not(.ck-disabled):active{background:var(--ck-color-button-action-active-background)}.ck.ck-button-action.ck-disabled,a.ck.ck-button-action.ck-disabled{background:var(--ck-color-button-action-disabled-background)}.ck.ck-button-action,a.ck.ck-button-action{color:var(--ck-color-button-action-text)}.ck.ck-button-bold,a.ck.ck-button-bold{font-weight:700}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/button/button.css","webpack://./../ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/button/button.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/mixins/_button.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_disabled.css"],names:[],mappings:"AAQA,6BAMC,kBAAmB,CADnB,mBAAoB,CADpB,iBAAkB,CCHlB,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBD0BD,CA9BA,iDASE,oBAqBF,CA9BA,iDAaE,qBAiBF,CAdC,iEACC,YACD,CAGC,yGACC,oBACD,CAID,iFACC,sBACD,CEzBD,6BCAC,oDD+ID,CC5IE,6EACC,0DACD,CAEA,+EACC,2DACD,CAID,qDACC,6DACD,CDfD,6BEDC,eFgJD,CA/IA,wIEGE,qCF4IF,CA/IA,6BA6BC,uBAAwB,CANxB,4BAA6B,CAjB7B,cAAe,CAcf,iBAAkB,CAHlB,aAAc,CAJd,4CAA6C,CAD7C,2CAA4C,CAJ5C,8BAA+B,CAC/B,iBAAkB,CAiBlB,4DAA8D,CAnB9D,qBAAsB,CAFtB,kBA0ID,CAhHC,uCA/BD,6BAgCE,eA+GF,CA9GC,CAEA,oFGpCA,2BAA2B,CCF3B,2CAA8B,CDC9B,YHyCA,CAIC,kJAEC,aACD,CAGD,iEAIC,aAAc,CACd,cAAe,CAHf,iBAAkB,CAClB,mBAAoB,CAMpB,qBASD,CAlBA,qFAYE,eAMF,CAlBA,qFAgBE,gBAEF,CAEA,yEACC,aAWD,CAZA,6FAIE,mCAQF,CAZA,6FAQE,oCAIF,CAZA,yEAWC,UACD,CAIC,oIIxFD,oDJ4FC,CAOA,gLKnGD,kCLqGC,CAEA,iGACC,UACD,CAGD,qEACC,yDAcD,CAXC,2HAEE,4CAA+C,CAC/C,oCAOF,CAVA,2HAQE,mCAAoC,CADpC,6CAGF,CAKA,mHACC,WACD,CAID,yCClIA,+CDsIA,CCnIC,yFACC,qDACD,CAEA,2FACC,sDACD,CAID,iEACC,wDACD,CDmHA,yCAGC,qCACD,CAEA,2DACC,iCACD,CAEA,+DACC,mCACD,CAID,2CClJC,mDDuJD,CCpJE,2FACC,yDACD,CAEA,6FACC,0DACD,CAID,mEACC,4DACD,CDmID,2CAIC,wCACD,CAEA,uCAEC,eACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../mixins/_unselectable.css";\n@import "../../mixins/_dir.css";\n\n.ck.ck-button,\na.ck.ck-button {\n\t@mixin ck-unselectable;\n\n\tposition: relative;\n\tdisplay: inline-flex;\n\talign-items: center;\n\n\t@mixin ck-dir ltr {\n\t\tjustify-content: left;\n\t}\n\n\t@mixin ck-dir rtl {\n\t\tjustify-content: right;\n\t}\n\n\t& .ck-button__label {\n\t\tdisplay: none;\n\t}\n\n\t&.ck-button_with-text {\n\t\t& .ck-button__label {\n\t\t\tdisplay: inline-block;\n\t\t}\n\t}\n\n\t/* Center the icon horizontally in a button without text. */\n\t&:not(.ck-button_with-text) {\n\t\tjustify-content: center;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Makes element unselectable.\n */\n@define-mixin ck-unselectable {\n\t-moz-user-select: none;\n\t-webkit-user-select: none;\n\t-ms-user-select: none;\n\tuser-select: none\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_focus.css";\n@import "../../../mixins/_shadow.css";\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_rounded.css";\n@import "../../mixins/_button.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-button,\na.ck.ck-button {\n\t@mixin ck-button-colors --ck-color-button-default;\n\t@mixin ck-rounded-corners;\n\n\twhite-space: nowrap;\n\tcursor: default;\n\tvertical-align: middle;\n\tpadding: var(--ck-spacing-tiny);\n\ttext-align: center;\n\n\t/* A very important piece of styling. Go to variable declaration to learn more. */\n\tmin-width: var(--ck-ui-component-min-height);\n\tmin-height: var(--ck-ui-component-min-height);\n\n\t/* Normalize the height of the line. Removing this will break consistent height\n\tamong text and text-less buttons (with icons). */\n\tline-height: 1;\n\n\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\tfont-size: inherit;\n\n\t/* Avoid flickering when the foucs border shows up. */\n\tborder: 1px solid transparent;\n\n\t/* Apply some smooth transition to the box-shadow and border. */\n\ttransition: box-shadow .2s ease-in-out, border .2s ease-in-out;\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/189 */\n\t-webkit-appearance: none;\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\ttransition: none;\n\t}\n\n\t&:active,\n\t&:focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-focus-outer-shadow);\n\t}\n\n\t/* Allow icon coloring using the text "color" property. */\n\t& .ck-button__icon {\n\t\t& use,\n\t\t& use * {\n\t\t\tcolor: inherit;\n\t\t}\n\t}\n\n\t& .ck-button__label {\n\t\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\t\tfont-size: inherit;\n\t\tfont-weight: inherit;\n\t\tcolor: inherit;\n\t\tcursor: inherit;\n\n\t\t/* Must be consistent with .ck-icon\'s vertical align. Otherwise, buttons with and\n\t\twithout labels (but with icons) have different sizes in Chrome */\n\t\tvertical-align: middle;\n\n\t\t@mixin ck-dir ltr {\n\t\t\ttext-align: left;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\ttext-align: right;\n\t\t}\n\t}\n\n\t& .ck-button__keystroke {\n\t\tcolor: inherit;\n\n\t\t@mixin ck-dir ltr {\n\t\t\tmargin-left: var(--ck-spacing-large);\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\tmargin-right: var(--ck-spacing-large);\n\t\t}\n\n\t\topacity: .5;\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/70 */\n\t&.ck-disabled {\n\t\t&:active,\n\t\t&:focus {\n\t\t\t/* The disabled button should have a slightly less visible shadow when focused. */\n\t\t\t@mixin ck-box-shadow var(--ck-focus-disabled-outer-shadow);\n\t\t}\n\n\t\t& .ck-button__icon {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/98 */\n\t\t& .ck-button__label {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t& .ck-button__keystroke {\n\t\t\topacity: .3;\n\t\t}\n\t}\n\n\t&.ck-button_with-text {\n\t\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-standard);\n\n\t\t/* stylelint-disable-next-line no-descending-specificity */\n\t\t& .ck-button__icon {\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: calc(-1 * var(--ck-spacing-small));\n\t\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-right: calc(-1 * var(--ck-spacing-small));\n\t\t\t\tmargin-left: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\t}\n\n\t&.ck-button_with-keystroke {\n\t\t/* stylelint-disable-next-line no-descending-specificity */\n\t\t& .ck-button__label {\n\t\t\tflex-grow: 1;\n\t\t}\n\t}\n\n\t/* A style of the button which is currently on, e.g. its feature is active. */\n\t&.ck-on {\n\t\t@mixin ck-button-colors --ck-color-button-on;\n\n\t\tcolor: var(--ck-color-button-on-color);\n\t}\n\n\t&.ck-button-save {\n\t\tcolor: var(--ck-color-button-save);\n\t}\n\n\t&.ck-button-cancel {\n\t\tcolor: var(--ck-color-button-cancel);\n\t}\n}\n\n/* A style of the button which handles the primary action. */\n.ck.ck-button-action,\na.ck.ck-button-action {\n\t@mixin ck-button-colors --ck-color-button-action;\n\n\tcolor: var(--ck-color-button-action-text);\n}\n\n.ck.ck-button-bold,\na.ck.ck-button-bold {\n\tfont-weight: bold;\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements a button of given background color.\n *\n * @param {String} $background - Background color of the button.\n * @param {String} $border - Border color of the button.\n */\n@define-mixin ck-button-colors $prefix {\n\tbackground: var($(prefix)-background);\n\n\t&:not(.ck-disabled) {\n\t\t&:hover {\n\t\t\tbackground: var($(prefix)-hover-background);\n\t\t}\n\n\t\t&:active {\n\t\t\tbackground: var($(prefix)-active-background);\n\t\t}\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/98 */\n\t&.ck-disabled {\n\t\tbackground: var($(prefix)-disabled-background);\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A visual style of focused element's border.\n */\n@define-mixin ck-focus-ring {\n\t/* Disable native outline. */\n\toutline: none;\n\tborder: var(--ck-focus-ring)\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A class which indicates that an element holding it is disabled.\n */\n@define-mixin ck-disabled {\n\topacity: var(--ck-disabled-opacity);\n}\n"],sourceRoot:""}]);const a=s},4391:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-button.ck-switchbutton .ck-button__toggle,.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{display:block}:root{--ck-switch-button-toggle-width:2.6153846154em;--ck-switch-button-toggle-inner-size:calc(1.07692em + 1px);--ck-switch-button-translation:calc(var(--ck-switch-button-toggle-width) - var(--ck-switch-button-toggle-inner-size) - 2px);--ck-switch-button-inner-hover-shadow:0 0 0 5px var(--ck-color-switch-button-inner-shadow)}.ck.ck-button.ck-switchbutton,.ck.ck-button.ck-switchbutton.ck-on:active,.ck.ck-button.ck-switchbutton.ck-on:focus,.ck.ck-button.ck-switchbutton.ck-on:hover,.ck.ck-button.ck-switchbutton:active,.ck.ck-button.ck-switchbutton:focus,.ck.ck-button.ck-switchbutton:hover{background:transparent;color:inherit}[dir=ltr] .ck.ck-button.ck-switchbutton .ck-button__label{margin-right:calc(var(--ck-spacing-large)*2)}[dir=rtl] .ck.ck-button.ck-switchbutton .ck-button__label{margin-left:calc(var(--ck-spacing-large)*2)}.ck.ck-button.ck-switchbutton .ck-button__toggle{border-radius:0}.ck-rounded-corners .ck.ck-button.ck-switchbutton .ck-button__toggle,.ck.ck-button.ck-switchbutton .ck-button__toggle.ck-rounded-corners{border-radius:var(--ck-border-radius)}[dir=ltr] .ck.ck-button.ck-switchbutton .ck-button__toggle{margin-left:auto}[dir=rtl] .ck.ck-button.ck-switchbutton .ck-button__toggle{margin-right:auto}.ck.ck-button.ck-switchbutton .ck-button__toggle{background:var(--ck-color-switch-button-off-background);border:1px solid transparent;transition:background .4s ease,box-shadow .2s ease-in-out,outline .2s ease-in-out;width:var(--ck-switch-button-toggle-width)}.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{border-radius:0}.ck-rounded-corners .ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner,.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner.ck-rounded-corners{border-radius:var(--ck-border-radius);border-radius:calc(var(--ck-border-radius)*.5)}.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{background:var(--ck-color-switch-button-inner-background);height:var(--ck-switch-button-toggle-inner-size);transition:all .3s ease;width:var(--ck-switch-button-toggle-inner-size)}@media (prefers-reduced-motion:reduce){.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{transition:none}}.ck.ck-button.ck-switchbutton .ck-button__toggle:hover{background:var(--ck-color-switch-button-off-hover-background)}.ck.ck-button.ck-switchbutton .ck-button__toggle:hover .ck-button__toggle__inner{box-shadow:var(--ck-switch-button-inner-hover-shadow)}.ck.ck-button.ck-switchbutton.ck-disabled .ck-button__toggle{opacity:var(--ck-disabled-opacity)}.ck.ck-button.ck-switchbutton:focus{border-color:transparent;box-shadow:none;outline:none}.ck.ck-button.ck-switchbutton:focus .ck-button__toggle{box-shadow:0 0 0 1px var(--ck-color-base-background),0 0 0 5px var(--ck-color-focus-outer-shadow);outline:var(--ck-focus-ring);outline-offset:1px}.ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle{background:var(--ck-color-switch-button-on-background)}.ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle:hover{background:var(--ck-color-switch-button-on-hover-background)}[dir=ltr] .ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle .ck-button__toggle__inner{transform:translateX(var( --ck-switch-button-translation ))}[dir=rtl] .ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle .ck-button__toggle__inner{transform:translateX(calc(var( --ck-switch-button-translation )*-1))}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/button/switchbutton.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/button/switchbutton.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_disabled.css"],names:[],mappings:"AASE,4HACC,aACD,CCCF,MAEC,8CAA+C,CAE/C,0DAAgE,CAChE,2HAIC,CACD,0FACD,CAOC,0QAEC,sBAAuB,CADvB,aAED,CAEA,0DAGE,4CAOF,CAVA,0DAQE,2CAEF,CAEA,iDCpCA,eDgFA,CA5CA,yIChCC,qCD4ED,CA5CA,2DAKE,gBAuCF,CA5CA,2DAUE,iBAkCF,CA5CA,iDAkBC,uDAAwD,CAFxD,4BAA6B,CAD7B,iFAAsF,CAEtF,0CA2BD,CAxBC,2ECxDD,eDuEC,CAfA,6LCpDA,qCAAsC,CDsDpC,8CAaF,CAfA,2EAOC,yDAA0D,CAD1D,gDAAiD,CAIjD,uBAA0B,CAL1B,+CAUD,CAHC,uCAZD,2EAaE,eAEF,CADC,CAGD,uDACC,6DAKD,CAHC,iFACC,qDACD,CAIF,6DEpFA,kCFsFA,CAGA,oCACC,wBAAyB,CAEzB,eAAgB,CADhB,YAQD,CALC,uDACC,iGAAmG,CAEnG,4BAA6B,CAD7B,kBAED,CAKA,uDACC,sDAkBD,CAhBC,6DACC,4DACD,CAEA,2FAKE,2DAMF,CAXA,2FASE,oEAEF",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-button.ck-switchbutton {\n\t& .ck-button__toggle {\n\t\tdisplay: block;\n\n\t\t& .ck-button__toggle__inner {\n\t\t\tdisplay: block;\n\t\t}\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_disabled.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n/* Note: To avoid rendering issues (aliasing) but to preserve the responsive nature\nof the component, floating–point numbers have been used which, for the default font size\n(see: --ck-font-size-base), will generate simple integers. */\n:root {\n\t/* 34px at 13px font-size */\n\t--ck-switch-button-toggle-width: 2.6153846154em;\n\t/* 14px at 13px font-size */\n\t--ck-switch-button-toggle-inner-size: calc(1.0769230769em + 1px);\n\t--ck-switch-button-translation: calc(\n\t\tvar(--ck-switch-button-toggle-width) -\n\t\tvar(--ck-switch-button-toggle-inner-size) -\n\t\t2px /* Border */\n\t);\n\t--ck-switch-button-inner-hover-shadow: 0 0 0 5px var(--ck-color-switch-button-inner-shadow);\n}\n\n.ck.ck-button.ck-switchbutton {\n\t/* Unlike a regular button, the switch button text color and background should never change.\n\t * Changing toggle switch (background, outline) is enough to carry the information about the\n\t * state of the entire component (https://github.com/ckeditor/ckeditor5/issues/12519)\n\t */\n\t&, &:hover, &:focus, &:active, &.ck-on:hover, &.ck-on:focus, &.ck-on:active {\n\t\tcolor: inherit;\n\t\tbackground: transparent;\n\t}\n\n\t& .ck-button__label {\n\t\t@mixin ck-dir ltr {\n\t\t\t/* Separate the label from the switch */\n\t\t\tmargin-right: calc(2 * var(--ck-spacing-large));\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t/* Separate the label from the switch */\n\t\t\tmargin-left: calc(2 * var(--ck-spacing-large));\n\t\t}\n\t}\n\n\t& .ck-button__toggle {\n\t\t@mixin ck-rounded-corners;\n\n\t\t@mixin ck-dir ltr {\n\t\t\t/* Make sure the toggle is always to the right as far as possible. */\n\t\t\tmargin-left: auto;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t/* Make sure the toggle is always to the left as far as possible. */\n\t\t\tmargin-right: auto;\n\t\t}\n\n\t\t/* Apply some smooth transition to the box-shadow and border. */\n\t\t/* Gently animate the background color of the toggle switch */\n\t\ttransition: background 400ms ease, box-shadow .2s ease-in-out, outline .2s ease-in-out;\n\t\tborder: 1px solid transparent;\n\t\twidth: var(--ck-switch-button-toggle-width);\n\t\tbackground: var(--ck-color-switch-button-off-background);\n\n\t\t& .ck-button__toggle__inner {\n\t\t\t@mixin ck-rounded-corners {\n\t\t\t\tborder-radius: calc(.5 * var(--ck-border-radius));\n\t\t\t}\n\n\t\t\twidth: var(--ck-switch-button-toggle-inner-size);\n\t\t\theight: var(--ck-switch-button-toggle-inner-size);\n\t\t\tbackground: var(--ck-color-switch-button-inner-background);\n\n\t\t\t/* Gently animate the inner part of the toggle switch */\n\t\t\ttransition: all 300ms ease;\n\n\t\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\t\ttransition: none;\n\t\t\t}\n\t\t}\n\n\t\t&:hover {\n\t\t\tbackground: var(--ck-color-switch-button-off-hover-background);\n\n\t\t\t& .ck-button__toggle__inner {\n\t\t\t\tbox-shadow: var(--ck-switch-button-inner-hover-shadow);\n\t\t\t}\n\t\t}\n\t}\n\n\t&.ck-disabled .ck-button__toggle {\n\t\t@mixin ck-disabled;\n\t}\n\n\t/* Overriding default .ck-button:focus styles + an outline around the toogle */\n\t&:focus {\n\t\tborder-color: transparent;\n\t\toutline: none;\n\t\tbox-shadow: none;\n\n\t\t& .ck-button__toggle {\n\t\t\tbox-shadow: 0 0 0 1px var(--ck-color-base-background), 0 0 0 5px var(--ck-color-focus-outer-shadow);\n\t\t\toutline-offset: 1px;\n\t\t\toutline: var(--ck-focus-ring);\n\t\t}\n\t}\n\n\t/* stylelint-disable-next-line no-descending-specificity */\n\t&.ck-on {\n\t\t& .ck-button__toggle {\n\t\t\tbackground: var(--ck-color-switch-button-on-background);\n\n\t\t\t&:hover {\n\t\t\t\tbackground: var(--ck-color-switch-button-on-hover-background);\n\t\t\t}\n\n\t\t\t& .ck-button__toggle__inner {\n\t\t\t\t/*\n\t\t\t\t* Move the toggle switch to the right. It will be animated.\n\t\t\t\t*/\n\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\ttransform: translateX( var( --ck-switch-button-translation ) );\n\t\t\t\t}\n\n\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\ttransform: translateX( calc( -1 * var( --ck-switch-button-translation ) ) );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A class which indicates that an element holding it is disabled.\n */\n@define-mixin ck-disabled {\n\topacity: var(--ck-disabled-opacity);\n}\n"],sourceRoot:""}]);const a=s},25:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-collapsible.ck-collapsible_collapsed>.ck-collapsible__children{display:none}:root{--ck-collapsible-arrow-size:calc(var(--ck-icon-size)*0.5)}.ck.ck-collapsible>.ck.ck-button{border-radius:0;color:inherit;font-weight:700;padding:var(--ck-list-button-padding);width:100%}.ck.ck-collapsible>.ck.ck-button:focus{background:transparent}.ck.ck-collapsible>.ck.ck-button:active,.ck.ck-collapsible>.ck.ck-button:hover:not(:focus),.ck.ck-collapsible>.ck.ck-button:not(:focus){background:transparent;border-color:transparent;box-shadow:none}.ck.ck-collapsible>.ck.ck-button>.ck-icon{margin-right:var(--ck-spacing-medium);width:var(--ck-collapsible-arrow-size)}.ck.ck-collapsible>.ck-collapsible__children{padding:var(--ck-spacing-medium) var(--ck-spacing-large) var(--ck-spacing-large)}.ck.ck-collapsible.ck-collapsible_collapsed>.ck.ck-button .ck-icon{transform:rotate(-90deg)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/collapsible/collapsible.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/collapsible/collapsible.css"],names:[],mappings:"AAMC,sEACC,YACD,CCHD,MACC,yDACD,CAGC,iCAIC,eAAgB,CAChB,aAAc,CAHd,eAAiB,CACjB,qCAAsC,CAFtC,UAoBD,CAdC,uCACC,sBACD,CAEA,wIACC,sBAAuB,CACvB,wBAAyB,CACzB,eACD,CAEA,0CACC,qCAAsC,CACtC,sCACD,CAGD,6CACC,gFACD,CAGC,mEACC,wBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-collapsible.ck-collapsible_collapsed {\n\t& > .ck-collapsible__children {\n\t\tdisplay: none;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-collapsible-arrow-size: calc(0.5 * var(--ck-icon-size));\n}\n\n.ck.ck-collapsible {\n\t& > .ck.ck-button {\n\t\twidth: 100%;\n\t\tfont-weight: bold;\n\t\tpadding: var(--ck-list-button-padding);\n\t\tborder-radius: 0;\n\t\tcolor: inherit;\n\n\t\t&:focus {\n\t\t\tbackground: transparent;\n\t\t}\n\n\t\t&:active, &:not(:focus), &:hover:not(:focus) {\n\t\t\tbackground: transparent;\n\t\t\tborder-color: transparent;\n\t\t\tbox-shadow: none;\n\t\t}\n\n\t\t& > .ck-icon {\n\t\t\tmargin-right: var(--ck-spacing-medium);\n\t\t\twidth: var(--ck-collapsible-arrow-size);\n\t\t}\n\t}\n\n\t& > .ck-collapsible__children {\n\t\tpadding: var(--ck-spacing-medium) var(--ck-spacing-large) var(--ck-spacing-large);\n\t}\n\n\t&.ck-collapsible_collapsed {\n\t\t& > .ck.ck-button .ck-icon {\n\t\t\ttransform: rotate(-90deg);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},7317:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-color-grid{display:grid}:root{--ck-color-grid-tile-size:24px;--ck-color-color-grid-check-icon:#166fd4}.ck.ck-color-grid{grid-gap:5px;padding:8px}.ck.ck-color-grid__tile{transition:box-shadow .2s ease}@media (forced-colors:none){.ck.ck-color-grid__tile{border:0;height:var(--ck-color-grid-tile-size);min-height:var(--ck-color-grid-tile-size);min-width:var(--ck-color-grid-tile-size);padding:0;width:var(--ck-color-grid-tile-size)}.ck.ck-color-grid__tile.ck-on,.ck.ck-color-grid__tile:focus:not(.ck-disabled),.ck.ck-color-grid__tile:hover:not(.ck-disabled){border:0}.ck.ck-color-grid__tile.ck-color-selector__color-tile_bordered{box-shadow:0 0 0 1px var(--ck-color-base-border)}.ck.ck-color-grid__tile.ck-on{box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-base-text)}.ck.ck-color-grid__tile:focus:not(.ck-disabled),.ck.ck-color-grid__tile:hover:not(.ck-disabled){box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-focus-border)}}@media (forced-colors:active){.ck.ck-color-grid__tile{height:unset;min-height:unset;min-width:unset;padding:0 var(--ck-spacing-small);width:unset}.ck.ck-color-grid__tile .ck-button__label{display:inline-block}}@media (prefers-reduced-motion:reduce){.ck.ck-color-grid__tile{transition:none}}.ck.ck-color-grid__tile.ck-disabled{cursor:unset;transition:unset}.ck.ck-color-grid__tile .ck.ck-icon{color:var(--ck-color-color-grid-check-icon);display:none}.ck.ck-color-grid__tile.ck-on .ck.ck-icon{display:block}.ck.ck-color-grid__label{padding:0 var(--ck-spacing-standard)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/colorgrid/colorgrid.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/colorgrid/colorgrid.css","webpack://./../ckeditor5-ui/theme/mixins/_mediacolors.css"],names:[],mappings:"AAKA,kBACC,YACD,CCCA,MACC,8BAA+B,CAK/B,wCACD,CAEA,kBACC,YAAa,CACb,WACD,CAEA,wBACC,8BAkED,CC3EC,4BACC,wBDgBA,QAAS,CAJT,qCAAsC,CAEtC,yCAA0C,CAD1C,wCAAyC,CAEzC,SAAU,CAJV,oCCTA,CDgBA,8HAIC,QACD,CAEA,+DACC,gDACD,CAEA,8BACC,8FACD,CAEA,gGAEC,iGACD,CCjCD,CAZA,8BACC,wBDqDA,YAAa,CAEb,gBAAiB,CADjB,eAAgB,CAEhB,iCAAkC,CAJlC,WClDA,CDwDA,0CACC,oBACD,CCzDD,CD4DA,uCAhDD,wBAiDE,eAkBF,CAjBC,CAEA,oCACC,YAAa,CACb,gBACD,CAEA,oCAEC,2CAA4C,CAD5C,YAED,CAGC,0CACC,aACD,CAIF,yBACC,oCACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-color-grid {\n\tdisplay: grid;\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_mediacolors.css";\n\n:root {\n\t--ck-color-grid-tile-size: 24px;\n\n\t/* Not using global colors here because these may change but some colors in a pallette\n\t * require special treatment. For instance, this ensures no matter what the UI text color is,\n\t * the check icon will look good on the black color tile. */\n\t--ck-color-color-grid-check-icon: hsl(212, 81%, 46%);\n}\n\n.ck.ck-color-grid {\n\tgrid-gap: 5px;\n\tpadding: 8px;\n}\n\n.ck.ck-color-grid__tile {\n\ttransition: .2s ease box-shadow;\n\n\t@mixin ck-media-default-colors {\n\t\twidth: var(--ck-color-grid-tile-size);\n\t\theight: var(--ck-color-grid-tile-size);\n\t\tmin-width: var(--ck-color-grid-tile-size);\n\t\tmin-height: var(--ck-color-grid-tile-size);\n\t\tpadding: 0;\n\t\tborder: 0;\n\n\t\t&.ck-on,\n\t\t&:focus:not( .ck-disabled ),\n\t\t&:hover:not( .ck-disabled ) {\n\t\t\t/* Disable the default .ck-button\'s border ring. */\n\t\t\tborder: 0;\n\t\t}\n\n\t\t&.ck-color-selector__color-tile_bordered {\n\t\t\tbox-shadow: 0 0 0 1px var(--ck-color-base-border);\n\t\t}\n\n\t\t&.ck-on {\n\t\t\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-base-text);\n\t\t}\n\n\t\t&:focus:not( .ck-disabled ),\n\t\t&:hover:not( .ck-disabled ) {\n\t\t\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-focus-border);\n\t\t}\n\t}\n\n\t/*\n\t * In high contrast mode, the colors are replaced with text labels.\n\t * See https://github.com/ckeditor/ckeditor5/issues/14907.\n\t */\n\t@mixin ck-media-forced-colors {\n\t\twidth: unset;\n\t\theight: unset;\n\t\tmin-width: unset;\n\t\tmin-height: unset;\n\t\tpadding: 0 var(--ck-spacing-small);\n\n\t\t& .ck-button__label {\n\t\t\tdisplay: inline-block;\n\t\t}\n\t}\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\ttransition: none;\n\t}\n\n\t&.ck-disabled {\n\t\tcursor: unset;\n\t\ttransition: unset;\n\t}\n\n\t& .ck.ck-icon {\n\t\tdisplay: none;\n\t\tcolor: var(--ck-color-color-grid-check-icon);\n\t}\n\n\t&.ck-on {\n\t\t& .ck.ck-icon {\n\t\t\tdisplay: block;\n\t\t}\n\t}\n}\n\n.ck.ck-color-grid__label {\n\tpadding: 0 var(--ck-spacing-standard);\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-forced-colors {\n\t@media (forced-colors: active) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n\n@define-mixin ck-media-default-colors {\n\t@media (forced-colors: none) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},1905:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".color-picker-hex-input{width:max-content}.color-picker-hex-input .ck.ck-input{min-width:unset}.ck.ck-color-picker__row{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between;margin:var(--ck-spacing-large) 0 0;width:unset}.ck.ck-color-picker__row .ck.ck-labeled-field-view{padding-top:unset}.ck.ck-color-picker__row .ck.ck-input-text{width:unset}.ck.ck-color-picker__row .ck-color-picker__hash-view{padding-right:var(--ck-spacing-medium);padding-top:var(--ck-spacing-tiny)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/colorpicker/colorpicker.css"],names:[],mappings:"AAKA,wBACC,iBAKD,CAHC,qCACC,eACD,CAGD,yBACC,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CACjB,6BAA8B,CAC9B,kCAAmC,CACnC,WAcD,CAZC,mDACC,iBACD,CAEA,2CACC,WACD,CAEA,qDAEC,sCAAuC,CADvC,kCAED",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.color-picker-hex-input {\n\twidth: max-content;\n\n\t& .ck.ck-input {\n\t\tmin-width: unset;\n\t}\n}\n\n.ck.ck-color-picker__row {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\tjustify-content: space-between;\n\tmargin: var(--ck-spacing-large) 0 0;\n\twidth: unset;\n\n\t& .ck.ck-labeled-field-view {\n\t\tpadding-top: unset;\n\t}\n\n\t& .ck.ck-input-text {\n\t\twidth: unset;\n\t}\n\n\t& .ck-color-picker__hash-view {\n\t\tpadding-top: var(--ck-spacing-tiny);\n\t\tpadding-right: var(--ck-spacing-medium);\n\t}\n}\n"],sourceRoot:""}]);const a=s},6309:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker,.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__remove-color{align-items:center;display:flex}[dir=rtl] .ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker,[dir=rtl] .ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__remove-color{justify-content:flex-start}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-selector_action-bar{display:flex;flex-direction:row;justify-content:space-around}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-selector_action-bar .ck-button-cancel,.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-selector_action-bar .ck-button-save{flex:1}.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker,.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__remove-color{width:100%}.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker{border-bottom-left-radius:0;border-bottom-right-radius:0;padding:calc(var(--ck-spacing-standard)/2) var(--ck-spacing-standard)}.ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker:not(:focus){border-top:1px solid var(--ck-color-base-border)}[dir=ltr] .ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker .ck.ck-icon{margin-right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-color-selector .ck-color-grids-fragment .ck-button.ck-color-selector__color-picker .ck.ck-icon{margin-left:var(--ck-spacing-standard)}.ck.ck-color-selector .ck-color-grids-fragment label.ck.ck-color-grid__label{font-weight:unset}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker{padding:8px}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker .hex-color-picker{height:100px;min-width:180px}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker .hex-color-picker::part(saturation){border-radius:var(--ck-border-radius) var(--ck-border-radius) 0 0}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker .hex-color-picker::part(hue){border-radius:0 0 var(--ck-border-radius) var(--ck-border-radius)}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker .hex-color-picker::part(hue-pointer),.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-picker .hex-color-picker::part(saturation-pointer){height:15px;width:15px}.ck.ck-color-selector .ck-color-picker-fragment .ck.ck-color-selector_action-bar{padding:0 8px 8px}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/colorselector/colorselector.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/colorselector/colorselector.css"],names:[],mappings:"AAUE,oLAGC,kBAAmB,CADnB,YAMD,CARA,wMAME,0BAEF,CAKA,iFACC,YAAa,CACb,kBAAmB,CACnB,4BAMD,CAJC,oMAEC,MACD,CCrBD,oLAEC,UACD,CAEA,0FAEC,2BAA4B,CAC5B,4BAA6B,CAF7B,qEAiBD,CAbC,sGACC,gDACD,CAEA,gHAEE,uCAMF,CARA,gHAME,sCAEF,CAGD,6EACC,iBACD,CAKA,oEACC,WAoBD,CAlBC,sFACC,YAAa,CACb,eAeD,CAbC,wGACC,iEACD,CAEA,iGACC,iEACD,CAEA,yNAGC,WAAY,CADZ,UAED,CAIF,iFACC,iBACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-color-selector {\n\t/* View fragment with color grids. */\n\t& .ck-color-grids-fragment {\n\t\t& .ck-button.ck-color-selector__remove-color,\n\t\t& .ck-button.ck-color-selector__color-picker {\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tjustify-content: flex-start;\n\t\t\t}\n\t\t}\n\t}\n\n\t/* View fragment with a color picker. */\n\t& .ck-color-picker-fragment {\n\t\t& .ck.ck-color-selector_action-bar {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\tjustify-content: space-around;\n\n\t\t\t& .ck-button-save,\n\t\t\t& .ck-button-cancel {\n\t\t\t\tflex: 1\n\t\t\t}\n\t\t}\n\t}\n}\n','/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-color-selector {\n\t/* View fragment with color grids. */\n\t& .ck-color-grids-fragment {\n\t\t& .ck-button.ck-color-selector__remove-color,\n\t\t& .ck-button.ck-color-selector__color-picker {\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t& .ck-button.ck-color-selector__color-picker {\n\t\t\tpadding: calc(var(--ck-spacing-standard) / 2) var(--ck-spacing-standard);\n\t\t\tborder-bottom-left-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\n\t\t\t&:not(:focus) {\n\t\t\t\tborder-top: 1px solid var(--ck-color-base-border);\n\t\t\t}\n\n\t\t\t& .ck.ck-icon {\n\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\tmargin-right: var(--ck-spacing-standard);\n\t\t\t\t}\n\n\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t& label.ck.ck-color-grid__label {\n\t\t\tfont-weight: unset;\n\t\t}\n\t}\n\n\t/* View fragment with a color picker. */\n\t& .ck-color-picker-fragment {\n\t\t& .ck.ck-color-picker {\n\t\t\tpadding: 8px;\n\n\t\t\t& .hex-color-picker {\n\t\t\t\theight: 100px;\n\t\t\t\tmin-width: 180px;\n\n\t\t\t\t&::part(saturation) {\n\t\t\t\t\tborder-radius: var(--ck-border-radius) var(--ck-border-radius) 0 0;\n\t\t\t\t}\n\n\t\t\t\t&::part(hue) {\n\t\t\t\t\tborder-radius: 0 0 var(--ck-border-radius) var(--ck-border-radius);\n\t\t\t\t}\n\n\t\t\t\t&::part(saturation-pointer),\n\t\t\t\t&::part(hue-pointer) {\n\t\t\t\t\twidth: 15px;\n\t\t\t\t\theight: 15px;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t& .ck.ck-color-selector_action-bar {\n\t\t\tpadding: 0 8px 8px;\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},9819:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-dialog-overlay{bottom:0;left:0;overscroll-behavior:none;position:fixed;right:0;top:0;user-select:none}.ck.ck-dialog-overlay.ck-dialog-overlay__transparent{animation:none;background:none;pointer-events:none}.ck.ck-dialog{overscroll-behavior:none;position:absolute;width:fit-content}.ck.ck-dialog .ck.ck-form__header{flex-shrink:0}.ck.ck-dialog .ck.ck-form__header .ck-form__header__label{cursor:grab}.ck.ck-dialog-overlay.ck-dialog-overlay__transparent .ck.ck-dialog{pointer-events:all}:root{--ck-dialog-overlay-background-color:rgba(0,0,0,.5);--ck-dialog-drop-shadow:0px 0px 6px 2px rgba(0,0,0,.15);--ck-dialog-max-width:100vw;--ck-dialog-max-height:90vh;--ck-color-dialog-background:var(--ck-color-base-background);--ck-color-dialog-form-header-border:var(--ck-color-base-border)}.ck.ck-dialog-overlay{animation:ck-dialog-fade-in .3s;background:var(--ck-dialog-overlay-background-color);z-index:var(--ck-z-dialog)}.ck.ck-dialog{border-radius:0}.ck-rounded-corners .ck.ck-dialog,.ck.ck-dialog.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-dialog{box-shadow:var(--ck-drop-shadow),0 0;--ck-drop-shadow:var(--ck-dialog-drop-shadow);background:var(--ck-color-dialog-background);border:1px solid var(--ck-color-base-border);max-height:var(--ck-dialog-max-height);max-width:var(--ck-dialog-max-width)}.ck.ck-dialog .ck.ck-form__header{border-bottom:1px solid var(--ck-color-dialog-form-header-border)}@keyframes ck-dialog-fade-in{0%{background:transparent}to{background:var(--ck-dialog-overlay-background-color)}}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/dialog/dialog.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/dialog/dialog.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,sBAKC,QAAS,CACT,MAAO,CAJP,wBAAyB,CAEzB,cAAe,CAGf,OAAQ,CACR,KAAM,CAPN,gBAcD,CALC,qDAEC,cAAe,CACf,eAAgB,CAFhB,mBAGD,CAGD,cACC,wBAAyB,CAEzB,iBAAkB,CADlB,iBAcD,CAXC,kCACC,aAKD,CAHC,0DACC,WACD,CAVF,mEAcE,kBAEF,CC7BA,MACC,mDAA2D,CAC3D,uDAA8D,CAC9D,2BAA4B,CAC5B,2BAA4B,CAC5B,4DAA6D,CAC7D,gEACD,CAEA,sBACC,+BAAgC,CAChC,oDAAqD,CACrD,0BACD,CAEA,cCbC,eD2BD,CAdA,mECTE,qCDuBF,CAdA,cEfC,oCAA8B,CFmB9B,6CAA8C,CAE9C,4CAA6C,CAG7C,4CAA6C,CAF7C,sCAAuC,CACvC,oCAMD,CAHC,kCACC,iEACD,CAGD,6BACC,GACC,sBACD,CAEA,GACC,oDACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-dialog-overlay {\n\tuser-select: none;\n\toverscroll-behavior: none;\n\n\tposition: fixed;\n\tbottom: 0;\n\tleft: 0;\n\tright: 0;\n\ttop: 0;\n\n\t&.ck-dialog-overlay__transparent {\n\t\tpointer-events: none;\n\t\tanimation: none;\n\t\tbackground: none;\n\t}\n}\n\n.ck.ck-dialog {\n\toverscroll-behavior: none;\n\twidth: fit-content;\n\tposition: absolute;\n\n\t& .ck.ck-form__header {\n\t\tflex-shrink: 0;\n\n\t\t& .ck-form__header__label {\n\t\t\tcursor: grab;\n\t\t}\n\t}\n\n\t@nest .ck.ck-dialog-overlay.ck-dialog-overlay__transparent & {\n\t\tpointer-events: all;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_shadow.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n:root {\n\t--ck-dialog-overlay-background-color: hsla( 0, 0%, 0%, .5 );\n\t--ck-dialog-drop-shadow: 0px 0px 6px 2px hsl(0deg 0% 0% / 15%);\n\t--ck-dialog-max-width: 100vw;\n\t--ck-dialog-max-height: 90vh;\n\t--ck-color-dialog-background: var(--ck-color-base-background);\n\t--ck-color-dialog-form-header-border: var(--ck-color-base-border);\n}\n\n.ck.ck-dialog-overlay {\n\tanimation: ck-dialog-fade-in .3s;\n\tbackground: var(--ck-dialog-overlay-background-color);\n\tz-index: var(--ck-z-dialog);\n}\n\n.ck.ck-dialog {\n\t@mixin ck-rounded-corners;\n\t@mixin ck-drop-shadow;\n\n\t--ck-drop-shadow: var(--ck-dialog-drop-shadow);\n\n\tbackground: var(--ck-color-dialog-background);\n\tmax-height: var(--ck-dialog-max-height);\n\tmax-width: var(--ck-dialog-max-width);\n\tborder: 1px solid var(--ck-color-base-border);\n\n\t& .ck.ck-form__header {\n\t\tborder-bottom: 1px solid var(--ck-color-dialog-form-header-border);\n\t}\n}\n\n@keyframes ck-dialog-fade-in {\n\t0% {\n\t\tbackground: hsla( 0, 0%, 0%, 0 );\n\t}\n\n\t100% {\n\t\tbackground: var(--ck-dialog-overlay-background-color);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},9822:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-dialog .ck.ck-dialog__actions{display:flex;justify-content:flex-end;padding:var(--ck-spacing-large)}.ck.ck-dialog .ck.ck-dialog__actions>*+*{margin-left:var(--ck-spacing-large)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/dialog/dialogactions.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/dialog/dialogactions.css"],names:[],mappings:"AAMC,qCACC,YAAa,CACb,wBAAyB,CCDzB,+BDED,CCAC,yCACC,mCACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-dialog {\n\t& .ck.ck-dialog__actions {\n\t\tdisplay: flex;\n\t\tjustify-content: flex-end;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-dialog {\n\t& .ck.ck-dialog__actions {\n\t\tpadding: var(--ck-spacing-large);\n\n\t\t& > * + * {\n\t\t\tmargin-left: var(--ck-spacing-large);\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},8149:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-dropdown-max-width:75vw}.ck.ck-dropdown{display:inline-block;position:relative}.ck.ck-dropdown .ck-dropdown__arrow{pointer-events:none;z-index:var(--ck-z-default)}.ck.ck-dropdown .ck-button.ck-dropdown__button{width:100%}.ck.ck-dropdown .ck-dropdown__panel{display:none;max-width:var(--ck-dropdown-max-width);position:absolute;z-index:var(--ck-z-panel)}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel-visible{display:inline-block}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_n,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_ne,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nme,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nmw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nw{bottom:100%}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_s,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_se,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sme,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_smw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sw{bottom:auto;top:100%}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_ne,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_se{left:0}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sw{right:0}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_n,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_s{left:50%;transform:translateX(-50%)}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nmw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_smw{left:75%;transform:translateX(-75%)}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nme,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sme{left:25%;transform:translateX(-25%)}.ck.ck-toolbar .ck-dropdown__panel{z-index:calc(var(--ck-z-panel) + 1)}:root{--ck-dropdown-arrow-size:calc(var(--ck-icon-size)*0.5)}.ck.ck-dropdown{font-size:inherit}.ck.ck-dropdown .ck-dropdown__arrow{width:var(--ck-dropdown-arrow-size)}[dir=ltr] .ck.ck-dropdown .ck-dropdown__arrow{margin-left:var(--ck-spacing-standard);right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-dropdown .ck-dropdown__arrow{left:var(--ck-spacing-standard);margin-right:var(--ck-spacing-small)}.ck.ck-dropdown.ck-disabled .ck-dropdown__arrow{opacity:var(--ck-disabled-opacity)}[dir=ltr] .ck.ck-dropdown .ck-button.ck-dropdown__button:not(.ck-button_with-text){padding-left:var(--ck-spacing-small)}[dir=rtl] .ck.ck-dropdown .ck-button.ck-dropdown__button:not(.ck-button_with-text){padding-right:var(--ck-spacing-small)}.ck.ck-dropdown .ck-button.ck-dropdown__button .ck-button__label{overflow:hidden;text-overflow:ellipsis;width:7em}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-disabled .ck-button__label{opacity:var(--ck-disabled-opacity)}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on{border-bottom-left-radius:0;border-bottom-right-radius:0}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-dropdown__button_label-width_auto .ck-button__label{width:auto}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-off:active,.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on:active{box-shadow:none}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-off:active:focus,.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on:active:focus{box-shadow:var(--ck-focus-outer-shadow),0 0}.ck.ck-dropdown__panel{border-radius:0}.ck-rounded-corners .ck.ck-dropdown__panel,.ck.ck-dropdown__panel.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-dropdown__panel{background:var(--ck-color-dropdown-panel-background);border:1px solid var(--ck-color-dropdown-panel-border);bottom:0;box-shadow:var(--ck-drop-shadow),0 0;min-width:100%}.ck.ck-dropdown__panel.ck-dropdown__panel_se{border-top-left-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_sw{border-top-right-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_ne{border-bottom-left-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_nw{border-bottom-right-radius:0}.ck.ck-dropdown__panel:focus{outline:none}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/dropdown/dropdown.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/dropdown.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_disabled.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAKA,MACC,4BACD,CAEA,gBACC,oBAAqB,CACrB,iBA2ED,CAzEC,oCACC,mBAAoB,CACpB,2BACD,CAGA,+CACC,UACD,CAEA,oCACC,YAAa,CAEb,sCAAuC,CAEvC,iBAAkB,CAHlB,yBA4DD,CAvDC,+DACC,oBACD,CAEA,mSAKC,WACD,CAEA,mSAUC,WAAY,CADZ,QAED,CAEA,oHAEC,MACD,CAEA,oHAEC,OACD,CAEA,kHAGC,QAAS,CACT,0BACD,CAEA,sHAGC,QAAS,CACT,0BACD,CAEA,sHAGC,QAAS,CACT,0BACD,CAQF,mCACC,mCACD,CCpFA,MACC,sDACD,CAEA,gBAEC,iBA2ED,CAzEC,oCACC,mCACD,CAGC,8CAIC,sCAAuC,CAHvC,gCAID,CAIA,8CACC,+BAAgC,CAGhC,oCACD,CAGD,gDC/BA,kCDiCA,CAIE,mFAEC,oCACD,CAIA,mFAEC,qCACD,CAID,iEAEC,eAAgB,CAChB,sBAAuB,CAFvB,SAGD,CAGA,6EC1DD,kCD4DC,CAGA,qDACC,2BAA4B,CAC5B,4BACD,CAEA,sGACC,UACD,CAGA,yHAEC,eAKD,CAHC,qIE7EF,2CF+EE,CAKH,uBGlFC,eHkHD,CAhCA,qFG9EE,qCH8GF,CAhCA,uBAIC,oDAAqD,CACrD,sDAAuD,CACvD,QAAS,CE1FT,oCAA8B,CF6F9B,cAuBD,CAnBC,6CACC,wBACD,CAEA,6CACC,yBACD,CAEA,6CACC,2BACD,CAEA,6CACC,4BACD,CAEA,6BACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-dropdown-max-width: 75vw;\n}\n\n.ck.ck-dropdown {\n\tdisplay: inline-block;\n\tposition: relative;\n\n\t& .ck-dropdown__arrow {\n\t\tpointer-events: none;\n\t\tz-index: var(--ck-z-default);\n\t}\n\n\t/* Dropdown button should span horizontally, e.g. in vertical toolbars */\n\t& .ck-button.ck-dropdown__button {\n\t\twidth: 100%;\n\t}\n\n\t& .ck-dropdown__panel {\n\t\tdisplay: none;\n\t\tz-index: var(--ck-z-panel);\n\t\tmax-width: var(--ck-dropdown-max-width);\n\n\t\tposition: absolute;\n\n\t\t&.ck-dropdown__panel-visible {\n\t\t\tdisplay: inline-block;\n\t\t}\n\n\t\t&.ck-dropdown__panel_ne,\n\t\t&.ck-dropdown__panel_nw,\n\t\t&.ck-dropdown__panel_n,\n\t\t&.ck-dropdown__panel_nmw,\n\t\t&.ck-dropdown__panel_nme {\n\t\t\tbottom: 100%;\n\t\t}\n\n\t\t&.ck-dropdown__panel_se,\n\t\t&.ck-dropdown__panel_sw,\n\t\t&.ck-dropdown__panel_smw,\n\t\t&.ck-dropdown__panel_sme,\n\t\t&.ck-dropdown__panel_s {\n\t\t\t/*\n\t\t\t * Using transform: translate3d( 0, 100%, 0 ) causes blurry dropdown on Chrome 67-78+ on non-retina displays.\n\t\t\t * See https://github.com/ckeditor/ckeditor5/issues/1053.\n\t\t\t */\n\t\t\ttop: 100%;\n\t\t\tbottom: auto;\n\t\t}\n\n\t\t&.ck-dropdown__panel_ne,\n\t\t&.ck-dropdown__panel_se {\n\t\t\tleft: 0px;\n\t\t}\n\n\t\t&.ck-dropdown__panel_nw,\n\t\t&.ck-dropdown__panel_sw {\n\t\t\tright: 0px;\n\t\t}\n\n\t\t&.ck-dropdown__panel_s,\n\t\t&.ck-dropdown__panel_n {\n\t\t\t/* Positioning panels relative to the center of the button */\n\t\t\tleft: 50%;\n\t\t\ttransform: translateX(-50%);\n\t\t}\n\n\t\t&.ck-dropdown__panel_nmw,\n\t\t&.ck-dropdown__panel_smw {\n\t\t\t/* Positioning panels relative to the middle-west of the button */\n\t\t\tleft: 75%;\n\t\t\ttransform: translateX(-75%);\n\t\t}\n\n\t\t&.ck-dropdown__panel_nme,\n\t\t&.ck-dropdown__panel_sme {\n\t\t\t/* Positioning panels relative to the middle-east of the button */\n\t\t\tleft: 25%;\n\t\t\ttransform: translateX(-25%);\n\t\t}\n\t}\n}\n\n/*\n * Toolbar dropdown panels should be always above the UI (eg. other dropdown panels) from the editor's content.\n * See https://github.com/ckeditor/ckeditor5/issues/7874\n */\n.ck.ck-toolbar .ck-dropdown__panel {\n\tz-index: calc( var(--ck-z-panel) + 1 );\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_shadow.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n:root {\n\t--ck-dropdown-arrow-size: calc(0.5 * var(--ck-icon-size));\n}\n\n.ck.ck-dropdown {\n\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\tfont-size: inherit;\n\n\t& .ck-dropdown__arrow {\n\t\twidth: var(--ck-dropdown-arrow-size);\n\t}\n\n\t@mixin ck-dir ltr {\n\t\t& .ck-dropdown__arrow {\n\t\t\tright: var(--ck-spacing-standard);\n\n\t\t\t/* A space to accommodate the triangle. */\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-dir rtl {\n\t\t& .ck-dropdown__arrow {\n\t\t\tleft: var(--ck-spacing-standard);\n\n\t\t\t/* A space to accommodate the triangle. */\n\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t}\n\t}\n\n\t&.ck-disabled .ck-dropdown__arrow {\n\t\t@mixin ck-disabled;\n\t}\n\n\t& .ck-button.ck-dropdown__button {\n\t\t@mixin ck-dir ltr {\n\t\t\t&:not(.ck-button_with-text) {\n\t\t\t\t/* Make sure dropdowns with just an icon have the right inner spacing */\n\t\t\t\tpadding-left: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t&:not(.ck-button_with-text) {\n\t\t\t\t/* Make sure dropdowns with just an icon have the right inner spacing */\n\t\t\t\tpadding-right: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\n\t\t/* #23 */\n\t\t& .ck-button__label {\n\t\t\twidth: 7em;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/70 */\n\t\t&.ck-disabled .ck-button__label {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5/issues/816 */\n\t\t&.ck-on {\n\t\t\tborder-bottom-left-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\n\t\t&.ck-dropdown__button_label-width_auto .ck-button__label {\n\t\t\twidth: auto;\n\t\t}\n\n\t\t/* https://github.com/ckeditor/ckeditor5/issues/8699 */\n\t\t&.ck-off:active,\n\t\t&.ck-on:active {\n\t\t\tbox-shadow: none;\n\n\t\t\t&:focus {\n\t\t\t\t@mixin ck-box-shadow var(--ck-focus-outer-shadow);\n\t\t\t}\n\t\t}\n\t}\n}\n\n.ck.ck-dropdown__panel {\n\t@mixin ck-rounded-corners;\n\t@mixin ck-drop-shadow;\n\n\tbackground: var(--ck-color-dropdown-panel-background);\n\tborder: 1px solid var(--ck-color-dropdown-panel-border);\n\tbottom: 0;\n\n\t/* Make sure the panel is at least as wide as the drop-down\'s button. */\n\tmin-width: 100%;\n\n\t/* Disabled corner border radius to be consistent with the .dropdown__button\n\thttps://github.com/ckeditor/ckeditor5/issues/816 */\n\t&.ck-dropdown__panel_se {\n\t\tborder-top-left-radius: 0;\n\t}\n\n\t&.ck-dropdown__panel_sw {\n\t\tborder-top-right-radius: 0;\n\t}\n\n\t&.ck-dropdown__panel_ne {\n\t\tborder-bottom-left-radius: 0;\n\t}\n\n\t&.ck-dropdown__panel_nw {\n\t\tborder-bottom-right-radius: 0;\n\t}\n\n\t&:focus {\n\t\toutline: none;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A class which indicates that an element holding it is disabled.\n */\n@define-mixin ck-disabled {\n\topacity: var(--ck-disabled-opacity);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},3629:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-dropdown>.ck-dropdown__panel>.ck-list{border-radius:0}.ck-rounded-corners .ck.ck-dropdown>.ck-dropdown__panel>.ck-list,.ck.ck-dropdown>.ck-dropdown__panel>.ck-list.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0}.ck.ck-dropdown>.ck-dropdown__panel>.ck-list .ck-list__item:first-child>.ck-button{border-radius:0}.ck-rounded-corners .ck.ck-dropdown>.ck-dropdown__panel>.ck-list .ck-list__item:first-child>.ck-button,.ck.ck-dropdown>.ck-dropdown__panel>.ck-list .ck-list__item:first-child>.ck-button.ck-rounded-corners{border-radius:var(--ck-border-radius);border-bottom-left-radius:0;border-bottom-right-radius:0;border-top-left-radius:0}.ck.ck-dropdown>.ck-dropdown__panel>.ck-list .ck-list__item:last-child>.ck-button{border-radius:0}.ck-rounded-corners .ck.ck-dropdown>.ck-dropdown__panel>.ck-list .ck-list__item:last-child>.ck-button,.ck.ck-dropdown>.ck-dropdown__panel>.ck-list .ck-list__item:last-child>.ck-button.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0;border-top-right-radius:0}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/listdropdown.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAOA,6CCIC,eDqBD,CAzBA,iICQE,qCAAsC,CDJtC,wBAqBF,CAfE,mFCND,eDYC,CANA,6MCFA,qCAAsC,CDKpC,2BAA4B,CAC5B,4BAA6B,CAF7B,wBAIF,CAEA,kFCdD,eDmBC,CALA,2MCVA,qCAAsC,CDYpC,wBAAyB,CACzB,yBAEF",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n\n.ck.ck-dropdown > .ck-dropdown__panel > .ck-list {\n\t/* Disabled radius of top-left border to be consistent with .dropdown__button\n\thttps://github.com/ckeditor/ckeditor5/issues/816 */\n\t@mixin ck-rounded-corners {\n\t\tborder-top-left-radius: 0;\n\t}\n\n\t/* Make sure the button belonging to the first/last child of the list goes well with the\n\tborder radius of the entire panel. */\n\t& .ck-list__item {\n\t\t&:first-child > .ck-button {\n\t\t\t@mixin ck-rounded-corners {\n\t\t\t\tborder-top-left-radius: 0;\n\t\t\t\tborder-bottom-left-radius: 0;\n\t\t\t\tborder-bottom-right-radius: 0;\n\t\t\t}\n\t\t}\n\n\t\t&:last-child > .ck-button {\n\t\t\t@mixin ck-rounded-corners {\n\t\t\t\tborder-top-left-radius: 0;\n\t\t\t\tborder-top-right-radius: 0;\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},1792:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck.ck-splitbutton{font-size:inherit}.ck.ck-splitbutton .ck-splitbutton__action:focus{z-index:calc(var(--ck-z-default) + 1)}:root{--ck-color-split-button-hover-background:#ebebeb;--ck-color-split-button-hover-border:#b3b3b3}[dir=ltr] .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__action,[dir=ltr] .ck.ck-splitbutton:hover>.ck-splitbutton__action{border-bottom-right-radius:unset;border-top-right-radius:unset}[dir=rtl] .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__action,[dir=rtl] .ck.ck-splitbutton:hover>.ck-splitbutton__action{border-bottom-left-radius:unset;border-top-left-radius:unset}.ck.ck-splitbutton>.ck-splitbutton__arrow{min-width:unset}[dir=ltr] .ck.ck-splitbutton>.ck-splitbutton__arrow{border-bottom-left-radius:unset;border-top-left-radius:unset}[dir=rtl] .ck.ck-splitbutton>.ck-splitbutton__arrow{border-bottom-right-radius:unset;border-top-right-radius:unset}.ck.ck-splitbutton>.ck-splitbutton__arrow svg{width:var(--ck-dropdown-arrow-size)}.ck.ck-splitbutton>.ck-splitbutton__arrow:not(:focus){border-bottom-width:0;border-top-width:0}.ck.ck-splitbutton.ck-splitbutton_open>.ck-button:not(.ck-on):not(.ck-disabled):not(:hover),.ck.ck-splitbutton:hover>.ck-button:not(.ck-on):not(.ck-disabled):not(:hover){background:var(--ck-color-split-button-hover-background)}.ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):after,.ck.ck-splitbutton:hover>.ck-splitbutton__arrow:not(.ck-disabled):after{background-color:var(--ck-color-split-button-hover-border);content:"";height:100%;position:absolute;width:1px}.ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__arrow:focus:after,.ck.ck-splitbutton:hover>.ck-splitbutton__arrow:focus:after{--ck-color-split-button-hover-border:var(--ck-color-focus-border)}[dir=ltr] .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):after,[dir=ltr] .ck.ck-splitbutton:hover>.ck-splitbutton__arrow:not(.ck-disabled):after{left:-1px}[dir=rtl] .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled):after,[dir=rtl] .ck.ck-splitbutton:hover>.ck-splitbutton__arrow:not(.ck-disabled):after{right:-1px}.ck.ck-splitbutton.ck-splitbutton_open{border-radius:0}.ck-rounded-corners .ck.ck-splitbutton.ck-splitbutton_open,.ck.ck-splitbutton.ck-splitbutton_open.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck-rounded-corners .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__action,.ck.ck-splitbutton.ck-splitbutton_open.ck-rounded-corners>.ck-splitbutton__action{border-bottom-left-radius:0}.ck-rounded-corners .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__arrow,.ck.ck-splitbutton.ck-splitbutton_open.ck-rounded-corners>.ck-splitbutton__arrow{border-bottom-right-radius:0}',"",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/dropdown/splitbutton.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/splitbutton.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAKA,mBAEC,iBAKD,CAHC,iDACC,qCACD,CCJD,MACC,gDAAyD,CACzD,4CACD,CAMC,oIAKE,gCAAiC,CADjC,6BASF,CAbA,oIAWE,+BAAgC,CADhC,4BAGF,CAEA,0CAGC,eAiBD,CApBA,oDAQE,+BAAgC,CADhC,4BAaF,CApBA,oDAcE,gCAAiC,CADjC,6BAOF,CAHC,8CACC,mCACD,CAKD,sDAEC,qBAAwB,CADxB,kBAED,CAQC,0KACC,wDACD,CAIA,8JAKC,0DAA2D,CAJ3D,UAAW,CAGX,WAAY,CAFZ,iBAAkB,CAClB,SAGD,CAGA,sIACC,iEACD,CAGC,kLACC,SACD,CAIA,kLACC,UACD,CAMF,uCCzFA,eDmGA,CAVA,qHCrFC,qCD+FD,CARE,qKACC,2BACD,CAEA,mKACC,4BACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-splitbutton {\n\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\tfont-size: inherit;\n\n\t& .ck-splitbutton__action:focus {\n\t\tz-index: calc(var(--ck-z-default) + 1);\n\t}\n}\n\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n\n:root {\n\t--ck-color-split-button-hover-background: hsl(0, 0%, 92%);\n\t--ck-color-split-button-hover-border: hsl(0, 0%, 70%);\n}\n\n.ck.ck-splitbutton {\n\t/*\n\t * Note: ck-rounded and ck-dir mixins don\'t go together (because they both use @nest).\n\t */\n\t&:hover > .ck-splitbutton__action,\n\t&.ck-splitbutton_open > .ck-splitbutton__action {\n\t\t@nest [dir="ltr"] & {\n\t\t\t/* Don\'t round the action button on the right side */\n\t\t\tborder-top-right-radius: unset;\n\t\t\tborder-bottom-right-radius: unset;\n\t\t}\n\n\t\t@nest [dir="rtl"] & {\n\t\t\t/* Don\'t round the action button on the left side */\n\t\t\tborder-top-left-radius: unset;\n\t\t\tborder-bottom-left-radius: unset;\n\t\t}\n\t}\n\n\t& > .ck-splitbutton__arrow {\n\t\t/* It\'s a text-less button and since the icon is positioned absolutely in such situation,\n\t\tit must get some arbitrary min-width. */\n\t\tmin-width: unset;\n\n\t\t@nest [dir="ltr"] & {\n\t\t\t/* Don\'t round the arrow button on the left side */\n\t\t\tborder-top-left-radius: unset;\n\t\t\tborder-bottom-left-radius: unset;\n\t\t}\n\n\t\t@nest [dir="rtl"] & {\n\t\t\t/* Don\'t round the arrow button on the right side */\n\t\t\tborder-top-right-radius: unset;\n\t\t\tborder-bottom-right-radius: unset;\n\t\t}\n\n\t\t& svg {\n\t\t\twidth: var(--ck-dropdown-arrow-size);\n\t\t}\n\t}\n\n\t/* Make sure the divider stretches 100% height of the button\n\thttps://github.com/ckeditor/ckeditor5/issues/10936 */\n\t& > .ck-splitbutton__arrow:not(:focus) {\n\t\tborder-top-width: 0px;\n\t\tborder-bottom-width: 0px;\n\t}\n\n\t/* When the split button is "open" (the arrow is on) or being hovered, it should get some styling\n\tas a whole. The background of both buttons should stand out and there should be a visual\n\tseparation between both buttons. */\n\t&.ck-splitbutton_open,\n\t&:hover {\n\t\t/* When the split button hovered as a whole, not as individual buttons. */\n\t\t& > .ck-button:not(.ck-on):not(.ck-disabled):not(:hover) {\n\t\t\tbackground: var(--ck-color-split-button-hover-background);\n\t\t}\n\n\t\t/* Splitbutton separator needs to be set with the ::after pseudoselector\n\t\tto display properly the borders on focus */\n\t\t& > .ck-splitbutton__arrow:not(.ck-disabled)::after {\n\t\t\tcontent: \'\';\n\t\t\tposition: absolute;\n\t\t\twidth: 1px;\n\t\t\theight: 100%;\n\t\t\tbackground-color: var(--ck-color-split-button-hover-border);\n\t\t}\n\n\t\t/* Make sure the divider between the buttons looks fine when the button is focused */\n\t\t& > .ck-splitbutton__arrow:focus::after {\n\t\t\t--ck-color-split-button-hover-border: var(--ck-color-focus-border);\n\t\t}\n\n\t\t@nest [dir="ltr"] & {\n\t\t\t& > .ck-splitbutton__arrow:not(.ck-disabled)::after {\n\t\t\t\tleft: -1px;\n\t\t\t}\n\t\t}\n\n\t\t@nest [dir="rtl"] & {\n\t\t\t& > .ck-splitbutton__arrow:not(.ck-disabled)::after {\n\t\t\t\tright: -1px;\n\t\t\t}\n\t\t}\n\t}\n\n\t/* Don\'t round the bottom left and right corners of the buttons when "open"\n\thttps://github.com/ckeditor/ckeditor5/issues/816 */\n\t&.ck-splitbutton_open {\n\t\t@mixin ck-rounded-corners {\n\t\t\t& > .ck-splitbutton__action {\n\t\t\t\tborder-bottom-left-radius: 0;\n\t\t\t}\n\n\t\t\t& > .ck-splitbutton__arrow {\n\t\t\t\tborder-bottom-right-radius: 0;\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},1666:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-toolbar-dropdown-max-width:60vw}.ck.ck-toolbar-dropdown>.ck-dropdown__panel{max-width:var(--ck-toolbar-dropdown-max-width);width:max-content}.ck.ck-toolbar-dropdown>.ck-dropdown__panel .ck-button:focus{z-index:calc(var(--ck-z-default) + 1)}.ck.ck-toolbar-dropdown .ck-toolbar{border:0}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/dropdown/toolbardropdown.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/toolbardropdown.css"],names:[],mappings:"AAKA,MACC,oCACD,CAEA,4CAGC,8CAA+C,CAD/C,iBAQD,CAJE,6DACC,qCACD,CCZF,oCACC,QACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-toolbar-dropdown-max-width: 60vw;\n}\n\n.ck.ck-toolbar-dropdown > .ck-dropdown__panel {\n\t/* https://github.com/ckeditor/ckeditor5/issues/5586 */\n\twidth: max-content;\n\tmax-width: var(--ck-toolbar-dropdown-max-width);\n\n\t& .ck-button {\n\t\t&:focus {\n\t\t\tz-index: calc(var(--ck-z-default) + 1);\n\t\t}\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-toolbar-dropdown .ck-toolbar {\n\tborder: 0;\n}\n"],sourceRoot:""}]);const a=s},8527:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-accessibility-help-dialog-max-width:600px;--ck-accessibility-help-dialog-max-height:400px;--ck-accessibility-help-dialog-border-color:#ccced1;--ck-accessibility-help-dialog-code-background-color:#ededed;--ck-accessibility-help-dialog-kbd-shadow-color:#9c9c9c}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content{border:1px solid transparent;max-height:var(--ck-accessibility-help-dialog-max-height);max-width:var(--ck-accessibility-help-dialog-max-width);overflow:auto;padding:var(--ck-spacing-large);user-select:text}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content:focus{border:var(--ck-focus-ring);box-shadow:var(--ck-focus-outer-shadow),0 0;outline:none}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content{*{white-space:normal}}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content .ck-label{display:none}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content h3{font-size:1.2em;font-weight:700}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content h4{font-size:1em;font-weight:700}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content h3,.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content h4,.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content p,.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content table{margin:1em 0}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content dl{border-bottom:none;border-top:1px solid var(--ck-accessibility-help-dialog-border-color);display:grid;grid-template-columns:2fr 1fr}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content dl dd,.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content dl dt{border-bottom:1px solid var(--ck-accessibility-help-dialog-border-color);padding:.4em 0}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content dl dt{grid-column-start:1}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content dl dd{grid-column-start:2;text-align:right}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content code,.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content kbd{background:var(--ck-accessibility-help-dialog-code-background-color);border-radius:2px;display:inline-block;font-size:.9em;line-height:1;padding:.4em;text-align:center;vertical-align:middle}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content code{font-family:monospace}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content kbd{box-shadow:0 1px 1px var(--ck-accessibility-help-dialog-kbd-shadow-color);margin:0 1px;min-width:1.8em}.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content kbd+kbd{margin-left:2px}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/editorui/accessibilityhelp.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAQA,MACC,8CAA+C,CAC/C,+CAAgD,CAChD,mDAA8D,CAC9D,4DAAyE,CACzE,uDACD,CAEA,wEAOC,4BAA6B,CAJ7B,yDAA0D,CAD1D,uDAAwD,CAExD,aAAc,CAHd,+BAAgC,CAIhC,gBAgFD,CA5EC,8ECdA,2BAA2B,CCF3B,2CAA8B,CDC9B,YDkBA,CAZD,wEAcC,EACC,kBACD,CAqED,CAlEC,kFACC,YACD,CAEA,2EAEC,eAAgB,CADhB,eAED,CAEA,2EAEC,aAAc,CADd,eAED,CAEA,8SAIC,YACD,CAEA,2EAIC,kBAAmB,CADnB,qEAAsE,CAFtE,YAAa,CACb,6BAiBD,CAbC,4JACC,wEAAyE,CACzE,cACD,CAEA,8EACC,mBACD,CAEA,8EACC,mBAAoB,CACpB,gBACD,CAGD,yJAEC,oEAAqE,CAIrE,iBAAkB,CALlB,oBAAqB,CAOrB,cAAe,CAHf,aAAc,CAFd,YAAa,CAIb,iBAAkB,CAHlB,qBAKD,CAEA,6EACC,qBACD,CAEA,4EAEC,yEAA4E,CAC5E,YAAa,CAFb,eAOD,CAHC,gFACC,eACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_focus.css";\n@import "../../../mixins/_shadow.css";\n\n:root {\n\t--ck-accessibility-help-dialog-max-width: 600px;\n\t--ck-accessibility-help-dialog-max-height: 400px;\n\t--ck-accessibility-help-dialog-border-color: hsl(220, 6%, 81%);\n\t--ck-accessibility-help-dialog-code-background-color: hsl(0deg 0% 92.94%);\n\t--ck-accessibility-help-dialog-kbd-shadow-color: hsl(0deg 0% 61%);\n}\n\n.ck.ck-accessibility-help-dialog .ck-accessibility-help-dialog__content {\n\tpadding: var(--ck-spacing-large);\n\tmax-width: var(--ck-accessibility-help-dialog-max-width);\n\tmax-height: var(--ck-accessibility-help-dialog-max-height);\n\toverflow: auto;\n\tuser-select: text;\n\n\tborder: 1px solid transparent;\n\n\t&:focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-focus-outer-shadow);\n\t}\n\n\t* {\n\t\twhite-space: normal;\n\t}\n\n\t/* Hide the main label of the content container. */\n\t& .ck-label {\n\t\tdisplay: none;\n\t}\n\n\t& h3 {\n\t\tfont-weight: bold;\n\t\tfont-size: 1.2em;\n\t}\n\n\t& h4 {\n\t\tfont-weight: bold;\n\t\tfont-size: 1em;\n\t}\n\n\t& p,\n\t& h3,\n\t& h4,\n\t& table {\n\t\tmargin: 1em 0;\n\t}\n\n\t& dl {\n\t\tdisplay: grid;\n\t\tgrid-template-columns: 2fr 1fr;\n\t\tborder-top: 1px solid var(--ck-accessibility-help-dialog-border-color);\n\t\tborder-bottom: none;\n\n\t\t& dt, & dd {\n\t\t\tborder-bottom: 1px solid var(--ck-accessibility-help-dialog-border-color);\n\t\t\tpadding: .4em 0;\n\t\t}\n\n\t\t& dt {\n\t\t\tgrid-column-start: 1;\n\t\t}\n\n\t\t& dd {\n\t\t\tgrid-column-start: 2;\n\t\t\ttext-align: right;\n\t\t}\n\t}\n\n\t& kbd, & code {\n\t\tdisplay: inline-block;\n\t\tbackground: var(--ck-accessibility-help-dialog-code-background-color);\n\t\tpadding: .4em;\n\t\tvertical-align: middle;\n\t\tline-height: 1;\n\t\tborder-radius: 2px;\n\t\ttext-align: center;\n\t\tfont-size: .9em;\n\t}\n\n\t& code {\n\t\tfont-family: monospace;\n\t}\n\n\t& kbd {\n\t\tmin-width: 1.8em;\n\t\tbox-shadow: 0px 1px 1px var(--ck-accessibility-help-dialog-kbd-shadow-color);\n\t\tmargin: 0 1px;\n\n\t\t& + kbd {\n\t\t\tmargin-left: 2px;\n\t\t}\n\t}\n}\n\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A visual style of focused element's border.\n */\n@define-mixin ck-focus-ring {\n\t/* Disable native outline. */\n\toutline: none;\n\tborder: var(--ck-focus-ring)\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},1185:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-editable-blur-selection:#d9d9d9}.ck.ck-editor__editable:not(.ck-editor__nested-editable){border-radius:0}.ck-rounded-corners .ck.ck-editor__editable:not(.ck-editor__nested-editable),.ck.ck-editor__editable.ck-rounded-corners:not(.ck-editor__nested-editable){border-radius:var(--ck-border-radius)}.ck.ck-editor__editable.ck-focused:not(.ck-editor__nested-editable){border:var(--ck-focus-ring);box-shadow:var(--ck-inner-shadow),0 0;outline:none}.ck.ck-editor__editable_inline{border:1px solid transparent;overflow:auto;padding:0 var(--ck-spacing-standard)}.ck.ck-editor__editable_inline[dir=ltr]{text-align:left}.ck.ck-editor__editable_inline[dir=rtl]{text-align:right}.ck.ck-editor__editable_inline>:first-child{margin-top:var(--ck-spacing-large)}.ck.ck-editor__editable_inline>:last-child{margin-bottom:var(--ck-spacing-large)}.ck.ck-editor__editable_inline.ck-blurred ::selection{background:var(--ck-color-editable-blur-selection)}.ck.ck-balloon-panel.ck-toolbar-container[class*=arrow_n]:after{border-bottom-color:var(--ck-color-panel-background)}.ck.ck-balloon-panel.ck-toolbar-container[class*=arrow_s]:after{border-top-color:var(--ck-color-panel-background)}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/editorui/editorui.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAWA,MACC,0CACD,CAEA,yDCJC,eDWD,CAPA,yJCAE,qCDOF,CAJC,oEEPA,2BAA2B,CCF3B,qCAA8B,CDC9B,YFWA,CAGD,+BAGC,4BAA6B,CAF7B,aAAc,CACd,oCA6BD,CA1BC,wCACC,eACD,CAEA,wCACC,gBACD,CAGA,4CACC,kCACD,CAGA,2CAKC,qCACD,CAGA,sDACC,kDACD,CAKA,gEACC,oDACD,CAIA,gEACC,iDACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_shadow.css";\n@import "../../../mixins/_focus.css";\n@import "../../mixins/_button.css";\n\n:root {\n\t--ck-color-editable-blur-selection: hsl(0, 0%, 85%);\n}\n\n.ck.ck-editor__editable:not(.ck-editor__nested-editable) {\n\t@mixin ck-rounded-corners;\n\n\t&.ck-focused {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-inner-shadow);\n\t}\n}\n\n.ck.ck-editor__editable_inline {\n\toverflow: auto;\n\tpadding: 0 var(--ck-spacing-standard);\n\tborder: 1px solid transparent;\n\n\t&[dir="ltr"] {\n\t\ttext-align: left;\n\t}\n\n\t&[dir="rtl"] {\n\t\ttext-align: right;\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/116 */\n\t& > *:first-child {\n\t\tmargin-top: var(--ck-spacing-large);\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5/issues/847 */\n\t& > *:last-child {\n\t\t/*\n\t\t * This value should match with the default margins of the block elements (like .media or .image)\n\t\t * to avoid a content jumping when the fake selection container shows up (See https://github.com/ckeditor/ckeditor5/issues/9825).\n\t\t */\n\t\tmargin-bottom: var(--ck-spacing-large);\n\t}\n\n\t/* https://github.com/ckeditor/ckeditor5/issues/6517 */\n\t&.ck-blurred ::selection {\n\t\tbackground: var(--ck-color-editable-blur-selection);\n\t}\n}\n\n/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/111 */\n.ck.ck-balloon-panel.ck-toolbar-container[class*="arrow_n"] {\n\t&::after {\n\t\tborder-bottom-color: var(--ck-color-panel-background);\n\t}\n}\n\n.ck.ck-balloon-panel.ck-toolbar-container[class*="arrow_s"] {\n\t&::after {\n\t\tborder-top-color: var(--ck-color-panel-background);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A visual style of focused element's border.\n */\n@define-mixin ck-focus-ring {\n\t/* Disable native outline. */\n\toutline: none;\n\tborder: var(--ck-focus-ring)\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},7913:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-form__header{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between}.ck.ck-form__header h2.ck-form__header__label{flex-grow:1}:root{--ck-form-header-height:44px}.ck.ck-form__header{border-bottom:1px solid var(--ck-color-base-border);height:var(--ck-form-header-height);line-height:var(--ck-form-header-height);padding:var(--ck-spacing-small) var(--ck-spacing-large)}[dir=ltr] .ck.ck-form__header>.ck-icon{margin-right:var(--ck-spacing-medium)}[dir=rtl] .ck.ck-form__header>.ck-icon{margin-left:var(--ck-spacing-medium)}.ck.ck-form__header .ck-form__header__label{--ck-font-size-base:15px;font-weight:700}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/formheader/formheader.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/formheader/formheader.css"],names:[],mappings:"AAKA,oBAIC,kBAAmB,CAHnB,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CAEjB,6BAKD,CAHC,8CACC,WACD,CCPD,MACC,4BACD,CAEA,oBAIC,mDAAoD,CAFpD,mCAAoC,CACpC,wCAAyC,CAFzC,uDAmBD,CAdC,uCAEE,qCAMF,CARA,uCAME,oCAEF,CAEA,4CACC,wBAAyB,CACzB,eACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-form__header {\n\tdisplay: flex;\n\tflex-direction: row;\n\tflex-wrap: nowrap;\n\talign-items: center;\n\tjustify-content: space-between;\n\n\t& h2.ck-form__header__label {\n\t\tflex-grow: 1;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n:root {\n\t--ck-form-header-height: 44px;\n}\n\n.ck.ck-form__header {\n\tpadding: var(--ck-spacing-small) var(--ck-spacing-large);\n\theight: var(--ck-form-header-height);\n\tline-height: var(--ck-form-header-height);\n\tborder-bottom: 1px solid var(--ck-color-base-border);\n\n\t& > .ck-icon {\n\t\t@mixin ck-dir ltr {\n\t\t\tmargin-right: var(--ck-spacing-medium);\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\tmargin-left: var(--ck-spacing-medium);\n\t\t}\n\t}\n\n\t& .ck-form__header__label {\n\t\t--ck-font-size-base: 15px;\n\t\tfont-weight: bold;\n\t}\n}\n'],sourceRoot:""}]);const a=s},9529:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-highlighted-text mark{background:var(--ck-color-highlight-background);font-size:inherit;font-weight:inherit;line-height:inherit;vertical-align:initial}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/highlightedtext/highlightedtext.css"],names:[],mappings:"AAKA,6BACC,+CAAgD,CAIhD,iBAAkB,CAFlB,mBAAoB,CACpB,mBAAoB,CAFpB,sBAID",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-highlighted-text mark {\n\tbackground: var(--ck-color-highlight-background);\n\tvertical-align: initial;\n\tfont-weight: inherit;\n\tline-height: inherit;\n\tfont-size: inherit;\n}\n"],sourceRoot:""}]);const a=s},7621:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-icon{vertical-align:middle}:root{--ck-icon-size:calc(var(--ck-line-height-base)*var(--ck-font-size-normal))}.ck.ck-icon{font-size:.8333350694em;height:var(--ck-icon-size);width:var(--ck-icon-size);will-change:transform}.ck.ck-icon,.ck.ck-icon *{cursor:inherit}.ck.ck-icon.ck-icon_inherit-color,.ck.ck-icon.ck-icon_inherit-color *{color:inherit}.ck.ck-icon.ck-icon_inherit-color :not([fill]){fill:currentColor}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/icon/icon.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/icon/icon.css"],names:[],mappings:"AAKA,YACC,qBACD,CCFA,MACC,0EACD,CAEA,YAKC,uBAAwB,CAHxB,0BAA2B,CAD3B,yBAA0B,CAU1B,qBAoBD,CAlBC,0BALA,cAQA,CAMC,sEACC,aAMD,CAJC,+CAEC,iBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-icon {\n\tvertical-align: middle;\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-icon-size: calc(var(--ck-line-height-base) * var(--ck-font-size-normal));\n}\n\n.ck.ck-icon {\n\twidth: var(--ck-icon-size);\n\theight: var(--ck-icon-size);\n\n\t/* Multiplied by the height of the line in "px" should give SVG "viewport" dimensions */\n\tfont-size: .8333350694em;\n\n\t/* Inherit cursor style (#5). */\n\tcursor: inherit;\n\n\t/* This will prevent blurry icons on Firefox. See #340. */\n\twill-change: transform;\n\n\t& * {\n\t\t/* Inherit cursor style (#5). */\n\t\tcursor: inherit;\n\t}\n\n\t/* Allows dynamic coloring of an icon by inheriting its color from the parent. */\n\t&.ck-icon_inherit-color {\n\t\tcolor: inherit;\n\n\t\t& * {\n\t\t\tcolor: inherit;\n\n\t\t\t&:not([fill]) {\n\t\t\t\t/* Needed by FF. */\n\t\t\t\tfill: currentColor;\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},253:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-input-width:18em;--ck-input-text-width:var(--ck-input-width)}.ck.ck-input{border-radius:0}.ck-rounded-corners .ck.ck-input,.ck.ck-input.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-input{background:var(--ck-color-input-background);border:1px solid var(--ck-color-input-border);min-height:var(--ck-ui-component-min-height);min-width:var(--ck-input-width);padding:var(--ck-spacing-extra-tiny) var(--ck-spacing-medium);transition:box-shadow .1s ease-in-out,border .1s ease-in-out}@media (prefers-reduced-motion:reduce){.ck.ck-input{transition:none}}.ck.ck-input:focus{border:var(--ck-focus-ring);box-shadow:var(--ck-focus-outer-shadow),0 0;outline:none}.ck.ck-input[readonly]{background:var(--ck-color-input-disabled-background);border:1px solid var(--ck-color-input-disabled-border);color:var(--ck-color-input-disabled-text)}.ck.ck-input[readonly]:focus{box-shadow:var(--ck-focus-disabled-outer-shadow),0 0}.ck.ck-input.ck-error{animation:ck-input-shake .3s ease both;border-color:var(--ck-color-input-error-border)}@media (prefers-reduced-motion:reduce){.ck.ck-input.ck-error{animation:none}}.ck.ck-input.ck-error:focus{box-shadow:var(--ck-focus-error-outer-shadow),0 0}@keyframes ck-input-shake{20%{transform:translateX(-2px)}40%{transform:translateX(2px)}60%{transform:translateX(-1px)}80%{transform:translateX(1px)}}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/input/input.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AASA,MACC,qBAAsB,CAGtB,2CACD,CAEA,aCLC,eDmDD,CA9CA,iECDE,qCD+CF,CA9CA,aAGC,2CAA4C,CAC5C,6CAA8C,CAK9C,4CAA6C,CAH7C,+BAAgC,CADhC,6DAA8D,CAO9D,4DAkCD,CAhCC,uCAdD,aAeE,eA+BF,CA9BC,CAEA,mBEvBA,2BAA2B,CCF3B,2CAA8B,CDC9B,YF2BA,CAEA,uBAEC,oDAAqD,CADrD,sDAAuD,CAEvD,yCAMD,CAJC,6BGnCD,oDHsCC,CAGD,sBAEC,sCAAuC,CADvC,+CAUD,CAPC,uCAJD,sBAKE,cAMF,CALC,CAEA,4BGjDD,iDHmDC,CAIF,0BACC,IACC,0BACD,CAEA,IACC,yBACD,CAEA,IACC,0BACD,CAEA,IACC,yBACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_focus.css";\n@import "../../../mixins/_shadow.css";\n\n:root {\n\t--ck-input-width: 18em;\n\n\t/* Backward compatibility. */\n\t--ck-input-text-width: var(--ck-input-width);\n}\n\n.ck.ck-input {\n\t@mixin ck-rounded-corners;\n\n\tbackground: var(--ck-color-input-background);\n\tborder: 1px solid var(--ck-color-input-border);\n\tpadding: var(--ck-spacing-extra-tiny) var(--ck-spacing-medium);\n\tmin-width: var(--ck-input-width);\n\n\t/* This is important to stay of the same height as surrounding buttons */\n\tmin-height: var(--ck-ui-component-min-height);\n\n\t/* Apply some smooth transition to the box-shadow and border. */\n\ttransition: box-shadow .1s ease-in-out, border .1s ease-in-out;\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\ttransition: none;\n\t}\n\n\t&:focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-focus-outer-shadow);\n\t}\n\n\t&[readonly] {\n\t\tborder: 1px solid var(--ck-color-input-disabled-border);\n\t\tbackground: var(--ck-color-input-disabled-background);\n\t\tcolor: var(--ck-color-input-disabled-text);\n\n\t\t&:focus {\n\t\t\t/* The read-only input should have a slightly less visible shadow when focused. */\n\t\t\t@mixin ck-box-shadow var(--ck-focus-disabled-outer-shadow);\n\t\t}\n\t}\n\n\t&.ck-error {\n\t\tborder-color: var(--ck-color-input-error-border);\n\t\tanimation: ck-input-shake .3s ease both;\n\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\tanimation: none;\n\t\t}\n\n\t\t&:focus {\n\t\t\t@mixin ck-box-shadow var(--ck-focus-error-outer-shadow);\n\t\t}\n\t}\n}\n\n@keyframes ck-input-shake {\n\t20% {\n\t\ttransform: translateX(-2px);\n\t}\n\n\t40% {\n\t\ttransform: translateX(2px);\n\t}\n\n\t60% {\n\t\ttransform: translateX(-1px);\n\t}\n\n\t80% {\n\t\ttransform: translateX(1px);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A visual style of focused element's border.\n */\n@define-mixin ck-focus-ring {\n\t/* Disable native outline. */\n\toutline: none;\n\tborder: var(--ck-focus-ring)\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},7801:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-label{display:block}.ck.ck-voice-label{display:none}.ck.ck-label{font-weight:700}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/label/label.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/label/label.css"],names:[],mappings:"AAKA,aACC,aACD,CAEA,mBACC,YACD,CCNA,aACC,eACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-label {\n\tdisplay: block;\n}\n\n.ck.ck-voice-label {\n\tdisplay: none;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-label {\n\tfont-weight: bold;\n}\n"],sourceRoot:""}]);const a=s},4962:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper{display:flex;position:relative}.ck.ck-labeled-field-view .ck.ck-label{display:block;position:absolute}:root{--ck-labeled-field-view-transition:.1s cubic-bezier(0,0,0.24,0.95);--ck-labeled-field-empty-unfocused-max-width:100% - 2 * var(--ck-spacing-medium);--ck-labeled-field-label-default-position-x:var(--ck-spacing-medium);--ck-labeled-field-label-default-position-y:calc(var(--ck-font-size-base)*0.6);--ck-color-labeled-field-label-background:var(--ck-color-base-background)}.ck.ck-labeled-field-view{border-radius:0}.ck-rounded-corners .ck.ck-labeled-field-view,.ck.ck-labeled-field-view.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper{width:100%}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{top:0}[dir=ltr] .ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{left:0;transform:translate(var(--ck-spacing-medium),-6px) scale(.75);transform-origin:0 0}[dir=rtl] .ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{right:0;transform:translate(calc(var(--ck-spacing-medium)*-1),-6px) scale(.75);transform-origin:100% 0}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{background:var(--ck-color-labeled-field-label-background);font-weight:400;line-height:normal;max-width:100%;overflow:hidden;padding:0 calc(var(--ck-font-size-tiny)*.5);pointer-events:none;text-overflow:ellipsis;transition:transform var(--ck-labeled-field-view-transition),padding var(--ck-labeled-field-view-transition),background var(--ck-labeled-field-view-transition)}@media (prefers-reduced-motion:reduce){.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{transition:none}}.ck.ck-labeled-field-view.ck-error .ck-input:not([readonly])+.ck.ck-label,.ck.ck-labeled-field-view.ck-error>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{color:var(--ck-color-base-error)}.ck.ck-labeled-field-view .ck-labeled-field-view__status{font-size:var(--ck-font-size-small);margin-top:var(--ck-spacing-small);white-space:normal}.ck.ck-labeled-field-view .ck-labeled-field-view__status.ck-labeled-field-view__status_error{color:var(--ck-color-base-error)}.ck.ck-labeled-field-view.ck-disabled>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,.ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{color:var(--ck-color-input-disabled-text)}[dir=ltr] .ck.ck-labeled-field-view.ck-disabled.ck-labeled-field-view_empty:not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,[dir=ltr] .ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder):not(.ck-error)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{transform:translate(var(--ck-labeled-field-label-default-position-x),var(--ck-labeled-field-label-default-position-y)) scale(1)}[dir=rtl] .ck.ck-labeled-field-view.ck-disabled.ck-labeled-field-view_empty:not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,[dir=rtl] .ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder):not(.ck-error)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{transform:translate(calc(var(--ck-labeled-field-label-default-position-x)*-1),var(--ck-labeled-field-label-default-position-y)) scale(1)}.ck.ck-labeled-field-view.ck-disabled.ck-labeled-field-view_empty:not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label,.ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder):not(.ck-error)>.ck.ck-labeled-field-view__input-wrapper>.ck.ck-label{background:transparent;max-width:calc(var(--ck-labeled-field-empty-unfocused-max-width));padding:0}.ck.ck-labeled-field-view>.ck.ck-labeled-field-view__input-wrapper>.ck-dropdown>.ck.ck-button{background:transparent}.ck.ck-labeled-field-view.ck-labeled-field-view_empty>.ck.ck-labeled-field-view__input-wrapper>.ck-dropdown>.ck-button>.ck-button__label{opacity:0}.ck.ck-labeled-field-view.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder)>.ck.ck-labeled-field-view__input-wrapper>.ck-dropdown+.ck-label{max-width:calc(var(--ck-labeled-field-empty-unfocused-max-width) - var(--ck-dropdown-arrow-size) - var(--ck-spacing-standard))}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/labeledfield/labeledfieldview.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/labeledfield/labeledfieldview.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAMC,mEACC,YAAa,CACb,iBACD,CAEA,uCACC,aAAc,CACd,iBACD,CCND,MACC,kEAAsE,CACtE,gFAAiF,CACjF,oEAAqE,CACrE,8EAAiF,CACjF,yEACD,CAEA,0BCLC,eDmHD,CA9GA,2FCDE,qCD+GF,CA3GC,mEACC,UAwCD,CAtCC,gFACC,KAoCD,CArCA,0FAIE,MAAS,CAGT,6DAA+D,CAF/D,oBAgCF,CArCA,0FAWE,OAAU,CAEV,sEAA0E,CAD1E,uBAyBF,CArCA,gFAkBC,yDAA0D,CAG1D,eAAmB,CADnB,kBAAoB,CAOpB,cAAe,CAFf,eAAgB,CANhB,2CAA8C,CAH9C,mBAAoB,CAQpB,sBAAuB,CAKvB,+JAQD,CAHC,uCAlCD,gFAmCE,eAEF,CADC,CASD,mKACC,gCACD,CAGD,yDACC,mCAAoC,CACpC,kCAAmC,CAInC,kBAKD,CAHC,6FACC,gCACD,CAID,4OAEC,yCACD,CAIA,2XAGE,+HAYF,CAfA,2XAOE,wIAQF,CAfA,uWAaC,sBAAuB,CAFvB,iEAAkE,CAGlE,SACD,CAKA,8FACC,sBACD,CAGA,yIACC,SACD,CAGA,kMACC,8HACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-labeled-field-view {\n\t& > .ck.ck-labeled-field-view__input-wrapper {\n\t\tdisplay: flex;\n\t\tposition: relative;\n\t}\n\n\t& .ck.ck-label {\n\t\tdisplay: block;\n\t\tposition: absolute;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n@import "../../../mixins/_rounded.css";\n\n:root {\n\t--ck-labeled-field-view-transition: .1s cubic-bezier(0, 0, 0.24, 0.95);\n\t--ck-labeled-field-empty-unfocused-max-width: 100% - 2 * var(--ck-spacing-medium);\n\t--ck-labeled-field-label-default-position-x: var(--ck-spacing-medium);\n\t--ck-labeled-field-label-default-position-y: calc(0.6 * var(--ck-font-size-base));\n\t--ck-color-labeled-field-label-background: var(--ck-color-base-background);\n}\n\n.ck.ck-labeled-field-view {\n\t@mixin ck-rounded-corners;\n\n\t& > .ck.ck-labeled-field-view__input-wrapper {\n\t\twidth: 100%;\n\n\t\t& > .ck.ck-label {\n\t\t\ttop: 0px;\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tleft: 0px;\n\t\t\t\ttransform-origin: 0 0;\n\t\t\t\t/* By default, display the label scaled down above the field. */\n\t\t\t\ttransform: translate(var(--ck-spacing-medium), -6px) scale(.75);\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tright: 0px;\n\t\t\t\ttransform-origin: 100% 0;\n\t\t\t\ttransform: translate(calc(-1 * var(--ck-spacing-medium)), -6px) scale(.75);\n\t\t\t}\n\n\t\t\tpointer-events: none;\n\n\t\t\tbackground: var(--ck-color-labeled-field-label-background);\n\t\t\tpadding: 0 calc(.5 * var(--ck-font-size-tiny));\n\t\t\tline-height: initial;\n\t\t\tfont-weight: normal;\n\n\t\t\t/* Prevent overflow when the label is longer than the input */\n\t\t\ttext-overflow: ellipsis;\n\t\t\toverflow: hidden;\n\n\t\t\tmax-width: 100%;\n\n\t\t\ttransition:\n\t\t\t\ttransform var(--ck-labeled-field-view-transition),\n\t\t\t\tpadding var(--ck-labeled-field-view-transition),\n\t\t\t\tbackground var(--ck-labeled-field-view-transition);\n\n\t\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\t\ttransition: none;\n\t\t\t}\n\t\t}\n\t}\n\n\t&.ck-error {\n\t\t& > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label {\n\t\t\tcolor: var(--ck-color-base-error);\n\t\t}\n\n\t\t& .ck-input:not([readonly]) + .ck.ck-label {\n\t\t\tcolor: var(--ck-color-base-error);\n\t\t}\n\t}\n\n\t& .ck-labeled-field-view__status {\n\t\tfont-size: var(--ck-font-size-small);\n\t\tmargin-top: var(--ck-spacing-small);\n\n\t\t/* Let the info wrap to the next line to avoid stretching the layout horizontally.\n\t\tThe status could be very long. */\n\t\twhite-space: normal;\n\n\t\t&.ck-labeled-field-view__status_error {\n\t\t\tcolor: var(--ck-color-base-error);\n\t\t}\n\t}\n\n\t/* Disabled fields and fields that have no focus should fade out. */\n\t&.ck-disabled > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label,\n\t&.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused) > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label {\n\t\tcolor: var(--ck-color-input-disabled-text);\n\t}\n\n\t/* Fields that are disabled or not focused and without a placeholder should have full-sized labels. */\n\t/* stylelint-disable-next-line no-descending-specificity */\n\t&.ck-disabled.ck-labeled-field-view_empty:not(.ck-labeled-field-view_placeholder) > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label,\n\t&.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder):not(.ck-error) > .ck.ck-labeled-field-view__input-wrapper > .ck.ck-label {\n\t\t@mixin ck-dir ltr {\n\t\t\ttransform: translate(var(--ck-labeled-field-label-default-position-x), var(--ck-labeled-field-label-default-position-y)) scale(1);\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\ttransform: translate(calc(-1 * var(--ck-labeled-field-label-default-position-x)), var(--ck-labeled-field-label-default-position-y)) scale(1);\n\t\t}\n\n\t\t/* Compensate for the default translate position. */\n\t\tmax-width: calc(var(--ck-labeled-field-empty-unfocused-max-width));\n\n\t\tbackground: transparent;\n\t\tpadding: 0;\n\t}\n\n\t/*------ DropdownView integration ----------------------------------------------------------------------------------- */\n\n\t/* Make sure dropdown\' background color in any of dropdown\'s state does not collide with labeled field. */\n\t& > .ck.ck-labeled-field-view__input-wrapper > .ck-dropdown > .ck.ck-button {\n\t\tbackground: transparent;\n\t}\n\n\t/* When the dropdown is "empty", the labeled field label replaces its label. */\n\t&.ck-labeled-field-view_empty > .ck.ck-labeled-field-view__input-wrapper > .ck-dropdown > .ck-button > .ck-button__label {\n\t\topacity: 0;\n\t}\n\n\t/* Make sure the label of the empty, unfocused input does not cover the dropdown arrow. */\n\t&.ck-labeled-field-view_empty:not(.ck-labeled-field-view_focused):not(.ck-labeled-field-view_placeholder) > .ck.ck-labeled-field-view__input-wrapper > .ck-dropdown + .ck-label {\n\t\tmax-width: calc(var(--ck-labeled-field-empty-unfocused-max-width) - var(--ck-dropdown-arrow-size) - var(--ck-spacing-standard));\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},5199:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-list{display:flex;flex-direction:column;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.ck.ck-list .ck-list__item,.ck.ck-list .ck-list__separator{display:block}.ck.ck-list .ck-list__item>:focus{position:relative;z-index:var(--ck-z-default)}:root{--ck-list-button-padding:calc(var(--ck-line-height-base)*0.11*var(--ck-font-size-base)) calc(var(--ck-line-height-base)*0.4*var(--ck-font-size-base))}.ck.ck-list{border-radius:0}.ck-rounded-corners .ck.ck-list,.ck.ck-list.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-list{background:var(--ck-color-list-background);list-style-type:none}.ck.ck-list__item{cursor:default;min-width:12em}.ck.ck-list__item>.ck-button{border-radius:0;min-height:unset;width:100%}[dir=ltr] .ck.ck-list__item>.ck-button{text-align:left}[dir=rtl] .ck.ck-list__item>.ck-button{text-align:right}.ck.ck-list__item>.ck-button{padding:var(--ck-list-button-padding)}.ck.ck-list__item>.ck-button:active{box-shadow:none}.ck.ck-list__item>.ck-button.ck-on{background:var(--ck-color-list-button-on-background);color:var(--ck-color-list-button-on-text)}.ck.ck-list__item>.ck-button.ck-on:active{box-shadow:none}.ck.ck-list__item>.ck-button.ck-on:hover:not(.ck-disabled){background:var(--ck-color-list-button-on-background-focus)}.ck.ck-list__item>.ck-button.ck-on:focus:not(.ck-switchbutton):not(.ck-disabled){border-color:var(--ck-color-base-background)}.ck.ck-list__item>.ck-button:hover:not(.ck-disabled){background:var(--ck-color-list-button-hover-background)}.ck.ck-list__item>.ck-switchbutton.ck-on{background:var(--ck-color-list-background);color:inherit}.ck.ck-list__item>.ck-switchbutton.ck-on:hover:not(.ck-disabled){background:var(--ck-color-list-button-hover-background);color:inherit}.ck-list .ck-list__group{padding-top:var(--ck-spacing-medium);:not(.ck-hidden)~&{border-top:1px solid var(--ck-color-base-border)}}.ck-list .ck-list__group>.ck-label{font-size:11px;font-weight:700;padding:var(--ck-spacing-medium) var(--ck-spacing-medium) 0 var(--ck-spacing-medium)}.ck.ck-list__separator{background:var(--ck-color-base-border);height:1px;width:100%}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/list/list.css","webpack://./../ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/list/list.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAOA,YAGC,YAAa,CACb,qBAAsB,CCFtB,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBDaD,CAZC,2DAEC,aACD,CAKA,kCACC,iBAAkB,CAClB,2BACD,CEdD,MACC,qJAGD,CAEA,YCLC,eDUD,CALA,+DCDE,qCDMF,CALA,YAIC,0CAA2C,CAD3C,oBAED,CAEA,kBACC,cAAe,CACf,cA2DD,CAzDC,6BAGC,eAAgB,CAFhB,gBAAiB,CACjB,UAwCD,CA1CA,uCAME,eAoCF,CA1CA,uCAUE,gBAgCF,CA1CA,6BAgBC,qCA0BD,CAxBC,oCACC,eACD,CAEA,mCACC,oDAAqD,CACrD,yCAaD,CAXC,0CACC,eACD,CAEA,2DACC,0DACD,CAEA,iFACC,4CACD,CAGD,qDACC,uDACD,CAMA,yCACC,0CAA2C,CAC3C,aAMD,CAJC,iEACC,uDAAwD,CACxD,aACD,CAKH,yBACC,oCAAqC,CAGrC,mBACC,gDACD,CAOD,CALC,mCACC,cAAe,CACf,eAAiB,CACjB,oFACD,CAGD,uBAGC,sCAAuC,CAFvC,UAAW,CACX,UAED",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../mixins/_unselectable.css";\n\n.ck.ck-list {\n\t@mixin ck-unselectable;\n\n\tdisplay: flex;\n\tflex-direction: column;\n\n\t& .ck-list__item,\n\t& .ck-list__separator {\n\t\tdisplay: block;\n\t}\n\n\t/* Make sure that whatever child of the list item gets focus, it remains on the\n\ttop. Thanks to that, styles like box-shadow, outline, etc. are not masked by\n\tadjacent list items. */\n\t& .ck-list__item > *:focus {\n\t\tposition: relative;\n\t\tz-index: var(--ck-z-default);\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Makes element unselectable.\n */\n@define-mixin ck-unselectable {\n\t-moz-user-select: none;\n\t-webkit-user-select: none;\n\t-ms-user-select: none;\n\tuser-select: none\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_disabled.css";\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_shadow.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n:root {\n\t--ck-list-button-padding:\n\t\tcalc(.11 * var(--ck-line-height-base) * var(--ck-font-size-base))\n\t\tcalc(.4 * var(--ck-line-height-base) * var(--ck-font-size-base));\n}\n\n.ck.ck-list {\n\t@mixin ck-rounded-corners;\n\n\tlist-style-type: none;\n\tbackground: var(--ck-color-list-background);\n}\n\n.ck.ck-list__item {\n\tcursor: default;\n\tmin-width: 12em;\n\n\t& > .ck-button {\n\t\tmin-height: unset;\n\t\twidth: 100%;\n\t\tborder-radius: 0;\n\n\t\t@mixin ck-dir ltr {\n\t\t\ttext-align: left;\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\ttext-align: right;\n\t\t}\n\n\t\t/* List items should have the same height. Use absolute units to make sure it is so\n\t\t because e.g. different heading styles may have different height\n\t\t https://github.com/ckeditor/ckeditor5-heading/issues/63 */\n\t\tpadding: var(--ck-list-button-padding);\n\n\t\t&:active {\n\t\t\tbox-shadow: none;\n\t\t}\n\n\t\t&.ck-on {\n\t\t\tbackground: var(--ck-color-list-button-on-background);\n\t\t\tcolor: var(--ck-color-list-button-on-text);\n\n\t\t\t&:active {\n\t\t\t\tbox-shadow: none;\n\t\t\t}\n\n\t\t\t&:hover:not(.ck-disabled) {\n\t\t\t\tbackground: var(--ck-color-list-button-on-background-focus);\n\t\t\t}\n\n\t\t\t&:focus:not(.ck-switchbutton):not(.ck-disabled) {\n\t\t\t\tborder-color: var(--ck-color-base-background);\n\t\t\t}\n\t\t}\n\n\t\t&:hover:not(.ck-disabled) {\n\t\t\tbackground: var(--ck-color-list-button-hover-background);\n\t\t}\n\t}\n\n\t/* It\'s unnecessary to change the background/text of a switch toggle; it has different ways\n\tof conveying its state (like the switcher) */\n\t& > .ck-switchbutton {\n\t\t&.ck-on {\n\t\t\tbackground: var(--ck-color-list-background);\n\t\t\tcolor: inherit;\n\n\t\t\t&:hover:not(.ck-disabled) {\n\t\t\t\tbackground: var(--ck-color-list-button-hover-background);\n\t\t\t\tcolor: inherit;\n\t\t\t}\n\t\t}\n\t}\n}\n\n.ck-list .ck-list__group {\n\tpadding-top: var(--ck-spacing-medium);\n\n\t/* The group should have a border when it\'s not the first item. */\n\t*:not(.ck-hidden) ~ & {\n\t\tborder-top: 1px solid var(--ck-color-base-border);\n\t}\n\n\t& > .ck-label {\n\t\tfont-size: 11px;\n\t\tfont-weight: bold;\n\t\tpadding: var(--ck-spacing-medium) var(--ck-spacing-medium) 0 var(--ck-spacing-medium);\n\t}\n}\n\n.ck.ck-list__separator {\n\theight: 1px;\n\twidth: 100%;\n\tbackground: var(--ck-color-base-border);\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},497:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-menu-bar{background:var(--ck-color-base-background);border:1px solid var(--ck-color-toolbar-border);display:flex;flex-wrap:wrap;gap:var(--ck-spacing-small);justify-content:flex-start;padding:var(--ck-spacing-small);width:100%}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/menubar/menubar.css"],names:[],mappings:"AAKA,gBAIC,0CAA2C,CAG3C,+CAAgD,CANhD,YAAa,CACb,cAAe,CAIf,2BAA4B,CAH5B,0BAA2B,CAE3B,+BAAgC,CAGhC,UACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-menu-bar {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tjustify-content: flex-start;\n\tbackground: var(--ck-color-base-background);\n\tpadding: var(--ck-spacing-small);\n\tgap: var(--ck-spacing-small);\n\tborder: 1px solid var(--ck-color-toolbar-border);\n\twidth: 100%;\n}\n"],sourceRoot:""}]);const a=s},4:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-menu-bar__menu{display:block;font-size:inherit;position:relative}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level{max-width:100%}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/menubar/menubarmenu.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/menubar/menubarmenu.css"],names:[],mappings:"AAKA,sBACC,aAAc,CCCd,iBAAkB,CDAlB,iBACD,CCCC,kDACC,cACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-menu-bar__menu {\n\tdisplay: block;\n\tposition: relative;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-menu-bar__menu {\n\t/* Enable font size inheritance, which allows fluid UI scaling. */\n\tfont-size: inherit;\n\n\t&.ck-menu-bar__menu_top-level {\n\t\tmax-width: 100%;\n\t}\n}\n"],sourceRoot:""}]);const a=s},3344:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-menu-bar__menu>.ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow{pointer-events:none;z-index:var(--ck-z-default)}.ck.ck-menu-bar__menu>.ck-menu-bar__menu__button{padding:var(--ck-list-button-padding);width:100%}.ck.ck-menu-bar__menu>.ck-menu-bar__menu__button>.ck-button__label{flex-grow:1;overflow:hidden;text-overflow:ellipsis}.ck.ck-menu-bar__menu>.ck-menu-bar__menu__button.ck-disabled>.ck-button__label{opacity:var(--ck-disabled-opacity)}[dir=ltr] .ck.ck-menu-bar__menu>.ck-menu-bar__menu__button:not(.ck-button_with-text){padding-left:var(--ck-spacing-small)}[dir=rtl] .ck.ck-menu-bar__menu>.ck-menu-bar__menu__button:not(.ck-button_with-text){padding-right:var(--ck-spacing-small)}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level>.ck-menu-bar__menu__button{min-height:unset;padding:var(--ck-spacing-small) var(--ck-spacing-medium)}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level>.ck-menu-bar__menu__button .ck-button__label{line-height:unset;width:unset}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level>.ck-menu-bar__menu__button.ck-on{border-bottom-left-radius:0;border-bottom-right-radius:0}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level>.ck-menu-bar__menu__button .ck-icon{display:none}.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button{border-radius:0}.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button:focus{border-color:transparent;box-shadow:none}.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button:focus:not(.ck-on){background:var(--ck-color-button-default-hover-background)}.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button:not(:has(.ck-button__icon))>.ck-button__label{margin-left:calc(var(--ck-icon-size) - var(--ck-spacing-small))}.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow{width:var(--ck-dropdown-arrow-size)}[dir=ltr] .ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow{transform:rotate(-90deg)}[dir=rtl] .ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow{transform:rotate(90deg)}.ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button.ck-disabled>.ck-menu-bar__menu__button__arrow{opacity:var(--ck-disabled-opacity)}[dir=ltr] .ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow{margin-left:var(--ck-spacing-standard);right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-menu-bar__menu:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button>.ck-menu-bar__menu__button__arrow{left:var(--ck-spacing-standard);margin-right:var(--ck-spacing-small)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/menubar/menubarmenubutton.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/menubar/menubarmenubutton.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_disabled.css"],names:[],mappings:"AAMC,mFACC,mBAAoB,CACpB,2BACD,CCIA,iDACC,qCAAsC,CACtC,UAuBD,CArBC,mEACC,WAAY,CACZ,eAAgB,CAChB,sBACD,CAEA,+ECdD,kCDgBC,CAGC,qFACC,oCACD,CAIA,qFACC,qCACD,CAOF,6EAEC,gBAAiB,CADjB,wDAgBD,CAbC,+FAEC,iBAAkB,CADlB,WAED,CAEA,mFACC,2BAA4B,CAC5B,4BACD,CAEA,sFACC,YACD,CAMD,mFACC,eAiDD,CA/CC,yFACC,wBAAyB,CACzB,eAKD,CAHC,qGACC,0DACD,CAID,iIACC,+DACD,CAEA,qHACC,mCASD,CAVA,+HAIE,wBAMF,CAVA,+HAQE,uBAEF,CAEA,iICrFD,kCDuFC,CAGC,+HAIC,sCAAuC,CAHvC,gCAID,CAIA,+HACC,+BAAgC,CAGhC,oCACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-menu-bar__menu {\n\t& > .ck-menu-bar__menu__button > .ck-menu-bar__menu__button__arrow {\n\t\tpointer-events: none;\n\t\tz-index: var(--ck-z-default);\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_disabled.css";\n@import "../../mixins/_button.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-menu-bar__menu {\n\t/*\n\t * All menu buttons.\n\t */\n\t& > .ck-menu-bar__menu__button {\n\t\tpadding: var(--ck-list-button-padding);\n\t\twidth: 100%;\n\n\t\t& > .ck-button__label {\n\t\t\tflex-grow: 1;\n\t\t\toverflow: hidden;\n\t\t\ttext-overflow: ellipsis;\n\t\t}\n\n\t\t&.ck-disabled > .ck-button__label {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t@mixin ck-dir ltr {\n\t\t\t&:not(.ck-button_with-text) {\n\t\t\t\tpadding-left: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t&:not(.ck-button_with-text) {\n\t\t\t\tpadding-right: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\t}\n\n\t/*\n\t * Top-level menu buttons only.\n\t */\n\t&.ck-menu-bar__menu_top-level > .ck-menu-bar__menu__button {\n\t\tpadding: var(--ck-spacing-small) var(--ck-spacing-medium);\n\t\tmin-height: unset;\n\n\t\t& .ck-button__label {\n\t\t\twidth: unset;\n\t\t\tline-height: unset;\n\t\t}\n\n\t\t&.ck-on {\n\t\t\tborder-bottom-left-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\n\t\t& .ck-icon {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t/*\n\t * Sub-menu buttons.\n\t */\n\t&:not(.ck-menu-bar__menu_top-level) .ck-menu-bar__menu__button {\n\t\tborder-radius: 0;\n\n\t\t&:focus {\n\t\t\tborder-color: transparent;\n\t\t\tbox-shadow: none;\n\n\t\t\t&:not(.ck-on) {\n\t\t\t\tbackground: var(--ck-color-button-default-hover-background);\n\t\t\t}\n\t\t}\n\n\t\t/* Spacing in buttons that miss the icon. */\n\t\t&:not(:has(.ck-button__icon)) > .ck-button__label {\n\t\t\tmargin-left: calc(var(--ck-icon-size) - var(--ck-spacing-small));\n\t\t}\n\n\t\t& > .ck-menu-bar__menu__button__arrow {\n\t\t\twidth: var(--ck-dropdown-arrow-size);\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\ttransform: rotate(-90deg);\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\ttransform: rotate(90deg);\n\t\t\t}\n\t\t}\n\n\t\t&.ck-disabled > .ck-menu-bar__menu__button__arrow {\n\t\t\t@mixin ck-disabled;\n\t\t}\n\n\t\t@mixin ck-dir ltr {\n\t\t\t& > .ck-menu-bar__menu__button__arrow {\n\t\t\t\tright: var(--ck-spacing-standard);\n\n\t\t\t\t/* A space to accommodate the triangle. */\n\t\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t\t}\n\t\t}\n\n\t\t@mixin ck-dir rtl {\n\t\t\t& > .ck-menu-bar__menu__button__arrow {\n\t\t\t\tleft: var(--ck-spacing-standard);\n\n\t\t\t\t/* A space to accommodate the triangle. */\n\t\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A class which indicates that an element holding it is disabled.\n */\n@define-mixin ck-disabled {\n\topacity: var(--ck-disabled-opacity);\n}\n"],sourceRoot:""}]);const a=s},9481:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-menu-bar-menu-item-min-width:18em}.ck.ck-menu-bar__menu .ck.ck-menu-bar__menu__item{min-width:var(--ck-menu-bar-menu-item-min-width)}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/menubar/menubarmenulistitem.css"],names:[],mappings:"AAKA,MACC,sCACD,CAEA,kDACC,gDACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-menu-bar-menu-item-min-width: 18em;\n}\n\n.ck.ck-menu-bar__menu .ck.ck-menu-bar__menu__item {\n\tmin-width: var(--ck-menu-bar-menu-item-min-width);\n}\n"],sourceRoot:""}]);const a=s},977:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button{border-radius:0}.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button>.ck-spinner-container,.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button>.ck-spinner-container .ck-spinner{--ck-toolbar-spinner-size:20px}.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button>.ck-spinner-container{margin-left:calc(var(--ck-spacing-small)*-1);margin-right:var(--ck-spacing-small)}.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button:focus{border-color:transparent;box-shadow:none}.ck.ck-menu-bar__menu .ck-button.ck-menu-bar__menu__item__button:focus:not(.ck-on){background:var(--ck-color-button-default-hover-background)}.ck.ck-menu-bar__menu.ck-menu-bar__menu_top-level>.ck-menu-bar__menu__panel>ul>.ck-menu-bar__menu__item>.ck-menu-bar__menu__item__button:not(:has(.ck-button__icon))>.ck-button__label{margin-left:calc(var(--ck-icon-size) - var(--ck-spacing-small))}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/menubar/menubarmenulistitembutton.css"],names:[],mappings:"AASC,iEACC,eA0BD,CAxBC,0LAGC,8BACD,CAEA,uFAEC,4CAA+C,CAC/C,oCACD,CAMA,uEACC,wBAAyB,CACzB,eAKD,CAHC,mFACC,0DACD,CASD,uLACC,+DACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-menu-bar__menu {\n\t/*\n\t * List item buttons.\n\t */\n\t& .ck-button.ck-menu-bar__menu__item__button {\n\t\tborder-radius: 0;\n\n\t\t& > .ck-spinner-container,\n\t\t& > .ck-spinner-container .ck-spinner {\n\t\t\t/* These styles correspond to .ck-icon so that the spinner seamlessly replaces the icon. */\n\t\t\t--ck-toolbar-spinner-size: 20px;\n\t\t}\n\n\t\t& > .ck-spinner-container {\n\t\t\t/* These margins are the same as for .ck-icon. */\n\t\t\tmargin-left: calc(-1 * var(--ck-spacing-small));\n\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t}\n\n\t\t/*\n\t\t * Hovered items automatically get focused. Default focus styles look odd\n\t\t * while moving across a huge list of items so let's get rid of them\n\t\t */\n\t\t&:focus {\n\t\t\tborder-color: transparent;\n\t\t\tbox-shadow: none;\n\n\t\t\t&:not(.ck-on) {\n\t\t\t\tbackground: var(--ck-color-button-default-hover-background);\n\t\t\t}\n\t\t}\n\t}\n\n\t/*\n\t * First-level sub-menu item buttons.\n\t */\n\t&.ck-menu-bar__menu_top-level > .ck-menu-bar__menu__panel > ul > .ck-menu-bar__menu__item > .ck-menu-bar__menu__item__button {\n\t\t/* Spacing in buttons that miss the icon. */\n\t\t&:not(:has(.ck-button__icon)) > .ck-button__label {\n\t\t\tmargin-left: calc(var(--ck-icon-size) - var(--ck-spacing-small));\n\t\t}\n\t}\n}\n\n\n"],sourceRoot:""}]);const a=s},9108:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-menu-bar-menu-max-width:75vw;--ck-menu-bar-nested-menu-horizontal-offset:5px}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel{max-width:var(--ck-menu-bar-menu-max-width);position:absolute;z-index:var(--ck-z-panel)}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ne,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_nw{bottom:100%}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_se,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_sw{bottom:auto;top:100%}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ne,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_se{left:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_nw,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_sw{right:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_en,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_es{left:calc(100% - var(--ck-menu-bar-nested-menu-horizontal-offset))}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_es{top:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_en{bottom:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_wn,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ws{right:calc(100% - var(--ck-menu-bar-nested-menu-horizontal-offset))}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ws{top:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_wn{bottom:0}:root{--ck-menu-bar-menu-panel-max-width:75vw}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel{border-radius:0}.ck-rounded-corners .ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel{background:var(--ck-color-dropdown-panel-background);border:1px solid var(--ck-color-dropdown-panel-border);bottom:0;box-shadow:var(--ck-drop-shadow),0 0;height:fit-content;max-width:var(--ck-menu-bar-menu-panel-max-width)}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_es,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_se{border-top-left-radius:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_sw,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ws{border-top-right-radius:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_en,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_ne{border-bottom-left-radius:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_nw,.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel.ck-menu-bar__menu__panel_position_wn{border-bottom-right-radius:0}.ck.ck-menu-bar__menu>.ck.ck-menu-bar__menu__panel:focus{outline:none}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/menubar/menubarmenupanel.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/menubar/menubarmenupanel.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,MACC,iCAAkC,CAClC,+CACD,CAEA,mDAEC,2CAA4C,CAC5C,iBAAkB,CAFlB,yBAkDD,CA9CC,gLAEC,WACD,CAEA,gLAGC,WAAY,CADZ,QAED,CAEA,gLAEC,MACD,CAEA,gLAEC,OACD,CAEA,gLAEC,kEACD,CAEA,wFACC,KACD,CAEA,wFACC,QACD,CAEA,gLAEC,mEACD,CAEA,wFACC,KACD,CAEA,wFACC,QACD,CCpDD,MACC,uCACD,CAEA,mDCDC,eDmCD,CAlCA,6ICGE,qCD+BF,CAlCA,mDAIC,oDAAqD,CACrD,sDAAuD,CACvD,QAAS,CETT,oCAA8B,CFU9B,kBAAmB,CACnB,iDA0BD,CAvBC,gLAEC,wBACD,CAEA,gLAEC,yBACD,CAEA,gLAEC,2BACD,CAEA,gLAEC,4BACD,CAEA,yDACC,YACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-menu-bar-menu-max-width: 75vw;\n\t--ck-menu-bar-nested-menu-horizontal-offset: 5px;\n}\n\n.ck.ck-menu-bar__menu > .ck.ck-menu-bar__menu__panel {\n\tz-index: var(--ck-z-panel);\n\tmax-width: var(--ck-menu-bar-menu-max-width);\n\tposition: absolute;\n\n\t&.ck-menu-bar__menu__panel_position_ne,\n\t&.ck-menu-bar__menu__panel_position_nw {\n\t\tbottom: 100%;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_se,\n\t&.ck-menu-bar__menu__panel_position_sw {\n\t\ttop: 100%;\n\t\tbottom: auto;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_ne,\n\t&.ck-menu-bar__menu__panel_position_se {\n\t\tleft: 0px;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_nw,\n\t&.ck-menu-bar__menu__panel_position_sw {\n\t\tright: 0px;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_es,\n\t&.ck-menu-bar__menu__panel_position_en {\n\t\tleft: calc( 100% - var(--ck-menu-bar-nested-menu-horizontal-offset) );\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_es {\n\t\ttop: 0px;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_en {\n\t\tbottom: 0px;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_ws,\n\t&.ck-menu-bar__menu__panel_position_wn {\n\t\tright: calc( 100% - var(--ck-menu-bar-nested-menu-horizontal-offset) );\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_ws {\n\t\ttop: 0px;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_wn {\n\t\tbottom: 0px;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_shadow.css";\n\n:root {\n\t--ck-menu-bar-menu-panel-max-width: 75vw;\n}\n\n.ck.ck-menu-bar__menu > .ck.ck-menu-bar__menu__panel {\n\t@mixin ck-rounded-corners;\n\t@mixin ck-drop-shadow;\n\n\tbackground: var(--ck-color-dropdown-panel-background);\n\tborder: 1px solid var(--ck-color-dropdown-panel-border);\n\tbottom: 0;\n\theight: fit-content;\n\tmax-width: var(--ck-menu-bar-menu-panel-max-width);\n\n\t/* Corner border radius consistent with the button. */\n\t&.ck-menu-bar__menu__panel_position_es,\n\t&.ck-menu-bar__menu__panel_position_se {\n\t\tborder-top-left-radius: 0;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_ws,\n\t&.ck-menu-bar__menu__panel_position_sw {\n\t\tborder-top-right-radius: 0;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_en,\n\t&.ck-menu-bar__menu__panel_position_ne {\n\t\tborder-bottom-left-radius: 0;\n\t}\n\n\t&.ck-menu-bar__menu__panel_position_wn,\n\t&.ck-menu-bar__menu__panel_position_nw {\n\t\tborder-bottom-right-radius: 0;\n\t}\n\n\t&:focus {\n\t\toutline: none;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},3710:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,':root{--ck-balloon-panel-arrow-z-index:calc(var(--ck-z-default) - 3)}.ck.ck-balloon-panel{display:none;position:absolute;z-index:var(--ck-z-panel)}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after,.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{content:"";position:absolute}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel[class*=arrow_n]:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel[class*=arrow_n]:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel[class*=arrow_s]:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel[class*=arrow_s]:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel.ck-balloon-panel_visible{display:block}:root{--ck-balloon-border-width:1px;--ck-balloon-arrow-offset:2px;--ck-balloon-arrow-height:10px;--ck-balloon-arrow-half-width:8px;--ck-balloon-arrow-drop-shadow:0 2px 2px var(--ck-color-shadow-drop)}.ck.ck-balloon-panel{border-radius:0}.ck-rounded-corners .ck.ck-balloon-panel,.ck.ck-balloon-panel.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-balloon-panel{background:var(--ck-color-panel-background);border:var(--ck-balloon-border-width) solid var(--ck-color-panel-border);box-shadow:var(--ck-drop-shadow),0 0;min-height:15px}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after,.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{border-style:solid;height:0;width:0}.ck.ck-balloon-panel[class*=arrow_n]:after,.ck.ck-balloon-panel[class*=arrow_n]:before{border-width:0 var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width)}.ck.ck-balloon-panel[class*=arrow_n]:before{border-color:transparent transparent var(--ck-color-panel-border) transparent;margin-top:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_n]:after{border-color:transparent transparent var(--ck-color-panel-background) transparent;margin-top:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel[class*=arrow_s]:after,.ck.ck-balloon-panel[class*=arrow_s]:before{border-width:var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width) 0 var(--ck-balloon-arrow-half-width)}.ck.ck-balloon-panel[class*=arrow_s]:before{border-color:var(--ck-color-panel-border) transparent transparent;filter:drop-shadow(var(--ck-balloon-arrow-drop-shadow));margin-bottom:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_s]:after{border-color:var(--ck-color-panel-background) transparent transparent transparent;margin-bottom:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel[class*=arrow_e]:after,.ck.ck-balloon-panel[class*=arrow_e]:before{border-width:var(--ck-balloon-arrow-half-width) 0 var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height)}.ck.ck-balloon-panel[class*=arrow_e]:before{border-color:transparent transparent transparent var(--ck-color-panel-border);margin-right:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_e]:after{border-color:transparent transparent transparent var(--ck-color-panel-background);margin-right:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel[class*=arrow_w]:after,.ck.ck-balloon-panel[class*=arrow_w]:before{border-width:var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width) 0}.ck.ck-balloon-panel[class*=arrow_w]:before{border-color:transparent var(--ck-color-panel-border) transparent transparent;margin-left:calc(var(--ck-balloon-border-width)*-1)}.ck.ck-balloon-panel[class*=arrow_w]:after{border-color:transparent var(--ck-color-panel-background) transparent transparent;margin-left:calc(var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width))}.ck.ck-balloon-panel.ck-balloon-panel_arrow_n:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_n:before{left:50%;margin-left:calc(var(--ck-balloon-arrow-half-width)*-1);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nw:before{left:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_ne:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_ne:before{right:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_s:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_s:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);left:50%;margin-left:calc(var(--ck-balloon-arrow-half-width)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_sw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_sw:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);left:calc(var(--ck-balloon-arrow-half-width)*2)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_se:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_se:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);right:calc(var(--ck-balloon-arrow-half-width)*2)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_sme:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_sme:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);margin-right:calc(var(--ck-balloon-arrow-half-width)*2);right:25%}.ck.ck-balloon-panel.ck-balloon-panel_arrow_smw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_smw:before{bottom:calc(var(--ck-balloon-arrow-height)*-1);left:25%;margin-left:calc(var(--ck-balloon-arrow-half-width)*2)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nme:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nme:before{margin-right:calc(var(--ck-balloon-arrow-half-width)*2);right:25%;top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nmw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nmw:before{left:25%;margin-left:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_e:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_e:before{margin-top:calc(var(--ck-balloon-arrow-half-width)*-1);right:calc(var(--ck-balloon-arrow-height)*-1);top:50%}.ck.ck-balloon-panel.ck-balloon-panel_arrow_w:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_w:before{left:calc(var(--ck-balloon-arrow-height)*-1);margin-top:calc(var(--ck-balloon-arrow-half-width)*-1);top:50%}',"",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/panel/balloonpanel.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/balloonpanel.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,MAEC,8DACD,CAEA,qBACC,YAAa,CACb,iBAAkB,CAElB,yBAyCD,CAtCE,+GAEC,UAAW,CACX,iBACD,CAEA,wDACC,6CACD,CAEA,uDACC,uDACD,CAIA,4CACC,6CACD,CAEA,2CACC,uDACD,CAIA,4CACC,6CACD,CAEA,2CACC,uDACD,CAGD,8CACC,aACD,CC9CD,MACC,6BAA8B,CAC9B,6BAA8B,CAC9B,8BAA+B,CAC/B,iCAAkC,CAClC,oEACD,CAEA,qBCLC,eDmMD,CA9LA,iFCDE,qCD+LF,CA9LA,qBAMC,2CAA4C,CAC5C,wEAAyE,CEdzE,oCAA8B,CFW9B,eA0LD,CApLE,+GAIC,kBAAmB,CADnB,QAAS,CADT,OAGD,CAIA,uFAEC,mHACD,CAEA,4CACC,6EAA8E,CAC9E,kDACD,CAEA,2CACC,iFAAkF,CAClF,gFACD,CAIA,uFAEC,mHACD,CAEA,4CACC,iEAAkE,CAClE,uDAAwD,CACxD,qDACD,CAEA,2CACC,iFAAkF,CAClF,mFACD,CAIA,uFAEC,mHACD,CAEA,4CACC,6EAA8E,CAC9E,oDACD,CAEA,2CACC,iFAAkF,CAClF,kFACD,CAIA,uFAEC,mHACD,CAEA,4CACC,6EAA8E,CAC9E,mDACD,CAEA,2CACC,iFAAkF,CAClF,iFACD,CAIA,yGAEC,QAAS,CACT,uDAA0D,CAC1D,2CACD,CAIA,2GAEC,+CAAkD,CAClD,2CACD,CAIA,2GAEC,gDAAmD,CACnD,2CACD,CAIA,yGAIC,8CAAiD,CAFjD,QAAS,CACT,uDAED,CAIA,2GAGC,8CAAiD,CADjD,+CAED,CAIA,2GAGC,8CAAiD,CADjD,gDAED,CAIA,6GAIC,8CAAiD,CADjD,uDAA0D,CAD1D,SAGD,CAIA,6GAIC,8CAAiD,CAFjD,QAAS,CACT,sDAED,CAIA,6GAGC,uDAA0D,CAD1D,SAAU,CAEV,2CACD,CAIA,6GAEC,QAAS,CACT,sDAAyD,CACzD,2CACD,CAIA,yGAGC,sDAAyD,CADzD,6CAAgD,CAEhD,OACD,CAIA,yGAEC,4CAA+C,CAC/C,sDAAyD,CACzD,OACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/* Make sure the balloon arrow does not float over its children. */\n\t--ck-balloon-panel-arrow-z-index: calc(var(--ck-z-default) - 3);\n}\n\n.ck.ck-balloon-panel {\n\tdisplay: none;\n\tposition: absolute;\n\n\tz-index: var(--ck-z-panel);\n\n\t&.ck-balloon-panel_with-arrow {\n\t\t&::before,\n\t\t&::after {\n\t\t\tcontent: "";\n\t\t\tposition: absolute;\n\t\t}\n\n\t\t&::before {\n\t\t\tz-index: var(--ck-balloon-panel-arrow-z-index);\n\t\t}\n\n\t\t&::after {\n\t\t\tz-index: calc(var(--ck-balloon-panel-arrow-z-index) + 1);\n\t\t}\n\t}\n\n\t&[class*="arrow_n"] {\n\t\t&::before {\n\t\t\tz-index: var(--ck-balloon-panel-arrow-z-index);\n\t\t}\n\n\t\t&::after {\n\t\t\tz-index: calc(var(--ck-balloon-panel-arrow-z-index) + 1);\n\t\t}\n\t}\n\n\t&[class*="arrow_s"] {\n\t\t&::before {\n\t\t\tz-index: var(--ck-balloon-panel-arrow-z-index);\n\t\t}\n\n\t\t&::after {\n\t\t\tz-index: calc(var(--ck-balloon-panel-arrow-z-index) + 1);\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_visible {\n\t\tdisplay: block;\n\t}\n}\n','/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "../../../mixins/_shadow.css";\n\n:root {\n\t--ck-balloon-border-width: 1px;\n\t--ck-balloon-arrow-offset: 2px;\n\t--ck-balloon-arrow-height: 10px;\n\t--ck-balloon-arrow-half-width: 8px;\n\t--ck-balloon-arrow-drop-shadow: 0 2px 2px var(--ck-color-shadow-drop);\n}\n\n.ck.ck-balloon-panel {\n\t@mixin ck-rounded-corners;\n\t@mixin ck-drop-shadow;\n\n\tmin-height: 15px;\n\n\tbackground: var(--ck-color-panel-background);\n\tborder: var(--ck-balloon-border-width) solid var(--ck-color-panel-border);\n\n\t&.ck-balloon-panel_with-arrow {\n\t\t&::before,\n\t\t&::after {\n\t\t\twidth: 0;\n\t\t\theight: 0;\n\t\t\tborder-style: solid;\n\t\t}\n\t}\n\n\t&[class*="arrow_n"] {\n\t\t&::before,\n\t\t&::after {\n\t\t\tborder-width: 0 var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width);\n\t\t}\n\n\t\t&::before {\n\t\t\tborder-color: transparent transparent var(--ck-color-panel-border) transparent;\n\t\t\tmargin-top: calc( -1 * var(--ck-balloon-border-width) );\n\t\t}\n\n\t\t&::after {\n\t\t\tborder-color: transparent transparent var(--ck-color-panel-background) transparent;\n\t\t\tmargin-top: calc( var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width) );\n\t\t}\n\t}\n\n\t&[class*="arrow_s"] {\n\t\t&::before,\n\t\t&::after {\n\t\t\tborder-width: var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width) 0 var(--ck-balloon-arrow-half-width);\n\t\t}\n\n\t\t&::before {\n\t\t\tborder-color: var(--ck-color-panel-border) transparent transparent;\n\t\t\tfilter: drop-shadow(var(--ck-balloon-arrow-drop-shadow));\n\t\t\tmargin-bottom: calc( -1 * var(--ck-balloon-border-width) );\n\t\t}\n\n\t\t&::after {\n\t\t\tborder-color: var(--ck-color-panel-background) transparent transparent transparent;\n\t\t\tmargin-bottom: calc( var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width) );\n\t\t}\n\t}\n\n\t&[class*="arrow_e"] {\n\t\t&::before,\n\t\t&::after {\n\t\t\tborder-width: var(--ck-balloon-arrow-half-width) 0 var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height);\n\t\t}\n\n\t\t&::before {\n\t\t\tborder-color: transparent transparent transparent var(--ck-color-panel-border);\n\t\t\tmargin-right: calc( -1 * var(--ck-balloon-border-width) );\n\t\t}\n\n\t\t&::after {\n\t\t\tborder-color: transparent transparent transparent var(--ck-color-panel-background);\n\t\t\tmargin-right: calc( var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width) );\n\t\t}\n\t}\n\n\t&[class*="arrow_w"] {\n\t\t&::before,\n\t\t&::after {\n\t\t\tborder-width: var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width) 0;\n\t\t}\n\n\t\t&::before {\n\t\t\tborder-color: transparent var(--ck-color-panel-border) transparent transparent;\n\t\t\tmargin-left: calc( -1 * var(--ck-balloon-border-width) );\n\t\t}\n\n\t\t&::after {\n\t\t\tborder-color: transparent var(--ck-color-panel-background) transparent transparent;\n\t\t\tmargin-left: calc( var(--ck-balloon-arrow-offset) - var(--ck-balloon-border-width) );\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_n {\n\t\t&::before,\n\t\t&::after {\n\t\t\tleft: 50%;\n\t\t\tmargin-left: calc(-1 * var(--ck-balloon-arrow-half-width));\n\t\t\ttop: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_nw {\n\t\t&::before,\n\t\t&::after {\n\t\t\tleft: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\ttop: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_ne {\n\t\t&::before,\n\t\t&::after {\n\t\t\tright: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\ttop: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_s {\n\t\t&::before,\n\t\t&::after {\n\t\t\tleft: 50%;\n\t\t\tmargin-left: calc(-1 * var(--ck-balloon-arrow-half-width));\n\t\t\tbottom: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_sw {\n\t\t&::before,\n\t\t&::after {\n\t\t\tleft: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\tbottom: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_se {\n\t\t&::before,\n\t\t&::after {\n\t\t\tright: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\tbottom: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_sme {\n\t\t&::before,\n\t\t&::after {\n\t\t\tright: 25%;\n\t\t\tmargin-right: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\tbottom: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_smw {\n\t\t&::before,\n\t\t&::after {\n\t\t\tleft: 25%;\n\t\t\tmargin-left: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\tbottom: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_nme {\n\t\t&::before,\n\t\t&::after {\n\t\t\tright: 25%;\n\t\t\tmargin-right: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\ttop: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_nmw {\n\t\t&::before,\n\t\t&::after {\n\t\t\tleft: 25%;\n\t\t\tmargin-left: calc(2 * var(--ck-balloon-arrow-half-width));\n\t\t\ttop: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_e {\n\t\t&::before,\n\t\t&::after {\n\t\t\tright: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t\tmargin-top: calc(-1 * var(--ck-balloon-arrow-half-width));\n\t\t\ttop: 50%;\n\t\t}\n\t}\n\n\t&.ck-balloon-panel_arrow_w {\n\t\t&::before,\n\t\t&::after {\n\t\t\tleft: calc(-1 * var(--ck-balloon-arrow-height));\n\t\t\tmargin-top: calc(-1 * var(--ck-balloon-arrow-half-width));\n\t\t\ttop: 50%;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},991:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck .ck-balloon-rotator__navigation{align-items:center;display:flex;justify-content:center}.ck .ck-balloon-rotator__content .ck-toolbar{justify-content:center}.ck .ck-balloon-rotator__navigation{background:var(--ck-color-toolbar-background);border-bottom:1px solid var(--ck-color-toolbar-border);padding:0 var(--ck-spacing-small)}.ck .ck-balloon-rotator__navigation>*{margin-bottom:var(--ck-spacing-small);margin-right:var(--ck-spacing-small);margin-top:var(--ck-spacing-small)}.ck .ck-balloon-rotator__navigation .ck-balloon-rotator__counter{margin-left:var(--ck-spacing-small);margin-right:var(--ck-spacing-standard)}.ck .ck-balloon-rotator__content .ck.ck-annotation-wrapper{box-shadow:none}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/panel/balloonrotator.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/balloonrotator.css"],names:[],mappings:"AAKA,oCAEC,kBAAmB,CADnB,YAAa,CAEb,sBACD,CAKA,6CACC,sBACD,CCXA,oCACC,6CAA8C,CAC9C,sDAAuD,CACvD,iCAgBD,CAbC,sCAGC,qCAAsC,CAFtC,oCAAqC,CACrC,kCAED,CAGA,iEAIC,mCAAoC,CAHpC,uCAID,CAMA,2DACC,eACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-balloon-rotator__navigation {\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n/* Buttons inside a toolbar should be centered when rotator bar is wider.\n * See: https://github.com/ckeditor/ckeditor5-ui/issues/495\n */\n.ck .ck-balloon-rotator__content .ck-toolbar {\n\tjustify-content: center;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-balloon-rotator__navigation {\n\tbackground: var(--ck-color-toolbar-background);\n\tborder-bottom: 1px solid var(--ck-color-toolbar-border);\n\tpadding: 0 var(--ck-spacing-small);\n\n\t/* Let's keep similar appearance to `ck-toolbar`. */\n\t& > * {\n\t\tmargin-right: var(--ck-spacing-small);\n\t\tmargin-top: var(--ck-spacing-small);\n\t\tmargin-bottom: var(--ck-spacing-small);\n\t}\n\n\t/* Gives counter more breath than buttons. */\n\t& .ck-balloon-rotator__counter {\n\t\tmargin-right: var(--ck-spacing-standard);\n\n\t\t/* We need to use smaller margin because of previous button's right margin. */\n\t\tmargin-left: var(--ck-spacing-small);\n\t}\n}\n\n.ck .ck-balloon-rotator__content {\n\n\t/* Disable default annotation shadow inside rotator with fake panels. */\n\t& .ck.ck-annotation-wrapper {\n\t\tbox-shadow: none;\n\t}\n}\n"],sourceRoot:""}]);const a=s},5380:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck .ck-fake-panel{position:absolute;z-index:calc(var(--ck-z-panel) - 1)}.ck .ck-fake-panel div{position:absolute}.ck .ck-fake-panel div:first-child{z-index:2}.ck .ck-fake-panel div:nth-child(2){z-index:1}:root{--ck-balloon-fake-panel-offset-horizontal:6px;--ck-balloon-fake-panel-offset-vertical:6px}.ck .ck-fake-panel div{background:var(--ck-color-panel-background);border:1px solid var(--ck-color-panel-border);border-radius:var(--ck-border-radius);box-shadow:var(--ck-drop-shadow),0 0;height:100%;min-height:15px;width:100%}.ck .ck-fake-panel div:first-child{margin-left:var(--ck-balloon-fake-panel-offset-horizontal);margin-top:var(--ck-balloon-fake-panel-offset-vertical)}.ck .ck-fake-panel div:nth-child(2){margin-left:calc(var(--ck-balloon-fake-panel-offset-horizontal)*2);margin-top:calc(var(--ck-balloon-fake-panel-offset-vertical)*2)}.ck .ck-fake-panel div:nth-child(3){margin-left:calc(var(--ck-balloon-fake-panel-offset-horizontal)*3);margin-top:calc(var(--ck-balloon-fake-panel-offset-vertical)*3)}.ck .ck-balloon-panel_arrow_s+.ck-fake-panel,.ck .ck-balloon-panel_arrow_se+.ck-fake-panel,.ck .ck-balloon-panel_arrow_sw+.ck-fake-panel{--ck-balloon-fake-panel-offset-vertical:-6px}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/panel/fakepanel.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/fakepanel.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAKA,mBACC,iBAAkB,CAGlB,mCACD,CAEA,uBACC,iBACD,CAEA,mCACC,SACD,CAEA,oCACC,SACD,CCfA,MACC,6CAA8C,CAC9C,2CACD,CAGA,uBAKC,2CAA4C,CAC5C,6CAA8C,CAC9C,qCAAsC,CCXtC,oCAA8B,CDc9B,WAAY,CAPZ,eAAgB,CAMhB,UAED,CAEA,mCACC,0DAA2D,CAC3D,uDACD,CAEA,oCACC,kEAAqE,CACrE,+DACD,CACA,oCACC,kEAAqE,CACrE,+DACD,CAGA,yIAGC,4CACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-fake-panel {\n\tposition: absolute;\n\n\t/* Fake panels should be placed under main balloon content. */\n\tz-index: calc(var(--ck-z-panel) - 1);\n}\n\n.ck .ck-fake-panel div {\n\tposition: absolute;\n}\n\n.ck .ck-fake-panel div:nth-child( 1 ) {\n\tz-index: 2;\n}\n\n.ck .ck-fake-panel div:nth-child( 2 ) {\n\tz-index: 1;\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_shadow.css";\n\n:root {\n\t--ck-balloon-fake-panel-offset-horizontal: 6px;\n\t--ck-balloon-fake-panel-offset-vertical: 6px;\n}\n\n/* Let\'s use `.ck-balloon-panel` appearance. See: balloonpanel.css. */\n.ck .ck-fake-panel div {\n\t@mixin ck-drop-shadow;\n\n\tmin-height: 15px;\n\n\tbackground: var(--ck-color-panel-background);\n\tborder: 1px solid var(--ck-color-panel-border);\n\tborder-radius: var(--ck-border-radius);\n\n\twidth: 100%;\n\theight: 100%;\n}\n\n.ck .ck-fake-panel div:nth-child( 1 ) {\n\tmargin-left: var(--ck-balloon-fake-panel-offset-horizontal);\n\tmargin-top: var(--ck-balloon-fake-panel-offset-vertical);\n}\n\n.ck .ck-fake-panel div:nth-child( 2 ) {\n\tmargin-left: calc(var(--ck-balloon-fake-panel-offset-horizontal) * 2);\n\tmargin-top: calc(var(--ck-balloon-fake-panel-offset-vertical) * 2);\n}\n.ck .ck-fake-panel div:nth-child( 3 ) {\n\tmargin-left: calc(var(--ck-balloon-fake-panel-offset-horizontal) * 3);\n\tmargin-top: calc(var(--ck-balloon-fake-panel-offset-vertical) * 3);\n}\n\n/* If balloon is positioned above element, we need to move fake panel to the top. */\n.ck .ck-balloon-panel_arrow_s + .ck-fake-panel,\n.ck .ck-balloon-panel_arrow_se + .ck-fake-panel,\n.ck .ck-balloon-panel_arrow_sw + .ck-fake-panel {\n\t--ck-balloon-fake-panel-offset-vertical: -6px;\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},8298:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-sticky-panel .ck-sticky-panel__content_sticky{position:fixed;top:0;z-index:var(--ck-z-panel)}.ck.ck-sticky-panel .ck-sticky-panel__content_sticky_bottom-limit{position:absolute;top:auto}.ck.ck-sticky-panel .ck-sticky-panel__content_sticky{border-top-left-radius:0;border-top-right-radius:0;border-width:0 1px 1px;box-shadow:var(--ck-drop-shadow),0 0}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/panel/stickypanel.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/stickypanel.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css"],names:[],mappings:"AAMC,qDAEC,cAAe,CACf,KAAM,CAFN,yBAGD,CAEA,kEAEC,iBAAkB,CADlB,QAED,CCPA,qDAIC,wBAAyB,CACzB,yBAA0B,CAF1B,sBAAuB,CCFxB,oCDKA",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-sticky-panel {\n\t& .ck-sticky-panel__content_sticky {\n\t\tz-index: var(--ck-z-panel); /* #315 */\n\t\tposition: fixed;\n\t\ttop: 0;\n\t}\n\n\t& .ck-sticky-panel__content_sticky_bottom-limit {\n\t\ttop: auto;\n\t\tposition: absolute;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_shadow.css";\n\n.ck.ck-sticky-panel {\n\t& .ck-sticky-panel__content_sticky {\n\t\t@mixin ck-drop-shadow;\n\n\t\tborder-width: 0 1px 1px;\n\t\tborder-top-left-radius: 0;\n\t\tborder-top-right-radius: 0;\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n"],sourceRoot:""}]);const a=s},2722:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck-vertical-form .ck-button:after{bottom:-1px;content:"";position:absolute;right:-1px;top:-1px;width:0;z-index:1}.ck-vertical-form .ck-button:focus:after{display:none}@media screen and (max-width:600px){.ck.ck-responsive-form .ck-button:after{bottom:-1px;content:"";position:absolute;right:-1px;top:-1px;width:0;z-index:1}.ck.ck-responsive-form .ck-button:focus:after{display:none}}.ck-vertical-form>.ck-button:nth-last-child(2):after{border-right:1px solid var(--ck-color-base-border)}.ck.ck-responsive-form{padding:var(--ck-spacing-large)}.ck.ck-responsive-form:focus{outline:none}[dir=ltr] .ck.ck-responsive-form>:not(:first-child),[dir=rtl] .ck.ck-responsive-form>:not(:last-child){margin-left:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-responsive-form{padding:0;width:calc(var(--ck-input-width)*.8)}.ck.ck-responsive-form .ck-labeled-field-view{margin:var(--ck-spacing-large) var(--ck-spacing-large) 0}.ck.ck-responsive-form .ck-labeled-field-view .ck-input-number,.ck.ck-responsive-form .ck-labeled-field-view .ck-input-text{min-width:0;width:100%}.ck.ck-responsive-form .ck-labeled-field-view .ck-labeled-field-view__error{white-space:normal}.ck.ck-responsive-form>.ck-button:nth-last-child(2):after{border-right:1px solid var(--ck-color-base-border)}.ck.ck-responsive-form>.ck-button:last-child,.ck.ck-responsive-form>.ck-button:nth-last-child(2){border-radius:0;margin-top:var(--ck-spacing-large);padding:var(--ck-spacing-standard)}.ck.ck-responsive-form>.ck-button:last-child:not(:focus),.ck.ck-responsive-form>.ck-button:nth-last-child(2):not(:focus){border-top:1px solid var(--ck-color-base-border)}[dir=ltr] .ck.ck-responsive-form>.ck-button:last-child,[dir=ltr] .ck.ck-responsive-form>.ck-button:nth-last-child(2),[dir=rtl] .ck.ck-responsive-form>.ck-button:last-child,[dir=rtl] .ck.ck-responsive-form>.ck-button:nth-last-child(2){margin-left:0}[dir=rtl] .ck.ck-responsive-form>.ck-button:last-child:last-of-type,[dir=rtl] .ck.ck-responsive-form>.ck-button:nth-last-child(2):last-of-type{border-right:1px solid var(--ck-color-base-border)}}',"",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/responsive-form/responsiveform.css","webpack://./../ckeditor5-ui/theme/mixins/_rwd.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/responsive-form/responsiveform.css"],names:[],mappings:"AAQC,mCAMC,WAAY,CALZ,UAAW,CAEX,iBAAkB,CAClB,UAAW,CACX,QAAS,CAHT,OAAQ,CAKR,SACD,CAEA,yCACC,YACD,CCdA,oCDoBE,wCAMC,WAAY,CALZ,UAAW,CAEX,iBAAkB,CAClB,UAAW,CACX,QAAS,CAHT,OAAQ,CAKR,SACD,CAEA,8CACC,YACD,CC9BF,CCAD,qDACC,kDACD,CAEA,uBACC,+BAoED,CAlEC,6BAEC,YACD,CASC,uGACC,sCACD,CDvBD,oCCMD,uBAqBE,SAAU,CACV,oCA+CF,CA7CE,8CACC,wDAYD,CAVC,4HAEC,WAAY,CACZ,UACD,CAGA,4EACC,kBACD,CAKA,0DACC,kDACD,CAGD,iGAIC,eAAgB,CADhB,kCAAmC,CADnC,kCAmBD,CAfC,yHACC,gDACD,CARD,0OAeE,aAMF,CAJE,+IACC,kDACD,CDrEH",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n\n.ck-vertical-form .ck-button {\n\t&::after {\n\t\tcontent: "";\n\t\twidth: 0;\n\t\tposition: absolute;\n\t\tright: -1px;\n\t\ttop: -1px;\n\t\tbottom: -1px;\n\t\tz-index: 1;\n\t}\n\n\t&:focus::after {\n\t\tdisplay: none;\n\t}\n}\n\n.ck.ck-responsive-form {\n\t@mixin ck-media-phone {\n\t\t& .ck-button {\n\t\t\t&::after {\n\t\t\t\tcontent: "";\n\t\t\t\twidth: 0;\n\t\t\t\tposition: absolute;\n\t\t\t\tright: -1px;\n\t\t\t\ttop: -1px;\n\t\t\t\tbottom: -1px;\n\t\t\t\tz-index: 1;\n\t\t\t}\n\n\t\t\t&:focus::after {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-phone {\n\t@media screen and (max-width: 600px) {\n\t\t@mixin-content;\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck-vertical-form > .ck-button:nth-last-child(2)::after {\n\tborder-right: 1px solid var(--ck-color-base-border);\n}\n\n.ck.ck-responsive-form {\n\tpadding: var(--ck-spacing-large);\n\n\t&:focus {\n\t\t/* See: https://github.com/ckeditor/ckeditor5/issues/4773 */\n\t\toutline: none;\n\t}\n\n\t@mixin ck-dir ltr {\n\t\t& > :not(:first-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-dir rtl {\n\t\t& > :not(:last-child) {\n\t\t\tmargin-left: var(--ck-spacing-standard);\n\t\t}\n\t}\n\n\t@mixin ck-media-phone {\n\t\tpadding: 0;\n\t\twidth: calc(.8 * var(--ck-input-width));\n\n\t\t& .ck-labeled-field-view {\n\t\t\tmargin: var(--ck-spacing-large) var(--ck-spacing-large) 0;\n\n\t\t\t& .ck-input-text,\n\t\t\t& .ck-input-number {\n\t\t\t\tmin-width: 0;\n\t\t\t\twidth: 100%;\n\t\t\t}\n\n\t\t\t/* Let the long error messages wrap in the narrow form. */\n\t\t\t& .ck-labeled-field-view__error {\n\t\t\t\twhite-space: normal;\n\t\t\t}\n\t\t}\n\n\t\t/* Styles for two last buttons in the form (save&cancel, edit&unlink, etc.). */\n\t\t& > .ck-button:nth-last-child(2) {\n\t\t\t&::after {\n\t\t\t\tborder-right: 1px solid var(--ck-color-base-border);\n\t\t\t}\n\t\t}\n\n\t\t& > .ck-button:nth-last-child(1),\n\t\t& > .ck-button:nth-last-child(2) {\n\t\t\tpadding: var(--ck-spacing-standard);\n\t\t\tmargin-top: var(--ck-spacing-large);\n\t\t\tborder-radius: 0;\n\n\t\t\t&:not(:focus) {\n\t\t\t\tborder-top: 1px solid var(--ck-color-base-border);\n\t\t\t}\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tmargin-left: 0;\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tmargin-left: 0;\n\n\t\t\t\t&:last-of-type {\n\t\t\t\t\tborder-right: 1px solid var(--ck-color-base-border);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n'],sourceRoot:""}]);const a=s},8107:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-search>.ck-labeled-field-view>.ck-labeled-field-view__input-wrapper>.ck-icon{position:absolute;top:50%;transform:translateY(-50%)}[dir=ltr] .ck.ck-search>.ck-labeled-field-view>.ck-labeled-field-view__input-wrapper>.ck-icon{left:var(--ck-spacing-medium)}[dir=rtl] .ck.ck-search>.ck-labeled-field-view>.ck-labeled-field-view__input-wrapper>.ck-icon{right:var(--ck-spacing-medium)}.ck.ck-search>.ck-labeled-field-view .ck-search__reset{position:absolute;top:50%;transform:translateY(-50%)}.ck.ck-search>.ck-search__results>.ck-search__info>span:first-child{display:block}.ck.ck-search>.ck-search__results>.ck-search__info:not(.ck-hidden)~*{display:none}:root{--ck-search-field-view-horizontal-spacing:calc(var(--ck-icon-size) + var(--ck-spacing-medium))}.ck.ck-search>.ck-labeled-field-view .ck-input{width:100%}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-icon{--ck-labeled-field-label-default-position-x:var(--ck-search-field-view-horizontal-spacing)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-icon>.ck-labeled-field-view__input-wrapper>.ck-icon{opacity:.5;pointer-events:none}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-icon .ck-input{width:100%}[dir=ltr] .ck.ck-search>.ck-labeled-field-view.ck-search__query_with-icon .ck-input,[dir=rtl] .ck.ck-search>.ck-labeled-field-view.ck-search__query_with-icon .ck-input:not(.ck-input-text_empty){padding-left:var(--ck-search-field-view-horizontal-spacing)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset{--ck-labeled-field-empty-unfocused-max-width:100% - 2 * var(--ck-search-field-view-horizontal-spacing)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset.ck-labeled-field-view_empty{--ck-labeled-field-empty-unfocused-max-width:100% - var(--ck-search-field-view-horizontal-spacing) - var(--ck-spacing-medium)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-search__reset{background:none;min-height:auto;min-width:auto;opacity:.5;padding:0}[dir=ltr] .ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-search__reset{right:var(--ck-spacing-medium)}[dir=rtl] .ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-search__reset{left:var(--ck-spacing-medium)}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-search__reset:hover{opacity:1}.ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-input{width:100%}[dir=ltr] .ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-input:not(.ck-input-text_empty),[dir=rtl] .ck.ck-search>.ck-labeled-field-view.ck-search__query_with-reset .ck-input{padding-right:var(--ck-search-field-view-horizontal-spacing)}.ck.ck-search>.ck-search__results{min-width:100%}.ck.ck-search>.ck-search__results>.ck-search__info{padding:var(--ck-spacing-medium) var(--ck-spacing-large);width:100%}.ck.ck-search>.ck-search__results>.ck-search__info *{white-space:normal}.ck.ck-search>.ck-search__results>.ck-search__info>span:first-child{font-weight:700}.ck.ck-search>.ck-search__results>.ck-search__info>span:last-child{margin-top:var(--ck-spacing-medium)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/search/search.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/search/search.css"],names:[],mappings:"AASE,oFACC,iBAAkB,CAClB,OAAQ,CACR,0BASD,CAZA,8FAME,6BAMF,CAZA,8FAUE,8BAEF,CAEA,uDACC,iBAAkB,CAClB,OAAQ,CACR,0BACD,CAKC,oEACC,aACD,CAGA,qEACC,YACD,CChCH,MACC,8FACD,CAIE,+CACC,UACD,CAEA,gEACC,0FAoBD,CAlBC,+GACC,UAAW,CACX,mBACD,CAEA,0EACC,UAWD,CAJE,kMACC,2DACD,CAKH,iEACC,sGAwCD,CAtCC,6FACC,6HACD,CAEA,mFAIC,eAAgB,CAFhB,eAAgB,CADhB,cAAe,CAIf,UAAW,CACX,SAaD,CAnBA,6FASE,8BAUF,CAnBA,6FAaE,6BAMF,CAHC,yFACC,SACD,CAGD,2EACC,UAWD,CAZA,oMAUE,4DAEF,CAIF,kCACC,cAkBD,CAhBC,mDAEC,wDAAyD,CADzD,UAcD,CAXC,qDACC,kBACD,CAEA,oEACC,eACD,CAEA,mEACC,mCACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-search {\n\t& > .ck-labeled-field-view {\n\t\t& > .ck-labeled-field-view__input-wrapper > .ck-icon {\n\t\t\tposition: absolute;\n\t\t\ttop: 50%;\n\t\t\ttransform: translateY(-50%);\n\n\t\t\t@mixin ck-dir ltr {\n\t\t\t\tleft: var(--ck-spacing-medium);\n\t\t\t}\n\n\t\t\t@mixin ck-dir rtl {\n\t\t\t\tright: var(--ck-spacing-medium);\n\t\t\t}\n\t\t}\n\n\t\t& .ck-search__reset {\n\t\t\tposition: absolute;\n\t\t\ttop: 50%;\n\t\t\ttransform: translateY(-50%);\n\t\t}\n\t}\n\n\t& > .ck-search__results {\n\t\t& > .ck-search__info {\n\t\t\t& > span:first-child {\n\t\t\t\tdisplay: block;\n\t\t\t}\n\n\t\t\t/* Hide the filtered view when nothing was found */\n\t\t\t&:not(.ck-hidden) ~ * {\n\t\t\t\tdisplay: none;\n\t\t\t}\n\t\t}\n\t}\n}\n','/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n:root {\n\t--ck-search-field-view-horizontal-spacing: calc(var(--ck-icon-size) + var(--ck-spacing-medium));\n}\n\n.ck.ck-search {\n\t& > .ck-labeled-field-view {\n\t\t& .ck-input {\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t&.ck-search__query_with-icon {\n\t\t\t--ck-labeled-field-label-default-position-x: var(--ck-search-field-view-horizontal-spacing);\n\n\t\t\t& > .ck-labeled-field-view__input-wrapper > .ck-icon {\n\t\t\t\topacity: .5;\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\n\t\t\t& .ck-input {\n\t\t\t\twidth: 100%;\n\n\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\tpadding-left: var(--ck-search-field-view-horizontal-spacing);\n\t\t\t\t}\n\n\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\t&:not(.ck-input-text_empty) {\n\t\t\t\t\t\tpadding-left: var(--ck-search-field-view-horizontal-spacing);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&.ck-search__query_with-reset {\n\t\t\t--ck-labeled-field-empty-unfocused-max-width: 100% - 2 * var(--ck-search-field-view-horizontal-spacing);\n\n\t\t\t&.ck-labeled-field-view_empty {\n\t\t\t\t--ck-labeled-field-empty-unfocused-max-width: 100% - var(--ck-search-field-view-horizontal-spacing) - var(--ck-spacing-medium);\n\t\t\t}\n\n\t\t\t& .ck-search__reset {\n\t\t\t\tmin-width: auto;\n\t\t\t\tmin-height: auto;\n\n\t\t\t\tbackground: none;\n\t\t\t\topacity: .5;\n\t\t\t\tpadding: 0;\n\n\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\tright: var(--ck-spacing-medium);\n\t\t\t\t}\n\n\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\tleft: var(--ck-spacing-medium);\n\t\t\t\t}\n\n\t\t\t\t&:hover {\n\t\t\t\t\topacity: 1;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t& .ck-input {\n\t\t\t\twidth: 100%;\n\n\t\t\t\t@mixin ck-dir ltr {\n\t\t\t\t\t&:not(.ck-input-text_empty) {\n\t\t\t\t\t\tpadding-right: var(--ck-search-field-view-horizontal-spacing);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t@mixin ck-dir rtl {\n\t\t\t\t\tpadding-right: var(--ck-search-field-view-horizontal-spacing);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t& > .ck-search__results {\n\t\tmin-width: 100%;\n\n\t\t& > .ck-search__info {\n\t\t\twidth: 100%;\n\t\t\tpadding: var(--ck-spacing-medium) var(--ck-spacing-large);\n\n\t\t\t& * {\n\t\t\t\twhite-space: normal;\n\t\t\t}\n\n\t\t\t& > span:first-child {\n\t\t\t\tfont-weight: bold;\n\t\t\t}\n\n\t\t\t& > span:last-child {\n\t\t\t\tmargin-top: var(--ck-spacing-medium);\n\t\t\t}\n\t\t}\n\t}\n}\n\n'],sourceRoot:""}]);const a=s},109:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-spinner-container{display:block;position:relative}.ck.ck-spinner{left:0;margin:0 auto;position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:1}:root{--ck-toolbar-spinner-size:18px}.ck.ck-spinner-container{animation:rotate 1.5s linear infinite;height:var(--ck-toolbar-spinner-size);width:var(--ck-toolbar-spinner-size)}@media (prefers-reduced-motion:reduce){.ck.ck-spinner-container{animation-duration:3s}}.ck.ck-spinner{border:2px solid var(--ck-color-text);border-radius:50%;border-top:2px solid transparent;height:var(--ck-toolbar-spinner-size);width:var(--ck-toolbar-spinner-size)}@keyframes rotate{to{transform:rotate(1turn)}}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/spinner/spinner.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/spinner/spinner.css"],names:[],mappings:"AASA,yBACC,aAAc,CACd,iBACD,CAEA,eAGC,MAAO,CAEP,aAAc,CAJd,iBAAkB,CAGlB,OAAQ,CAFR,OAAQ,CAIR,0BAA2B,CAC3B,SACD,CCjBA,MACC,8BACD,CAEA,yBAGC,qCAAsC,CADtC,qCAAsC,CADtC,oCAOD,CAHC,uCALD,yBAME,qBAEF,CADC,CAGD,eAKC,qCAA6B,CAF7B,iBAAkB,CAElB,gCAA6B,CAH7B,qCAAsC,CADtC,oCAKD,CAEA,kBACC,GACC,uBACD,CACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-toolbar-spinner-size: 18px;\n}\n\n.ck.ck-spinner-container {\n\tdisplay: block;\n\tposition: relative;\n}\n\n.ck.ck-spinner {\n\tposition: absolute;\n\ttop: 50%;\n\tleft: 0;\n\tright: 0;\n\tmargin: 0 auto;\n\ttransform: translateY(-50%);\n\tz-index: 1;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-toolbar-spinner-size: 18px;\n}\n\n.ck.ck-spinner-container {\n\twidth: var(--ck-toolbar-spinner-size);\n\theight: var(--ck-toolbar-spinner-size);\n\tanimation: 1.5s infinite rotate linear;\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\tanimation-duration: 3s;\n\t}\n}\n\n.ck.ck-spinner {\n\twidth: var(--ck-toolbar-spinner-size);\n\theight: var(--ck-toolbar-spinner-size);\n\tborder-radius: 50%;\n\tborder: 2px solid var(--ck-color-text);\n\tborder-top-color: transparent;\n}\n\n@keyframes rotate {\n\tto {\n\t\ttransform: rotate(360deg)\n\t}\n}\n"],sourceRoot:""}]);const a=s},1671:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-textarea{overflow-x:hidden}","",{version:3,sources:["webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/textarea/textarea.css"],names:[],mappings:"AASA,aACC,iBACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/*\n * This fixes a problem in Firefox when the initial height of the complement does not match the number of rows.\n * This bug is especially visible when rows=1.\n */\n.ck-textarea {\n\toverflow-x: hidden\n}\n"],sourceRoot:""}]);const a=s},2710:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-block-toolbar-button{position:absolute;z-index:var(--ck-z-default)}:root{--ck-color-block-toolbar-button:var(--ck-color-text);--ck-block-toolbar-button-size:var(--ck-font-size-normal)}.ck.ck-block-toolbar-button{color:var(--ck-color-block-toolbar-button);font-size:var(--ck-block-toolbar-size)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/toolbar/blocktoolbar.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/toolbar/blocktoolbar.css"],names:[],mappings:"AAKA,4BACC,iBAAkB,CAClB,2BACD,CCHA,MACC,oDAAqD,CACrD,yDACD,CAEA,4BACC,0CAA2C,CAC3C,sCACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck.ck-block-toolbar-button {\n\tposition: absolute;\n\tz-index: var(--ck-z-default);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-block-toolbar-button: var(--ck-color-text);\n\t--ck-block-toolbar-button-size: var(--ck-font-size-normal);\n}\n\n.ck.ck-block-toolbar-button {\n\tcolor: var(--ck-color-block-toolbar-button);\n\tfont-size: var(--ck-block-toolbar-size);\n}\n"],sourceRoot:""}]);const a=s},9677:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-toolbar{align-items:center;display:flex;flex-flow:row nowrap;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.ck.ck-toolbar>.ck-toolbar__items{align-items:center;display:flex;flex-flow:row wrap;flex-grow:1}.ck.ck-toolbar .ck.ck-toolbar__separator{display:inline-block}.ck.ck-toolbar .ck.ck-toolbar__separator:first-child,.ck.ck-toolbar .ck.ck-toolbar__separator:last-child{display:none}.ck.ck-toolbar .ck-toolbar__line-break{flex-basis:100%}.ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items{flex-wrap:nowrap}.ck.ck-toolbar.ck-toolbar_vertical>.ck-toolbar__items{flex-direction:column}.ck.ck-toolbar.ck-toolbar_floating>.ck-toolbar__items{flex-wrap:nowrap}.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown>.ck-dropdown__button .ck-dropdown__arrow{display:none}.ck.ck-toolbar{border-radius:0}.ck-rounded-corners .ck.ck-toolbar,.ck.ck-toolbar.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-toolbar{background:var(--ck-color-toolbar-background);border:1px solid var(--ck-color-toolbar-border);padding:0 var(--ck-spacing-small)}.ck.ck-toolbar .ck.ck-toolbar__separator{align-self:stretch;background:var(--ck-color-toolbar-border);margin-bottom:var(--ck-spacing-small);margin-top:var(--ck-spacing-small);min-width:1px;width:1px}.ck.ck-toolbar .ck-toolbar__line-break{height:0}.ck.ck-toolbar>.ck-toolbar__items>:not(.ck-toolbar__line-break){margin-right:var(--ck-spacing-small)}.ck.ck-toolbar>.ck-toolbar__items:empty+.ck.ck-toolbar__separator{display:none}.ck.ck-toolbar>.ck-toolbar__items>:not(.ck-toolbar__line-break),.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown{margin-bottom:var(--ck-spacing-small);margin-top:var(--ck-spacing-small)}.ck.ck-toolbar.ck-toolbar_vertical{padding:0}.ck.ck-toolbar.ck-toolbar_vertical>.ck-toolbar__items>.ck{border-radius:0;margin:0;width:100%}.ck.ck-toolbar.ck-toolbar_compact{padding:0}.ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>*{margin:0}.ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>:not(:first-child):not(:last-child){border-radius:0}.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown>.ck.ck-button.ck-dropdown__button{padding-left:var(--ck-spacing-tiny)}.ck.ck-toolbar .ck-toolbar__nested-toolbar-dropdown>.ck-dropdown__panel{min-width:auto}.ck.ck-toolbar .ck-toolbar__nested-toolbar-dropdown>.ck-button>.ck-button__label{max-width:7em;width:auto}.ck.ck-toolbar:focus{outline:none}.ck-toolbar-container .ck.ck-toolbar{border:0}.ck.ck-toolbar[dir=rtl]>.ck-toolbar__items>.ck,[dir=rtl] .ck.ck-toolbar>.ck-toolbar__items>.ck{margin-right:0}.ck.ck-toolbar[dir=rtl]:not(.ck-toolbar_compact)>.ck-toolbar__items>.ck,[dir=rtl] .ck.ck-toolbar:not(.ck-toolbar_compact)>.ck-toolbar__items>.ck{margin-left:var(--ck-spacing-small)}.ck.ck-toolbar[dir=rtl]>.ck-toolbar__items>.ck:last-child,[dir=rtl] .ck.ck-toolbar>.ck-toolbar__items>.ck:last-child{margin-left:0}.ck.ck-toolbar.ck-toolbar_compact[dir=rtl]>.ck-toolbar__items>.ck:first-child,[dir=rtl] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.ck.ck-toolbar.ck-toolbar_compact[dir=rtl]>.ck-toolbar__items>.ck:last-child,[dir=rtl] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:last-child{border-bottom-right-radius:0;border-top-right-radius:0}.ck.ck-toolbar.ck-toolbar_grouping[dir=rtl]>.ck-toolbar__items:not(:empty):not(:only-child),.ck.ck-toolbar[dir=rtl]>.ck.ck-toolbar__separator,[dir=rtl] .ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items:not(:empty):not(:only-child),[dir=rtl] .ck.ck-toolbar>.ck.ck-toolbar__separator{margin-left:var(--ck-spacing-small)}.ck.ck-toolbar[dir=ltr]>.ck-toolbar__items>.ck:last-child,[dir=ltr] .ck.ck-toolbar>.ck-toolbar__items>.ck:last-child{margin-right:0}.ck.ck-toolbar.ck-toolbar_compact[dir=ltr]>.ck-toolbar__items>.ck:first-child,[dir=ltr] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:first-child{border-bottom-right-radius:0;border-top-right-radius:0}.ck.ck-toolbar.ck-toolbar_compact[dir=ltr]>.ck-toolbar__items>.ck:last-child,[dir=ltr] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:last-child{border-bottom-left-radius:0;border-top-left-radius:0}.ck.ck-toolbar.ck-toolbar_grouping[dir=ltr]>.ck-toolbar__items:not(:empty):not(:only-child),.ck.ck-toolbar[dir=ltr]>.ck.ck-toolbar__separator,[dir=ltr] .ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items:not(:empty):not(:only-child),[dir=ltr] .ck.ck-toolbar>.ck.ck-toolbar__separator{margin-right:var(--ck-spacing-small)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/toolbar/toolbar.css","webpack://./../ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/toolbar/toolbar.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_rounded.css"],names:[],mappings:"AAOA,eAKC,kBAAmB,CAFnB,YAAa,CACb,oBAAqB,CCFrB,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBD6CD,CA3CC,kCAGC,kBAAmB,CAFnB,YAAa,CACb,kBAAmB,CAEnB,WAED,CAEA,yCACC,oBAWD,CAJC,yGAEC,YACD,CAGD,uCACC,eACD,CAEA,sDACC,gBACD,CAEA,sDACC,qBACD,CAEA,sDACC,gBACD,CAGC,yFACC,YACD,CE/CF,eCGC,eDwGD,CA3GA,qECOE,qCDoGF,CA3GA,eAGC,6CAA8C,CAE9C,+CAAgD,CADhD,iCAuGD,CApGC,yCACC,kBAAmB,CAGnB,yCAA0C,CAO1C,qCAAsC,CADtC,kCAAmC,CAPnC,aAAc,CADd,SAUD,CAEA,uCACC,QACD,CAGC,gEAEC,oCACD,CAIA,kEACC,YACD,CAGD,gHAIC,qCAAsC,CADtC,kCAED,CAEA,mCAEC,SAaD,CAVC,0DAQC,eAAgB,CAHhB,QAAS,CAHT,UAOD,CAGD,kCAEC,SAWD,CATC,uDAEC,QAMD,CAHC,yFACC,eACD,CASD,kFACC,mCACD,CAMA,wEACC,cACD,CAEA,iFACC,aAAc,CACd,UACD,CAGD,qBACC,YACD,CAtGD,qCAyGE,QAEF,CAYC,+FACC,cACD,CAEA,iJAEC,mCACD,CAEA,qHACC,aACD,CAIC,6JAEC,2BAA4B,CAD5B,wBAED,CAGA,2JAEC,4BAA6B,CAD7B,yBAED,CASD,8RACC,mCACD,CAWA,qHACC,cACD,CAIC,6JAEC,4BAA6B,CAD7B,yBAED,CAGA,2JAEC,2BAA4B,CAD5B,wBAED,CASD,8RACC,oCACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../mixins/_unselectable.css";\n\n.ck.ck-toolbar {\n\t@mixin ck-unselectable;\n\n\tdisplay: flex;\n\tflex-flow: row nowrap;\n\talign-items: center;\n\n\t& > .ck-toolbar__items {\n\t\tdisplay: flex;\n\t\tflex-flow: row wrap;\n\t\talign-items: center;\n\t\tflex-grow: 1;\n\n\t}\n\n\t& .ck.ck-toolbar__separator {\n\t\tdisplay: inline-block;\n\n\t\t/*\n\t\t * A leading or trailing separator makes no sense (separates from nothing on one side).\n\t\t * For instance, it can happen when toolbar items (also separators) are getting grouped one by one and\n\t\t * moved to another toolbar in the dropdown.\n\t\t */\n\t\t&:first-child,\n\t\t&:last-child {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t& .ck-toolbar__line-break {\n\t\tflex-basis: 100%;\n\t}\n\n\t&.ck-toolbar_grouping > .ck-toolbar__items {\n\t\tflex-wrap: nowrap;\n\t}\n\n\t&.ck-toolbar_vertical > .ck-toolbar__items {\n\t\tflex-direction: column;\n\t}\n\n\t&.ck-toolbar_floating > .ck-toolbar__items {\n\t\tflex-wrap: nowrap;\n\t}\n\n\t& > .ck.ck-toolbar__grouped-dropdown {\n\t\t& > .ck-dropdown__button .ck-dropdown__arrow {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Makes element unselectable.\n */\n@define-mixin ck-unselectable {\n\t-moz-user-select: none;\n\t-webkit-user-select: none;\n\t-ms-user-select: none;\n\tuser-select: none\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_dir.css";\n\n.ck.ck-toolbar {\n\t@mixin ck-rounded-corners;\n\n\tbackground: var(--ck-color-toolbar-background);\n\tpadding: 0 var(--ck-spacing-small);\n\tborder: 1px solid var(--ck-color-toolbar-border);\n\n\t& .ck.ck-toolbar__separator {\n\t\talign-self: stretch;\n\t\twidth: 1px;\n\t\tmin-width: 1px;\n\t\tbackground: var(--ck-color-toolbar-border);\n\n\t\t/*\n\t\t * These margins make the separators look better in balloon toolbars (when aligned with the "tip").\n\t\t * See https://github.com/ckeditor/ckeditor5/issues/7493.\n\t\t */\n\t\tmargin-top: var(--ck-spacing-small);\n\t\tmargin-bottom: var(--ck-spacing-small);\n\t}\n\n\t& .ck-toolbar__line-break {\n\t\theight: 0;\n\t}\n\n\t& > .ck-toolbar__items {\n\t\t& > *:not(.ck-toolbar__line-break) {\n\t\t\t/* (#11) Separate toolbar items. */\n\t\t\tmargin-right: var(--ck-spacing-small);\n\t\t}\n\n\t\t/* Don\'t display a separator after an empty items container, for instance,\n\t\twhen all items were grouped */\n\t\t&:empty + .ck.ck-toolbar__separator {\n\t\t\tdisplay: none;\n\t\t}\n\t}\n\n\t& > .ck-toolbar__items > *:not(.ck-toolbar__line-break),\n\t& > .ck.ck-toolbar__grouped-dropdown {\n\t\t/* Make sure items wrapped to the next line have v-spacing */\n\t\tmargin-top: var(--ck-spacing-small);\n\t\tmargin-bottom: var(--ck-spacing-small);\n\t}\n\n\t&.ck-toolbar_vertical {\n\t\t/* Items in a vertical toolbar span the entire width. */\n\t\tpadding: 0;\n\n\t\t/* Specificity matters here. See https://github.com/ckeditor/ckeditor5-theme-lark/issues/168. */\n\t\t& > .ck-toolbar__items > .ck {\n\t\t\t/* Items in a vertical toolbar should span the horizontal space. */\n\t\t\twidth: 100%;\n\n\t\t\t/* Items in a vertical toolbar should have no margin. */\n\t\t\tmargin: 0;\n\n\t\t\t/* Items in a vertical toolbar span the entire width so rounded corners are pointless. */\n\t\t\tborder-radius: 0;\n\t\t}\n\t}\n\n\t&.ck-toolbar_compact {\n\t\t/* No spacing around items. */\n\t\tpadding: 0;\n\n\t\t& > .ck-toolbar__items > * {\n\t\t\t/* Compact toolbar items have no spacing between them. */\n\t\t\tmargin: 0;\n\n\t\t\t/* "Middle" children should have no rounded corners. */\n\t\t\t&:not(:first-child):not(:last-child) {\n\t\t\t\tborder-radius: 0;\n\t\t\t}\n\t\t}\n\t}\n\n\t& > .ck.ck-toolbar__grouped-dropdown {\n\t\t/*\n\t\t * Dropdown button has asymmetric padding to fit the arrow.\n\t\t * This button has no arrow so let\'s revert that padding back to normal.\n\t\t */\n\t\t& > .ck.ck-button.ck-dropdown__button {\n\t\t\tpadding-left: var(--ck-spacing-tiny);\n\t\t}\n\t}\n\n\t/* A drop-down containing the nested toolbar with configured items. */\n\t& .ck-toolbar__nested-toolbar-dropdown {\n\t\t/* Prevent empty space in the panel when the dropdown label is visible and long but the toolbar has few items. */\n\t\t& > .ck-dropdown__panel {\n\t\t\tmin-width: auto;\n\t\t}\n\n\t\t& > .ck-button > .ck-button__label {\n\t\t\tmax-width: 7em;\n\t\t\twidth: auto;\n\t\t}\n\t}\n\n\t&:focus {\n\t\toutline: none;\n\t}\n\n\t@nest .ck-toolbar-container & {\n\t\tborder: 0;\n\t}\n}\n\n/* stylelint-disable */\n\n/*\n * Styles for RTL toolbars.\n *\n * Note: In some cases (e.g. a decoupled editor), the toolbar has its own "dir"\n * because its parent is not controlled by the editor framework.\n */\n[dir="rtl"] .ck.ck-toolbar,\n.ck.ck-toolbar[dir="rtl"] {\n\t& > .ck-toolbar__items > .ck {\n\t\tmargin-right: 0;\n\t}\n\n\t&:not(.ck-toolbar_compact) > .ck-toolbar__items > .ck {\n\t\t/* (#11) Separate toolbar items. */\n\t\tmargin-left: var(--ck-spacing-small);\n\t}\n\n\t& > .ck-toolbar__items > .ck:last-child {\n\t\tmargin-left: 0;\n\t}\n\n\t&.ck-toolbar_compact > .ck-toolbar__items > .ck {\n\t\t/* No rounded corners on the right side of the first child. */\n\t\t&:first-child {\n\t\t\tborder-top-left-radius: 0;\n\t\t\tborder-bottom-left-radius: 0;\n\t\t}\n\n\t\t/* No rounded corners on the left side of the last child. */\n\t\t&:last-child {\n\t\t\tborder-top-right-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\t}\n\n\t/* Separate the the separator form the grouping dropdown when some items are grouped. */\n\t& > .ck.ck-toolbar__separator {\n\t\tmargin-left: var(--ck-spacing-small);\n\t}\n\n\t/* Some spacing between the items and the separator before the grouped items dropdown. */\n\t&.ck-toolbar_grouping > .ck-toolbar__items:not(:empty):not(:only-child) {\n\t\tmargin-left: var(--ck-spacing-small);\n\t}\n}\n\n/*\n * Styles for LTR toolbars.\n *\n * Note: In some cases (e.g. a decoupled editor), the toolbar has its own "dir"\n * because its parent is not controlled by the editor framework.\n */\n[dir="ltr"] .ck.ck-toolbar,\n.ck.ck-toolbar[dir="ltr"] {\n\t& > .ck-toolbar__items > .ck:last-child {\n\t\tmargin-right: 0;\n\t}\n\n\t&.ck-toolbar_compact > .ck-toolbar__items > .ck {\n\t\t/* No rounded corners on the right side of the first child. */\n\t\t&:first-child {\n\t\t\tborder-top-right-radius: 0;\n\t\t\tborder-bottom-right-radius: 0;\n\t\t}\n\n\t\t/* No rounded corners on the left side of the last child. */\n\t\t&:last-child {\n\t\t\tborder-top-left-radius: 0;\n\t\t\tborder-bottom-left-radius: 0;\n\t\t}\n\t}\n\n\t/* Separate the the separator form the grouping dropdown when some items are grouped. */\n\t& > .ck.ck-toolbar__separator {\n\t\tmargin-right: var(--ck-spacing-small);\n\t}\n\n\t/* Some spacing between the items and the separator before the grouped items dropdown. */\n\t&.ck-toolbar_grouping > .ck-toolbar__items:not(:empty):not(:only-child) {\n\t\tmargin-right: var(--ck-spacing-small);\n\t}\n}\n\n/* stylelint-enable */\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Implements rounded corner interface for .ck-rounded-corners class.\n *\n * @see $ck-border-radius\n */\n@define-mixin ck-rounded-corners {\n\tborder-radius: 0;\n\n\t@nest .ck-rounded-corners &,\n\t&.ck-rounded-corners {\n\t\tborder-radius: var(--ck-border-radius);\n\t\t@mixin-content;\n\t}\n}\n"],sourceRoot:""}]);const a=s},9205:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck.ck-balloon-panel.ck-tooltip{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;z-index:calc(var(--ck-z-dialog) + 100);--ck-balloon-border-width:0px;--ck-balloon-arrow-offset:0px;--ck-balloon-arrow-half-width:4px;--ck-balloon-arrow-height:4px;--ck-tooltip-text-padding:4px;--ck-color-panel-background:var(--ck-color-tooltip-background);padding:0 var(--ck-spacing-medium)}.ck.ck-balloon-panel.ck-tooltip .ck-tooltip__text{color:var(--ck-color-tooltip-text);font-size:.9em;line-height:1.5}.ck.ck-balloon-panel.ck-tooltip.ck-tooltip_multi-line .ck-tooltip__text{display:inline-block;max-width:200px;padding:var(--ck-tooltip-text-padding) 0;white-space:break-spaces}.ck.ck-balloon-panel.ck-tooltip{box-shadow:none}.ck.ck-balloon-panel.ck-tooltip:before{display:none}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/components/tooltip/tooltip.css","webpack://./../ckeditor5-ui/theme/mixins/_unselectable.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/components/tooltip/tooltip.css"],names:[],mappings:"AAOA,gCCEC,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBAAgB,CDFhB,sCAAyC,CEFzC,6BAA8B,CAC9B,6BAA8B,CAC9B,iCAAkC,CAClC,6BAA8B,CAC9B,6BAA8B,CAC9B,8DAA+D,CAE/D,kCFJD,CEMC,kDAGC,kCAAmC,CAFnC,cAAe,CACf,eAED,CAEA,wEAEC,oBAAqB,CAErB,eAAgB,CADhB,wCAAyC,CAFzC,wBAID,CArBD,gCAwBC,eAMD,CAHC,uCACC,YACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../mixins/_unselectable.css";\n\n.ck.ck-balloon-panel.ck-tooltip {\n\t@mixin ck-unselectable;\n\n\tz-index: calc( var(--ck-z-dialog) + 100 );\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Makes element unselectable.\n */\n@define-mixin ck-unselectable {\n\t-moz-user-select: none;\n\t-webkit-user-select: none;\n\t-ms-user-select: none;\n\tuser-select: none\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../../../mixins/_rounded.css";\n\n.ck.ck-balloon-panel.ck-tooltip {\n\t--ck-balloon-border-width: 0px;\n\t--ck-balloon-arrow-offset: 0px;\n\t--ck-balloon-arrow-half-width: 4px;\n\t--ck-balloon-arrow-height: 4px;\n\t--ck-tooltip-text-padding: 4px;\n\t--ck-color-panel-background: var(--ck-color-tooltip-background);\n\n\tpadding: 0 var(--ck-spacing-medium);\n\n\t& .ck-tooltip__text {\n\t\tfont-size: .9em;\n\t\tline-height: 1.5;\n\t\tcolor: var(--ck-color-tooltip-text);\n\t}\n\n\t&.ck-tooltip_multi-line .ck-tooltip__text {\n\t\twhite-space: break-spaces;\n\t\tdisplay: inline-block;\n\t\tpadding: var(--ck-tooltip-text-padding) 0;\n\t\tmax-width: 200px;\n\t}\n\n\t/* Reset balloon panel styles */\n\tbox-shadow: none;\n\n\t/* Hide the default shadow of the .ck-balloon-panel tip */\n\t&::before {\n\t\tdisplay: none;\n\t}\n}\n'],sourceRoot:""}]);const a=s},7676:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck-hidden{display:none!important}:root{--ck-z-default:1;--ck-z-panel:calc(var(--ck-z-default) + 999);--ck-z-dialog:9999}.ck-transitions-disabled,.ck-transitions-disabled *{transition:none!important}:root{--ck-powered-by-line-height:10px;--ck-powered-by-padding-vertical:2px;--ck-powered-by-padding-horizontal:4px;--ck-powered-by-text-color:#4f4f4f;--ck-powered-by-border-radius:var(--ck-border-radius);--ck-powered-by-background:#fff;--ck-powered-by-border-color:var(--ck-color-focus-border)}.ck.ck-balloon-panel.ck-powered-by-balloon{--ck-border-radius:var(--ck-powered-by-border-radius);background:var(--ck-powered-by-background);box-shadow:none;min-height:unset;z-index:calc(var(--ck-z-panel) - 1)}.ck.ck-balloon-panel.ck-powered-by-balloon .ck.ck-powered-by{line-height:var(--ck-powered-by-line-height)}.ck.ck-balloon-panel.ck-powered-by-balloon .ck.ck-powered-by a{align-items:center;cursor:pointer;display:flex;filter:grayscale(80%);line-height:var(--ck-powered-by-line-height);opacity:.66;padding:var(--ck-powered-by-padding-vertical) var(--ck-powered-by-padding-horizontal)}.ck.ck-balloon-panel.ck-powered-by-balloon .ck.ck-powered-by .ck-powered-by__label{color:var(--ck-powered-by-text-color);cursor:pointer;font-size:7.5px;font-weight:700;letter-spacing:-.2px;line-height:normal;margin-right:4px;padding-left:2px;text-transform:uppercase}.ck.ck-balloon-panel.ck-powered-by-balloon .ck.ck-powered-by .ck-icon{cursor:pointer;display:block}.ck.ck-balloon-panel.ck-powered-by-balloon .ck.ck-powered-by:hover a{filter:grayscale(0);opacity:1}.ck.ck-balloon-panel.ck-powered-by-balloon[class*=position_inside]{border-color:transparent}.ck.ck-balloon-panel.ck-powered-by-balloon[class*=position_border]{border:var(--ck-focus-ring);border-color:var(--ck-powered-by-border-color)}:root{--ck-color-base-foreground:#fafafa;--ck-color-base-background:#fff;--ck-color-base-border:#ccced1;--ck-color-base-action:#53a336;--ck-color-base-focus:#6cb5f9;--ck-color-base-text:#333;--ck-color-base-active:#2977ff;--ck-color-base-active-focus:#0d65ff;--ck-color-base-error:#db3700;--ck-color-focus-border-coordinates:218,81.8%,56.9%;--ck-color-focus-border:hsl(var(--ck-color-focus-border-coordinates));--ck-color-focus-outer-shadow:#cae1fc;--ck-color-focus-disabled-shadow:rgba(119,186,248,.3);--ck-color-focus-error-shadow:rgba(255,64,31,.3);--ck-color-text:var(--ck-color-base-text);--ck-color-shadow-drop:rgba(0,0,0,.15);--ck-color-shadow-drop-active:rgba(0,0,0,.2);--ck-color-shadow-inner:rgba(0,0,0,.1);--ck-color-button-default-background:transparent;--ck-color-button-default-hover-background:#f0f0f0;--ck-color-button-default-active-background:#f0f0f0;--ck-color-button-default-disabled-background:transparent;--ck-color-button-on-background:#f0f7ff;--ck-color-button-on-hover-background:#dbecff;--ck-color-button-on-active-background:#dbecff;--ck-color-button-on-disabled-background:#f0f2f4;--ck-color-button-on-color:#2977ff;--ck-color-button-action-background:var(--ck-color-base-action);--ck-color-button-action-hover-background:#4d9d30;--ck-color-button-action-active-background:#4d9d30;--ck-color-button-action-disabled-background:#7ec365;--ck-color-button-action-text:var(--ck-color-base-background);--ck-color-button-save:#008a00;--ck-color-button-cancel:#db3700;--ck-color-switch-button-off-background:#939393;--ck-color-switch-button-off-hover-background:#7d7d7d;--ck-color-switch-button-on-background:var(--ck-color-button-action-background);--ck-color-switch-button-on-hover-background:#4d9d30;--ck-color-switch-button-inner-background:var(--ck-color-base-background);--ck-color-switch-button-inner-shadow:rgba(0,0,0,.1);--ck-color-dropdown-panel-background:var(--ck-color-base-background);--ck-color-dropdown-panel-border:var(--ck-color-base-border);--ck-color-dialog-background:var(--ck-custom-background);--ck-color-dialog-form-header-border:var(--ck-custom-border);--ck-color-input-background:var(--ck-color-base-background);--ck-color-input-border:var(--ck-color-base-border);--ck-color-input-error-border:var(--ck-color-base-error);--ck-color-input-text:var(--ck-color-base-text);--ck-color-input-disabled-background:#f2f2f2;--ck-color-input-disabled-border:var(--ck-color-base-border);--ck-color-input-disabled-text:#757575;--ck-color-list-background:var(--ck-color-base-background);--ck-color-list-button-hover-background:var(--ck-color-button-default-hover-background);--ck-color-list-button-on-background:var(--ck-color-button-on-color);--ck-color-list-button-on-background-focus:var(--ck-color-button-on-color);--ck-color-list-button-on-text:var(--ck-color-base-background);--ck-color-panel-background:var(--ck-color-base-background);--ck-color-panel-border:var(--ck-color-base-border);--ck-color-toolbar-background:var(--ck-color-base-background);--ck-color-toolbar-border:var(--ck-color-base-border);--ck-color-tooltip-background:var(--ck-color-base-text);--ck-color-tooltip-text:var(--ck-color-base-background);--ck-color-engine-placeholder-text:#707070;--ck-color-upload-bar-background:#6cb5f9;--ck-color-link-default:#0000f0;--ck-color-link-selected-background:rgba(31,176,255,.1);--ck-color-link-fake-selection:rgba(31,176,255,.3);--ck-color-highlight-background:#ff0;--ck-color-light-red:#fcc;--ck-disabled-opacity:.5;--ck-focus-outer-shadow-geometry:0 0 0 3px;--ck-focus-outer-shadow:var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-outer-shadow);--ck-focus-disabled-outer-shadow:var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-disabled-shadow);--ck-focus-error-outer-shadow:var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-error-shadow);--ck-focus-ring:1px solid var(--ck-color-focus-border);--ck-font-size-base:13px;--ck-line-height-base:1.84615;--ck-font-face:Helvetica,Arial,Tahoma,Verdana,Sans-Serif;--ck-font-size-tiny:0.7em;--ck-font-size-small:0.75em;--ck-font-size-normal:1em;--ck-font-size-big:1.4em;--ck-font-size-large:1.8em;--ck-ui-component-min-height:2.3em}.ck-reset_all :not(.ck-reset_all-excluded *),.ck.ck-reset,.ck.ck-reset_all{background:transparent;border:0;box-sizing:border-box;height:auto;margin:0;padding:0;position:static;text-decoration:none;transition:none;vertical-align:middle;width:auto;word-wrap:break-word}.ck-reset_all :not(.ck-reset_all-excluded *),.ck.ck-reset_all{border-collapse:collapse;color:var(--ck-color-text);cursor:auto;float:none;font:normal normal normal var(--ck-font-size-base)/var(--ck-line-height-base) var(--ck-font-face);text-align:left;white-space:nowrap}.ck-reset_all .ck-rtl :not(.ck-reset_all-excluded *){text-align:right}.ck-reset_all iframe:not(.ck-reset_all-excluded *){vertical-align:inherit}.ck-reset_all textarea:not(.ck-reset_all-excluded *){white-space:pre-wrap}.ck-reset_all input[type=password]:not(.ck-reset_all-excluded *),.ck-reset_all input[type=text]:not(.ck-reset_all-excluded *),.ck-reset_all textarea:not(.ck-reset_all-excluded *){cursor:text}.ck-reset_all input[type=password][disabled]:not(.ck-reset_all-excluded *),.ck-reset_all input[type=text][disabled]:not(.ck-reset_all-excluded *),.ck-reset_all textarea[disabled]:not(.ck-reset_all-excluded *){cursor:default}.ck-reset_all fieldset:not(.ck-reset_all-excluded *){border:2px groove #dfdee3;padding:10px}.ck-reset_all button:not(.ck-reset_all-excluded *)::-moz-focus-inner{border:0;padding:0}.ck[dir=rtl],.ck[dir=rtl] .ck{text-align:right}:root{--ck-border-radius:2px;--ck-inner-shadow:2px 2px 3px var(--ck-color-shadow-inner) inset;--ck-drop-shadow:0 1px 2px 1px var(--ck-color-shadow-drop);--ck-drop-shadow-active:0 3px 6px 1px var(--ck-color-shadow-drop-active);--ck-spacing-unit:0.6em;--ck-spacing-large:calc(var(--ck-spacing-unit)*1.5);--ck-spacing-standard:var(--ck-spacing-unit);--ck-spacing-medium:calc(var(--ck-spacing-unit)*0.8);--ck-spacing-small:calc(var(--ck-spacing-unit)*0.5);--ck-spacing-tiny:calc(var(--ck-spacing-unit)*0.3);--ck-spacing-extra-tiny:calc(var(--ck-spacing-unit)*0.16)}","",{version:3,sources:["webpack://./../ckeditor5-ui/theme/globals/_hidden.css","webpack://./../ckeditor5-ui/theme/globals/_zindex.css","webpack://./../ckeditor5-ui/theme/globals/_transition.css","webpack://./../ckeditor5-ui/theme/globals/_poweredby.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_colors.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_disabled.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_focus.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_fonts.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_reset.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_rounded.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_shadow.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-ui/globals/_spacing.css"],names:[],mappings:"AAQA,WAGC,sBACD,CCPA,MACC,gBAAiB,CACjB,4CAA+C,CAC/C,kBACD,CCDA,oDAEC,yBACD,CCNA,MACC,gCAAiC,CACjC,oCAAqC,CACrC,sCAAuC,CACvC,kCAA2C,CAC3C,qDAAsD,CACtD,+BAA4C,CAC5C,yDACD,CAEA,2CACC,qDAAsD,CAGtD,0CAA2C,CAD3C,eAAgB,CAEhB,gBAAiB,CACjB,mCAiDD,CA/CC,6DACC,4CAoCD,CAlCC,+DAGC,kBAAmB,CAFnB,cAAe,CACf,YAAa,CAGb,qBAAsB,CACtB,4CAA6C,CAF7C,WAAY,CAGZ,qFACD,CAEA,mFASC,qCAAsC,CAFtC,cAAe,CANf,eAAgB,CAIhB,eAAiB,CAHjB,oBAAqB,CAMrB,kBAAmB,CAFnB,gBAAiB,CAHjB,gBAAiB,CACjB,wBAOD,CAEA,sEAEC,cAAe,CADf,aAED,CAGC,qEACC,mBAAqB,CACrB,SACD,CAIF,mEACC,wBACD,CAEA,mEACC,2BAA4B,CAC5B,8CACD,CChED,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,wDAAiE,CACjE,4DAAmE,CAInE,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,oCAAyD,CAIzD,yBAAgD,CChHhD,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,kCJgHD,CI1GA,2EAYC,sBAAuB,CADvB,QAAS,CART,qBAAsB,CAEtB,WAAY,CAIZ,QAAS,CACT,SAAU,CAJV,eAAgB,CAOhB,oBAAqB,CAErB,eAAgB,CADhB,qBAAsB,CAVtB,UAAW,CAcX,oBACD,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,CCxFA,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-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A class which hides an element in DOM.\n */\n.ck-hidden {\n\t/* Override selector specificity. Otherwise, all elements with some display\n\tstyle defined will override this one, which is not a desired result. */\n\tdisplay: none !important;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-z-default: 1;\n\t--ck-z-panel: calc( var(--ck-z-default) + 999 );\n\t--ck-z-dialog: 9999;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A class that disables all transitions of the element and its children.\n */\n.ck-transitions-disabled,\n.ck-transitions-disabled * {\n\ttransition: none !important;\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-powered-by-line-height: 10px;\n\t--ck-powered-by-padding-vertical: 2px;\n\t--ck-powered-by-padding-horizontal: 4px;\n\t--ck-powered-by-text-color: hsl(0, 0%, 31%);\n\t--ck-powered-by-border-radius: var(--ck-border-radius);\n\t--ck-powered-by-background: hsl(0, 0%, 100%);\n\t--ck-powered-by-border-color: var(--ck-color-focus-border);\n}\n\n.ck.ck-balloon-panel.ck-powered-by-balloon {\n\t--ck-border-radius: var(--ck-powered-by-border-radius);\n\n\tbox-shadow: none;\n\tbackground: var(--ck-powered-by-background);\n\tmin-height: unset;\n\tz-index: calc( var(--ck-z-panel) - 1 );\n\n\t& .ck.ck-powered-by {\n\t\tline-height: var(--ck-powered-by-line-height);\n\n\t\t& a {\n\t\t\tcursor: pointer;\n\t\t\tdisplay: flex;\n\t\t\talign-items: center;\n\t\t\topacity: .66;\n\t\t\tfilter: grayscale(80%);\n\t\t\tline-height: var(--ck-powered-by-line-height);\n\t\t\tpadding: var(--ck-powered-by-padding-vertical) var(--ck-powered-by-padding-horizontal);\n\t\t}\n\n\t\t& .ck-powered-by__label {\n\t\t\tfont-size: 7.5px;\n\t\t\tletter-spacing: -.2px;\n\t\t\tpadding-left: 2px;\n\t\t\ttext-transform: uppercase;\n\t\t\tfont-weight: bold;\n\t\t\tmargin-right: 4px;\n\t\t\tcursor: pointer;\n\t\t\tline-height: normal;\n\t\t\tcolor: var(--ck-powered-by-text-color);\n\n\t\t}\n\n\t\t& .ck-icon {\n\t\t\tdisplay: block;\n\t\t\tcursor: pointer;\n\t\t}\n\n\t\t&:hover {\n\t\t\t& a {\n\t\t\t\tfilter: grayscale(0%);\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t}\n\t}\n\n\t&[class*="position_inside"] {\n\t\tborder-color: transparent;\n\t}\n\n\t&[class*="position_border"] {\n\t\tborder: var(--ck-focus-ring);\n\t\tborder-color: var(--ck-powered-by-border-color);\n\t}\n}\n\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-base-foreground: \t\t\t\t\t\t\t\thsl(0, 0%, 98%);\n\t--ck-color-base-background: \t\t\t\t\t\t\t\thsl(0, 0%, 100%);\n\t--ck-color-base-border: \t\t\t\t\t\t\t\t\thsl(220, 6%, 81%);\n\t--ck-color-base-action: \t\t\t\t\t\t\t\t\thsl(104, 50.2%, 42.5%);\n\t--ck-color-base-focus: \t\t\t\t\t\t\t\t\t\thsl(209, 92%, 70%);\n\t--ck-color-base-text: \t\t\t\t\t\t\t\t\t\thsl(0, 0%, 20%);\n\t--ck-color-base-active: \t\t\t\t\t\t\t\t\thsl(218.1, 100%, 58%);\n\t--ck-color-base-active-focus:\t\t\t\t\t\t\t\thsl(218.2, 100%, 52.5%);\n\t--ck-color-base-error:\t\t\t\t\t\t\t\t\t\thsl(15, 100%, 43%);\n\n\t/* -- Generic colors ------------------------------------------------------------------------ */\n\n\t--ck-color-focus-border-coordinates: \t\t\t\t\t\t218, 81.8%, 56.9%;\n\t--ck-color-focus-border: \t\t\t\t\t\t\t\t\thsl(var(--ck-color-focus-border-coordinates));\n\t--ck-color-focus-outer-shadow:\t\t\t\t\t\t\t\thsl(212.4, 89.3%, 89%);\n\t--ck-color-focus-disabled-shadow:\t\t\t\t\t\t\thsla(209, 90%, 72%,.3);\n\t--ck-color-focus-error-shadow:\t\t\t\t\t\t\t\thsla(9,100%,56%,.3);\n\t--ck-color-text: \t\t\t\t\t\t\t\t\t\t\tvar(--ck-color-base-text);\n\t--ck-color-shadow-drop: \t\t\t\t\t\t\t\t\thsla(0, 0%, 0%, 0.15);\n\t--ck-color-shadow-drop-active:\t\t\t\t\t\t\t\thsla(0, 0%, 0%, 0.2);\n\t--ck-color-shadow-inner: \t\t\t\t\t\t\t\t\thsla(0, 0%, 0%, 0.1);\n\n\t/* -- Buttons ------------------------------------------------------------------------------- */\n\n\t--ck-color-button-default-background: \t\t\t\t\t\ttransparent;\n\t--ck-color-button-default-hover-background: \t\t\t\thsl(0, 0%, 94.1%);\n\t--ck-color-button-default-active-background: \t\t\t\thsl(0, 0%, 94.1%);\n\t--ck-color-button-default-disabled-background: \t\t\t\ttransparent;\n\n\t--ck-color-button-on-background: \t\t\t\t\t\t\thsl(212, 100%, 97.1%);\n\t--ck-color-button-on-hover-background: \t\t\t\t\t\thsl(211.7, 100%, 92.9%);\n\t--ck-color-button-on-active-background: \t\t\t\t\thsl(211.7, 100%, 92.9%);\n\t--ck-color-button-on-disabled-background: \t\t\t\t\thsl(211, 15%, 95%);\n\t--ck-color-button-on-color:\t\t\t\t\t\t\t\t\thsl(218.1, 100%, 58%);\n\n\n\t--ck-color-button-action-background: \t\t\t\t\t\tvar(--ck-color-base-action);\n\t--ck-color-button-action-hover-background: \t\t\t\t\thsl(104, 53.2%, 40.2%);\n\t--ck-color-button-action-active-background: \t\t\t\thsl(104, 53.2%, 40.2%);\n\t--ck-color-button-action-disabled-background: \t\t\t\thsl(104, 44%, 58%);\n\t--ck-color-button-action-text: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\n\t--ck-color-button-save: \t\t\t\t\t\t\t\t\thsl(120, 100%, 27%);\n\t--ck-color-button-cancel: \t\t\t\t\t\t\t\t\thsl(15, 100%, 43%);\n\n\t--ck-color-switch-button-off-background:\t\t\t\t\thsl(0, 0%, 57.6%);\n\t--ck-color-switch-button-off-hover-background:\t\t\t\thsl(0, 0%, 49%);\n\t--ck-color-switch-button-on-background:\t\t\t\t\t\tvar(--ck-color-button-action-background);\n\t--ck-color-switch-button-on-hover-background:\t\t\t\thsl(104, 53.2%, 40.2%);\n\t--ck-color-switch-button-inner-background:\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-switch-button-inner-shadow:\t\t\t\t\t\thsla(0, 0%, 0%, 0.1);\n\n\t/* -- Dropdown ------------------------------------------------------------------------------ */\n\n\t--ck-color-dropdown-panel-background: \t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-dropdown-panel-border: \t\t\t\t\t\t\tvar(--ck-color-base-border);\n\n\t/* -- Dialog -------------------------------------------------------------------------------- */\n\n\t--ck-color-dialog-background: \t\t\t\t\t\t\t\tvar(--ck-custom-background);\n\t--ck-color-dialog-form-header-border: \t\t\t\t\t\tvar(--ck-custom-border);\n\n\t/* -- Input --------------------------------------------------------------------------------- */\n\n\t--ck-color-input-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-input-border: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-border);\n\t--ck-color-input-error-border:\t\t\t\t\t\t\t\tvar(--ck-color-base-error);\n\t--ck-color-input-text: \t\t\t\t\t\t\t\t\t\tvar(--ck-color-base-text);\n\t--ck-color-input-disabled-background: \t\t\t\t\t\thsl(0, 0%, 95%);\n\t--ck-color-input-disabled-border: \t\t\t\t\t\t\tvar(--ck-color-base-border);\n\t--ck-color-input-disabled-text: \t\t\t\t\t\t\thsl(0, 0%, 46%);\n\n\t/* -- List ---------------------------------------------------------------------------------- */\n\n\t--ck-color-list-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-list-button-hover-background: \t\t\t\t\tvar(--ck-color-button-default-hover-background);\n\t--ck-color-list-button-on-background: \t\t\t\t\t\tvar(--ck-color-button-on-color);\n\t--ck-color-list-button-on-background-focus: \t\t\t\tvar(--ck-color-button-on-color);\n\t--ck-color-list-button-on-text:\t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\n\t/* -- Panel --------------------------------------------------------------------------------- */\n\n\t--ck-color-panel-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-panel-border: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-border);\n\n\t/* -- Toolbar ------------------------------------------------------------------------------- */\n\n\t--ck-color-toolbar-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\t--ck-color-toolbar-border: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-border);\n\n\t/* -- Tooltip ------------------------------------------------------------------------------- */\n\n\t--ck-color-tooltip-background: \t\t\t\t\t\t\t\tvar(--ck-color-base-text);\n\t--ck-color-tooltip-text: \t\t\t\t\t\t\t\t\tvar(--ck-color-base-background);\n\n\t/* -- Engine -------------------------------------------------------------------------------- */\n\n\t--ck-color-engine-placeholder-text: \t\t\t\t\t\thsl(0, 0%, 44%);\n\n\t/* -- Upload -------------------------------------------------------------------------------- */\n\n\t--ck-color-upload-bar-background:\t\t \t\t\t\t\thsl(209, 92%, 70%);\n\n\t/* -- Link -------------------------------------------------------------------------------- */\n\n\t--ck-color-link-default:\t\t\t\t\t\t\t\t\thsl(240, 100%, 47%);\n\t--ck-color-link-selected-background:\t\t\t\t\t\thsla(201, 100%, 56%, 0.1);\n\t--ck-color-link-fake-selection:\t\t\t\t\t\t\t\thsla(201, 100%, 56%, 0.3);\n\n\t/* -- Search result highlight ---------------------------------------------------------------- */\n\n\t--ck-color-highlight-background:\t\t\t\t\t\t\thsl(60, 100%, 50%);\n\n\t/* -- Generic colors ------------------------------------------------------------------------- */\n\n\t--ck-color-light-red:\t\t\t\t\t\t\t\t\t\thsl(0, 100%, 90%);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/**\n\t * An opacity value of disabled UI item.\n\t */\n\t--ck-disabled-opacity: .5;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/**\n\t * The geometry of the of focused element's outer shadow.\n\t */\n\t--ck-focus-outer-shadow-geometry: 0 0 0 3px;\n\n\t/**\n\t * A visual style of focused element's outer shadow.\n\t */\n\t--ck-focus-outer-shadow: var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-outer-shadow);\n\n\t/**\n\t * A visual style of focused element's outer shadow (when disabled).\n\t */\n\t--ck-focus-disabled-outer-shadow: var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-disabled-shadow);\n\n\t/**\n\t * A visual style of focused element's outer shadow (when has errors).\n\t */\n\t--ck-focus-error-outer-shadow: var(--ck-focus-outer-shadow-geometry) var(--ck-color-focus-error-shadow);\n\n\t/**\n\t * A visual style of focused element's border or outline.\n\t */\n\t--ck-focus-ring: 1px solid var(--ck-color-focus-border);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-font-size-base: 13px;\n\t--ck-line-height-base: 1.84615;\n\t--ck-font-face: Helvetica, Arial, Tahoma, Verdana, Sans-Serif;\n\n\t--ck-font-size-tiny: 0.7em;\n\t--ck-font-size-small: 0.75em;\n\t--ck-font-size-normal: 1em;\n\t--ck-font-size-big: 1.4em;\n\t--ck-font-size-large: 1.8em;\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/* This is super-important. This is **manually** adjusted so a button without an icon\n\tis never smaller than a button with icon, additionally making sure that text-less buttons\n\tare perfect squares. The value is also shared by other components which should stay "in-line"\n\twith buttons. */\n\t--ck-ui-component-min-height: 2.3em;\n}\n\n/**\n * Resets an element, ignoring its children.\n */\n.ck.ck-reset,\n.ck.ck-reset_all,\n.ck-reset_all *:not(.ck-reset_all-excluded *) {\n\tbox-sizing: border-box;\n\twidth: auto;\n\theight: auto;\n\tposition: static;\n\n\t/* Do not include inheritable rules here. */\n\tmargin: 0;\n\tpadding: 0;\n\tborder: 0;\n\tbackground: transparent;\n\ttext-decoration: none;\n\tvertical-align: middle;\n\ttransition: none;\n\n\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/105 */\n\tword-wrap: break-word;\n}\n\n/**\n * Resets an element AND its children.\n */\n.ck.ck-reset_all,\n.ck-reset_all *:not(.ck-reset_all-excluded *) {\n\t/* These are rule inherited by all children elements. */\n\tborder-collapse: collapse;\n\tfont: normal normal normal var(--ck-font-size-base)/var(--ck-line-height-base) var(--ck-font-face);\n\tcolor: var(--ck-color-text);\n\ttext-align: left;\n\twhite-space: nowrap;\n\tcursor: auto;\n\tfloat: none;\n}\n\n.ck-reset_all {\n\t& .ck-rtl *:not(.ck-reset_all-excluded *) {\n\t\ttext-align: right;\n\t}\n\n\t& iframe:not(.ck-reset_all-excluded *) {\n\t\t/* For IE */\n\t\tvertical-align: inherit;\n\t}\n\n\t& textarea:not(.ck-reset_all-excluded *) {\n\t\twhite-space: pre-wrap;\n\t}\n\n\t& textarea:not(.ck-reset_all-excluded *),\n\t& input[type="text"]:not(.ck-reset_all-excluded *),\n\t& input[type="password"]:not(.ck-reset_all-excluded *) {\n\t\tcursor: text;\n\t}\n\n\t& textarea[disabled]:not(.ck-reset_all-excluded *),\n\t& input[type="text"][disabled]:not(.ck-reset_all-excluded *),\n\t& input[type="password"][disabled]:not(.ck-reset_all-excluded *) {\n\t\tcursor: default;\n\t}\n\n\t& fieldset:not(.ck-reset_all-excluded *) {\n\t\tpadding: 10px;\n\t\tborder: 2px groove hsl(255, 7%, 88%);\n\t}\n\n\t& button:not(.ck-reset_all-excluded *)::-moz-focus-inner {\n\t\t/* See http://stackoverflow.com/questions/5517744/remove-extra-button-spacing-padding-in-firefox */\n\t\tpadding: 0;\n\t\tborder: 0\n\t}\n}\n\n/**\n * Default UI rules for RTL languages.\n */\n.ck[dir="rtl"],\n.ck[dir="rtl"] .ck {\n\ttext-align: right;\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * Default border-radius value.\n */\n:root{\n\t--ck-border-radius: 2px;\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t/**\n\t * A visual style of element's inner shadow (i.e. input).\n\t */\n\t--ck-inner-shadow: 2px 2px 3px var(--ck-color-shadow-inner) inset;\n\n\t/**\n\t * A visual style of element's drop shadow (i.e. panel).\n\t */\n\t--ck-drop-shadow: 0 1px 2px 1px var(--ck-color-shadow-drop);\n\n\t/**\n\t * A visual style of element's active shadow (i.e. comment or suggestion).\n\t */\n\t--ck-drop-shadow-active: 0 3px 6px 1px var(--ck-color-shadow-drop-active);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-spacing-unit: \t\t\t\t\t\t0.6em;\n\t--ck-spacing-large: \t\t\t\t\tcalc(var(--ck-spacing-unit) * 1.5);\n\t--ck-spacing-standard: \t\t\t\t\tvar(--ck-spacing-unit);\n\t--ck-spacing-medium: \t\t\t\t\tcalc(var(--ck-spacing-unit) * 0.8);\n\t--ck-spacing-small: \t\t\t\t\tcalc(var(--ck-spacing-unit) * 0.5);\n\t--ck-spacing-tiny: \t\t\t\t\t\tcalc(var(--ck-spacing-unit) * 0.3);\n\t--ck-spacing-extra-tiny: \t\t\t\tcalc(var(--ck-spacing-unit) * 0.16);\n}\n"],sourceRoot:""}]);const a=s},695:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,":root{--ck-color-resizer:var(--ck-color-focus-border);--ck-color-resizer-tooltip-background:#262626;--ck-color-resizer-tooltip-text:#f2f2f2;--ck-resizer-border-radius:var(--ck-border-radius);--ck-resizer-tooltip-offset:10px;--ck-resizer-tooltip-height:calc(var(--ck-spacing-small)*2 + 10px)}.ck .ck-widget,.ck .ck-widget.ck-widget_with-selection-handle{position:relative}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{position:absolute}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon{display:block}.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle{visibility:visible}.ck .ck-size-view{background:var(--ck-color-resizer-tooltip-background);border:1px solid var(--ck-color-resizer-tooltip-text);border-radius:var(--ck-resizer-border-radius);color:var(--ck-color-resizer-tooltip-text);display:block;font-size:var(--ck-font-size-tiny);height:var(--ck-resizer-tooltip-height);line-height:var(--ck-resizer-tooltip-height);padding:0 var(--ck-spacing-small)}.ck .ck-size-view.ck-orientation-above-center,.ck .ck-size-view.ck-orientation-bottom-left,.ck .ck-size-view.ck-orientation-bottom-right,.ck .ck-size-view.ck-orientation-top-left,.ck .ck-size-view.ck-orientation-top-right{position:absolute}.ck .ck-size-view.ck-orientation-top-left{left:var(--ck-resizer-tooltip-offset);top:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-top-right{right:var(--ck-resizer-tooltip-offset);top:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-bottom-right{bottom:var(--ck-resizer-tooltip-offset);right:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-bottom-left{bottom:var(--ck-resizer-tooltip-offset);left:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-above-center{left:50%;top:calc(var(--ck-resizer-tooltip-height)*-1);transform:translate(-50%)}:root{--ck-widget-outline-thickness:3px;--ck-widget-handler-icon-size:16px;--ck-widget-handler-animation-duration:200ms;--ck-widget-handler-animation-curve:ease;--ck-color-widget-blurred-border:#dedede;--ck-color-widget-hover-border:#ffc83d;--ck-color-widget-editable-focus-background:var(--ck-color-base-background);--ck-color-widget-drag-handler-icon-color:var(--ck-color-base-background)}.ck .ck-widget{outline-color:transparent;outline-style:solid;outline-width:var(--ck-widget-outline-thickness);transition:outline-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve)}@media (prefers-reduced-motion:reduce){.ck .ck-widget{transition:none}}.ck .ck-widget.ck-widget_selected,.ck .ck-widget.ck-widget_selected:hover{outline:var(--ck-widget-outline-thickness) solid var(--ck-color-focus-border)}.ck .ck-widget:hover{outline-color:var(--ck-color-widget-hover-border)}.ck .ck-editor__nested-editable{border:1px solid transparent}.ck .ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck .ck-editor__nested-editable:focus{border:var(--ck-focus-ring);box-shadow:var(--ck-inner-shadow),0 0;outline:none}@media (forced-colors:none){.ck .ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck .ck-editor__nested-editable:focus{background-color:var(--ck-color-widget-editable-focus-background)}}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{background-color:transparent;border-radius:var(--ck-border-radius) var(--ck-border-radius) 0 0;box-sizing:border-box;left:calc(0px - var(--ck-widget-outline-thickness));opacity:0;padding:4px;top:0;transform:translateY(-100%);transition:background-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),visibility var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve)}@media (prefers-reduced-motion:reduce){.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{transition:none}}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon{color:var(--ck-color-widget-drag-handler-icon-color);height:var(--ck-widget-handler-icon-size);width:var(--ck-widget-handler-icon-size)}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{opacity:0;transition:opacity .3s var(--ck-widget-handler-animation-curve)}@media (prefers-reduced-motion:reduce){.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{transition:none}}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle:hover .ck-icon .ck-icon__selected-indicator{opacity:1}.ck .ck-widget.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle{background-color:var(--ck-color-widget-hover-border);opacity:1}.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle{background-color:var(--ck-color-focus-border);opacity:1}.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator,.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{opacity:1}.ck[dir=rtl] .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{left:auto;right:calc(0px - var(--ck-widget-outline-thickness))}.ck.ck-editor__editable.ck-read-only .ck-widget{transition:none}.ck.ck-editor__editable.ck-read-only .ck-widget:not(.ck-widget_selected){--ck-widget-outline-thickness:0px}.ck.ck-editor__editable.ck-read-only .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle,.ck.ck-editor__editable.ck-read-only .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle:hover{background:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected:hover{outline-color:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle:hover>.ck-widget__selection-handle:hover,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle>.ck-widget__selection-handle,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle>.ck-widget__selection-handle:hover{background:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable blockquote>.ck-widget.ck-widget_with-selection-handle:first-child,.ck.ck-editor__editable>.ck-widget.ck-widget_with-selection-handle:first-child{margin-top:calc(1em + var(--ck-widget-handler-icon-size))}","",{version:3,sources:["webpack://./../ckeditor5-widget/theme/widget.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-widget/widget.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_focus.css","webpack://./../ckeditor5-theme-lark/theme/mixins/_shadow.css","webpack://./../ckeditor5-ui/theme/mixins/_mediacolors.css"],names:[],mappings:"AAKA,MACC,+CAAgD,CAChD,6CAAsD,CACtD,uCAAgD,CAEhD,kDAAmD,CACnD,gCAAiC,CACjC,kEACD,CAOA,8DAEC,iBAqBD,CAnBC,4EACC,iBAOD,CALC,qFAGC,aACD,CASD,iLACC,kBACD,CAGD,kBACC,qDAAsD,CAEtD,qDAAsD,CACtD,6CAA8C,CAF9C,0CAA2C,CAI3C,aAAc,CADd,kCAAmC,CAGnC,uCAAwC,CACxC,4CAA6C,CAF7C,iCAsCD,CAlCC,8NAKC,iBACD,CAEA,0CAEC,qCAAsC,CADtC,oCAED,CAEA,2CAEC,sCAAuC,CADvC,oCAED,CAEA,8CACC,uCAAwC,CACxC,sCACD,CAEA,6CACC,uCAAwC,CACxC,qCACD,CAGA,8CAEC,QAAS,CADT,6CAAgD,CAEhD,yBACD,CChFD,MACC,iCAAkC,CAClC,kCAAmC,CACnC,4CAA6C,CAC7C,wCAAyC,CAEzC,wCAAiD,CACjD,sCAAkD,CAClD,2EAA4E,CAC5E,yEACD,CAEA,eAGC,yBAA0B,CAD1B,mBAAoB,CADpB,gDAAiD,CAGjD,6GAcD,CAZC,uCAND,eAOE,eAWF,CAVC,CAEA,0EAEC,6EACD,CAEA,qBACC,iDACD,CAGD,gCACC,4BAYD,CARC,yGCnCA,2BAA2B,CCF3B,qCAA8B,CDC9B,YD2CA,CGvCA,4BACC,yGHoCC,iEGlCD,CACD,CHuCA,4EAKC,4BAA6B,CAa7B,iEAAkE,CAhBlE,qBAAsB,CAoBtB,mDAAoD,CAhBpD,SAAU,CALV,WAAY,CAsBZ,KAAM,CAFN,2BAA4B,CAT5B,6SAwCD,CA3BC,uCAzBD,4EA0BE,eA0BF,CAzBC,CAEA,qFAIC,oDAAqD,CADrD,yCAA0C,CAD1C,wCAeD,CAVC,kHACC,SAAU,CAGV,+DAKD,CAHC,uCAND,kHAOE,eAEF,CADC,CAKF,wHACC,SACD,CAID,kFAEC,oDAAqD,CADrD,SAED,CAKC,oMAEC,6CAA8C,CAD9C,SAOD,CAHC,gRACC,SACD,CAOH,qFACC,SAAU,CACV,oDACD,CAGA,gDAEC,eAkBD,CAhBC,yEAOC,iCACD,CAGC,gOAEC,gDACD,CAOD,wIAEC,mDAQD,CALE,ghBAEC,gDACD,CAKH,yKAOC,yDACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-color-resizer: var(--ck-color-focus-border);\n\t--ck-color-resizer-tooltip-background: hsl(0, 0%, 15%);\n\t--ck-color-resizer-tooltip-text: hsl(0, 0%, 95%);\n\n\t--ck-resizer-border-radius: var(--ck-border-radius);\n\t--ck-resizer-tooltip-offset: 10px;\n\t--ck-resizer-tooltip-height: calc(var(--ck-spacing-small) * 2 + 10px);\n}\n\n.ck .ck-widget {\n\t/* This is neccessary for type around UI to be positioned properly. */\n\tposition: relative;\n}\n\n.ck .ck-widget.ck-widget_with-selection-handle {\n\t/* Make the widget wrapper a relative positioning container for the drag handle. */\n\tposition: relative;\n\n\t& .ck-widget__selection-handle {\n\t\tposition: absolute;\n\n\t\t& .ck-icon {\n\t\t\t/* Make sure the icon in not a subject to font-size or line-height to avoid\n\t\t\tunnecessary spacing around it. */\n\t\t\tdisplay: block;\n\t\t}\n\t}\n\n\t/* Show the selection handle on mouse hover over the widget, but not for nested widgets. */\n\t&:hover > .ck-widget__selection-handle {\n\t\tvisibility: visible;\n\t}\n\n\t/* Show the selection handle when the widget is selected, but not for nested widgets. */\n\t&.ck-widget_selected > .ck-widget__selection-handle {\n\t\tvisibility: visible;\n\t}\n}\n\n.ck .ck-size-view {\n\tbackground: var(--ck-color-resizer-tooltip-background);\n\tcolor: var(--ck-color-resizer-tooltip-text);\n\tborder: 1px solid var(--ck-color-resizer-tooltip-text);\n\tborder-radius: var(--ck-resizer-border-radius);\n\tfont-size: var(--ck-font-size-tiny);\n\tdisplay: block;\n\tpadding: 0 var(--ck-spacing-small);\n\theight: var(--ck-resizer-tooltip-height);\n\tline-height: var(--ck-resizer-tooltip-height);\n\n\t&.ck-orientation-top-left,\n\t&.ck-orientation-top-right,\n\t&.ck-orientation-bottom-right,\n\t&.ck-orientation-bottom-left,\n\t&.ck-orientation-above-center {\n\t\tposition: absolute;\n\t}\n\n\t&.ck-orientation-top-left {\n\t\ttop: var(--ck-resizer-tooltip-offset);\n\t\tleft: var(--ck-resizer-tooltip-offset);\n\t}\n\n\t&.ck-orientation-top-right {\n\t\ttop: var(--ck-resizer-tooltip-offset);\n\t\tright: var(--ck-resizer-tooltip-offset);\n\t}\n\n\t&.ck-orientation-bottom-right {\n\t\tbottom: var(--ck-resizer-tooltip-offset);\n\t\tright: var(--ck-resizer-tooltip-offset);\n\t}\n\n\t&.ck-orientation-bottom-left {\n\t\tbottom: var(--ck-resizer-tooltip-offset);\n\t\tleft: var(--ck-resizer-tooltip-offset);\n\t}\n\n\t/* Class applied if the widget is too small to contain the size label */\n\t&.ck-orientation-above-center {\n\t\ttop: calc(var(--ck-resizer-tooltip-height) * -1);\n\t\tleft: 50%;\n\t\ttransform: translate(-50%);\n\t}\n}\n",'/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@import "../mixins/_focus.css";\n@import "../mixins/_shadow.css";\n@import "@ckeditor/ckeditor5-ui/theme/mixins/_mediacolors.css";\n\n:root {\n\t--ck-widget-outline-thickness: 3px;\n\t--ck-widget-handler-icon-size: 16px;\n\t--ck-widget-handler-animation-duration: 200ms;\n\t--ck-widget-handler-animation-curve: ease;\n\n\t--ck-color-widget-blurred-border: hsl(0, 0%, 87%);\n\t--ck-color-widget-hover-border: hsl(43, 100%, 62%);\n\t--ck-color-widget-editable-focus-background: var(--ck-color-base-background);\n\t--ck-color-widget-drag-handler-icon-color: var(--ck-color-base-background);\n}\n\n.ck .ck-widget {\n\toutline-width: var(--ck-widget-outline-thickness);\n\toutline-style: solid;\n\toutline-color: transparent;\n\ttransition: outline-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\n\t@media (prefers-reduced-motion: reduce) {\n\t\ttransition: none;\n\t}\n\n\t&.ck-widget_selected,\n\t&.ck-widget_selected:hover {\n\t\toutline: var(--ck-widget-outline-thickness) solid var(--ck-color-focus-border);\n\t}\n\n\t&:hover {\n\t\toutline-color: var(--ck-color-widget-hover-border);\n\t}\n}\n\n.ck .ck-editor__nested-editable {\n\tborder: 1px solid transparent;\n\n\t/* The :focus style is applied before .ck-editor__nested-editable_focused class is rendered in the view.\n\tThese styles show a different border for a blink of an eye, so `:focus` need to have same styles applied. */\n\t&.ck-editor__nested-editable_focused,\n\t&:focus {\n\t\t@mixin ck-focus-ring;\n\t\t@mixin ck-box-shadow var(--ck-inner-shadow);\n\t\t@mixin ck-media-default-colors {\n\t\t\tbackground-color: var(--ck-color-widget-editable-focus-background);\n\t\t}\n\t}\n}\n\n.ck .ck-widget.ck-widget_with-selection-handle {\n\t& .ck-widget__selection-handle {\n\t\tpadding: 4px;\n\t\tbox-sizing: border-box;\n\n\t\t/* Background and opacity will be animated as the handler shows up or the widget gets selected. */\n\t\tbackground-color: transparent;\n\t\topacity: 0;\n\n\t\t/* Transition:\n\t\t * background-color for the .ck-widget_selected state change,\n\t\t * visibility for hiding the handler,\n\t\t * opacity for the proper look of the icon when the handler disappears. */\n\t\ttransition:\n\t\t\tbackground-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),\n\t\t\tvisibility var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),\n\t\t\topacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\n\t\t/* Make only top corners round. */\n\t\tborder-radius: var(--ck-border-radius) var(--ck-border-radius) 0 0;\n\n\t\t/* Place the drag handler outside the widget wrapper. */\n\t\ttransform: translateY(-100%);\n\t\tleft: calc(0px - var(--ck-widget-outline-thickness));\n\t\ttop: 0;\n\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\ttransition: none;\n\t\t}\n\n\t\t& .ck-icon {\n\t\t\t/* Make sure the dimensions of the icon are independent of the fon-size of the content. */\n\t\t\twidth: var(--ck-widget-handler-icon-size);\n\t\t\theight: var(--ck-widget-handler-icon-size);\n\t\t\tcolor: var(--ck-color-widget-drag-handler-icon-color);\n\n\t\t\t/* The "selected" part of the icon is invisible by default */\n\t\t\t& .ck-icon__selected-indicator {\n\t\t\t\topacity: 0;\n\n\t\t\t\t/* Note: The animation is longer on purpose. Simply feels better. */\n\t\t\t\ttransition: opacity 300ms var(--ck-widget-handler-animation-curve);\n\n\t\t\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\t\t\ttransition: none;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/* Advertise using the look of the icon that once clicked the handler, the widget will be selected. */\n\t\t&:hover .ck-icon .ck-icon__selected-indicator {\n\t\t\topacity: 1;\n\t\t}\n\t}\n\n\t/* Show the selection handler on mouse hover over the widget, but not for nested widgets. */\n\t&:hover > .ck-widget__selection-handle {\n\t\topacity: 1;\n\t\tbackground-color: var(--ck-color-widget-hover-border);\n\t}\n\n\t/* Show the selection handler when the widget is selected, but not for nested widgets. */\n\t&.ck-widget_selected,\n\t&.ck-widget_selected:hover {\n\t\t& > .ck-widget__selection-handle {\n\t\t\topacity: 1;\n\t\t\tbackground-color: var(--ck-color-focus-border);\n\n\t\t\t/* When the widget is selected, notify the user using the proper look of the icon. */\n\t\t\t& .ck-icon .ck-icon__selected-indicator {\n\t\t\t\topacity: 1;\n\t\t\t}\n\t\t}\n\t}\n}\n\n/* In a RTL environment, align the selection handler to the right side of the widget */\n/* stylelint-disable-next-line no-descending-specificity */\n.ck[dir="rtl"] .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle {\n\tleft: auto;\n\tright: calc(0px - var(--ck-widget-outline-thickness));\n}\n\n/* https://github.com/ckeditor/ckeditor5/issues/6415 */\n.ck.ck-editor__editable.ck-read-only .ck-widget {\n\t/* Prevent the :hover outline from showing up because of the used outline-color transition. */\n\ttransition: none;\n\n\t&:not(.ck-widget_selected) {\n\t\t/* Disable visual effects of hover/active widget when CKEditor is in readOnly mode.\n\t\t * See: https://github.com/ckeditor/ckeditor5/issues/1261\n\t\t *\n\t\t * Leave the unit because this custom property is used in calc() by other features.\n\t\t * See: https://github.com/ckeditor/ckeditor5/issues/6775\n\t\t */\n\t\t--ck-widget-outline-thickness: 0px;\n\t}\n\n\t&.ck-widget_with-selection-handle {\n\t\t& .ck-widget__selection-handle,\n\t\t& .ck-widget__selection-handle:hover {\n\t\t\tbackground: var(--ck-color-widget-blurred-border);\n\t\t}\n\t}\n}\n\n/* Style the widget when it\'s selected but the editable it belongs to lost focus. */\n/* stylelint-disable-next-line no-descending-specificity */\n.ck.ck-editor__editable.ck-blurred .ck-widget {\n\t&.ck-widget_selected,\n\t&.ck-widget_selected:hover {\n\t\toutline-color: var(--ck-color-widget-blurred-border);\n\n\t\t&.ck-widget_with-selection-handle {\n\t\t\t& > .ck-widget__selection-handle,\n\t\t\t& > .ck-widget__selection-handle:hover {\n\t\t\t\tbackground: var(--ck-color-widget-blurred-border);\n\t\t\t}\n\t\t}\n\t}\n}\n\n.ck.ck-editor__editable > .ck-widget.ck-widget_with-selection-handle:first-child,\n.ck.ck-editor__editable blockquote > .ck-widget.ck-widget_with-selection-handle:first-child {\n\t/* Do not crop selection handler if a widget is a first-child in the blockquote or in the root editable.\n\tIn fact, anything with overflow: hidden.\n\thttps://github.com/ckeditor/ckeditor5-block-quote/issues/28\n\thttps://github.com/ckeditor/ckeditor5-widget/issues/44\n\thttps://github.com/ckeditor/ckeditor5-widget/issues/66 */\n\tmargin-top: calc(1em + var(--ck-widget-handler-icon-size));\n}\n',"/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A visual style of focused element's border.\n */\n@define-mixin ck-focus-ring {\n\t/* Disable native outline. */\n\toutline: none;\n\tborder: var(--ck-focus-ring)\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n/**\n * A helper to combine multiple shadows.\n */\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\n\tbox-shadow: $shadowA, $shadowB;\n}\n\n/**\n * Gives an element a drop shadow so it looks like a floating panel.\n */\n@define-mixin ck-drop-shadow {\n\t@mixin ck-box-shadow var(--ck-drop-shadow);\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n@define-mixin ck-media-forced-colors {\n\t@media (forced-colors: active) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n\n@define-mixin ck-media-default-colors {\n\t@media (forced-colors: none) {\n\t\t& {\n\t\t\t@mixin-content;\n\t\t}\n\t}\n}\n"],sourceRoot:""}]);const a=s},4095:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,".ck .ck-widget_with-resizer{position:relative}.ck .ck-widget__resizer{display:none;left:0;pointer-events:none;position:absolute;top:0}.ck-focused .ck-widget_with-resizer.ck-widget_selected>.ck-widget__resizer{display:block}.ck .ck-widget__resizer__handle{pointer-events:all;position:absolute}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-right,.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-left{cursor:nwse-resize}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-left,.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-right{cursor:nesw-resize}:root{--ck-resizer-size:10px;--ck-resizer-offset:calc(var(--ck-resizer-size)/-2 - 2px);--ck-resizer-border-width:1px}.ck .ck-widget__resizer{outline:1px solid var(--ck-color-resizer)}.ck .ck-widget__resizer__handle{background:var(--ck-color-focus-border);border:var(--ck-resizer-border-width) solid #fff;border-radius:var(--ck-resizer-border-radius);height:var(--ck-resizer-size);width:var(--ck-resizer-size)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-left{left:var(--ck-resizer-offset);top:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-top-right{right:var(--ck-resizer-offset);top:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-right{bottom:var(--ck-resizer-offset);right:var(--ck-resizer-offset)}.ck .ck-widget__resizer__handle.ck-widget__resizer__handle-bottom-left{bottom:var(--ck-resizer-offset);left:var(--ck-resizer-offset)}","",{version:3,sources:["webpack://./../ckeditor5-widget/theme/widgetresize.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-widget/widgetresize.css"],names:[],mappings:"AAKA,4BAEC,iBACD,CAEA,wBACC,YAAa,CAMb,MAAO,CAFP,mBAAoB,CAHpB,iBAAkB,CAMlB,KACD,CAGC,2EACC,aACD,CAGD,gCAIC,kBAAmB,CAHnB,iBAcD,CATC,4IAEC,kBACD,CAEA,4IAEC,kBACD,CCpCD,MACC,sBAAuB,CAGvB,yDAAiE,CACjE,6BACD,CAEA,wBACC,yCACD,CAEA,gCAGC,uCAAwC,CACxC,gDAA6D,CAC7D,6CAA8C,CAH9C,6BAA8B,CAD9B,4BAyBD,CAnBC,oEAEC,6BAA8B,CAD9B,4BAED,CAEA,qEAEC,8BAA+B,CAD/B,4BAED,CAEA,wEACC,+BAAgC,CAChC,8BACD,CAEA,uEACC,+BAAgC,CAChC,6BACD",sourcesContent:["/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-widget_with-resizer {\n\t/* Make the widget wrapper a relative positioning container for the drag handle. */\n\tposition: relative;\n}\n\n.ck .ck-widget__resizer {\n\tdisplay: none;\n\tposition: absolute;\n\n\t/* The wrapper itself should not interfere with the pointer device, only the handles should. */\n\tpointer-events: none;\n\n\tleft: 0;\n\ttop: 0;\n}\n\n.ck-focused .ck-widget_with-resizer.ck-widget_selected {\n\t& > .ck-widget__resizer {\n\t\tdisplay: block;\n\t}\n}\n\n.ck .ck-widget__resizer__handle {\n\tposition: absolute;\n\n\t/* Resizers are the only UI elements that should interfere with a pointer device. */\n\tpointer-events: all;\n\n\t&.ck-widget__resizer__handle-top-left,\n\t&.ck-widget__resizer__handle-bottom-right {\n\t\tcursor: nwse-resize;\n\t}\n\n\t&.ck-widget__resizer__handle-top-right,\n\t&.ck-widget__resizer__handle-bottom-left {\n\t\tcursor: nesw-resize;\n\t}\n}\n","/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-resizer-size: 10px;\n\n\t/* Set the resizer with a 50% offset. */\n\t--ck-resizer-offset: calc( ( var(--ck-resizer-size) / -2 ) - 2px);\n\t--ck-resizer-border-width: 1px;\n}\n\n.ck .ck-widget__resizer {\n\toutline: 1px solid var(--ck-color-resizer);\n}\n\n.ck .ck-widget__resizer__handle {\n\twidth: var(--ck-resizer-size);\n\theight: var(--ck-resizer-size);\n\tbackground: var(--ck-color-focus-border);\n\tborder: var(--ck-resizer-border-width) solid hsl(0, 0%, 100%);\n\tborder-radius: var(--ck-resizer-border-radius);\n\n\t&.ck-widget__resizer__handle-top-left {\n\t\ttop: var(--ck-resizer-offset);\n\t\tleft: var(--ck-resizer-offset);\n\t}\n\n\t&.ck-widget__resizer__handle-top-right {\n\t\ttop: var(--ck-resizer-offset);\n\t\tright: var(--ck-resizer-offset);\n\t}\n\n\t&.ck-widget__resizer__handle-bottom-right {\n\t\tbottom: var(--ck-resizer-offset);\n\t\tright: var(--ck-resizer-offset);\n\t}\n\n\t&.ck-widget__resizer__handle-bottom-left {\n\t\tbottom: var(--ck-resizer-offset);\n\t\tleft: var(--ck-resizer-offset);\n\t}\n}\n"],sourceRoot:""}]);const a=s},8508:(t,e,n)=>{"use strict";n.d(e,{A:()=>a});var i=n(9372),o=n.n(i),r=n(935),s=n.n(r)()(o());s.push([t.id,'.ck .ck-widget .ck-widget__type-around__button{display:block;overflow:hidden;position:absolute;z-index:var(--ck-z-default)}.ck .ck-widget .ck-widget__type-around__button svg{left:50%;position:absolute;top:50%;z-index:calc(var(--ck-z-default) + 2)}.ck .ck-widget .ck-widget__type-around__button.ck-widget__type-around__button_before{left:min(10%,30px);top:calc(var(--ck-widget-outline-thickness)*-.5);transform:translateY(-50%)}.ck .ck-widget .ck-widget__type-around__button.ck-widget__type-around__button_after{bottom:calc(var(--ck-widget-outline-thickness)*-.5);right:min(10%,30px);transform:translateY(50%)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:after,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover:after{content:"";display:block;left:1px;position:absolute;top:1px;z-index:calc(var(--ck-z-default) + 1)}.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__fake-caret{display:none;left:0;position:absolute;right:0}.ck .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__fake-caret{left:calc(var(--ck-widget-outline-thickness)*-1);right:calc(var(--ck-widget-outline-thickness)*-1)}.ck .ck-widget.ck-widget_type-around_show-fake-caret_before>.ck-widget__type-around>.ck-widget__type-around__fake-caret{display:block;top:calc(var(--ck-widget-outline-thickness)*-1 - 1px)}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after>.ck-widget__type-around>.ck-widget__type-around__fake-caret{bottom:calc(var(--ck-widget-outline-thickness)*-1 - 1px);display:block}.ck.ck-editor__editable.ck-read-only .ck-widget__type-around,.ck.ck-editor__editable.ck-restricted-editing_mode_restricted .ck-widget__type-around,.ck.ck-editor__editable.ck-widget__type-around_disabled .ck-widget__type-around{display:none}:root{--ck-widget-type-around-button-size:20px;--ck-color-widget-type-around-button-active:var(--ck-color-focus-border);--ck-color-widget-type-around-button-hover:var(--ck-color-widget-hover-border);--ck-color-widget-type-around-button-blurred-editable:var(--ck-color-widget-blurred-border);--ck-color-widget-type-around-button-radar-start-alpha:0;--ck-color-widget-type-around-button-radar-end-alpha:.3;--ck-color-widget-type-around-button-icon:var(--ck-color-base-background)}.ck .ck-widget .ck-widget__type-around__button{background:var(--ck-color-widget-type-around-button);border-radius:100px;height:var(--ck-widget-type-around-button-size);opacity:0;pointer-events:none;transition:opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);width:var(--ck-widget-type-around-button-size)}@media (prefers-reduced-motion:reduce){.ck .ck-widget .ck-widget__type-around__button{transition:none}}.ck .ck-widget .ck-widget__type-around__button svg{height:8px;margin-top:1px;transform:translate(-50%,-50%);transition:transform .5s ease;width:10px}@media (prefers-reduced-motion:reduce){.ck .ck-widget .ck-widget__type-around__button svg{transition:none}}.ck .ck-widget .ck-widget__type-around__button svg *{stroke-dasharray:10;stroke-dashoffset:0;fill:none;stroke:var(--ck-color-widget-type-around-button-icon);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.ck .ck-widget .ck-widget__type-around__button svg line{stroke-dasharray:7}.ck .ck-widget .ck-widget__type-around__button:hover{animation:ck-widget-type-around-button-sonar 1s ease infinite}.ck .ck-widget .ck-widget__type-around__button:hover svg polyline{animation:ck-widget-type-around-arrow-dash 2s linear}.ck .ck-widget .ck-widget__type-around__button:hover svg line{animation:ck-widget-type-around-arrow-tip-dash 2s linear}@media (prefers-reduced-motion:reduce){.ck .ck-widget .ck-widget__type-around__button:hover,.ck .ck-widget .ck-widget__type-around__button:hover svg line,.ck .ck-widget .ck-widget__type-around__button:hover svg polyline{animation:none}}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__button{opacity:1;pointer-events:auto}.ck .ck-widget:not(.ck-widget_selected)>.ck-widget__type-around>.ck-widget__type-around__button{background:var(--ck-color-widget-type-around-button-hover)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover{background:var(--ck-color-widget-type-around-button-active)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:after,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover:after{background:linear-gradient(135deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.3));border-radius:100px;height:calc(var(--ck-widget-type-around-button-size) - 2px);width:calc(var(--ck-widget-type-around-button-size) - 2px)}.ck .ck-widget.ck-widget_with-selection-handle>.ck-widget__type-around>.ck-widget__type-around__button_before{margin-left:20px}.ck .ck-widget .ck-widget__type-around__fake-caret{animation:ck-widget-type-around-fake-caret-pulse 1s linear infinite normal forwards;background:var(--ck-color-base-text);height:1px;outline:1px solid hsla(0,0%,100%,.5);pointer-events:none}.ck .ck-widget.ck-widget_selected.ck-widget_type-around_show-fake-caret_after,.ck .ck-widget.ck-widget_selected.ck-widget_type-around_show-fake-caret_before{outline-color:transparent}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_selected:hover,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_selected:hover{outline-color:var(--ck-color-widget-hover-border)}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_selected.ck-widget_with-resizer>.ck-widget__resizer,.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_selected.ck-widget_with-resizer>.ck-widget__resizer,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle{opacity:0}.ck[dir=rtl] .ck-widget.ck-widget_with-selection-handle .ck-widget__type-around>.ck-widget__type-around__button_before{margin-left:0;margin-right:20px}.ck-editor__nested-editable.ck-editor__editable_selected .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck-editor__nested-editable.ck-editor__editable_selected .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:not(:hover){background:var(--ck-color-widget-type-around-button-blurred-editable)}.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:not(:hover) svg *{stroke:#999}@keyframes ck-widget-type-around-arrow-dash{0%{stroke-dashoffset:10}20%,to{stroke-dashoffset:0}}@keyframes ck-widget-type-around-arrow-tip-dash{0%,20%{stroke-dashoffset:7}40%,to{stroke-dashoffset:0}}@keyframes ck-widget-type-around-button-sonar{0%{box-shadow:0 0 0 0 hsla(var(--ck-color-focus-border-coordinates),var(--ck-color-widget-type-around-button-radar-start-alpha))}50%{box-shadow:0 0 0 5px hsla(var(--ck-color-focus-border-coordinates),var(--ck-color-widget-type-around-button-radar-end-alpha))}to{box-shadow:0 0 0 5px hsla(var(--ck-color-focus-border-coordinates),var(--ck-color-widget-type-around-button-radar-start-alpha))}}@keyframes ck-widget-type-around-fake-caret-pulse{0%{opacity:1}49%{opacity:1}50%{opacity:0}99%{opacity:0}to{opacity:1}}',"",{version:3,sources:["webpack://./../ckeditor5-widget/theme/widgettypearound.css","webpack://./../ckeditor5-theme-lark/theme/ckeditor5-widget/widgettypearound.css"],names:[],mappings:"AASC,+CACC,aAAc,CAEd,eAAgB,CADhB,iBAAkB,CAElB,2BAwBD,CAtBC,mDAGC,QAAS,CAFT,iBAAkB,CAClB,OAAQ,CAER,qCACD,CAEA,qFAGC,kBAAoB,CADpB,gDAAoD,CAGpD,0BACD,CAEA,oFAEC,mDAAuD,CACvD,mBAAqB,CAErB,yBACD,CAUA,mLACC,UAAW,CACX,aAAc,CAGd,QAAS,CAFT,iBAAkB,CAClB,OAAQ,CAER,qCACD,CAMD,2EACC,YAAa,CAEb,MAAO,CADP,iBAAkB,CAElB,OACD,CAOA,iFACC,gDAAqD,CACrD,iDACD,CAKA,wHAEC,aAAc,CADd,qDAED,CAKA,uHACC,wDAA6D,CAC7D,aACD,CAoBD,mOACC,YACD,CC3GA,MACC,wCAAyC,CACzC,wEAAyE,CACzE,8EAA+E,CAC/E,2FAA4F,CAC5F,wDAAyD,CACzD,uDAAwD,CACxD,yEACD,CAgBC,+CAGC,oDAAqD,CACrD,mBAAoB,CAFpB,+CAAgD,CAVjD,SAAU,CACV,mBAAoB,CAYnB,uMAAyM,CAJzM,8CAwED,CAhEC,uCATD,+CAUE,eA+DF,CA9DC,CAEA,mDAEC,UAAW,CAGX,cAAe,CAFf,8BAA+B,CAC/B,6BAA8B,CAH9B,UAwBD,CAlBC,uCAPD,mDAQE,eAiBF,CAhBC,CAEA,qDACC,mBAAoB,CACpB,mBAAoB,CAEpB,SAAU,CACV,qDAAsD,CACtD,kBAAmB,CACnB,oBAAqB,CACrB,qBACD,CAEA,wDACC,kBACD,CAGD,qDAIC,6DA4BD,CAtBE,kEACC,oDACD,CAEA,8DACC,wDACD,CAGD,uCAQE,qLACC,cACD,CAEF,CASD,uKA7FD,SAAU,CACV,mBA8FC,CAOD,gGACC,0DACD,CAOA,uKAEC,2DAQD,CANC,mLAIC,uEAAkF,CADlF,mBAAoB,CADpB,2DAA4D,CAD5D,0DAID,CAOD,8GACC,gBACD,CAKA,mDAGC,mFAAoF,CAOpF,oCAAqC,CARrC,UAAW,CAOX,oCAAwC,CARxC,mBAUD,CAOC,6JAEC,yBACD,CAUA,yKACC,iDACD,CAMA,uOAxKD,SAAU,CACV,mBAyKC,CAoBA,6yBACC,SACD,CASF,uHACC,aAAc,CACd,iBACD,CAYG,iRAxNF,SAAU,CACV,mBAyNE,CAQH,kIACC,qEAKD,CAHC,wIACC,WACD,CAGD,4CACC,GACC,oBACD,CACA,OACC,mBACD,CACD,CAEA,gDACC,OACC,mBACD,CACA,OACC,mBACD,CACD,CAEA,8CACC,GACC,6HACD,CACA,IACC,6HACD,CACA,GACC,+HACD,CACD,CAEA,kDACC,GACC,SACD,CACA,IACC,SACD,CACA,IACC,SACD,CACA,IACC,SACD,CACA,GACC,SACD,CACD",sourcesContent:['/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n.ck .ck-widget {\n\t/*\n\t * Styles of the type around buttons\n\t */\n\t& .ck-widget__type-around__button {\n\t\tdisplay: block;\n\t\tposition: absolute;\n\t\toverflow: hidden;\n\t\tz-index: var(--ck-z-default);\n\n\t\t& svg {\n\t\t\tposition: absolute;\n\t\t\ttop: 50%;\n\t\t\tleft: 50%;\n\t\t\tz-index: calc(var(--ck-z-default) + 2);\n\t\t}\n\n\t\t&.ck-widget__type-around__button_before {\n\t\t\t/* Place it in the middle of the outline */\n\t\t\ttop: calc(-0.5 * var(--ck-widget-outline-thickness));\n\t\t\tleft: min(10%, 30px);\n\n\t\t\ttransform: translateY(-50%);\n\t\t}\n\n\t\t&.ck-widget__type-around__button_after {\n\t\t\t/* Place it in the middle of the outline */\n\t\t\tbottom: calc(-0.5 * var(--ck-widget-outline-thickness));\n\t\t\tright: min(10%, 30px);\n\n\t\t\ttransform: translateY(50%);\n\t\t}\n\t}\n\n\t/*\n\t * Styles for the buttons when:\n\t * - the widget is selected,\n\t * - or the button is being hovered (regardless of the widget state).\n\t */\n\t&.ck-widget_selected > .ck-widget__type-around > .ck-widget__type-around__button,\n\t& > .ck-widget__type-around > .ck-widget__type-around__button:hover {\n\t\t&::after {\n\t\t\tcontent: "";\n\t\t\tdisplay: block;\n\t\t\tposition: absolute;\n\t\t\ttop: 1px;\n\t\t\tleft: 1px;\n\t\t\tz-index: calc(var(--ck-z-default) + 1);\n\t\t}\n\t}\n\n\t/*\n\t * Styles for the horizontal "fake caret" which is displayed when the user navigates using the keyboard.\n\t */\n\t& > .ck-widget__type-around > .ck-widget__type-around__fake-caret {\n\t\tdisplay: none;\n\t\tposition: absolute;\n\t\tleft: 0;\n\t\tright: 0;\n\t}\n\n\t/*\n\t * When the widget is hovered the "fake caret" would normally be narrower than the\n\t * extra outline displayed around the widget. Let\'s extend the "fake caret" to match\n\t * the full width of the widget.\n\t */\n\t&:hover > .ck-widget__type-around > .ck-widget__type-around__fake-caret {\n\t\tleft: calc( -1 * var(--ck-widget-outline-thickness) );\n\t\tright: calc( -1 * var(--ck-widget-outline-thickness) );\n\t}\n\n\t/*\n\t * Styles for the horizontal "fake caret" when it should be displayed before the widget (backward keyboard navigation).\n\t */\n\t&.ck-widget_type-around_show-fake-caret_before > .ck-widget__type-around > .ck-widget__type-around__fake-caret {\n\t\ttop: calc( -1 * var(--ck-widget-outline-thickness) - 1px );\n\t\tdisplay: block;\n\t}\n\n\t/*\n\t * Styles for the horizontal "fake caret" when it should be displayed after the widget (forward keyboard navigation).\n\t */\n\t&.ck-widget_type-around_show-fake-caret_after > .ck-widget__type-around > .ck-widget__type-around__fake-caret {\n\t\tbottom: calc( -1 * var(--ck-widget-outline-thickness) - 1px );\n\t\tdisplay: block;\n\t}\n}\n\n/*\n * Integration with the read-only mode of the editor.\n */\n.ck.ck-editor__editable.ck-read-only .ck-widget__type-around {\n\tdisplay: none;\n}\n\n/*\n * Integration with the restricted editing mode (feature) of the editor.\n */\n.ck.ck-editor__editable.ck-restricted-editing_mode_restricted .ck-widget__type-around {\n\tdisplay: none;\n}\n\n/*\n * Integration with the #isEnabled property of the WidgetTypeAround plugin.\n */\n.ck.ck-editor__editable.ck-widget__type-around_disabled .ck-widget__type-around {\n\tdisplay: none;\n}\n','/*\n * Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\n */\n\n:root {\n\t--ck-widget-type-around-button-size: 20px;\n\t--ck-color-widget-type-around-button-active: var(--ck-color-focus-border);\n\t--ck-color-widget-type-around-button-hover: var(--ck-color-widget-hover-border);\n\t--ck-color-widget-type-around-button-blurred-editable: var(--ck-color-widget-blurred-border);\n\t--ck-color-widget-type-around-button-radar-start-alpha: 0;\n\t--ck-color-widget-type-around-button-radar-end-alpha: .3;\n\t--ck-color-widget-type-around-button-icon: var(--ck-color-base-background);\n}\n\n@define-mixin ck-widget-type-around-button-visible {\n\topacity: 1;\n\tpointer-events: auto;\n}\n\n@define-mixin ck-widget-type-around-button-hidden {\n\topacity: 0;\n\tpointer-events: none;\n}\n\n.ck .ck-widget {\n\t/*\n\t * Styles of the type around buttons\n\t */\n\t& .ck-widget__type-around__button {\n\t\twidth: var(--ck-widget-type-around-button-size);\n\t\theight: var(--ck-widget-type-around-button-size);\n\t\tbackground: var(--ck-color-widget-type-around-button);\n\t\tborder-radius: 100px;\n\t\ttransition: opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve), background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\n\n\t\t@mixin ck-widget-type-around-button-hidden;\n\n\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\ttransition: none;\n\t\t}\n\n\t\t& svg {\n\t\t\twidth: 10px;\n\t\t\theight: 8px;\n\t\t\ttransform: translate(-50%,-50%);\n\t\t\ttransition: transform .5s ease;\n\t\t\tmargin-top: 1px;\n\n\t\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\t\ttransition: none;\n\t\t\t}\n\n\t\t\t& * {\n\t\t\t\tstroke-dasharray: 10;\n\t\t\t\tstroke-dashoffset: 0;\n\n\t\t\t\tfill: none;\n\t\t\t\tstroke: var(--ck-color-widget-type-around-button-icon);\n\t\t\t\tstroke-width: 1.5px;\n\t\t\t\tstroke-linecap: round;\n\t\t\t\tstroke-linejoin: round;\n\t\t\t}\n\n\t\t\t& line {\n\t\t\t\tstroke-dasharray: 7;\n\t\t\t}\n\t\t}\n\n\t\t&:hover {\n\t\t\t/*\n\t\t\t * Display the "sonar" around the button when hovered.\n\t\t\t */\n\t\t\tanimation: ck-widget-type-around-button-sonar 1s ease infinite;\n\n\t\t\t/*\n\t\t\t * Animate active button\'s icon.\n\t\t\t */\n\t\t\t& svg {\n\t\t\t\t& polyline {\n\t\t\t\t\tanimation: ck-widget-type-around-arrow-dash 2s linear;\n\t\t\t\t}\n\n\t\t\t\t& line {\n\t\t\t\t\tanimation: ck-widget-type-around-arrow-tip-dash 2s linear;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t@media (prefers-reduced-motion: reduce) {\n\t\t\t\tanimation: none;\n\n\t\t\t\t& svg {\n\t\t\t\t\t& polyline {\n\t\t\t\t\t\tanimation: none;\n\t\t\t\t\t}\n\n\t\t\t\t\t& line {\n\t\t\t\t\t\tanimation: none;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/*\n\t * Show type around buttons when the widget gets selected or being hovered.\n\t */\n\t&.ck-widget_selected,\n\t&:hover {\n\t\t& > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\t\t@mixin ck-widget-type-around-button-visible;\n\t\t}\n\t}\n\n\t/*\n\t * Styles for the buttons when the widget is NOT selected (but the buttons are visible\n\t * and still can be hovered).\n\t */\n\t&:not(.ck-widget_selected) > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\tbackground: var(--ck-color-widget-type-around-button-hover);\n\t}\n\n\t/*\n\t * Styles for the buttons when:\n\t * - the widget is selected,\n\t * - or the button is being hovered (regardless of the widget state).\n\t */\n\t&.ck-widget_selected > .ck-widget__type-around > .ck-widget__type-around__button,\n\t& > .ck-widget__type-around > .ck-widget__type-around__button:hover {\n\t\tbackground: var(--ck-color-widget-type-around-button-active);\n\n\t\t&::after {\n\t\t\twidth: calc(var(--ck-widget-type-around-button-size) - 2px);\n\t\t\theight: calc(var(--ck-widget-type-around-button-size) - 2px);\n\t\t\tborder-radius: 100px;\n\t\t\tbackground: linear-gradient(135deg, hsla(0,0%,100%,0) 0%, hsla(0,0%,100%,.3) 100%);\n\t\t}\n\t}\n\n\t/*\n\t * Styles for the "before" button when the widget has a selection handle. Because some space\n\t * is consumed by the handle, the button must be moved slightly to the right to let it breathe.\n\t */\n\t&.ck-widget_with-selection-handle > .ck-widget__type-around > .ck-widget__type-around__button_before {\n\t\tmargin-left: 20px;\n\t}\n\n\t/*\n\t * Styles for the horizontal "fake caret" which is displayed when the user navigates using the keyboard.\n\t */\n\t& .ck-widget__type-around__fake-caret {\n\t\tpointer-events: none;\n\t\theight: 1px;\n\t\tanimation: ck-widget-type-around-fake-caret-pulse linear 1s infinite normal forwards;\n\n\t\t/*\n\t\t * The semi-transparent-outline+background combo improves the contrast\n\t\t * when the background underneath the fake caret is dark.\n\t\t */\n\t\toutline: solid 1px hsla(0, 0%, 100%, .5);\n\t\tbackground: var(--ck-color-base-text);\n\t}\n\n\t/*\n\t * Styles of the widget when the "fake caret" is blinking (e.g. upon keyboard navigation).\n\t * Despite the widget being physically selected in the model, its outline should disappear.\n\t */\n\t&.ck-widget_selected {\n\t\t&.ck-widget_type-around_show-fake-caret_before,\n\t\t&.ck-widget_type-around_show-fake-caret_after {\n\t\t\toutline-color: transparent;\n\t\t}\n\t}\n\n\t&.ck-widget_type-around_show-fake-caret_before,\n\t&.ck-widget_type-around_show-fake-caret_after {\n\t\t/*\n\t\t * When the "fake caret" is visible we simulate that the widget is not selected\n\t\t * (despite being physically selected), so the outline color should be for the\n\t\t * unselected widget.\n\t\t */\n\t\t&.ck-widget_selected:hover {\n\t\t\toutline-color: var(--ck-color-widget-hover-border);\n\t\t}\n\n\t\t/*\n\t\t * Styles of the type around buttons when the "fake caret" is blinking (e.g. upon keyboard navigation).\n\t\t * In this state, the type around buttons would collide with the fake carets so they should disappear.\n\t\t */\n\t\t& > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\t\t@mixin ck-widget-type-around-button-hidden;\n\t\t}\n\n\t\t/*\n\t\t * Fake horizontal caret integration with the selection handle. When the caret is visible, simply\n\t\t * hide the handle because it intersects with the caret (and does not make much sense anyway).\n\t\t */\n\t\t&.ck-widget_with-selection-handle {\n\t\t\t&.ck-widget_selected,\n\t\t\t&.ck-widget_selected:hover {\n\t\t\t\t& > .ck-widget__selection-handle {\n\t\t\t\t\topacity: 0\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t/*\n\t\t * Fake horizontal caret integration with the resize UI. When the caret is visible, simply\n\t\t * hide the resize UI because it creates too much noise. It can be visible when the user\n\t\t * hovers the widget, though.\n\t\t */\n\t\t&.ck-widget_selected.ck-widget_with-resizer > .ck-widget__resizer {\n\t\t\topacity: 0\n\t\t}\n\t}\n}\n\n/*\n * Styles for the "before" button when the widget has a selection handle in an RTL environment.\n * The selection handler is aligned to the right side of the widget so there is no need to create\n * additional space for it next to the "before" button.\n */\n.ck[dir="rtl"] .ck-widget.ck-widget_with-selection-handle .ck-widget__type-around > .ck-widget__type-around__button_before {\n\tmargin-left: 0;\n\tmargin-right: 20px;\n}\n\n/*\n * Hide type around buttons when the widget is selected as a child of a selected\n * nested editable (e.g. mulit-cell table selection).\n *\n * See https://github.com/ckeditor/ckeditor5/issues/7263.\n */\n.ck-editor__nested-editable.ck-editor__editable_selected {\n\t& .ck-widget {\n\t\t&.ck-widget_selected,\n\t\t&:hover {\n\t\t\t& > .ck-widget__type-around > .ck-widget__type-around__button {\n\t\t\t\t@mixin ck-widget-type-around-button-hidden;\n\t\t\t}\n\t\t}\n\t}\n}\n\n/*\n * Styles for the buttons when the widget is selected but the user clicked outside of the editor (blurred the editor).\n */\n.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected > .ck-widget__type-around > .ck-widget__type-around__button:not(:hover) {\n\tbackground: var(--ck-color-widget-type-around-button-blurred-editable);\n\n\t& svg * {\n\t\tstroke: hsl(0,0%,60%);\n\t}\n}\n\n@keyframes ck-widget-type-around-arrow-dash {\n\t0% {\n\t\tstroke-dashoffset: 10;\n\t}\n\t20%, 100% {\n\t\tstroke-dashoffset: 0;\n\t}\n}\n\n@keyframes ck-widget-type-around-arrow-tip-dash {\n\t0%, 20% {\n\t\tstroke-dashoffset: 7;\n\t}\n\t40%, 100% {\n\t\tstroke-dashoffset: 0;\n\t}\n}\n\n@keyframes ck-widget-type-around-button-sonar {\n\t0% {\n\t\tbox-shadow: 0 0 0 0 hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-start-alpha));\n\t}\n\t50% {\n\t\tbox-shadow: 0 0 0 5px hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-end-alpha));\n\t}\n\t100% {\n\t\tbox-shadow: 0 0 0 5px hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-start-alpha));\n\t}\n}\n\n@keyframes ck-widget-type-around-fake-caret-pulse {\n\t0% {\n\t\topacity: 1;\n\t}\n\t49% {\n\t\topacity: 1;\n\t}\n\t50% {\n\t\topacity: 0;\n\t}\n\t99% {\n\t\topacity: 0;\n\t}\n\t100% {\n\t\topacity: 1;\n\t}\n}\n'],sourceRoot:""}]);const a=s},935:t=>{"use strict";t.exports=function(t){var e=[];return e.toString=function(){return this.map((function(e){var n=t(e);return e[2]?"@media ".concat(e[2]," {").concat(n,"}"):n})).join("")},e.i=function(t,n,i){"string"==typeof t&&(t=[[null,t,""]]);var o={};if(i)for(var r=0;r{"use strict";function e(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=t&&("undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"]);if(null==n)return;var i,o,r=[],s=!0,a=!1;try{for(n=n.call(t);!(s=(i=n.next()).done)&&(r.push(i.value),!e||r.length!==e);s=!0);}catch(t){a=!0,o=t}finally{try{s||null==n.return||n.return()}finally{if(a)throw o}}return r}(t,e)||function(t,e){if(!t)return;if("string"==typeof t)return n(t,e);var i=Object.prototype.toString.call(t).slice(8,-1);"Object"===i&&t.constructor&&(i=t.constructor.name);if("Map"===i||"Set"===i)return Array.from(t);if("Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i))return n(t,e)}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function n(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,i=new Array(e);n{"use strict";var i,o=function(){return void 0===i&&(i=Boolean(window&&document&&document.all&&!window.atob)),i},r=function(){var t={};return function(e){if(void 0===t[e]){var n=document.querySelector(e);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}t[e]=n}return t[e]}}(),s=[];function a(t){for(var e=-1,n=0;n{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},n.d=(t,e)=>{for(var i in e)n.o(e,i)&&!n.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),n.nc=void 0;var i={};return(()=>{"use strict";let t;n.d(i,{default:()=>lO});try{t={window,document}}catch(e){t={window:{},document:{}}}const e=t;const o=function(){try{return navigator.userAgent.toLowerCase()}catch(t){return""}}();var r;const s={isMac:a(o),isWindows:(r=o,r.indexOf("windows")>-1),isGecko:function(t){return!!t.match(/gecko\/\d+/)}(o),isSafari:function(t){return t.indexOf(" applewebkit/")>-1&&-1===t.indexOf("chrome")}(o),isiOS:function(t){return!!t.match(/iphone|ipad/i)||a(t)&&navigator.maxTouchPoints>0}(o),isAndroid:function(t){return t.indexOf("android")>-1}(o),isBlink:function(t){return t.indexOf("chrome/")>-1&&t.indexOf("edge/")<0}(o),get isMediaForcedColors(){return!!e.window.matchMedia&&e.window.matchMedia("(forced-colors: active)").matches},get isMotionReduced(){return!!e.window.matchMedia&&e.window.matchMedia("(prefers-reduced-motion)").matches},features:{isRegExpUnicodePropertySupported:function(){let t=!1;try{t=0==="ć".search(new RegExp("[\\p{L}]","u"))}catch(t){}return t}()}};function a(t){return t.indexOf("macintosh")>-1}function c(t,e,n,i){n=n||function(t,e){return t===e};const o=Array.isArray(t)?t:Array.prototype.slice.call(t),r=Array.isArray(e)?e:Array.prototype.slice.call(e),s=function(t,e,n){const i=l(t,e,n);if(-1===i)return{firstIndex:-1,lastIndexOld:-1,lastIndexNew:-1};const o=d(t,i),r=d(e,i),s=l(o,r,n),a=t.length-s,c=e.length-s;return{firstIndex:i,lastIndexOld:a,lastIndexNew:c}}(o,r,n),a=i?function(t,e){const{firstIndex:n,lastIndexOld:i,lastIndexNew:o}=t;if(-1===n)return Array(e).fill("equal");let r=[];n>0&&(r=r.concat(Array(n).fill("equal")));o-n>0&&(r=r.concat(Array(o-n).fill("insert")));i-n>0&&(r=r.concat(Array(i-n).fill("delete")));o0&&n.push({index:i,type:"insert",values:t.slice(i,r)});o-i>0&&n.push({index:i+(r-i),type:"delete",howMany:o-i});return n}(r,s);return a}function l(t,e,n){for(let i=0;i200||o>200||i+o>300)return h.fastDiff(t,e,n,!0);let r,s;if(ol?-1:1;d[i+h]&&(d[i]=d[i+h].slice(0)),d[i]||(d[i]=[]),d[i].push(o>l?r:s);let m=Math.max(o,l),g=m-i;for(;gl;g--)u[g]=m(g);u[l]=m(l),p++}while(u[l]!==c);return d[l].slice(1)}h.fastDiff=c;const u=function(){return function t(){t.called=!0}};class m{constructor(t,e){this.source=t,this.name=e,this.path=[],this.stop=u(),this.off=u()}}const g=new Array(256).fill("").map(((t,e)=>("0"+e.toString(16)).slice(-2)));function p(){const t=4294967296*Math.random()>>>0,e=4294967296*Math.random()>>>0,n=4294967296*Math.random()>>>0,i=4294967296*Math.random()>>>0;return"e"+g[255&t]+g[t>>8&255]+g[t>>16&255]+g[t>>24&255]+g[255&e]+g[e>>8&255]+g[e>>16&255]+g[e>>24&255]+g[255&n]+g[n>>8&255]+g[n>>16&255]+g[n>>24&255]+g[255&i]+g[i>>8&255]+g[i>>16&255]+g[i>>24&255]}const f={get(t="normal"){return"number"!=typeof t?this[t]||this.normal:t},highest:1e5,high:1e3,normal:0,low:-1e3,lowest:-1e5};function b(t,e){const n=f.get(e.priority);for(let i=0;i{if("object"==typeof e&&null!==e){if(n.has(e))return`[object ${e.constructor.name}]`;n.add(e)}return e},o=e?` ${JSON.stringify(e,i)}`:"",r=A(t);return t+o+r}(t,n)),this.name="CKEditorError",this.context=e,this.data=n}is(t){return"CKEditorError"===t}static rethrowUnexpectedError(t,e){if(t.is&&t.is("CKEditorError"))throw t;const n=new w(t.message,e);throw n.stack=t.stack,n}}function _(t,e){console.warn(...C(t,e))}function A(t){return`\nRead more: ${k}#error-${t}`}function C(t,e){const n=A(t);return e?[t,e,n]:[t,n]}const v="41.4.2",y=new Date(2024,4,17);if(globalThis.CKEDITOR_VERSION)throw new w("ckeditor-duplicated-modules",null);globalThis.CKEDITOR_VERSION=v;const x=Symbol("listeningTo"),E=Symbol("emitterId"),D=Symbol("delegations"),B=S(Object);function S(t){if(!t)return B;return class extends t{on(t,e,n){this.listenTo(this,t,e,n)}once(t,e,n){let i=!1;this.listenTo(this,t,((t,...n)=>{i||(i=!0,t.off(),e.call(this,t,...n))}),n)}off(t,e){this.stopListening(this,t,e)}listenTo(t,e,n,i={}){let o,r;this[x]||(this[x]={});const s=this[x];I(t)||T(t);const a=I(t);(o=s[a])||(o=s[a]={emitter:t,callbacks:{}}),(r=o.callbacks[e])||(r=o.callbacks[e]=[]),r.push(n),function(t,e,n,i,o){e._addEventListener?e._addEventListener(n,i,o):t._addEventListener.call(e,n,i,o)}(this,t,e,n,i)}stopListening(t,e,n){const i=this[x];let o=t&&I(t);const r=i&&o?i[o]:void 0,s=r&&e?r.callbacks[e]:void 0;if(!(!i||t&&!r||e&&!s))if(n){L(this,t,e,n);-1!==s.indexOf(n)&&(1===s.length?delete r.callbacks[e]:L(this,t,e,n))}else if(s){for(;n=s.pop();)L(this,t,e,n);delete r.callbacks[e]}else if(r){for(e in r.callbacks)this.stopListening(t,e);delete i[o]}else{for(o in i)this.stopListening(i[o].emitter);delete this[x]}}fire(t,...e){try{const n=t instanceof m?t:new m(this,t),i=n.name;let o=V(this,i);if(n.path.push(this),o){const t=[n,...e];o=Array.from(o);for(let e=0;e{this[D]||(this[D]=new Map),t.forEach((t=>{const i=this[D].get(t);i?i.set(e,n):this[D].set(t,new Map([[e,n]]))}))}}}stopDelegating(t,e){if(this[D])if(t)if(e){const n=this[D].get(t);n&&n.delete(e)}else this[D].delete(t);else this[D].clear()}_addEventListener(t,e,n){!function(t,e){const n=P(t);if(n[e])return;let i=e,o=null;const r=[];for(;""!==i&&!n[i];)n[i]={callbacks:[],childEvents:[]},r.push(n[i]),o&&n[i].childEvents.push(o),o=i,i=i.substr(0,i.lastIndexOf(":"));if(""!==i){for(const t of r)t.callbacks=n[i].callbacks.slice();n[i].childEvents.push(o)}}(this,t);const i=R(this,t),o={callback:e,priority:f.get(n.priority)};for(const t of i)b(t,o)}_removeEventListener(t,e){const n=R(this,t);for(const t of n)for(let n=0;n-1?V(t,e.substr(0,e.lastIndexOf(":"))):null}function F(t,e,n){for(let[i,o]of t){o?"function"==typeof o&&(o=o(e.name)):o=e.name;const t=new m(e.source,o);t.path=[...e.path],i.fire(t,...n)}}function L(t,e,n,i){e._removeEventListener?e._removeEventListener(n,i):t._removeEventListener.call(e,n,i)}["on","once","off","listenTo","stopListening","fire","delegate","stopDelegating","_addEventListener","_removeEventListener"].forEach((t=>{S[t]=B.prototype[t]}));const O=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)},z=Symbol("observableProperties"),M=Symbol("boundObservables"),N=Symbol("boundProperties"),H=Symbol("decoratedMethods"),j=Symbol("decoratedOriginal"),q=W(S());function W(t){if(!t)return q;return class extends t{set(t,e){if(O(t))return void Object.keys(t).forEach((e=>{this.set(e,t[e])}),this);U(this);const n=this[z];if(t in this&&!n.has(t))throw new w("observable-set-cannot-override",this);Object.defineProperty(this,t,{enumerable:!0,configurable:!0,get:()=>n.get(t),set(e){const i=n.get(t);let o=this.fire(`set:${t}`,t,e,i);void 0===o&&(o=e),i===o&&n.has(t)||(n.set(t,o),this.fire(`change:${t}`,t,o,i))}}),this[t]=e}bind(...t){if(!t.length||!J(t))throw new w("observable-bind-wrong-properties",this);if(new Set(t).size!==t.length)throw new w("observable-bind-duplicate-properties",this);U(this);const e=this[N];t.forEach((t=>{if(e.has(t))throw new w("observable-bind-rebind",this)}));const n=new Map;return t.forEach((t=>{const i={property:t,to:[]};e.set(t,i),n.set(t,i)})),{to:G,toMany:K,_observable:this,_bindProperties:t,_to:[],_bindings:n}}unbind(...t){if(!this[z])return;const e=this[N],n=this[M];if(t.length){if(!J(t))throw new w("observable-unbind-wrong-properties",this);t.forEach((t=>{const i=e.get(t);i&&(i.to.forEach((([t,e])=>{const o=n.get(t),r=o[e];r.delete(i),r.size||delete o[e],Object.keys(o).length||(n.delete(t),this.stopListening(t,"change"))})),e.delete(t))}))}else n.forEach(((t,e)=>{this.stopListening(e,"change")})),n.clear(),e.clear()}decorate(t){U(this);const e=this[t];if(!e)throw new w("observablemixin-cannot-decorate-undefined",this,{object:this,methodName:t});this.on(t,((t,n)=>{t.return=e.apply(this,n)})),this[t]=function(...e){return this.fire(t,e)},this[t][j]=e,this[H]||(this[H]=[]),this[H].push(t)}stopListening(t,e,n){if(!t&&this[H]){for(const t of this[H])this[t]=this[t][j];delete this[H]}super.stopListening(t,e,n)}}}function U(t){t[z]||(Object.defineProperty(t,z,{value:new Map}),Object.defineProperty(t,M,{value:new Map}),Object.defineProperty(t,N,{value:new Map}))}function G(...t){const e=function(...t){if(!t.length)throw new w("observable-bind-to-parse-error",null);const e={to:[]};let n;"function"==typeof t[t.length-1]&&(e.callback=t.pop());return t.forEach((t=>{if("string"==typeof t)n.properties.push(t);else{if("object"!=typeof t)throw new w("observable-bind-to-parse-error",null);n={observable:t,properties:[]},e.to.push(n)}})),e}(...t),n=Array.from(this._bindings.keys()),i=n.length;if(!e.callback&&e.to.length>1)throw new w("observable-bind-to-no-callback",this);if(i>1&&e.callback)throw new w("observable-bind-to-extra-callback",this);var o;e.to.forEach((t=>{if(t.properties.length&&t.properties.length!==i)throw new w("observable-bind-to-properties-length",this);t.properties.length||(t.properties=this._bindProperties)})),this._to=e.to,e.callback&&(this._bindings.get(n[0]).callback=e.callback),o=this._observable,this._to.forEach((t=>{const e=o[M];let n;e.get(t.observable)||o.listenTo(t.observable,"change",((i,r)=>{n=e.get(t.observable)[r],n&&n.forEach((t=>{Z(o,t.property)}))}))})),function(t){let e;t._bindings.forEach(((n,i)=>{t._to.forEach((o=>{e=o.properties[n.callback?0:t._bindProperties.indexOf(i)],n.to.push([o.observable,e]),function(t,e,n,i){const o=t[M],r=o.get(n),s=r||{};s[i]||(s[i]=new Set);s[i].add(e),r||o.set(n,s)}(t._observable,n,o.observable,e)}))}))}(this),this._bindProperties.forEach((t=>{Z(this._observable,t)}))}function K(t,e,n){if(this._bindings.size>1)throw new w("observable-bind-to-many-not-one-binding",this);this.to(...function(t,e){const n=t.map((t=>[t,e]));return Array.prototype.concat.apply([],n)}(t,e),n)}function J(t){return t.every((t=>"string"==typeof t))}function Z(t,e){const n=t[N].get(e);let i;n.callback?i=n.callback.apply(t,n.to.map((t=>t[0][t[1]]))):(i=n.to[0],i=i[0][i[1]]),Object.prototype.hasOwnProperty.call(t,e)?t[e]=i:t.set(e,i)}function Y(t){let e=0;for(const n of t)e++;return e}function Q(t,e){const n=Math.min(t.length,e.length);for(let i=0;i{W[t]=q.prototype[t]}));const tt="object"==typeof global&&global&&global.Object===Object&&global;var et="object"==typeof self&&self&&self.Object===Object&&self;const nt=tt||et||Function("return this")();const it=nt.Symbol;var ot=Object.prototype,rt=ot.hasOwnProperty,st=ot.toString,at=it?it.toStringTag:void 0;const ct=function(t){var e=rt.call(t,at),n=t[at];try{t[at]=void 0;var i=!0}catch(t){}var o=st.call(t);return i&&(e?t[at]=n:delete t[at]),o};var lt=Object.prototype.toString;const dt=function(t){return lt.call(t)};var ht=it?it.toStringTag:void 0;const ut=function(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":ht&&ht in Object(t)?ct(t):dt(t)};const mt=Array.isArray;const gt=function(t){return null!=t&&"object"==typeof t};const pt=function(t){return"string"==typeof t||!mt(t)&>(t)&&"[object String]"==ut(t)};function ft(t,e,n={},i=[]){const o=n&&n.xmlns,r=o?t.createElementNS(o,e):t.createElement(e);for(const t in n)r.setAttribute(t,n[t]);!pt(i)&&X(i)||(i=[i]);for(let e of i)pt(e)&&(e=t.createTextNode(e)),r.appendChild(e);return r}const bt=function(t,e){return function(n){return t(e(n))}};const kt=bt(Object.getPrototypeOf,Object);var wt=Function.prototype,_t=Object.prototype,At=wt.toString,Ct=_t.hasOwnProperty,vt=At.call(Object);const yt=function(t){if(!gt(t)||"[object Object]"!=ut(t))return!1;var e=kt(t);if(null===e)return!0;var n=Ct.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&At.call(n)==vt};const xt=function(){this.__data__=[],this.size=0};const Et=function(t,e){return t===e||t!=t&&e!=e};const Dt=function(t,e){for(var n=t.length;n--;)if(Et(t[n][0],e))return n;return-1};var Bt=Array.prototype.splice;const St=function(t){var e=this.__data__,n=Dt(e,t);return!(n<0)&&(n==e.length-1?e.pop():Bt.call(e,n,1),--this.size,!0)};const Tt=function(t){var e=this.__data__,n=Dt(e,t);return n<0?void 0:e[n][1]};const It=function(t){return Dt(this.__data__,t)>-1};const Pt=function(t,e){var n=this.__data__,i=Dt(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this};function Rt(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e-1&&t%1==0&&t-1&&t%1==0&&t<=9007199254740991};var qe={};qe["[object Float32Array]"]=qe["[object Float64Array]"]=qe["[object Int8Array]"]=qe["[object Int16Array]"]=qe["[object Int32Array]"]=qe["[object Uint8Array]"]=qe["[object Uint8ClampedArray]"]=qe["[object Uint16Array]"]=qe["[object Uint32Array]"]=!0,qe["[object Arguments]"]=qe["[object Array]"]=qe["[object ArrayBuffer]"]=qe["[object Boolean]"]=qe["[object DataView]"]=qe["[object Date]"]=qe["[object Error]"]=qe["[object Function]"]=qe["[object Map]"]=qe["[object Number]"]=qe["[object Object]"]=qe["[object RegExp]"]=qe["[object Set]"]=qe["[object String]"]=qe["[object WeakMap]"]=!1;const We=function(t){return gt(t)&&je(t.length)&&!!qe[ut(t)]};const Ue=function(t){return function(e){return t(e)}};var $e="object"==typeof exports&&exports&&!exports.nodeType&&exports,Ge=$e&&"object"==typeof module&&module&&!module.nodeType&&module,Ke=Ge&&Ge.exports===$e&&tt.process;const Je=function(){try{var t=Ge&&Ge.require&&Ge.require("util").types;return t||Ke&&Ke.binding&&Ke.binding("util")}catch(t){}}();var Ze=Je&&Je.isTypedArray;const Ye=Ze?Ue(Ze):We;var Qe=Object.prototype.hasOwnProperty;const Xe=function(t,e){var n=mt(t),i=!n&&Ve(t),o=!n&&!i&&Me(t),r=!n&&!i&&!o&&Ye(t),s=n||i||o||r,a=s?Se(t.length,String):[],c=a.length;for(var l in t)!e&&!Qe.call(t,l)||s&&("length"==l||o&&("offset"==l||"parent"==l)||r&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||He(l,c))||a.push(l);return a};var tn=Object.prototype;const en=function(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||tn)};const nn=bt(Object.keys,Object);var on=Object.prototype.hasOwnProperty;const rn=function(t){if(!en(t))return nn(t);var e=[];for(var n in Object(t))on.call(t,n)&&"constructor"!=n&&e.push(n);return e};const sn=function(t){return null!=t&&je(t.length)&&!Mt(t)};const an=function(t){return sn(t)?Xe(t):rn(t)};const cn=function(t,e){return t&&Be(e,an(e),t)};const ln=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e};var dn=Object.prototype.hasOwnProperty;const hn=function(t){if(!O(t))return ln(t);var e=en(t),n=[];for(var i in t)("constructor"!=i||!e&&dn.call(t,i))&&n.push(i);return n};const un=function(t){return sn(t)?Xe(t,!0):hn(t)};const mn=function(t,e){return t&&Be(e,un(e),t)};var gn="object"==typeof exports&&exports&&!exports.nodeType&&exports,pn=gn&&"object"==typeof module&&module&&!module.nodeType&&module,fn=pn&&pn.exports===gn?nt.Buffer:void 0,bn=fn?fn.allocUnsafe:void 0;const kn=function(t,e){if(e)return t.slice();var n=t.length,i=bn?bn(n):new t.constructor(n);return t.copy(i),i};const wn=function(t,e){var n=-1,i=t.length;for(e||(e=Array(i));++n{this._setToTarget(t,i,e[i],n)}))}}function vi(t){return _i(t,yi)}function yi(t){return Ai(t)||"function"==typeof t?t:void 0}function xi(t){if(t){if(t.defaultView)return t instanceof t.defaultView.Document;if(t.ownerDocument&&t.ownerDocument.defaultView)return t instanceof t.ownerDocument.defaultView.Node}return!1}function Ei(t){const e=Object.prototype.toString.apply(t);return"[object Window]"==e||"[object global]"==e}const Di=Bi(S());function Bi(t){if(!t)return Di;return class extends t{listenTo(t,e,n,i={}){if(xi(t)||Ei(t)){const o={capture:!!i.useCapture,passive:!!i.usePassive},r=this._getProxyEmitter(t,o)||new Si(t,o);this.listenTo(r,e,n,i)}else super.listenTo(t,e,n,i)}stopListening(t,e,n){if(xi(t)||Ei(t)){const i=this._getAllProxyEmitters(t);for(const t of i)this.stopListening(t,e,n)}else super.stopListening(t,e,n)}_getProxyEmitter(t,e){return function(t,e){const n=t[x];return n&&n[e]?n[e].emitter:null}(this,Ti(t,e))}_getAllProxyEmitters(t){return[{capture:!1,passive:!1},{capture:!1,passive:!0},{capture:!0,passive:!1},{capture:!0,passive:!0}].map((e=>this._getProxyEmitter(t,e))).filter((t=>!!t))}}}["_getProxyEmitter","_getAllProxyEmitters","on","once","off","listenTo","stopListening","fire","delegate","stopDelegating","_addEventListener","_removeEventListener"].forEach((t=>{Bi[t]=Di.prototype[t]}));class Si extends(S()){constructor(t,e){super(),T(this,Ti(t,e)),this._domNode=t,this._options=e}attach(t){if(this._domListeners&&this._domListeners[t])return;const e=this._createDomListener(t);this._domNode.addEventListener(t,e,this._options),this._domListeners||(this._domListeners={}),this._domListeners[t]=e}detach(t){let e;!this._domListeners[t]||(e=this._events[t])&&e.callbacks.length||this._domListeners[t].removeListener()}_addEventListener(t,e,n){this.attach(t),S().prototype._addEventListener.call(this,t,e,n)}_removeEventListener(t,e){S().prototype._removeEventListener.call(this,t,e),this.detach(t)}_createDomListener(t){const e=e=>{this.fire(t,e)};return e.removeListener=()=>{this._domNode.removeEventListener(t,e,this._options),delete this._domListeners[t]},e}}function Ti(t,e){let n=function(t){return t["data-ck-expando"]||(t["data-ck-expando"]=p())}(t);for(const t of Object.keys(e).sort())e[t]&&(n+="-"+t);return n}function Ii(t){const e=t.ownerDocument.defaultView.getComputedStyle(t);return{top:parseInt(e.borderTopWidth,10),right:parseInt(e.borderRightWidth,10),bottom:parseInt(e.borderBottomWidth,10),left:parseInt(e.borderLeftWidth,10)}}function Pi(t){return"[object Text]"==Object.prototype.toString.call(t)}function Ri(t){return"[object Range]"==Object.prototype.toString.apply(t)}function Vi(t){return t&&t.parentNode?t.offsetParent===e.document.body?null:t.offsetParent:null}const Fi=["top","right","bottom","left","width","height"];class Li{constructor(t){const e=Ri(t);if(Object.defineProperty(this,"_source",{value:t._source||t,writable:!0,enumerable:!1}),Mi(t)||e)if(e){const e=Li.getDomRangeRects(t);Oi(this,Li.getBoundingRect(e))}else Oi(this,t.getBoundingClientRect());else if(Ei(t)){const{innerWidth:e,innerHeight:n}=t;Oi(this,{top:0,right:e,bottom:n,left:0,width:e,height:n})}else Oi(this,t)}clone(){return new Li(this)}moveTo(t,e){return this.top=e,this.right=t+this.width,this.bottom=e+this.height,this.left=t,this}moveBy(t,e){return this.top+=e,this.right+=t,this.left+=t,this.bottom+=e,this}getIntersection(t){const e={top:Math.max(this.top,t.top),right:Math.min(this.right,t.right),bottom:Math.min(this.bottom,t.bottom),left:Math.max(this.left,t.left),width:0,height:0};if(e.width=e.right-e.left,e.height=e.bottom-e.top,e.width<0||e.height<0)return null;{const t=new Li(e);return t._source=this._source,t}}getIntersectionArea(t){const e=this.getIntersection(t);return e?e.getArea():0}getArea(){return this.width*this.height}getVisible(){const t=this._source;let e=this.clone();if(zi(t))return e;let n,i=t,o=t.parentNode||t.commonAncestorContainer;for(;o&&!zi(o);){const t="visible"===((r=o)instanceof HTMLElement?r.ownerDocument.defaultView.getComputedStyle(r).overflow:"visible");i instanceof HTMLElement&&"absolute"===Ni(i)&&(n=i);const s=Ni(o);if(t||n&&("relative"===s&&t||"relative"!==s)){i=o,o=o.parentNode;continue}const a=new Li(o),c=e.getIntersection(a);if(!c)return null;c.getArea(){for(const e of t){const t=Hi._getElementCallbacks(e.target);if(t)for(const n of t)n(e)}}))}};let ji=Hi;function qi(t,e){t instanceof HTMLTextAreaElement&&(t.value=e),t.innerHTML=e}function Wi(t){return e=>e+t}function Ui(t){let e=0;for(;t.previousSibling;)t=t.previousSibling,e++;return e}function $i(t,e,n){t.insertBefore(n,t.childNodes[e]||null)}function Gi(t){return t&&t.nodeType===Node.COMMENT_NODE}function Ki(t){return!!(t&&t.getClientRects&&t.getClientRects().length)}ji._observerInstance=null,ji._elementCallbacks=null;var Ji=Math.pow;function Zi({element:t,target:n,positions:i,limiter:o,fitInViewport:r,viewportOffsetConfig:s}){Mt(n)&&(n=n()),Mt(o)&&(o=o());const a=Vi(t),c=function(t){t=Object.assign({top:0,bottom:0,left:0,right:0},t);const n=new Li(e.window);return n.top+=t.top,n.height-=t.top,n.bottom-=t.bottom,n.height-=t.bottom,n}(s),l=new Li(t),d=Yi(n,c);let h;if(!d||!c.getIntersection(d))return null;const u={targetRect:d,elementRect:l,positionedElementAncestor:a,viewportRect:c};if(o||r){if(o){const t=Yi(o,c);t&&(u.limiterRect=t)}h=function(t,e){const{elementRect:n}=e,i=n.getArea(),o=t.map((t=>new Qi(t,e))).filter((t=>!!t.name));let r=0,s=null;for(const t of o){const{limiterIntersectionArea:e,viewportIntersectionArea:n}=t;if(e===i)return t;const o=Ji(n,2)+Ji(e,2);o>r&&(r=o,s=t)}return s}(i,u)}else h=new Qi(i[0],u);return h}function Yi(t,e){const n=new Li(t).getVisible();return n?n.getIntersection(e):null}class Qi{constructor(t,e){const n=t(e.targetRect,e.elementRect,e.viewportRect,e.limiterRect);if(!n)return;const{left:i,top:o,name:r,config:s}=n;this.name=r,this.config=s,this._positioningFunctionCoordinates={left:i,top:o},this._options=e}get left(){return this._absoluteRect.left}get top(){return this._absoluteRect.top}get limiterIntersectionArea(){const t=this._options.limiterRect;return t?t.getIntersectionArea(this._rect):0}get viewportIntersectionArea(){return this._options.viewportRect.getIntersectionArea(this._rect)}get _rect(){return this._cachedRect||(this._cachedRect=this._options.elementRect.clone().moveTo(this._positioningFunctionCoordinates.left,this._positioningFunctionCoordinates.top)),this._cachedRect}get _absoluteRect(){return this._cachedAbsoluteRect||(this._cachedAbsoluteRect=this._rect.toAbsoluteRect()),this._cachedAbsoluteRect}}function Xi(t){const e=t.parentNode;e&&e.removeChild(t)}function to({target:t,viewportOffset:e=0,ancestorOffset:n=0,alignToTop:i,forceScroll:o}){const r=ao(t);let s=r,a=null;for(e=function(t){if("number"==typeof t)return{top:t,bottom:t,left:t,right:t};return t}(e);s;){let c;c=co(s==r?t:a),no({parent:c,getRect:()=>lo(t,s),alignToTop:i,ancestorOffset:n,forceScroll:o});const l=lo(t,s);if(eo({window:s,rect:l,viewportOffset:e,alignToTop:i,forceScroll:o}),s.parent!=s){if(a=s.frameElement,s=s.parent,!a)return}else s=null}}function eo({window:t,rect:e,alignToTop:n,forceScroll:i,viewportOffset:o}){const r=e.clone().moveBy(0,o.bottom),s=e.clone().moveBy(0,-o.top),a=new Li(t).excludeScrollbarsAndBorders(),c=n&&i,l=[s,r].every((t=>a.contains(t)));let{scrollX:d,scrollY:h}=t;const u=d,m=h;c?h-=a.top-e.top+o.top:l||(oo(s,a)?h-=a.top-e.top+o.top:io(r,a)&&(h+=n?e.top-a.top-o.top:e.bottom-a.bottom+o.bottom)),l||(ro(e,a)?d-=a.left-e.left+o.left:so(e,a)&&(d+=e.right-a.right+o.right)),d==u&&h===m||t.scrollTo(d,h)}function no({parent:t,getRect:e,alignToTop:n,forceScroll:i,ancestorOffset:o=0,limiterElement:r}){const s=ao(t),a=n&&i;let c,l,d;const h=r||s.document.body;for(;t!=h;)l=e(),c=new Li(t).excludeScrollbarsAndBorders(),d=c.contains(l),a?t.scrollTop-=c.top-l.top+o:d||(oo(l,c)?t.scrollTop-=c.top-l.top+o:io(l,c)&&(t.scrollTop+=n?l.top-c.top-o:l.bottom-c.bottom+o)),d||(ro(l,c)?t.scrollLeft-=c.left-l.left+o:so(l,c)&&(t.scrollLeft+=l.right-c.right+o)),t=t.parentNode}function io(t,e){return t.bottom>e.bottom}function oo(t,e){return t.tope.right}function ao(t){return Ri(t)?t.startContainer.ownerDocument.defaultView:t.ownerDocument.defaultView}function co(t){if(Ri(t)){let e=t.commonAncestorContainer;return Pi(e)&&(e=e.parentNode),e}return t.parentNode}function lo(t,e){const n=ao(t),i=new Li(t);if(n===e)return i;{let t=n;for(;t!=e;){const e=t.frameElement,n=new Li(e).excludeScrollbarsAndBorders();i.moveBy(n.left,n.top),t=t.parent}}return i}const ho={ctrl:"⌃",cmd:"⌘",alt:"⌥",shift:"⇧"},uo={ctrl:"Ctrl+",alt:"Alt+",shift:"Shift+"},mo={37:"←",38:"↑",39:"→",40:"↓",9:"⇥",33:"Page Up",34:"Page Down"},go=function(){const t={pageup:33,pagedown:34,arrowleft:37,arrowup:38,arrowright:39,arrowdown:40,backspace:8,delete:46,enter:13,space:32,esc:27,tab:9,ctrl:1114112,shift:2228224,alt:4456448,cmd:8912896};for(let e=65;e<=90;e++){t[String.fromCharCode(e).toLowerCase()]=e}for(let e=48;e<=57;e++)t[e-48]=e;for(let e=112;e<=123;e++)t["f"+(e-111)]=e;return Object.assign(t,{"'":222,",":108,"-":109,".":110,"/":111,";":186,"=":187,"[":219,"\\":220,"]":221,"`":223}),t}(),po=Object.fromEntries(Object.entries(go).map((([t,e])=>{let n;return n=e in mo?mo[e]:t.charAt(0).toUpperCase()+t.slice(1),[e,n]})));function fo(t){let e;if("string"==typeof t){if(e=go[t.toLowerCase()],!e)throw new w("keyboard-unknown-key",null,{key:t})}else e=t.keyCode+(t.altKey?go.alt:0)+(t.ctrlKey?go.ctrl:0)+(t.shiftKey?go.shift:0)+(t.metaKey?go.cmd:0);return e}function bo(t){return"string"==typeof t&&(t=function(t){return t.split("+").map((t=>t.trim()))}(t)),t.map((t=>"string"==typeof t?function(t){if(t.endsWith("!"))return fo(t.slice(0,-1));const e=fo(t);return(s.isMac||s.isiOS)&&e==go.ctrl?go.cmd:e}(t):t)).reduce(((t,e)=>e+t),0)}function ko(t){let e=bo(t);return Object.entries(s.isMac||s.isiOS?ho:uo).reduce(((t,[n,i])=>(e&go[n]&&(e&=~go[n],t+=i),t)),"")+(e?po[e]:"")}function wo(t,e){const n="ltr"===e;switch(t){case go.arrowleft:return n?"left":"right";case go.arrowright:return n?"right":"left";case go.arrowup:return"up";case go.arrowdown:return"down"}}function _o(t){return Array.isArray(t)?t:[t]}const Ao=function(t,e,n){(void 0!==n&&!Et(t[e],n)||void 0===n&&!(e in t))&&xe(t,e,n)};const Co=function(t){return function(e,n,i){for(var o=-1,r=Object(e),s=i(e),a=s.length;a--;){var c=s[t?a:++o];if(!1===n(r[c],c,r))break}return e}}();const vo=function(t){return gt(t)&&sn(t)};const yo=function(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]};const xo=function(t){return Be(t,un(t))};const Eo=function(t,e,n,i,o,r,s){var a=yo(t,n),c=yo(e,n),l=s.get(c);if(l)Ao(t,n,l);else{var d=r?r(a,c,n+"",t,e,s):void 0,h=void 0===d;if(h){var u=mt(c),m=!u&&Me(c),g=!u&&!m&&Ye(c);d=c,u||m||g?mt(a)?d=a:vo(a)?d=wn(a):m?(h=!1,d=kn(c,!0)):g?(h=!1,d=oi(c,!0)):d=[]:yt(c)||Ve(c)?(d=a,Ve(a)?d=xo(a):O(a)&&!Mt(a)||(d=ci(c))):h=!1}h&&(s.set(c,d),o(d,c,i,r,s),s.delete(c)),Ao(t,n,d)}};const Do=function t(e,n,i,o,r){e!==n&&Co(n,(function(s,a){if(r||(r=new Ce),O(s))Eo(e,n,a,i,t,o,r);else{var c=o?o(yo(e,a),s,a+"",e,n,r):void 0;void 0===c&&(c=s),Ao(e,a,c)}}),un)};const Bo=function(t){return t};const So=function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)};var To=Math.max;const Io=function(t,e,n){return e=To(void 0===e?t.length-1:e,0),function(){for(var i=arguments,o=-1,r=To(i.length-e,0),s=Array(r);++o0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}};const Lo=Fo(Ro);const Oo=function(t,e){return Lo(Io(t,e,Bo),t+"")};const zo=function(t,e,n){if(!O(n))return!1;var i=typeof e;return!!("number"==i?sn(n)&&He(e,n.length):"string"==i&&e in n)&&Et(n[e],t)};const Mo=function(t){return Oo((function(e,n){var i=-1,o=n.length,r=o>1?n[o-1]:void 0,s=o>2?n[2]:void 0;for(r=t.length>3&&"function"==typeof r?(o--,r):void 0,s&&zo(n[0],n[1],s)&&(r=o<3?void 0:r,o=1),e=Object(e);++i1===t?0:1),d=c[a];if("string"==typeof d)return d;return d[Number(l(i))]}e.window.CKEDITOR_TRANSLATIONS||(e.window.CKEDITOR_TRANSLATIONS={});const jo=["ar","ara","dv","div","fa","per","fas","he","heb","ku","kur","ug","uig"];function qo(t){return jo.includes(t)?"rtl":"ltr"}class Wo{constructor({uiLanguage:t="en",contentLanguage:e,translations:n}={}){this.uiLanguage=t,this.contentLanguage=e||this.uiLanguage,this.uiLanguageDirection=qo(this.uiLanguage),this.contentLanguageDirection=qo(this.contentLanguage),this.translations=function(t){return Array.isArray(t)?t.reduce(((t,e)=>No(t,e))):t}(n),this.t=(t,e)=>this._t(t,e)}get language(){return console.warn("locale-deprecated-language-property: The Locale#language property has been deprecated and will be removed in the near future. Please use #uiLanguage and #contentLanguage properties instead."),this.uiLanguage}_t(t,e=[]){e=_o(e),"string"==typeof t&&(t={string:t});const n=!!t.plural?e[0]:1;return function(t,e){return t.replace(/%(\d+)/g,((t,n)=>nthis._items.length||e<0)throw new w("collection-add-item-invalid-index",this);let n=0;for(const i of t){const t=this._getItemIdBeforeAdding(i),o=e+n;this._items.splice(o,0,i),this._itemMap.set(t,i),this.fire("add",i,o),n++}return this.fire("change",{added:t,removed:[],index:e}),this}get(t){let e;if("string"==typeof t)e=this._itemMap.get(t);else{if("number"!=typeof t)throw new w("collection-get-invalid-arg",this);e=this._items[t]}return e||null}has(t){if("string"==typeof t)return this._itemMap.has(t);{const e=t[this._idProperty];return e&&this._itemMap.has(e)}}getIndex(t){let e;return e="string"==typeof t?this._itemMap.get(t):t,e?this._items.indexOf(e):-1}remove(t){const[e,n]=this._remove(t);return this.fire("change",{added:[],removed:[e],index:n}),e}map(t,e){return this._items.map(t,e)}forEach(t,e){this._items.forEach(t,e)}find(t,e){return this._items.find(t,e)}filter(t,e){return this._items.filter(t,e)}clear(){this._bindToCollection&&(this.stopListening(this._bindToCollection),this._bindToCollection=null);const t=Array.from(this._items);for(;this.length;)this._remove(0);this.fire("change",{added:[],removed:t,index:0})}bindTo(t){if(this._bindToCollection)throw new w("collection-bind-to-rebind",this);return this._bindToCollection=t,{as:t=>{this._setUpBindToBinding((e=>new t(e)))},using:t=>{"function"==typeof t?this._setUpBindToBinding(t):this._setUpBindToBinding((e=>e[t]))}}}_setUpBindToBinding(t){const e=this._bindToCollection,n=(n,i,o)=>{const r=e._bindToCollection==this,s=e._bindToInternalToExternalMap.get(i);if(r&&s)this._bindToExternalToInternalMap.set(i,s),this._bindToInternalToExternalMap.set(s,i);else{const n=t(i);if(!n)return void this._skippedIndexesFromExternal.push(o);let r=o;for(const t of this._skippedIndexesFromExternal)o>t&&r--;for(const t of e._skippedIndexesFromExternal)r>=t&&r++;this._bindToExternalToInternalMap.set(i,n),this._bindToInternalToExternalMap.set(n,i),this.add(n,r);for(let t=0;t{const i=this._bindToExternalToInternalMap.get(e);i&&this.remove(i),this._skippedIndexesFromExternal=this._skippedIndexesFromExternal.reduce(((t,e)=>(ne&&t.push(e),t)),[])}))}_getItemIdBeforeAdding(t){const e=this._idProperty;let n;if(e in t){if(n=t[e],"string"!=typeof n)throw new w("collection-add-invalid-id",this);if(this.get(n))throw new w("collection-add-item-already-exists",this)}else t[e]=n=p();return n}_remove(t){let e,n,i,o=!1;const r=this._idProperty;if("string"==typeof t?(n=t,i=this._itemMap.get(n),o=!i,i&&(e=this._items.indexOf(i))):"number"==typeof t?(e=t,i=this._items[e],o=!i,i&&(n=i[r])):(i=t,n=i[r],e=this._items.indexOf(i),o=-1==e||!this._itemMap.get(n)),o)throw new w("collection-remove-404",this);this._items.splice(e,1),this._itemMap.delete(n);const s=this._bindToInternalToExternalMap.get(i);return this._bindToInternalToExternalMap.delete(i),this._bindToExternalToInternalMap.delete(s),this.fire("remove",i,e),[i,e]}[Symbol.iterator](){return this._items[Symbol.iterator]()}}function $o(t){const e=t.next();return e.done?null:e.value}class Go extends(Bi(W())){constructor(){super(),this._elements=new Set,this._nextEventLoopTimeout=null,this.set("isFocused",!1),this.set("focusedElement",null)}add(t){if(this._elements.has(t))throw new w("focustracker-add-element-already-exist",this);this.listenTo(t,"focus",(()=>this._focus(t)),{useCapture:!0}),this.listenTo(t,"blur",(()=>this._blur()),{useCapture:!0}),this._elements.add(t)}remove(t){t===this.focusedElement&&this._blur(),this._elements.has(t)&&(this.stopListening(t),this._elements.delete(t))}destroy(){this.stopListening()}_focus(t){clearTimeout(this._nextEventLoopTimeout),this.focusedElement=t,this.isFocused=!0}_blur(){clearTimeout(this._nextEventLoopTimeout),this._nextEventLoopTimeout=setTimeout((()=>{this.focusedElement=null,this.isFocused=!1}),0)}}class Ko{constructor(){this._listener=new(Bi())}listenTo(t){this._listener.listenTo(t,"keydown",((t,e)=>{this._listener.fire("_keydown:"+fo(e),e)}))}set(t,e,n={}){const i=bo(t),o=n.priority;this._listener.listenTo(this._listener,"_keydown:"+i,((t,n)=>{e(n,(()=>{n.preventDefault(),n.stopPropagation(),t.stop()})),t.return=!0}),{priority:o})}press(t){return!!this._listener.fire("_keydown:"+fo(t),t)}stopListening(t){this._listener.stopListening(t)}destroy(){this.stopListening()}}function Jo(t){return X(t)?new Map(t):function(t){const e=new Map;for(const n in t)e.set(n,t[n]);return e}(t)}Math.pow;function Zo(t,e){let n;function i(...o){i.cancel(),n=setTimeout((()=>t(...o)),e)}return i.cancel=()=>{clearTimeout(n)},i}function Yo(t,e){return!!(n=t.charAt(e-1))&&1==n.length&&/[\ud800-\udbff]/.test(n)&&function(t){return!!t&&1==t.length&&/[\udc00-\udfff]/.test(t)}(t.charAt(e));var n}function Qo(t,e){return!!(n=t.charAt(e))&&1==n.length&&/[\u0300-\u036f\u1ab0-\u1aff\u1dc0-\u1dff\u20d0-\u20ff\ufe20-\ufe2f]/.test(n);var n}const Xo=function(){const t=[new RegExp("\\p{Emoji}[\\u{E0020}-\\u{E007E}]+\\u{E007F}","u"),new RegExp("\\p{Emoji}\\u{FE0F}?\\u{20E3}","u"),new RegExp("\\p{Emoji}\\u{FE0F}","u"),new RegExp("(?=\\p{General_Category=Other_Symbol})\\p{Emoji}\\p{Emoji_Modifier}*","u")],e=new RegExp("\\p{Regional_Indicator}{2}","u").source,n="(?:"+t.map((t=>t.source)).join("|")+")";return new RegExp(`${e}|${n}(?:‍${n})*`,"ug")}();function tr(t,e){const n=String(t).matchAll(Xo);return Array.from(n).some((t=>t.index{this.refresh()})),this.listenTo(t,"change:isReadOnly",(()=>{this.refresh()})),this.on("set:isEnabled",(e=>{if(!this.affectsData)return;const n=t.model.document.selection,i=!("$graveyard"==n.getFirstPosition().root.rootName)&&t.model.canEditAt(n);(t.isReadOnly||this._isEnabledBasedOnSelection&&!i)&&(e.return=!1,e.stop())}),{priority:"highest"}),this.on("execute",(t=>{this.isEnabled||t.stop()}),{priority:"high"})}get affectsData(){return this._affectsData}set affectsData(t){this._affectsData=t}refresh(){this.isEnabled=!0}forceDisabled(t){this._disableStack.add(t),1==this._disableStack.size&&(this.on("set:isEnabled",or,{priority:"highest"}),this.isEnabled=!1)}clearForceDisabled(t){this._disableStack.delete(t),0==this._disableStack.size&&(this.off("set:isEnabled",or),this.refresh())}execute(...t){}destroy(){this.stopListening()}}function or(t){t.return=!1,t.stop()}class rr extends ir{constructor(){super(...arguments),this._childCommandsDefinitions=[]}refresh(){}execute(...t){const e=this._getFirstEnabledCommand();return!!e&&e.execute(t)}registerChildCommand(t,e={}){b(this._childCommandsDefinitions,{command:t,priority:e.priority||"normal"}),t.on("change:isEnabled",(()=>this._checkEnabled())),this._checkEnabled()}_checkEnabled(){this.isEnabled=!!this._getFirstEnabledCommand()}_getFirstEnabledCommand(){const t=this._childCommandsDefinitions.find((({command:t})=>t.isEnabled));return t&&t.command}}class sr extends(S()){constructor(t,e=[],n=[]){super(),this._plugins=new Map,this._context=t,this._availablePlugins=new Map;for(const t of e)t.pluginName&&this._availablePlugins.set(t.pluginName,t);this._contextPlugins=new Map;for(const[t,e]of n)this._contextPlugins.set(t,e),this._contextPlugins.set(e,t),t.pluginName&&this._availablePlugins.set(t.pluginName,t)}*[Symbol.iterator](){for(const t of this._plugins)"function"==typeof t[0]&&(yield t)}get(t){const e=this._plugins.get(t);if(!e){let e=t;throw"function"==typeof t&&(e=t.pluginName||t.name),new w("plugincollection-plugin-not-loaded",this._context,{plugin:e})}return e}has(t){return this._plugins.has(t)}init(t,e=[],n=[]){const i=this,o=this._context;!function t(e,n=new Set){e.forEach((e=>{a(e)&&(n.has(e)||(n.add(e),e.pluginName&&!i._availablePlugins.has(e.pluginName)&&i._availablePlugins.set(e.pluginName,e),e.requires&&t(e.requires,n)))}))}(t),h(t);const r=[...function t(e,n=new Set){return e.map((t=>a(t)?t:i._availablePlugins.get(t))).reduce(((e,i)=>n.has(i)?e:(n.add(i),i.requires&&(h(i.requires,i),t(i.requires,n).forEach((t=>e.add(t)))),e.add(i))),new Set)}(t.filter((t=>!l(t,e))))];!function(t,e){for(const n of e){if("function"!=typeof n)throw new w("plugincollection-replace-plugin-invalid-type",null,{pluginItem:n});const e=n.pluginName;if(!e)throw new w("plugincollection-replace-plugin-missing-name",null,{pluginItem:n});if(n.requires&&n.requires.length)throw new w("plugincollection-plugin-for-replacing-cannot-have-dependencies",null,{pluginName:e});const o=i._availablePlugins.get(e);if(!o)throw new w("plugincollection-plugin-for-replacing-not-exist",null,{pluginName:e});const r=t.indexOf(o);if(-1===r){if(i._contextPlugins.has(o))return;throw new w("plugincollection-plugin-for-replacing-not-loaded",null,{pluginName:e})}if(o.requires&&o.requires.length)throw new w("plugincollection-replaced-plugin-cannot-have-dependencies",null,{pluginName:e});t.splice(r,1,n),i._availablePlugins.set(e,n)}}(r,n);const s=r.map((t=>{let e=i._contextPlugins.get(t);return e=e||new t(o),i._add(t,e),e}));return u(s,"init").then((()=>u(s,"afterInit"))).then((()=>s));function a(t){return"function"==typeof t}function c(t){return a(t)&&!!t.isContextPlugin}function l(t,e){return e.some((e=>e===t||(d(t)===e||d(e)===t)))}function d(t){return a(t)?t.pluginName||t.name:t}function h(t,n=null){t.map((t=>a(t)?t:i._availablePlugins.get(t)||t)).forEach((t=>{!function(t,e){if(a(t))return;if(e)throw new w("plugincollection-soft-required",o,{missingPlugin:t,requiredBy:d(e)});throw new w("plugincollection-plugin-not-found",o,{plugin:t})}(t,n),function(t,e){if(!c(e))return;if(c(t))return;throw new w("plugincollection-context-required",o,{plugin:d(t),requiredBy:d(e)})}(t,n),function(t,n){if(!n)return;if(!l(t,e))return;throw new w("plugincollection-required",o,{plugin:d(t),requiredBy:d(n)})}(t,n)}))}function u(t,e){return t.reduce(((t,n)=>n[e]?i._contextPlugins.has(n)?t:t.then(n[e].bind(n)):t),Promise.resolve())}}destroy(){const t=[];for(const[,e]of this)"function"!=typeof e.destroy||this._contextPlugins.has(e)||t.push(e.destroy());return Promise.all(t)}_add(t,e){this._plugins.set(t,e);const n=t.pluginName;if(n){if(this._plugins.has(n))throw new w("plugincollection-plugin-name-conflict",null,{pluginName:n,plugin1:this._plugins.get(n).constructor,plugin2:t});this._plugins.set(n,e)}}}var ar=Object.getOwnPropertySymbols,cr=Object.prototype.hasOwnProperty,lr=Object.prototype.propertyIsEnumerable;class dr{constructor(t){this._contextOwner=null;const e=t||{},{translations:n}=e,i=((t,e)=>{var n={};for(var i in t)cr.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(null!=t&&ar)for(var i of ar(t))e.indexOf(i)<0&&lr.call(t,i)&&(n[i]=t[i]);return n})(e,["translations"]);this.config=new Ci(i,this.constructor.defaultConfig);const o=this.constructor.builtinPlugins;this.config.define("plugins",o),this.plugins=new sr(this,o);const r=this.config.get("language")||{};this.locale=new Wo({uiLanguage:"string"==typeof r?r:r.ui,contentLanguage:this.config.get("language.content"),translations:n}),this.t=this.locale.t,this.editors=new Uo}initPlugins(){const t=this.config.get("plugins")||[],e=this.config.get("substitutePlugins")||[];for(const n of t.concat(e)){if("function"!=typeof n)throw new w("context-initplugins-constructor-only",null,{Plugin:n});if(!0!==n.isContextPlugin)throw new w("context-initplugins-invalid-plugin",null,{Plugin:n})}return this.plugins.init(t,[],e)}destroy(){return Promise.all(Array.from(this.editors,(t=>t.destroy()))).then((()=>this.plugins.destroy()))}_addEditor(t,e){if(this._contextOwner)throw new w("context-addeditor-private-context");this.editors.add(t),e&&(this._contextOwner=t)}_removeEditor(t){return this.editors.has(t)&&this.editors.remove(t),this._contextOwner===t?this.destroy():Promise.resolve()}_getEditorConfig(){const t={};for(const e of this.config.names())["plugins","removePlugins","extraPlugins"].includes(e)||(t[e]=this.config.get(e));return t}static create(t){return new Promise((e=>{const n=new this(t);e(n.initPlugins().then((()=>n)))}))}}class hr extends(W()){constructor(t){super(),this.context=t}destroy(){this.stopListening()}static get isContextPlugin(){return!0}}class ur extends Ko{constructor(t){super(),this.editor=t}set(t,e,n={}){if("string"==typeof e){const t=e;e=(e,n)=>{this.editor.execute(t),n()}}super.set(t,e,n)}}var mr=n(2591),gr=n.n(mr),pr=n(4098),fr={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(pr.A,fr);pr.A.locals;const br=new WeakMap;let kr=!1;function wr({view:t,element:e,text:n,isDirectHost:i=!0,keepOnFocus:o=!1}){const r=t.document;function s(n){br.get(r).set(e,{text:n,isDirectHost:i,keepOnFocus:o,hostElement:i?e:null}),t.change((t=>vr(r,t)))}br.has(r)||(br.set(r,new Map),r.registerPostFixer((t=>vr(r,t))),r.on("change:isComposing",(()=>{t.change((t=>vr(r,t)))}),{priority:"high"})),e.is("editableElement")&&e.on("change:placeholder",((t,e,n)=>{s(n)})),e.placeholder?s(e.placeholder):n&&s(n),n&&function(){kr||_("enableplaceholder-deprecated-text-option");kr=!0}()}function _r(t,e){return!e.hasClass("ck-placeholder")&&(t.addClass("ck-placeholder",e),!0)}function Ar(t,e){return!!e.hasClass("ck-placeholder")&&(t.removeClass("ck-placeholder",e),!0)}function Cr(t,e){if(!t.isAttached())return!1;if(Array.from(t.getChildren()).some((t=>!t.is("uiElement"))))return!1;const n=t.document,i=n.selection.anchor;return(!n.isComposing||!i||i.parent!==t)&&(!!e||(!n.isFocused||!!i&&i.parent!==t))}function vr(t,e){const n=br.get(t),i=[];let o=!1;for(const[t,r]of n)r.isDirectHost&&(i.push(t),yr(e,t,r)&&(o=!0));for(const[t,r]of n){if(r.isDirectHost)continue;const n=xr(t);n&&(i.includes(n)||(r.hostElement=n,yr(e,t,r)&&(o=!0)))}return o}function yr(t,e,n){const{text:i,isDirectHost:o,hostElement:r}=n;let s=!1;r.getAttribute("data-placeholder")!==i&&(t.setAttribute("data-placeholder",i,r),s=!0);return(o||1==e.childCount)&&Cr(r,n.keepOnFocus)?_r(t,r)&&(s=!0):Ar(t,r)&&(s=!0),s}function xr(t){if(t.childCount){const e=t.getChild(0);if(e.is("element")&&!e.is("uiElement")&&!e.is("attributeElement"))return e}return null}class Er{is(){throw new Error("is() method is abstract")}}const Dr=function(t){return wi(t,4)};class Br extends(S(Er)){constructor(t){super(),this.document=t,this.parent=null}get index(){let t;if(!this.parent)return null;if(-1==(t=this.parent.getChildIndex(this)))throw new w("view-node-not-found-in-parent",this);return t}get nextSibling(){const t=this.index;return null!==t&&this.parent.getChild(t+1)||null}get previousSibling(){const t=this.index;return null!==t&&this.parent.getChild(t-1)||null}get root(){let t=this;for(;t.parent;)t=t.parent;return t}isAttached(){return this.root.is("rootElement")}getPath(){const t=[];let e=this;for(;e.parent;)t.unshift(e.index),e=e.parent;return t}getAncestors(t={}){const e=[];let n=t.includeSelf?this:this.parent;for(;n;)e[t.parentFirst?"push":"unshift"](n),n=n.parent;return e}getCommonAncestor(t,e={}){const n=this.getAncestors(e),i=t.getAncestors(e);let o=0;for(;n[o]==i[o]&&n[o];)o++;return 0===o?null:n[o-1]}isBefore(t){if(this==t)return!1;if(this.root!==t.root)return!1;const e=this.getPath(),n=t.getPath(),i=Q(e,n);switch(i){case"prefix":return!0;case"extension":return!1;default:return e[i]t.data.length)throw new w("view-textproxy-wrong-offsetintext",this);if(n<0||e+n>t.data.length)throw new w("view-textproxy-wrong-length",this);this.data=t.data.substring(e,e+n),this.offsetInText=e}get offsetSize(){return this.data.length}get isPartial(){return this.data.length!==this.textNode.data.length}get parent(){return this.textNode.parent}get root(){return this.textNode.root}get document(){return this.textNode.document}getAncestors(t={}){const e=[];let n=t.includeSelf?this.textNode:this.parent;for(;null!==n;)e[t.parentFirst?"push":"unshift"](n),n=n.parent;return e}}Tr.prototype.is=function(t){return"$textProxy"===t||"view:$textProxy"===t||"textProxy"===t||"view:textProxy"===t};class Ir{constructor(...t){this._patterns=[],this.add(...t)}add(...t){for(let e of t)("string"==typeof e||e instanceof RegExp)&&(e={name:e}),this._patterns.push(e)}match(...t){for(const e of t)for(const t of this._patterns){const n=Pr(e,t);if(n)return{element:e,pattern:t,match:n}}return null}matchAll(...t){const e=[];for(const n of t)for(const t of this._patterns){const i=Pr(n,t);i&&e.push({element:n,pattern:t,match:i})}return e.length>0?e:null}getElementName(){if(1!==this._patterns.length)return null;const t=this._patterns[0],e=t.name;return"function"==typeof t||!e||e instanceof RegExp?null:e}}function Pr(t,e){if("function"==typeof e)return e(t);const n={};return e.name&&(n.name=function(t,e){if(t instanceof RegExp)return!!e.match(t);return t===e}(e.name,t.name),!n.name)||e.attributes&&(n.attributes=function(t,e){const n=new Set(e.getAttributeKeys());yt(t)?(void 0!==t.style&&_("matcher-pattern-deprecated-attributes-style-key",t),void 0!==t.class&&_("matcher-pattern-deprecated-attributes-class-key",t)):(n.delete("style"),n.delete("class"));return Rr(t,n,(t=>e.getAttribute(t)))}(e.attributes,t),!n.attributes)||e.classes&&(n.classes=function(t,e){return Rr(t,e.getClassNames(),(()=>{}))}(e.classes,t),!n.classes)||e.styles&&(n.styles=function(t,e){return Rr(t,e.getStyleNames(!0),(t=>e.getStyle(t)))}(e.styles,t),!n.styles)?null:n}function Rr(t,e,n){const i=function(t){if(Array.isArray(t))return t.map((t=>yt(t)?(void 0!==t.key&&void 0!==t.value||_("matcher-pattern-missing-key-or-value",t),[t.key,t.value]):[t,!0]));if(yt(t))return Object.entries(t);return[[t,!0]]}(t),o=Array.from(e),r=[];if(i.forEach((([t,e])=>{o.forEach((i=>{(function(t,e){return!0===t||t===e||t instanceof RegExp&&e.match(t)})(t,i)&&function(t,e,n){if(!0===t)return!0;const i=n(e);return t===i||t instanceof RegExp&&!!String(i).match(t)}(e,i,n)&&r.push(i)}))})),i.length&&!(r.lengtho?0:o+e),(n=n>o?o:n)<0&&(n+=o),o=e>n?0:n-e>>>0,e>>>=0;for(var r=Array(o);++ie===t));return Array.isArray(e)}set(t,e){if(O(t))for(const[e,n]of Object.entries(t))this._styleProcessor.toNormalizedForm(e,n,this._styles);else this._styleProcessor.toNormalizedForm(t,e,this._styles)}remove(t){const e=ls(t);is(this._styles,e),delete this._styles[t],this._cleanEmptyObjectsOnPath(e)}getNormalized(t){return this._styleProcessor.getNormalized(t,this._styles)}toString(){return this.isEmpty?"":this.getStylesEntries().map((t=>t.join(":"))).sort().join(";")+";"}getAsString(t){if(this.isEmpty)return;if(this._styles[t]&&!O(this._styles[t]))return this._styles[t];const e=this._styleProcessor.getReducedForm(t,this._styles).find((([e])=>e===t));return Array.isArray(e)?e[1]:void 0}getStyleNames(t=!1){if(this.isEmpty)return[];if(t)return this._styleProcessor.getStyleNames(this._styles);return this.getStylesEntries().map((([t])=>t))}clear(){this._styles={}}getStylesEntries(){const t=[],e=Object.keys(this._styles);for(const n of e)t.push(...this._styleProcessor.getReducedForm(n,this._styles));return t}_cleanEmptyObjectsOnPath(t){const e=t.split(".");if(!(e.length>1))return;const n=e.splice(0,e.length-1).join("."),i=os(this._styles,n);if(!i)return;!Object.keys(i).length&&this.remove(n)}}class cs{constructor(){this._normalizers=new Map,this._extractors=new Map,this._reducers=new Map,this._consumables=new Map}toNormalizedForm(t,e,n){if(O(e))ds(n,ls(t),e);else if(this._normalizers.has(t)){const i=this._normalizers.get(t),{path:o,value:r}=i(e);ds(n,o,r)}else ds(n,t,e)}getNormalized(t,e){if(!t)return No({},e);if(void 0!==e[t])return e[t];if(this._extractors.has(t)){const n=this._extractors.get(t);if("string"==typeof n)return os(e,n);const i=n(t,e);if(i)return i}return os(e,ls(t))}getReducedForm(t,e){const n=this.getNormalized(t,e);if(void 0===n)return[];if(this._reducers.has(t)){return this._reducers.get(t)(n)}return[[t,n]]}getStyleNames(t){const e=Array.from(this._consumables.keys()).filter((e=>{const n=this.getNormalized(e,t);return n&&"object"==typeof n?Object.keys(n).length:n})),n=new Set([...e,...Object.keys(t)]);return Array.from(n)}getRelatedStyles(t){return this._consumables.get(t)||[]}setNormalizer(t,e){this._normalizers.set(t,e)}setExtractor(t,e){this._extractors.set(t,e)}setReducer(t,e){this._reducers.set(t,e)}setStyleRelation(t,e){this._mapStyleNames(t,e);for(const n of e)this._mapStyleNames(n,[t])}_mapStyleNames(t,e){this._consumables.has(t)||this._consumables.set(t,[]),this._consumables.get(t).push(...e)}}function ls(t){return t.replace("-",".")}function ds(t,e,n){let i=n;O(n)&&(i=No({},os(t,e),n)),ss(t,e,i)}class hs extends Br{constructor(t,e,n,i){if(super(t),this._unsafeAttributesToRender=[],this._customProperties=new Map,this.name=e,this._attrs=function(t){const e=Jo(t);for(const[t,n]of e)null===n?e.delete(t):"string"!=typeof n&&e.set(t,String(n));return e}(n),this._children=[],i&&this._insertChild(0,i),this._classes=new Set,this._attrs.has("class")){const t=this._attrs.get("class");us(this._classes,t),this._attrs.delete("class")}this._styles=new as(this.document.stylesProcessor),this._attrs.has("style")&&(this._styles.setTo(this._attrs.get("style")),this._attrs.delete("style"))}get childCount(){return this._children.length}get isEmpty(){return 0===this._children.length}getChild(t){return this._children[t]}getChildIndex(t){return this._children.indexOf(t)}getChildren(){return this._children[Symbol.iterator]()}*getAttributeKeys(){this._classes.size>0&&(yield"class"),this._styles.isEmpty||(yield"style"),yield*this._attrs.keys()}*getAttributes(){yield*this._attrs.entries(),this._classes.size>0&&(yield["class",this.getAttribute("class")]),this._styles.isEmpty||(yield["style",this.getAttribute("style")])}getAttribute(t){if("class"==t)return this._classes.size>0?[...this._classes].join(" "):void 0;if("style"==t){const t=this._styles.toString();return""==t?void 0:t}return this._attrs.get(t)}hasAttribute(t){return"class"==t?this._classes.size>0:"style"==t?!this._styles.isEmpty:this._attrs.has(t)}isSimilar(t){if(!(t instanceof hs))return!1;if(this===t)return!0;if(this.name!=t.name)return!1;if(this._attrs.size!==t._attrs.size||this._classes.size!==t._classes.size||this._styles.size!==t._styles.size)return!1;for(const[e,n]of this._attrs)if(!t._attrs.has(e)||t._attrs.get(e)!==n)return!1;for(const e of this._classes)if(!t._classes.has(e))return!1;for(const e of this._styles.getStyleNames())if(!t._styles.has(e)||t._styles.getAsString(e)!==this._styles.getAsString(e))return!1;return!0}hasClass(...t){for(const e of t)if(!this._classes.has(e))return!1;return!0}getClassNames(){return this._classes.keys()}getStyle(t){return this._styles.getAsString(t)}getNormalizedStyle(t){return this._styles.getNormalized(t)}getStyleNames(t){return this._styles.getStyleNames(t)}hasStyle(...t){for(const e of t)if(!this._styles.has(e))return!1;return!0}findAncestor(...t){const e=new Ir(...t);let n=this.parent;for(;n&&!n.is("documentFragment");){if(e.match(n))return n;n=n.parent}return null}getCustomProperty(t){return this._customProperties.get(t)}*getCustomProperties(){yield*this._customProperties.entries()}getIdentity(){const t=Array.from(this._classes).sort().join(","),e=this._styles.toString(),n=Array.from(this._attrs).map((t=>`${t[0]}="${t[1]}"`)).sort().join(" ");return this.name+(""==t?"":` class="${t}"`)+(e?` style="${e}"`:"")+(""==n?"":` ${n}`)}shouldRenderUnsafeAttribute(t){return this._unsafeAttributesToRender.includes(t)}_clone(t=!1){const e=[];if(t)for(const n of this.getChildren())e.push(n._clone(t));const n=new this.constructor(this.document,this.name,this._attrs,e);return n._classes=new Set(this._classes),n._styles.set(this._styles.getNormalized()),n._customProperties=new Map(this._customProperties),n.getFillerOffset=this.getFillerOffset,n._unsafeAttributesToRender=this._unsafeAttributesToRender,n}_appendChild(t){return this._insertChild(this.childCount,t)}_insertChild(t,e){this._fireChange("children",this);let n=0;const i=function(t,e){if("string"==typeof e)return[new Sr(t,e)];X(e)||(e=[e]);return Array.from(e).map((e=>"string"==typeof e?new Sr(t,e):e instanceof Tr?new Sr(t,e.data):e))}(this.document,e);for(const e of i)null!==e.parent&&e._remove(),e.parent=this,e.document=this.document,this._children.splice(t,0,e),t++,n++;return n}_removeChildren(t,e=1){this._fireChange("children",this);for(let n=t;n0&&(this._classes.clear(),!0):"style"==t?!this._styles.isEmpty&&(this._styles.clear(),!0):this._attrs.delete(t)}_addClass(t){this._fireChange("attributes",this);for(const e of _o(t))this._classes.add(e)}_removeClass(t){this._fireChange("attributes",this);for(const e of _o(t))this._classes.delete(e)}_setStyle(t,e){this._fireChange("attributes",this),"string"!=typeof t?this._styles.set(t):this._styles.set(t,e)}_removeStyle(t){this._fireChange("attributes",this);for(const e of _o(t))this._styles.remove(e)}_setCustomProperty(t,e){this._customProperties.set(t,e)}_removeCustomProperty(t){return this._customProperties.delete(t)}}function us(t,e){const n=e.split(/\s+/);t.clear(),n.forEach((e=>t.add(e)))}hs.prototype.is=function(t,e){return e?e===this.name&&("element"===t||"view:element"===t):"element"===t||"view:element"===t||"node"===t||"view:node"===t};class ms extends hs{constructor(t,e,n,i){super(t,e,n,i),this.getFillerOffset=gs}}function gs(){const t=[...this.getChildren()],e=t[this.childCount-1];if(e&&e.is("element","br"))return this.childCount;for(const e of t)if(!e.is("uiElement"))return null;return this.childCount}ms.prototype.is=function(t,e){return e?e===this.name&&("containerElement"===t||"view:containerElement"===t||"element"===t||"view:element"===t):"containerElement"===t||"view:containerElement"===t||"element"===t||"view:element"===t||"node"===t||"view:node"===t};class ps extends(W(ms)){constructor(t,e,n,i){super(t,e,n,i),this.set("isReadOnly",!1),this.set("isFocused",!1),this.set("placeholder",void 0),this.bind("isReadOnly").to(t),this.bind("isFocused").to(t,"isFocused",(e=>e&&t.selection.editableElement==this)),this.listenTo(t.selection,"change",(()=>{this.isFocused=t.isFocused&&t.selection.editableElement==this}))}destroy(){this.stopListening()}}ps.prototype.is=function(t,e){return e?e===this.name&&("editableElement"===t||"view:editableElement"===t||"containerElement"===t||"view:containerElement"===t||"element"===t||"view:element"===t):"editableElement"===t||"view:editableElement"===t||"containerElement"===t||"view:containerElement"===t||"element"===t||"view:element"===t||"node"===t||"view:node"===t};const fs=Symbol("rootName");class bs extends ps{constructor(t,e){super(t,e),this.rootName="main"}get rootName(){return this.getCustomProperty(fs)}set rootName(t){this._setCustomProperty(fs,t)}set _name(t){this.name=t}}bs.prototype.is=function(t,e){return e?e===this.name&&("rootElement"===t||"view:rootElement"===t||"editableElement"===t||"view:editableElement"===t||"containerElement"===t||"view:containerElement"===t||"element"===t||"view:element"===t):"rootElement"===t||"view:rootElement"===t||"editableElement"===t||"view:editableElement"===t||"containerElement"===t||"view:containerElement"===t||"element"===t||"view:element"===t||"node"===t||"view:node"===t};class ks{constructor(t={}){if(!t.boundaries&&!t.startPosition)throw new w("view-tree-walker-no-start-position",null);if(t.direction&&"forward"!=t.direction&&"backward"!=t.direction)throw new w("view-tree-walker-unknown-direction",t.startPosition,{direction:t.direction});this.boundaries=t.boundaries||null,t.startPosition?this._position=ws._createAt(t.startPosition):this._position=ws._createAt(t.boundaries["backward"==t.direction?"end":"start"]),this.direction=t.direction||"forward",this.singleCharacters=!!t.singleCharacters,this.shallow=!!t.shallow,this.ignoreElementEnd=!!t.ignoreElementEnd,this._boundaryStartParent=this.boundaries?this.boundaries.start.parent:null,this._boundaryEndParent=this.boundaries?this.boundaries.end.parent:null}[Symbol.iterator](){return this}get position(){return this._position}skip(t){let e,n;do{n=this.position,e=this.next()}while(!e.done&&t(e.value));e.done||(this._position=n)}next(){return"forward"==this.direction?this._next():this._previous()}_next(){let t=this.position.clone();const e=this.position,n=t.parent;if(null===n.parent&&t.offset===n.childCount)return{done:!0,value:void 0};if(n===this._boundaryEndParent&&t.offset==this.boundaries.end.offset)return{done:!0,value:void 0};let i;if(n instanceof Sr){if(t.isAtEnd)return this._position=ws._createAfter(n),this._next();i=n.data[t.offset]}else i=n.getChild(t.offset);if(i instanceof hs){if(this.shallow){if(this.boundaries&&this.boundaries.end.isBefore(t))return{done:!0,value:void 0};t.offset++}else t=new ws(i,0);return this._position=t,this._formatReturnValue("elementStart",i,e,t,1)}if(i instanceof Sr){if(this.singleCharacters)return t=new ws(i,0),this._position=t,this._next();let n,o=i.data.length;return i==this._boundaryEndParent?(o=this.boundaries.end.offset,n=new Tr(i,0,o),t=ws._createAfter(n)):(n=new Tr(i,0,i.data.length),t.offset++),this._position=t,this._formatReturnValue("text",n,e,t,o)}if("string"==typeof i){let i;if(this.singleCharacters)i=1;else{i=(n===this._boundaryEndParent?this.boundaries.end.offset:n.data.length)-t.offset}const o=new Tr(n,t.offset,i);return t.offset+=i,this._position=t,this._formatReturnValue("text",o,e,t,i)}return t=ws._createAfter(n),this._position=t,this.ignoreElementEnd?this._next():this._formatReturnValue("elementEnd",n,e,t)}_previous(){let t=this.position.clone();const e=this.position,n=t.parent;if(null===n.parent&&0===t.offset)return{done:!0,value:void 0};if(n==this._boundaryStartParent&&t.offset==this.boundaries.start.offset)return{done:!0,value:void 0};let i;if(n instanceof Sr){if(t.isAtStart)return this._position=ws._createBefore(n),this._previous();i=n.data[t.offset-1]}else i=n.getChild(t.offset-1);if(i instanceof hs)return this.shallow?(t.offset--,this._position=t,this._formatReturnValue("elementStart",i,e,t,1)):(t=new ws(i,i.childCount),this._position=t,this.ignoreElementEnd?this._previous():this._formatReturnValue("elementEnd",i,e,t));if(i instanceof Sr){if(this.singleCharacters)return t=new ws(i,i.data.length),this._position=t,this._previous();let n,o=i.data.length;if(i==this._boundaryStartParent){const e=this.boundaries.start.offset;n=new Tr(i,e,i.data.length-e),o=n.data.length,t=ws._createBefore(n)}else n=new Tr(i,0,i.data.length),t.offset--;return this._position=t,this._formatReturnValue("text",n,e,t,o)}if("string"==typeof i){let i;if(this.singleCharacters)i=1;else{const e=n===this._boundaryStartParent?this.boundaries.start.offset:0;i=t.offset-e}t.offset-=i;const o=new Tr(n,t.offset,i);return this._position=t,this._formatReturnValue("text",o,e,t,i)}return t=ws._createBefore(n),this._position=t,this._formatReturnValue("elementStart",n,e,t,1)}_formatReturnValue(t,e,n,i,o){return e instanceof Tr&&(e.offsetInText+e.data.length==e.textNode.data.length&&("forward"!=this.direction||this.boundaries&&this.boundaries.end.isEqual(this.position)?n=ws._createAfter(e.textNode):(i=ws._createAfter(e.textNode),this._position=i)),0===e.offsetInText&&("backward"!=this.direction||this.boundaries&&this.boundaries.start.isEqual(this.position)?n=ws._createBefore(e.textNode):(i=ws._createBefore(e.textNode),this._position=i))),{done:!1,value:{type:t,item:e,previousPosition:n,nextPosition:i,length:o}}}}class ws extends Er{constructor(t,e){super(),this.parent=t,this.offset=e}get nodeAfter(){return this.parent.is("$text")?null:this.parent.getChild(this.offset)||null}get nodeBefore(){return this.parent.is("$text")?null:this.parent.getChild(this.offset-1)||null}get isAtStart(){return 0===this.offset}get isAtEnd(){const t=this.parent.is("$text")?this.parent.data.length:this.parent.childCount;return this.offset===t}get root(){return this.parent.root}get editableElement(){let t=this.parent;for(;!(t instanceof ps);){if(!t.parent)return null;t=t.parent}return t}getShiftedBy(t){const e=ws._createAt(this),n=e.offset+t;return e.offset=n<0?0:n,e}getLastMatchingPosition(t,e={}){e.startPosition=this;const n=new ks(e);return n.skip(t),n.position}getAncestors(){return this.parent.is("documentFragment")?[this.parent]:this.parent.getAncestors({includeSelf:!0})}getCommonAncestor(t){const e=this.getAncestors(),n=t.getAncestors();let i=0;for(;e[i]==n[i]&&e[i];)i++;return 0===i?null:e[i-1]}isEqual(t){return this.parent==t.parent&&this.offset==t.offset}isBefore(t){return"before"==this.compareWith(t)}isAfter(t){return"after"==this.compareWith(t)}compareWith(t){if(this.root!==t.root)return"different";if(this.isEqual(t))return"same";const e=this.parent.is("node")?this.parent.getPath():[],n=t.parent.is("node")?t.parent.getPath():[];e.push(this.offset),n.push(t.offset);const i=Q(e,n);switch(i){case"prefix":return"before";case"extension":return"after";default:return e[i]0?new this(n,i):new this(i,n)}static _createIn(t){return this._createFromParentsAndOffsets(t,0,t,t.childCount)}static _createOn(t){const e=t.is("$textProxy")?t.offsetSize:1;return this._createFromPositionAndShift(ws._createBefore(t),e)}}function As(t){return!(!t.item.is("attributeElement")&&!t.item.is("uiElement"))}_s.prototype.is=function(t){return"range"===t||"view:range"===t};class Cs extends(S(Er)){constructor(...t){super(),this._ranges=[],this._lastRangeBackward=!1,this._isFake=!1,this._fakeSelectionLabel="",t.length&&this.setTo(...t)}get isFake(){return this._isFake}get fakeSelectionLabel(){return this._fakeSelectionLabel}get anchor(){if(!this._ranges.length)return null;const t=this._ranges[this._ranges.length-1];return(this._lastRangeBackward?t.end:t.start).clone()}get focus(){if(!this._ranges.length)return null;const t=this._ranges[this._ranges.length-1];return(this._lastRangeBackward?t.start:t.end).clone()}get isCollapsed(){return 1===this.rangeCount&&this._ranges[0].isCollapsed}get rangeCount(){return this._ranges.length}get isBackward(){return!this.isCollapsed&&this._lastRangeBackward}get editableElement(){return this.anchor?this.anchor.editableElement:null}*getRanges(){for(const t of this._ranges)yield t.clone()}getFirstRange(){let t=null;for(const e of this._ranges)t&&!e.start.isBefore(t.start)||(t=e);return t?t.clone():null}getLastRange(){let t=null;for(const e of this._ranges)t&&!e.end.isAfter(t.end)||(t=e);return t?t.clone():null}getFirstPosition(){const t=this.getFirstRange();return t?t.start.clone():null}getLastPosition(){const t=this.getLastRange();return t?t.end.clone():null}isEqual(t){if(this.isFake!=t.isFake)return!1;if(this.isFake&&this.fakeSelectionLabel!=t.fakeSelectionLabel)return!1;if(this.rangeCount!=t.rangeCount)return!1;if(0===this.rangeCount)return!0;if(!this.anchor.isEqual(t.anchor)||!this.focus.isEqual(t.focus))return!1;for(const e of this._ranges){let n=!1;for(const i of t._ranges)if(e.isEqual(i)){n=!0;break}if(!n)return!1}return!0}isSimilar(t){if(this.isBackward!=t.isBackward)return!1;const e=Y(this.getRanges());if(e!=Y(t.getRanges()))return!1;if(0==e)return!0;for(let e of this.getRanges()){e=e.getTrimmed();let n=!1;for(let i of t.getRanges())if(i=i.getTrimmed(),e.start.isEqual(i.start)&&e.end.isEqual(i.end)){n=!0;break}if(!n)return!1}return!0}getSelectedElement(){return 1!==this.rangeCount?null:this.getFirstRange().getContainedElement()}setTo(...t){let[e,n,i]=t;if("object"==typeof n&&(i=n,n=void 0),null===e)this._setRanges([]),this._setFakeOptions(i);else if(e instanceof Cs||e instanceof vs)this._setRanges(e.getRanges(),e.isBackward),this._setFakeOptions({fake:e.isFake,label:e.fakeSelectionLabel});else if(e instanceof _s)this._setRanges([e],i&&i.backward),this._setFakeOptions(i);else if(e instanceof ws)this._setRanges([new _s(e)]),this._setFakeOptions(i);else if(e instanceof Br){const t=!!i&&!!i.backward;let o;if(void 0===n)throw new w("view-selection-setto-required-second-parameter",this);o="in"==n?_s._createIn(e):"on"==n?_s._createOn(e):new _s(ws._createAt(e,n)),this._setRanges([o],t),this._setFakeOptions(i)}else{if(!X(e))throw new w("view-selection-setto-not-selectable",this);this._setRanges(e,i&&i.backward),this._setFakeOptions(i)}this.fire("change")}setFocus(t,e){if(null===this.anchor)throw new w("view-selection-setfocus-no-ranges",this);const n=ws._createAt(t,e);if("same"==n.compareWith(this.focus))return;const i=this.anchor;this._ranges.pop(),"before"==n.compareWith(i)?this._addRange(new _s(n,i),!0):this._addRange(new _s(i,n)),this.fire("change")}_setRanges(t,e=!1){t=Array.from(t),this._ranges=[];for(const e of t)this._addRange(e);this._lastRangeBackward=!!e}_setFakeOptions(t={}){this._isFake=!!t.fake,this._fakeSelectionLabel=t.fake&&t.label||""}_addRange(t,e=!1){if(!(t instanceof _s))throw new w("view-selection-add-range-not-range",this);this._pushRange(t),this._lastRangeBackward=!!e}_pushRange(t){for(const e of this._ranges)if(t.isIntersecting(e))throw new w("view-selection-range-intersects",this,{addedRange:t,intersectingRange:e});this._ranges.push(new _s(t.start,t.end))}}Cs.prototype.is=function(t){return"selection"===t||"view:selection"===t};class vs extends(S(Er)){constructor(...t){super(),this._selection=new Cs,this._selection.delegate("change").to(this),t.length&&this._selection.setTo(...t)}get isFake(){return this._selection.isFake}get fakeSelectionLabel(){return this._selection.fakeSelectionLabel}get anchor(){return this._selection.anchor}get focus(){return this._selection.focus}get isCollapsed(){return this._selection.isCollapsed}get rangeCount(){return this._selection.rangeCount}get isBackward(){return this._selection.isBackward}get editableElement(){return this._selection.editableElement}get _ranges(){return this._selection._ranges}*getRanges(){yield*this._selection.getRanges()}getFirstRange(){return this._selection.getFirstRange()}getLastRange(){return this._selection.getLastRange()}getFirstPosition(){return this._selection.getFirstPosition()}getLastPosition(){return this._selection.getLastPosition()}getSelectedElement(){return this._selection.getSelectedElement()}isEqual(t){return this._selection.isEqual(t)}isSimilar(t){return this._selection.isSimilar(t)}_setTo(...t){this._selection.setTo(...t)}_setFocus(t,e){this._selection.setFocus(t,e)}}vs.prototype.is=function(t){return"selection"===t||"documentSelection"==t||"view:selection"==t||"view:documentSelection"==t};class ys extends m{constructor(t,e,n){super(t,e),this.startRange=n,this._eventPhase="none",this._currentTarget=null}get eventPhase(){return this._eventPhase}get currentTarget(){return this._currentTarget}}const xs=Symbol("bubbling contexts");function Es(t){return class extends t{fire(t,...e){try{const n=t instanceof m?t:new m(this,t),i=Ts(this);if(!i.size)return;if(Ds(n,"capturing",this),Bs(i,"$capture",n,...e))return n.return;const o=n.startRange||this.selection.getFirstRange(),r=o?o.getContainedElement():null,s=!!r&&Boolean(Ss(i,r));let a=r||function(t){if(!t)return null;const e=t.start.parent,n=t.end.parent,i=e.getPath(),o=n.getPath();return i.length>o.length?e:n}(o);if(Ds(n,"atTarget",a),!s){if(Bs(i,"$text",n,...e))return n.return;Ds(n,"bubbling",a)}for(;a;){if(a.is("rootElement")){if(Bs(i,"$root",n,...e))return n.return}else if(a.is("element")&&Bs(i,a.name,n,...e))return n.return;if(Bs(i,a,n,...e))return n.return;a=a.parent,Ds(n,"bubbling",a)}return Ds(n,"bubbling",this),Bs(i,"$document",n,...e),n.return}catch(t){w.rethrowUnexpectedError(t,this)}}_addEventListener(t,e,n){const i=_o(n.context||"$document"),o=Ts(this);for(const r of i){let i=o.get(r);i||(i=new(S()),o.set(r,i)),this.listenTo(i,t,e,n)}}_removeEventListener(t,e){const n=Ts(this);for(const i of n.values())this.stopListening(i,t,e)}}}{const t=Es(Object);["fire","_addEventListener","_removeEventListener"].forEach((e=>{Es[e]=t.prototype[e]}))}function Ds(t,e,n){t instanceof ys&&(t._eventPhase=e,t._currentTarget=n)}function Bs(t,e,n,...i){const o="string"==typeof e?t.get(e):Ss(t,e);return!!o&&(o.fire(n,...i),n.stop.called)}function Ss(t,e){for(const[n,i]of t)if("function"==typeof n&&n(e))return i;return null}function Ts(t){return t[xs]||(t[xs]=new Map),t[xs]}class Is extends(Es(W())){constructor(t){super(),this._postFixers=new Set,this.selection=new vs,this.roots=new Uo({idProperty:"rootName"}),this.stylesProcessor=t,this.set("isReadOnly",!1),this.set("isFocused",!1),this.set("isSelecting",!1),this.set("isComposing",!1)}getRoot(t="main"){return this.roots.get(t)}registerPostFixer(t){this._postFixers.add(t)}destroy(){this.roots.forEach((t=>t.destroy())),this.stopListening()}_callPostFixers(t){let e=!1;do{for(const n of this._postFixers)if(e=n(t),e)break}while(e)}}class Ps extends hs{constructor(t,e,n,i){super(t,e,n,i),this._priority=10,this._id=null,this._clonesGroup=null,this.getFillerOffset=Rs}get priority(){return this._priority}get id(){return this._id}getElementsWithSameId(){if(null===this.id)throw new w("attribute-element-get-elements-with-same-id-no-id",this);return new Set(this._clonesGroup)}isSimilar(t){return null!==this.id||null!==t.id?this.id===t.id:super.isSimilar(t)&&this.priority==t.priority}_clone(t=!1){const e=super._clone(t);return e._priority=this._priority,e._id=this._id,e}}function Rs(){if(Vs(this))return null;let t=this.parent;for(;t&&t.is("attributeElement");){if(Vs(t)>1)return null;t=t.parent}return!t||Vs(t)>1?null:this.childCount}function Vs(t){return Array.from(t.getChildren()).filter((t=>!t.is("uiElement"))).length}Ps.DEFAULT_PRIORITY=10,Ps.prototype.is=function(t,e){return e?e===this.name&&("attributeElement"===t||"view:attributeElement"===t||"element"===t||"view:element"===t):"attributeElement"===t||"view:attributeElement"===t||"element"===t||"view:element"===t||"node"===t||"view:node"===t};class Fs extends hs{constructor(t,e,n,i){super(t,e,n,i),this.getFillerOffset=Ls}_insertChild(t,e){if(e&&(e instanceof Br||Array.from(e).length>0))throw new w("view-emptyelement-cannot-add",[this,e]);return 0}}function Ls(){return null}Fs.prototype.is=function(t,e){return e?e===this.name&&("emptyElement"===t||"view:emptyElement"===t||"element"===t||"view:element"===t):"emptyElement"===t||"view:emptyElement"===t||"element"===t||"view:element"===t||"node"===t||"view:node"===t};class Os extends hs{constructor(t,e,n,i){super(t,e,n,i),this.getFillerOffset=Ms}_insertChild(t,e){if(e&&(e instanceof Br||Array.from(e).length>0))throw new w("view-uielement-cannot-add",[this,e]);return 0}render(t,e){return this.toDomElement(t)}toDomElement(t){const e=t.createElement(this.name);for(const t of this.getAttributeKeys())e.setAttribute(t,this.getAttribute(t));return e}}function zs(t){t.document.on("arrowKey",((e,n)=>function(t,e,n){if(e.keyCode==go.arrowright){const t=e.domTarget.ownerDocument.defaultView.getSelection(),i=1==t.rangeCount&&t.getRangeAt(0).collapsed;if(i||e.shiftKey){const e=t.focusNode,o=t.focusOffset,r=n.domPositionToView(e,o);if(null===r)return;let s=!1;const a=r.getLastMatchingPosition((t=>(t.item.is("uiElement")&&(s=!0),!(!t.item.is("uiElement")&&!t.item.is("attributeElement")))));if(s){const e=n.viewPositionToDom(a);i?t.collapse(e.parent,e.offset):t.extend(e.parent,e.offset)}}}}(0,n,t.domConverter)),{priority:"low"})}function Ms(){return null}Os.prototype.is=function(t,e){return e?e===this.name&&("uiElement"===t||"view:uiElement"===t||"element"===t||"view:element"===t):"uiElement"===t||"view:uiElement"===t||"element"===t||"view:element"===t||"node"===t||"view:node"===t};class Ns extends hs{constructor(t,e,n,i){super(t,e,n,i),this.getFillerOffset=Hs}_insertChild(t,e){if(e&&(e instanceof Br||Array.from(e).length>0))throw new w("view-rawelement-cannot-add",[this,e]);return 0}render(t,e){}}function Hs(){return null}Ns.prototype.is=function(t,e){return e?e===this.name&&("rawElement"===t||"view:rawElement"===t||"element"===t||"view:element"===t):"rawElement"===t||"view:rawElement"===t||t===this.name||t==="view:"+this.name||"element"===t||"view:element"===t||"node"===t||"view:node"===t};class js extends(S(Er)){constructor(t,e){super(),this._children=[],this._customProperties=new Map,this.document=t,e&&this._insertChild(0,e)}[Symbol.iterator](){return this._children[Symbol.iterator]()}get childCount(){return this._children.length}get isEmpty(){return 0===this.childCount}get root(){return this}get parent(){return null}get name(){}get getFillerOffset(){}getCustomProperty(t){return this._customProperties.get(t)}*getCustomProperties(){yield*this._customProperties.entries()}_appendChild(t){return this._insertChild(this.childCount,t)}getChild(t){return this._children[t]}getChildIndex(t){return this._children.indexOf(t)}getChildren(){return this._children[Symbol.iterator]()}_insertChild(t,e){this._fireChange("children",this);let n=0;const i=function(t,e){if("string"==typeof e)return[new Sr(t,e)];X(e)||(e=[e]);return Array.from(e).map((e=>"string"==typeof e?new Sr(t,e):e instanceof Tr?new Sr(t,e.data):e))}(this.document,e);for(const e of i)null!==e.parent&&e._remove(),e.parent=this,this._children.splice(t,0,e),t++,n++;return n}_removeChildren(t,e=1){this._fireChange("children",this);for(let n=t;n{const n=t[t.length-1],i=!e.is("uiElement");return n&&n.breakAttributes==i?n.nodes.push(e):t.push({breakAttributes:i,nodes:[e]}),t}),[]);let i=null,o=t;for(const{nodes:t,breakAttributes:e}of n){const n=this._insertNodes(o,t,e);i||(i=n.start),o=n.end}return i?new _s(i,o):new _s(t)}remove(t){const e=t instanceof _s?t:_s._createOn(t);if(Qs(e,this.document),e.isCollapsed)return new js(this.document);const{start:n,end:i}=this._breakAttributesRange(e,!0),o=n.parent,r=i.offset-n.offset,s=o._removeChildren(n.offset,r);for(const t of s)this._removeFromClonedElementsGroup(t);const a=this.mergeAttributes(n);return e.start=a,e.end=a.clone(),new js(this.document,s)}clear(t,e){Qs(t,this.document);const n=t.getWalker({direction:"backward",ignoreElementEnd:!0});for(const i of n){const n=i.item;let o;if(n.is("element")&&e.isSimilar(n))o=_s._createOn(n);else if(!i.nextPosition.isAfter(t.start)&&n.is("$textProxy")){const t=n.getAncestors().find((t=>t.is("element")&&e.isSimilar(t)));t&&(o=_s._createIn(t))}o&&(o.end.isAfter(t.end)&&(o.end=t.end),o.start.isBefore(t.start)&&(o.start=t.start),this.remove(o))}}move(t,e){let n;if(e.isAfter(t.end)){const i=(e=this._breakAttributes(e,!0)).parent,o=i.childCount;t=this._breakAttributesRange(t,!0),n=this.remove(t),e.offset+=i.childCount-o}else n=this.remove(t);return this.insert(e,n)}wrap(t,e){if(!(e instanceof Ps))throw new w("view-writer-wrap-invalid-attribute",this.document);if(Qs(t,this.document),t.isCollapsed){let i=t.start;i.parent.is("element")&&(n=i.parent,!Array.from(n.getChildren()).some((t=>!t.is("uiElement"))))&&(i=i.getLastMatchingPosition((t=>t.item.is("uiElement")))),i=this._wrapPosition(i,e);const o=this.document.selection;return o.isCollapsed&&o.getFirstPosition().isEqual(t.start)&&this.setSelection(i),new _s(i)}return this._wrapRange(t,e);var n}unwrap(t,e){if(!(e instanceof Ps))throw new w("view-writer-unwrap-invalid-attribute",this.document);if(Qs(t,this.document),t.isCollapsed)return t;const{start:n,end:i}=this._breakAttributesRange(t,!0),o=n.parent,r=this._unwrapChildren(o,n.offset,i.offset,e),s=this.mergeAttributes(r.start);s.isEqual(r.start)||r.end.offset--;const a=this.mergeAttributes(r.end);return new _s(s,a)}rename(t,e){const n=new ms(this.document,t,e.getAttributes());return this.insert(ws._createAfter(e),n),this.move(_s._createIn(e),ws._createAt(n,0)),this.remove(_s._createOn(e)),n}clearClonedElementsGroup(t){this._cloneGroups.delete(t)}createPositionAt(t,e){return ws._createAt(t,e)}createPositionAfter(t){return ws._createAfter(t)}createPositionBefore(t){return ws._createBefore(t)}createRange(t,e){return new _s(t,e)}createRangeOn(t){return _s._createOn(t)}createRangeIn(t){return _s._createIn(t)}createSelection(...t){return new Cs(...t)}createSlot(t="children"){if(!this._slotFactory)throw new w("view-writer-invalid-create-slot-context",this.document);return this._slotFactory(this,t)}_registerSlotFactory(t){this._slotFactory=t}_clearSlotFactory(){this._slotFactory=null}_insertNodes(t,e,n){let i,o;if(i=n?Ws(t):t.parent.is("$text")?t.parent.parent:t.parent,!i)throw new w("view-writer-invalid-position-container",this.document);o=n?this._breakAttributes(t,!0):t.parent.is("$text")?Gs(t):t;const r=i._insertChild(o.offset,e);for(const t of e)this._addToClonedElementsGroup(t);const s=o.getShiftedBy(r),a=this.mergeAttributes(o);a.isEqual(o)||s.offset--;const c=this.mergeAttributes(s);return new _s(a,c)}_wrapChildren(t,e,n,i){let o=e;const r=[];for(;o!1,t.parent._insertChild(t.offset,n);const i=new _s(t,t.getShiftedBy(1));this.wrap(i,e);const o=new ws(n.parent,n.index);n._remove();const r=o.nodeBefore,s=o.nodeAfter;return r instanceof Sr&&s instanceof Sr?Ks(r,s):$s(o)}_wrapAttributeElement(t,e){if(!Xs(t,e))return!1;if(t.name!==e.name||t.priority!==e.priority)return!1;for(const n of t.getAttributeKeys())if("class"!==n&&"style"!==n&&e.hasAttribute(n)&&e.getAttribute(n)!==t.getAttribute(n))return!1;for(const n of t.getStyleNames())if(e.hasStyle(n)&&e.getStyle(n)!==t.getStyle(n))return!1;for(const n of t.getAttributeKeys())"class"!==n&&"style"!==n&&(e.hasAttribute(n)||this.setAttribute(n,t.getAttribute(n),e));for(const n of t.getStyleNames())e.hasStyle(n)||this.setStyle(n,t.getStyle(n),e);for(const n of t.getClassNames())e.hasClass(n)||this.addClass(n,e);return!0}_unwrapAttributeElement(t,e){if(!Xs(t,e))return!1;if(t.name!==e.name||t.priority!==e.priority)return!1;for(const n of t.getAttributeKeys())if("class"!==n&&"style"!==n&&(!e.hasAttribute(n)||e.getAttribute(n)!==t.getAttribute(n)))return!1;if(!e.hasClass(...t.getClassNames()))return!1;for(const n of t.getStyleNames())if(!e.hasStyle(n)||e.getStyle(n)!==t.getStyle(n))return!1;for(const n of t.getAttributeKeys())"class"!==n&&"style"!==n&&this.removeAttribute(n,e);return this.removeClass(Array.from(t.getClassNames()),e),this.removeStyle(Array.from(t.getStyleNames()),e),!0}_breakAttributesRange(t,e=!1){const n=t.start,i=t.end;if(Qs(t,this.document),t.isCollapsed){const n=this._breakAttributes(t.start,e);return new _s(n,n)}const o=this._breakAttributes(i,e),r=o.parent.childCount,s=this._breakAttributes(n,e);return o.offset+=o.parent.childCount-r,new _s(s,o)}_breakAttributes(t,e=!1){const n=t.offset,i=t.parent;if(t.parent.is("emptyElement"))throw new w("view-writer-cannot-break-empty-element",this.document);if(t.parent.is("uiElement"))throw new w("view-writer-cannot-break-ui-element",this.document);if(t.parent.is("rawElement"))throw new w("view-writer-cannot-break-raw-element",this.document);if(!e&&i.is("$text")&&Ys(i.parent))return t.clone();if(Ys(i))return t.clone();if(i.is("$text"))return this._breakAttributes(Gs(t),e);if(n==i.childCount){const t=new ws(i.parent,i.index+1);return this._breakAttributes(t,e)}if(0===n){const t=new ws(i.parent,i.index);return this._breakAttributes(t,e)}{const t=i.index+1,o=i._clone();i.parent._insertChild(t,o),this._addToClonedElementsGroup(o);const r=i.childCount-n,s=i._removeChildren(n,r);o._appendChild(s);const a=new ws(i.parent,t);return this._breakAttributes(a,e)}}_addToClonedElementsGroup(t){if(!t.root.is("rootElement"))return;if(t.is("element"))for(const e of t.getChildren())this._addToClonedElementsGroup(e);const e=t.id;if(!e)return;let n=this._cloneGroups.get(e);n||(n=new Set,this._cloneGroups.set(e,n)),n.add(t),t._clonesGroup=n}_removeFromClonedElementsGroup(t){if(t.is("element"))for(const e of t.getChildren())this._removeFromClonedElementsGroup(e);const e=t.id;if(!e)return;const n=this._cloneGroups.get(e);n&&n.delete(t)}}function Ws(t){let e=t.parent;for(;!Ys(e);){if(!e)return;e=e.parent}return e}function Us(t,e){return t.prioritye.priority)&&t.getIdentity()n instanceof t)))throw new w("view-writer-insert-invalid-node-type",e);n.is("$text")||Zs(n.getChildren(),e)}}function Ys(t){return t&&(t.is("containerElement")||t.is("documentFragment"))}function Qs(t,e){const n=Ws(t.start),i=Ws(t.end);if(!n||!i||n!==i)throw new w("view-writer-invalid-range-container",e)}function Xs(t,e){return null===t.id&&null===e.id}const ta=t=>t.createTextNode(" "),ea=t=>{const e=t.createElement("span");return e.dataset.ckeFiller="true",e.innerText=" ",e},na=t=>{const e=t.createElement("br");return e.dataset.ckeFiller="true",e},ia=7,oa="⁠".repeat(ia);function ra(t){return"string"==typeof t?t.substr(0,ia)===oa:Pi(t)&&t.data.substr(0,ia)===oa}function sa(t){return t.data.length==ia&&ra(t)}function aa(t){const e="string"==typeof t?t:t.data;return ra(t)?e.slice(ia):e}function ca(t,e){if(e.keyCode==go.arrowleft){const t=e.domTarget.ownerDocument.defaultView.getSelection();if(1==t.rangeCount&&t.getRangeAt(0).collapsed){const e=t.getRangeAt(0).startContainer,n=t.getRangeAt(0).startOffset;ra(e)&&n<=ia&&t.collapse(e,0)}}}var la=n(8264),da={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(la.A,da);la.A.locals;class ha extends(W()){constructor(t,e){super(),this.domDocuments=new Set,this.markedAttributes=new Set,this.markedChildren=new Set,this.markedTexts=new Set,this._inlineFiller=null,this._fakeSelectionContainer=null,this.domConverter=t,this.selection=e,this.set("isFocused",!1),this.set("isSelecting",!1),s.isBlink&&!s.isAndroid&&this.on("change:isSelecting",(()=>{this.isSelecting||this.render()})),this.set("isComposing",!1),this.on("change:isComposing",(()=>{this.isComposing||this.render()}))}markToSync(t,e){if("text"===t)this.domConverter.mapViewToDom(e.parent)&&this.markedTexts.add(e);else{if(!this.domConverter.mapViewToDom(e))return;if("attributes"===t)this.markedAttributes.add(e);else{if("children"!==t){throw new w("view-renderer-unknown-type",this)}this.markedChildren.add(e)}}}render(){if(this.isComposing&&!s.isAndroid)return;let t=null;const e=!(s.isBlink&&!s.isAndroid)||!this.isSelecting;for(const t of this.markedChildren)this._updateChildrenMappings(t);e?(this._inlineFiller&&!this._isSelectionInInlineFiller()&&this._removeInlineFiller(),this._inlineFiller?t=this._getInlineFillerPosition():this._needsInlineFillerAtSelection()&&(t=this.selection.getFirstPosition(),this.markedChildren.add(t.parent))):this._inlineFiller&&this._inlineFiller.parentNode&&(t=this.domConverter.domPositionToView(this._inlineFiller),t&&t.parent.is("$text")&&(t=ws._createBefore(t.parent)));for(const t of this.markedAttributes)this._updateAttrs(t);for(const e of this.markedChildren)this._updateChildren(e,{inlineFillerPosition:t});for(const e of this.markedTexts)!this.markedChildren.has(e.parent)&&this.domConverter.mapViewToDom(e.parent)&&this._updateText(e,{inlineFillerPosition:t});if(e)if(t){const e=this.domConverter.viewPositionToDom(t),n=e.parent.ownerDocument;ra(e.parent)?this._inlineFiller=e.parent:this._inlineFiller=ua(n,e.parent,e.offset)}else this._inlineFiller=null;this._updateFocus(),this._updateSelection(),this.domConverter._clearTemporaryCustomProperties(),this.markedTexts.clear(),this.markedAttributes.clear(),this.markedChildren.clear()}_updateChildrenMappings(t){const e=this.domConverter.mapViewToDom(t);if(!e)return;const n=Array.from(e.childNodes),i=Array.from(this.domConverter.viewChildrenToDom(t,{withChildren:!1})),o=this._diffNodeLists(n,i),r=this._findUpdateActions(o,n,i,ma);if(-1!==r.indexOf("update")){const e={equal:0,insert:0,delete:0};for(const o of r)if("update"===o){const o=e.equal+e.insert,r=e.equal+e.delete,s=t.getChild(o);!s||s.is("uiElement")||s.is("rawElement")||this._updateElementMappings(s,n[r]),Xi(i[o]),e.equal++}else e[o]++}}_updateElementMappings(t,e){this.domConverter.unbindDomElement(e),this.domConverter.bindElements(e,t),this.markedChildren.add(t),this.markedAttributes.add(t)}_getInlineFillerPosition(){const t=this.selection.getFirstPosition();return t.parent.is("$text")?ws._createBefore(t.parent):t}_isSelectionInInlineFiller(){if(1!=this.selection.rangeCount||!this.selection.isCollapsed)return!1;const t=this.selection.getFirstPosition(),e=this.domConverter.viewPositionToDom(t);return!!(e&&Pi(e.parent)&&ra(e.parent))}_removeInlineFiller(){const t=this._inlineFiller;if(!ra(t))throw new w("view-renderer-filler-was-lost",this);sa(t)?t.remove():t.data=t.data.substr(ia),this._inlineFiller=null}_needsInlineFillerAtSelection(){if(1!=this.selection.rangeCount||!this.selection.isCollapsed)return!1;const t=this.selection.getFirstPosition(),e=t.parent,n=t.offset;if(!this.domConverter.mapViewToDom(e.root))return!1;if(!e.is("element"))return!1;if(!function(t){if("false"==t.getAttribute("contenteditable"))return!1;const e=t.findAncestor((t=>t.hasAttribute("contenteditable")));return!e||"true"==e.getAttribute("contenteditable")}(e))return!1;const i=t.nodeBefore,o=t.nodeAfter;return!(i instanceof Sr||o instanceof Sr)&&(!!(n!==e.getFillerOffset()||i&&i.is("element","br"))&&(!s.isAndroid||!i&&!o))}_updateText(t,e){const n=this.domConverter.findCorrespondingDomText(t);let i=this.domConverter.viewToDom(t).data;const o=e.inlineFillerPosition;o&&o.parent==t.parent&&o.offset==t.index&&(i=oa+i),fa(n,i)}_updateAttrs(t){const e=this.domConverter.mapViewToDom(t);if(!e)return;const n=Array.from(e.attributes).map((t=>t.name)),i=t.getAttributeKeys();for(const n of i)this.domConverter.setDomElementAttribute(e,n,t.getAttribute(n),t);for(const i of n)t.hasAttribute(i)||this.domConverter.removeDomElementAttribute(e,i)}_updateChildren(t,e){const n=this.domConverter.mapViewToDom(t);if(!n)return;if(s.isAndroid){let t=null;for(const e of Array.from(n.childNodes)){if(t&&Pi(t)&&Pi(e)){n.normalize();break}t=e}}const i=e.inlineFillerPosition,o=n.childNodes,r=Array.from(this.domConverter.viewChildrenToDom(t,{bind:!0}));i&&i.parent===t&&ua(n.ownerDocument,r,i.offset);const a=this._diffNodeLists(o,r),c=this._findUpdateActions(a,o,r,ga);let l=0;const d=new Set;for(const t of c)"delete"===t?(d.add(o[l]),Xi(o[l])):"equal"!==t&&"update"!==t||l++;l=0;for(const t of c)"insert"===t?($i(n,l,r[l]),l++):"update"===t?(fa(o[l],r[l].data),l++):"equal"===t&&(this._markDescendantTextToSync(this.domConverter.domToView(r[l])),l++);for(const t of d)t.parentNode||this.domConverter.unbindDomElement(t)}_diffNodeLists(t,e){return t=function(t,e){const n=Array.from(t);if(0==n.length||!e)return n;const i=n[n.length-1];i==e&&n.pop();return n}(t,this._fakeSelectionContainer),h(t,e,pa.bind(null,this.domConverter))}_findUpdateActions(t,e,n,i){if(-1===t.indexOf("insert")||-1===t.indexOf("delete"))return t;let o=[],r=[],s=[];const a={equal:0,insert:0,delete:0};for(const c of t)"insert"===c?s.push(n[a.equal+a.insert]):"delete"===c?r.push(e[a.equal+a.delete]):(o=o.concat(h(r,s,i).map((t=>"equal"===t?"update":t))),o.push("equal"),r=[],s=[]),a[c]++;return o.concat(h(r,s,i).map((t=>"equal"===t?"update":t)))}_markDescendantTextToSync(t){if(t)if(t.is("$text"))this.markedTexts.add(t);else if(t.is("element"))for(const e of t.getChildren())this._markDescendantTextToSync(e)}_updateSelection(){if(s.isBlink&&!s.isAndroid&&this.isSelecting&&!this.markedChildren.size)return;if(0===this.selection.rangeCount)return this._removeDomSelection(),void this._removeFakeSelection();const t=this.domConverter.mapViewToDom(this.selection.editableElement);this.isFocused&&t&&(this.selection.isFake?this._updateFakeSelection(t):this._fakeSelectionContainer&&this._fakeSelectionContainer.isConnected?(this._removeFakeSelection(),this._updateDomSelection(t)):this.isComposing&&s.isAndroid||this._updateDomSelection(t))}_updateFakeSelection(t){const e=t.ownerDocument;this._fakeSelectionContainer||(this._fakeSelectionContainer=function(t){const e=t.createElement("div");return e.className="ck-fake-selection-container",Object.assign(e.style,{position:"fixed",top:0,left:"-9999px",width:"42px"}),e.textContent=" ",e}(e));const n=this._fakeSelectionContainer;if(this.domConverter.bindFakeSelection(n,this.selection),!this._fakeSelectionNeedsUpdate(t))return;n.parentElement&&n.parentElement==t||t.appendChild(n),n.textContent=this.selection.fakeSelectionLabel||" ";const i=e.getSelection(),o=e.createRange();i.removeAllRanges(),o.selectNodeContents(n),i.addRange(o)}_updateDomSelection(t){const e=t.ownerDocument.defaultView.getSelection();if(!this._domSelectionNeedsUpdate(e))return;const n=this.domConverter.viewPositionToDom(this.selection.anchor),i=this.domConverter.viewPositionToDom(this.selection.focus);e.setBaseAndExtent(n.parent,n.offset,i.parent,i.offset),s.isGecko&&function(t,e){let n=t.parent,i=t.offset;Pi(n)&&sa(n)&&(i=Ui(n)+1,n=n.parentNode);if(n.nodeType!=Node.ELEMENT_NODE||i!=n.childNodes.length-1)return;const o=n.childNodes[i];o&&"BR"==o.tagName&&e.addRange(e.getRangeAt(0))}(i,e)}_domSelectionNeedsUpdate(t){if(!this.domConverter.isDomSelectionCorrect(t))return!0;const e=t&&this.domConverter.domSelectionToView(t);return(!e||!this.selection.isEqual(e))&&!(!this.selection.isCollapsed&&this.selection.isSimilar(e))}_fakeSelectionNeedsUpdate(t){const e=this._fakeSelectionContainer,n=t.ownerDocument.getSelection();return!e||e.parentElement!==t||(n.anchorNode!==e&&!e.contains(n.anchorNode)||e.textContent!==this.selection.fakeSelectionLabel)}_removeDomSelection(){for(const t of this.domDocuments){const e=t.getSelection();if(e.rangeCount){const n=t.activeElement,i=this.domConverter.mapDomToView(n);n&&i&&e.removeAllRanges()}}}_removeFakeSelection(){const t=this._fakeSelectionContainer;t&&t.remove()}_updateFocus(){if(this.isFocused){const t=this.selection.editableElement;t&&this.domConverter.focus(t)}}}function ua(t,e,n){const i=e instanceof Array?e:e.childNodes,o=i[n];if(Pi(o))return o.data=oa+o.data,o;{const o=t.createTextNode(oa);return Array.isArray(e)?i.splice(n,0,o):$i(e,n,o),o}}function ma(t,e){return xi(t)&&xi(e)&&!Pi(t)&&!Pi(e)&&!Gi(t)&&!Gi(e)&&t.tagName.toLowerCase()===e.tagName.toLowerCase()}function ga(t,e){return xi(t)&&xi(e)&&Pi(t)&&Pi(e)}function pa(t,e,n){return e===n||(Pi(e)&&Pi(n)?e.data===n.data:!(!t.isBlockFiller(e)||!t.isBlockFiller(n)))}function fa(t,e){const n=t.data;if(n==e)return;const i=c(n,e);for(const e of i)"insert"===e.type?t.insertData(e.index,e.values.join("")):t.deleteData(e.index,e.howMany)}const ba=na(e.document),ka=ta(e.document),wa=ea(e.document),_a="data-ck-unsafe-attribute-",Aa="data-ck-unsafe-element";class Ca{constructor(t,{blockFillerMode:n,renderingMode:i="editing"}={}){this._domToViewMapping=new WeakMap,this._viewToDomMapping=new WeakMap,this._fakeSelectionMapping=new WeakMap,this._rawContentElementMatcher=new Ir,this._inlineObjectElementMatcher=new Ir,this._elementsWithTemporaryCustomProperties=new Set,this.document=t,this.renderingMode=i,this.blockFillerMode=n||("editing"===i?"br":"nbsp"),this.preElements=["pre"],this.blockElements=["address","article","aside","blockquote","caption","center","dd","details","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","legend","li","main","menu","nav","ol","p","pre","section","summary","table","tbody","td","tfoot","th","thead","tr","ul"],this.inlineObjectElements=["object","iframe","input","button","textarea","select","option","video","embed","audio","img","canvas"],this.unsafeElements=["script","style"],this._domDocument="editing"===this.renderingMode?e.document:e.document.implementation.createHTMLDocument("")}bindFakeSelection(t,e){this._fakeSelectionMapping.set(t,new Cs(e))}fakeSelectionToView(t){return this._fakeSelectionMapping.get(t)}bindElements(t,e){this._domToViewMapping.set(t,e),this._viewToDomMapping.set(e,t)}unbindDomElement(t){const e=this._domToViewMapping.get(t);if(e){this._domToViewMapping.delete(t),this._viewToDomMapping.delete(e);for(const e of Array.from(t.children))this.unbindDomElement(e)}}bindDocumentFragments(t,e){this._domToViewMapping.set(t,e),this._viewToDomMapping.set(e,t)}shouldRenderAttribute(t,e,n){return"data"===this.renderingMode||!(t=t.toLowerCase()).startsWith("on")&&(("srcdoc"!==t||!e.match(/\bon\S+\s*=|javascript:|<\s*\/*script/i))&&("img"===n&&("src"===t||"srcset"===t)||("source"===n&&"srcset"===t||!e.match(/^\s*(javascript:|data:(image\/svg|text\/x?html))/i))))}setContentOf(t,e){if("data"===this.renderingMode)return void(t.innerHTML=e);const n=(new DOMParser).parseFromString(e,"text/html"),i=n.createDocumentFragment(),o=n.body.childNodes;for(;o.length>0;)i.appendChild(o[0]);const r=n.createTreeWalker(i,NodeFilter.SHOW_ELEMENT),s=[];let a;for(;a=r.nextNode();)s.push(a);for(const t of s){for(const e of t.getAttributeNames())this.setDomElementAttribute(t,e,t.getAttribute(e));const e=t.tagName.toLowerCase();this._shouldRenameElement(e)&&(Ea(e),t.replaceWith(this._createReplacementDomElement(e,t)))}for(;t.firstChild;)t.firstChild.remove();t.append(i)}viewToDom(t,e={}){if(t.is("$text")){const e=this._processDataFromViewText(t);return this._domDocument.createTextNode(e)}{const n=t;if(this.mapViewToDom(n)){if(!n.getCustomProperty("editingPipeline:doNotReuseOnce"))return this.mapViewToDom(n);this._elementsWithTemporaryCustomProperties.add(n)}let i;if(n.is("documentFragment"))i=this._domDocument.createDocumentFragment(),e.bind&&this.bindDocumentFragments(i,n);else{if(n.is("uiElement"))return i="$comment"===n.name?this._domDocument.createComment(n.getCustomProperty("$rawContent")):n.render(this._domDocument,this),e.bind&&this.bindElements(i,n),i;this._shouldRenameElement(n.name)?(Ea(n.name),i=this._createReplacementDomElement(n.name)):i=n.hasAttribute("xmlns")?this._domDocument.createElementNS(n.getAttribute("xmlns"),n.name):this._domDocument.createElement(n.name),n.is("rawElement")&&n.render(i,this),e.bind&&this.bindElements(i,n);for(const t of n.getAttributeKeys())this.setDomElementAttribute(i,t,n.getAttribute(t),n)}if(!1!==e.withChildren)for(const t of this.viewChildrenToDom(n,e))i instanceof HTMLTemplateElement?i.content.appendChild(t):i.appendChild(t);return i}}setDomElementAttribute(t,n,i,o){const r=this.shouldRenderAttribute(n,i,t.tagName.toLowerCase())||o&&o.shouldRenderUnsafeAttribute(n);r||_("domconverter-unsafe-attribute-detected",{domElement:t,key:n,value:i}),function(t){try{e.document.createAttribute(t)}catch(t){return!1}return!0}(n)?(t.hasAttribute(n)&&!r?t.removeAttribute(n):t.hasAttribute(_a+n)&&r&&t.removeAttribute(_a+n),t.setAttribute(r?n:_a+n,i)):_("domconverter-invalid-attribute-detected",{domElement:t,key:n,value:i})}removeDomElementAttribute(t,e){e!=Aa&&(t.removeAttribute(e),t.removeAttribute(_a+e))}*viewChildrenToDom(t,e={}){const n=t.getFillerOffset&&t.getFillerOffset();let i=0;for(const o of t.getChildren()){n===i&&(yield this._getBlockFiller());const t=o.is("element")&&!!o.getCustomProperty("dataPipeline:transparentRendering")&&!$o(o.getAttributes());t&&"data"==this.renderingMode?yield*this.viewChildrenToDom(o,e):(t&&_("domconverter-transparent-rendering-unsupported-in-editing-pipeline",{viewElement:o}),yield this.viewToDom(o,e)),i++}n===i&&(yield this._getBlockFiller())}viewRangeToDom(t){const e=this.viewPositionToDom(t.start),n=this.viewPositionToDom(t.end),i=this._domDocument.createRange();return i.setStart(e.parent,e.offset),i.setEnd(n.parent,n.offset),i}viewPositionToDom(t){const e=t.parent;if(e.is("$text")){const n=this.findCorrespondingDomText(e);if(!n)return null;let i=t.offset;return ra(n)&&(i+=ia),{parent:n,offset:i}}{let n,i,o;if(0===t.offset){if(n=this.mapViewToDom(e),!n)return null;o=n.childNodes[0]}else{const e=t.nodeBefore;if(i=e.is("$text")?this.findCorrespondingDomText(e):this.mapViewToDom(e),!i)return null;n=i.parentNode,o=i.nextSibling}if(Pi(o)&&ra(o))return{parent:o,offset:ia};return{parent:n,offset:i?Ui(i)+1:0}}}domToView(t,e={}){const n=[],i=this._domToView(t,e,n),o=i.next().value;return o?(i.next(),this._processDomInlineNodes(null,n,e),o.is("$text")&&0==o.data.length?null:o):null}*domChildrenToView(t,e={},n=[]){let i=[];i=t instanceof HTMLTemplateElement?[...t.content.childNodes]:[...t.childNodes];for(let o=0;o{const{scrollLeft:e,scrollTop:n}=t;o.push([e,n])})),n.focus(),ya(n,(t=>{const[e,n]=o.shift();t.scrollLeft=e,t.scrollTop=n})),e.window.scrollTo(t,i)}}_clearDomSelection(){const t=this.mapViewToDom(this.document.selection.editableElement);if(!t)return;const e=t.ownerDocument.defaultView.getSelection(),n=this.domSelectionToView(e);n&&n.rangeCount>0&&e.removeAllRanges()}isElement(t){return t&&t.nodeType==Node.ELEMENT_NODE}isDocumentFragment(t){return t&&t.nodeType==Node.DOCUMENT_FRAGMENT_NODE}isBlockFiller(t){return"br"==this.blockFillerMode?t.isEqualNode(ba):!("BR"!==t.tagName||!xa(t,this.blockElements)||1!==t.parentNode.childNodes.length)||(t.isEqualNode(wa)||function(t,e){const n=t.isEqualNode(ka);return n&&xa(t,e)&&1===t.parentNode.childNodes.length}(t,this.blockElements))}isDomSelectionBackward(t){if(t.isCollapsed)return!1;const e=this._domDocument.createRange();try{e.setStart(t.anchorNode,t.anchorOffset),e.setEnd(t.focusNode,t.focusOffset)}catch(t){return!1}const n=e.collapsed;return e.detach(),n}getHostViewElement(t){const e=function(t){const e=[];let n=t;for(;n&&n.nodeType!=Node.DOCUMENT_NODE;)e.unshift(n),n=n.parentNode;return e}(t);for(e.pop();e.length;){const t=e.pop(),n=this._domToViewMapping.get(t);if(n&&(n.is("uiElement")||n.is("rawElement")))return n}return null}isDomSelectionCorrect(t){return this._isDomSelectionPositionCorrect(t.anchorNode,t.anchorOffset)&&this._isDomSelectionPositionCorrect(t.focusNode,t.focusOffset)}registerRawContentMatcher(t){this._rawContentElementMatcher.add(t)}registerInlineObjectMatcher(t){this._inlineObjectElementMatcher.add(t)}_clearTemporaryCustomProperties(){for(const t of this._elementsWithTemporaryCustomProperties)t._removeCustomProperty("editingPipeline:doNotReuseOnce");this._elementsWithTemporaryCustomProperties.clear()}_getBlockFiller(){switch(this.blockFillerMode){case"nbsp":return ta(this._domDocument);case"markedNbsp":return ea(this._domDocument);case"br":return na(this._domDocument)}}_isDomSelectionPositionCorrect(t,e){if(Pi(t)&&ra(t)&&e0?e[t-1]:null,c=t+1this.preElements.includes(t.name))))return e;if(" "==e.charAt(0)){const n=this._getTouchingInlineViewNode(t,!1);!(n&&n.is("$textProxy")&&this._nodeEndsWithSpace(n))&&n||(e=" "+e.substr(1))}if(" "==e.charAt(e.length-1)){const n=this._getTouchingInlineViewNode(t,!0),i=n&&n.is("$textProxy")&&" "==n.data.charAt(0);" "!=e.charAt(e.length-2)&&n&&!i||(e=e.substr(0,e.length-1)+" ")}return e.replace(/ {2}/g,"  ")}_nodeEndsWithSpace(t){if(t.getAncestors().some((t=>this.preElements.includes(t.name))))return!1;const e=this._processDataFromViewText(t);return" "==e.charAt(e.length-1)}_getTouchingInlineViewNode(t,e){const n=new ks({startPosition:e?ws._createAfter(t):ws._createBefore(t),direction:e?"forward":"backward"});for(const t of n){if(t.item.is("element","br"))return null;if(this._isInlineObjectElement(t.item))return t.item;if(t.item.is("containerElement"))return null;if(t.item.is("$textProxy"))return t.item}return null}_isBlockDomElement(t){return this.isElement(t)&&this.blockElements.includes(t.tagName.toLowerCase())}_isBlockViewElement(t){return t.is("element")&&this.blockElements.includes(t.name)}_isInlineObjectElement(t){return!!t.is("element")&&("br"==t.name||this.inlineObjectElements.includes(t.name)||!!this._inlineObjectElementMatcher.match(t))}_createViewElement(t,e){if(Gi(t))return new Os(this.document,"$comment");const n=e.keepOriginalCase?t.tagName:t.tagName.toLowerCase();return new hs(this.document,n)}_isViewElementWithRawContent(t,e){return!1!==e.withChildren&&t.is("element")&&!!this._rawContentElementMatcher.match(t)}_shouldRenameElement(t){const e=t.toLowerCase();return"editing"===this.renderingMode&&this.unsafeElements.includes(e)}_createReplacementDomElement(t,e){const n=this._domDocument.createElement("span");if(n.setAttribute(Aa,t),e){for(;e.firstChild;)n.appendChild(e.firstChild);for(const t of e.getAttributeNames())n.setAttribute(t,e.getAttribute(t))}return n}}function va(t,e){return t.getAncestors().some((t=>t.is("element")&&e.includes(t.name)))}function ya(t,e){let n=t;for(;n;)e(n),n=n.parentElement}function xa(t,e){const n=t.parentNode;return!!n&&!!n.tagName&&e.includes(n.tagName.toLowerCase())}function Ea(t){"script"===t&&_("domconverter-unsafe-script-element-detected"),"style"===t&&_("domconverter-unsafe-style-element-detected")}class Da extends(Bi()){constructor(t){super(),this._isEnabled=!1,this.view=t,this.document=t.document}get isEnabled(){return this._isEnabled}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}destroy(){this.disable(),this.stopListening()}checkShouldIgnoreEventFromTarget(t){return t&&3===t.nodeType&&(t=t.parentNode),!(!t||1!==t.nodeType)&&t.matches("[data-cke-ignore-events], [data-cke-ignore-events] *")}}const Ba=Mo((function(t,e){Be(e,un(e),t)}));class Sa{constructor(t,e,n){this.view=t,this.document=t.document,this.domEvent=e,this.domTarget=e.target,Ba(this,n)}get target(){return this.view.domConverter.mapDomToView(this.domTarget)}preventDefault(){this.domEvent.preventDefault()}stopPropagation(){this.domEvent.stopPropagation()}}class Ta extends Da{constructor(){super(...arguments),this.useCapture=!1}observe(t){("string"==typeof this.domEventType?[this.domEventType]:this.domEventType).forEach((e=>{this.listenTo(t,e,((t,e)=>{this.isEnabled&&!this.checkShouldIgnoreEventFromTarget(e.target)&&this.onDomEvent(e)}),{useCapture:this.useCapture})}))}stopObserving(t){this.stopListening(t)}fire(t,e,n){this.isEnabled&&this.document.fire(t,new Sa(this.view,e,n))}}class Ia extends Ta{constructor(){super(...arguments),this.domEventType=["keydown","keyup"]}onDomEvent(t){const e={keyCode:t.keyCode,altKey:t.altKey,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,metaKey:t.metaKey,get keystroke(){return fo(this)}};this.fire(t.type,t,e)}}const Pa=function(){return nt.Date.now()};var Ra=/\s/;const Va=function(t){for(var e=t.length;e--&&Ra.test(t.charAt(e)););return e};var Fa=/^\s+/;const La=function(t){return t?t.slice(0,Va(t)+1).replace(Fa,""):t};var Oa=/^[-+]0x[0-9a-f]+$/i,za=/^0b[01]+$/i,Ma=/^0o[0-7]+$/i,Na=parseInt;const Ha=function(t){if("number"==typeof t)return t;if(Vr(t))return NaN;if(O(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=O(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=La(t);var n=za.test(t);return n||Ma.test(t)?Na(t.slice(2),n?2:8):Oa.test(t)?NaN:+t};var ja=Math.max,qa=Math.min;const Wa=function(t,e,n){var i,o,r,s,a,c,l=0,d=!1,h=!1,u=!0;if("function"!=typeof t)throw new TypeError("Expected a function");function m(e){var n=i,r=o;return i=o=void 0,l=e,s=t.apply(r,n)}function g(t){var n=t-c;return void 0===c||n>=e||n<0||h&&t-l>=r}function p(){var t=Pa();if(g(t))return f(t);a=setTimeout(p,function(t){var n=e-(t-c);return h?qa(n,r-(t-l)):n}(t))}function f(t){return a=void 0,u&&i?m(t):(i=o=void 0,s)}function b(){var t=Pa(),n=g(t);if(i=arguments,o=this,c=t,n){if(void 0===a)return function(t){return l=t,a=setTimeout(p,e),d?m(t):s}(c);if(h)return clearTimeout(a),a=setTimeout(p,e),m(c)}return void 0===a&&(a=setTimeout(p,e)),s}return e=Ha(e)||0,O(n)&&(d=!!n.leading,r=(h="maxWait"in n)?ja(Ha(n.maxWait)||0,e):r,u="trailing"in n?!!n.trailing:u),b.cancel=function(){void 0!==a&&clearTimeout(a),l=0,i=c=o=a=void 0},b.flush=function(){return void 0===a?s:f(Pa())},b};class Ua extends Da{constructor(t){super(t),this._fireSelectionChangeDoneDebounced=Wa((t=>{this.document.fire("selectionChangeDone",t)}),200)}observe(){const t=this.document;t.on("arrowKey",((e,n)=>{t.selection.isFake&&this.isEnabled&&n.preventDefault()}),{context:"$capture"}),t.on("arrowKey",((e,n)=>{t.selection.isFake&&this.isEnabled&&this._handleSelectionMove(n.keyCode)}),{priority:"lowest"})}stopObserving(){}destroy(){super.destroy(),this._fireSelectionChangeDoneDebounced.cancel()}_handleSelectionMove(t){const e=this.document.selection,n=new Cs(e.getRanges(),{backward:e.isBackward,fake:!1});t!=go.arrowleft&&t!=go.arrowup||n.setTo(n.getFirstPosition()),t!=go.arrowright&&t!=go.arrowdown||n.setTo(n.getLastPosition());const i={oldSelection:e,newSelection:n,domSelection:null};this.document.fire("selectionChange",i),this._fireSelectionChangeDoneDebounced(i)}}const $a=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this};const Ga=function(t){return this.__data__.has(t)};function Ka(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new we;++ea))return!1;var l=r.get(t),d=r.get(e);if(l&&d)return l==e&&d==t;var h=-1,u=!0,m=2&n?new Ja:void 0;for(r.set(t,e),r.set(e,t);++h{this._isFocusChanging=!0,this._renderTimeoutId=setTimeout((()=>{this.flush(),t.change((()=>{}))}),50)})),e.on("blur",((n,i)=>{const o=e.selection.editableElement;null!==o&&o!==i.target||(e.isFocused=!1,this._isFocusChanging=!1,t.change((()=>{})))}))}flush(){this._isFocusChanging&&(this._isFocusChanging=!1,this.document.isFocused=!0)}onDomEvent(t){this.fire(t.type,t)}destroy(){this._renderTimeoutId&&clearTimeout(this._renderTimeoutId),super.destroy()}}class fc extends Da{constructor(t){super(t),this.mutationObserver=t.getObserver(mc),this.focusObserver=t.getObserver(pc),this.selection=this.document.selection,this.domConverter=t.domConverter,this._documents=new WeakSet,this._fireSelectionChangeDoneDebounced=Wa((t=>{this.document.fire("selectionChangeDone",t)}),200),this._clearInfiniteLoopInterval=setInterval((()=>this._clearInfiniteLoop()),1e3),this._documentIsSelectingInactivityTimeoutDebounced=Wa((()=>this.document.isSelecting=!1),5e3),this._loopbackCounter=0}observe(t){const e=t.ownerDocument,n=()=>{this.document.isSelecting&&(this._handleSelectionChange(null,e),this.document.isSelecting=!1,this._documentIsSelectingInactivityTimeoutDebounced.cancel())};this.listenTo(t,"selectstart",(()=>{this.document.isSelecting=!0,this._documentIsSelectingInactivityTimeoutDebounced()}),{priority:"highest"}),this.listenTo(t,"keydown",n,{priority:"highest",useCapture:!0}),this.listenTo(t,"keyup",n,{priority:"highest",useCapture:!0}),this._documents.has(e)||(this.listenTo(e,"mouseup",n,{priority:"highest",useCapture:!0}),this.listenTo(e,"selectionchange",((t,n)=>{this.document.isComposing&&!s.isAndroid||(this._handleSelectionChange(n,e),this._documentIsSelectingInactivityTimeoutDebounced())})),this._documents.add(e))}stopObserving(t){this.stopListening(t)}destroy(){super.destroy(),clearInterval(this._clearInfiniteLoopInterval),this._fireSelectionChangeDoneDebounced.cancel(),this._documentIsSelectingInactivityTimeoutDebounced.cancel()}_reportInfiniteLoop(){}_handleSelectionChange(t,e){if(!this.isEnabled)return;const n=e.defaultView.getSelection();if(this.checkShouldIgnoreEventFromTarget(n.anchorNode))return;this.mutationObserver.flush();const i=this.domConverter.domSelectionToView(n);if(0!=i.rangeCount){if(this.view.hasDomSelection=!0,this.focusObserver.flush(),!this.selection.isEqual(i)||!this.domConverter.isDomSelectionCorrect(n))if(++this._loopbackCounter>60)this._reportInfiniteLoop();else if(this.selection.isSimilar(i))this.view.forceRender();else{const t={oldSelection:this.selection,newSelection:i,domSelection:n};this.document.fire("selectionChange",t),this._fireSelectionChangeDoneDebounced(t)}}else this.view.hasDomSelection=!1}_clearInfiniteLoop(){this._loopbackCounter=0}}class bc extends Ta{constructor(t){super(t),this.domEventType=["compositionstart","compositionupdate","compositionend"];const e=this.document;e.on("compositionstart",(()=>{e.isComposing=!0}),{priority:"low"}),e.on("compositionend",(()=>{e.isComposing=!1}),{priority:"low"})}onDomEvent(t){this.fire(t.type,t,{data:t.data})}}class kc{constructor(t,e={}){this._files=e.cacheFiles?wc(t):null,this._native=t}get files(){return this._files||(this._files=wc(this._native)),this._files}get types(){return this._native.types}getData(t){return this._native.getData(t)}setData(t,e){this._native.setData(t,e)}set effectAllowed(t){this._native.effectAllowed=t}get effectAllowed(){return this._native.effectAllowed}set dropEffect(t){this._native.dropEffect=t}get dropEffect(){return this._native.dropEffect}setDragImage(t,e,n){this._native.setDragImage(t,e,n)}get isCanceled(){return"none"==this._native.dropEffect||!!this._native.mozUserCancelled}}function wc(t){const e=Array.from(t.files||[]),n=Array.from(t.items||[]);return e.length?e:n.filter((t=>"file"===t.kind)).map((t=>t.getAsFile()))}class _c extends Ta{constructor(){super(...arguments),this.domEventType="beforeinput"}onDomEvent(t){const e=t.getTargetRanges(),n=this.view,i=n.document;let o=null,r=null,a=[];if(t.dataTransfer&&(o=new kc(t.dataTransfer)),null!==t.data?r=t.data:o&&(r=o.getData("text/plain")),i.selection.isFake)a=Array.from(i.selection.getRanges());else if(e.length)a=e.map((t=>{const e=n.domConverter.domPositionToView(t.startContainer,t.startOffset),i=n.domConverter.domPositionToView(t.endContainer,t.endOffset);return e?n.createRange(e,i):i?n.createRange(i):void 0})).filter((t=>!!t));else if(s.isAndroid){const e=t.target.ownerDocument.defaultView.getSelection();a=Array.from(n.domConverter.domSelectionToView(e).getRanges())}if(s.isAndroid&&"insertCompositionText"==t.inputType&&r&&r.endsWith("\n"))this.fire(t.type,t,{inputType:"insertParagraph",targetRanges:[n.createRange(a[0].end)]});else if("insertText"==t.inputType&&r&&r.includes("\n")){const e=r.split(/\n{1,2}/g);let n=a;for(let r=0;r{if(this.isEnabled&&((n=e.keyCode)==go.arrowright||n==go.arrowleft||n==go.arrowup||n==go.arrowdown)){const n=new ys(this.document,"arrowKey",this.document.selection.getFirstRange());this.document.fire(n,e),n.stop.called&&t.stop()}var n}))}observe(){}stopObserving(){}}class Cc extends Da{constructor(t){super(t);const e=this.document;e.on("keydown",((t,n)=>{if(!this.isEnabled||n.keyCode!=go.tab||n.ctrlKey)return;const i=new ys(e,"tab",e.selection.getFirstRange());e.fire(i,n),i.stop.called&&t.stop()}))}observe(){}stopObserving(){}}const vc=function(t){return wi(t,5)};class yc extends(W()){constructor(t){super(),this.domRoots=new Map,this._initialDomRootAttributes=new WeakMap,this._observers=new Map,this._ongoingChange=!1,this._postFixersInProgress=!1,this._renderingDisabled=!1,this._hasChangedSinceTheLastRendering=!1,this.document=new Is(t),this.domConverter=new Ca(this.document),this.set("isRenderingInProgress",!1),this.set("hasDomSelection",!1),this._renderer=new ha(this.domConverter,this.document.selection),this._renderer.bind("isFocused","isSelecting","isComposing").to(this.document,"isFocused","isSelecting","isComposing"),this._writer=new qs(this.document),this.addObserver(mc),this.addObserver(pc),this.addObserver(fc),this.addObserver(Ia),this.addObserver(Ua),this.addObserver(bc),this.addObserver(Ac),this.addObserver(_c),this.addObserver(Cc),this.document.on("arrowKey",ca,{priority:"low"}),zs(this),this.on("render",(()=>{this._render(),this.document.fire("layoutChanged"),this._hasChangedSinceTheLastRendering=!1})),this.listenTo(this.document.selection,"change",(()=>{this._hasChangedSinceTheLastRendering=!0})),this.listenTo(this.document,"change:isFocused",(()=>{this._hasChangedSinceTheLastRendering=!0})),s.isiOS&&this.listenTo(this.document,"blur",((t,e)=>{this.domConverter.mapDomToView(e.domEvent.relatedTarget)||this.domConverter._clearDomSelection()}))}attachDomRoot(t,e="main"){const n=this.document.getRoot(e);n._name=t.tagName.toLowerCase();const i={};for(const{name:e,value:o}of Array.from(t.attributes))i[e]=o,"class"===e?this._writer.addClass(o.split(" "),n):this._writer.setAttribute(e,o,n);this._initialDomRootAttributes.set(t,i);const o=()=>{this._writer.setAttribute("contenteditable",(!n.isReadOnly).toString(),n),n.isReadOnly?this._writer.addClass("ck-read-only",n):this._writer.removeClass("ck-read-only",n)};o(),this.domRoots.set(e,t),this.domConverter.bindElements(t,n),this._renderer.markToSync("children",n),this._renderer.markToSync("attributes",n),this._renderer.domDocuments.add(t.ownerDocument),n.on("change:children",((t,e)=>this._renderer.markToSync("children",e))),n.on("change:attributes",((t,e)=>this._renderer.markToSync("attributes",e))),n.on("change:text",((t,e)=>this._renderer.markToSync("text",e))),n.on("change:isReadOnly",(()=>this.change(o))),n.on("change",(()=>{this._hasChangedSinceTheLastRendering=!0}));for(const n of this._observers.values())n.observe(t,e)}detachDomRoot(t){const e=this.domRoots.get(t);Array.from(e.attributes).forEach((({name:t})=>e.removeAttribute(t)));const n=this._initialDomRootAttributes.get(e);for(const t in n)e.setAttribute(t,n[t]);this.domRoots.delete(t),this.domConverter.unbindDomElement(e);for(const t of this._observers.values())t.stopObserving(e)}getDomRoot(t="main"){return this.domRoots.get(t)}addObserver(t){let e=this._observers.get(t);if(e)return e;e=new t(this),this._observers.set(t,e);for(const[t,n]of this.domRoots)e.observe(n,t);return e.enable(),e}getObserver(t){return this._observers.get(t)}disableObservers(){for(const t of this._observers.values())t.disable()}enableObservers(){for(const t of this._observers.values())t.enable()}scrollToTheSelection({alignToTop:t,forceScroll:e,viewportOffset:n=20,ancestorOffset:i=20}={}){const o=this.document.selection.getFirstRange();if(!o)return;const r=vc({alignToTop:t,forceScroll:e,viewportOffset:n,ancestorOffset:i});"number"==typeof n&&(n={top:n,bottom:n,left:n,right:n});const s={target:this.domConverter.viewRangeToDom(o),viewportOffset:n,ancestorOffset:i,alignToTop:t,forceScroll:e};this.fire("scrollToTheSelection",s,r),to(s)}focus(){if(!this.document.isFocused){const t=this.document.selection.editableElement;t&&(this.domConverter.focus(t),this.forceRender())}}change(t){if(this.isRenderingInProgress||this._postFixersInProgress)throw new w("cannot-change-view-tree",this);try{if(this._ongoingChange)return t(this._writer);this._ongoingChange=!0;const e=t(this._writer);return this._ongoingChange=!1,!this._renderingDisabled&&this._hasChangedSinceTheLastRendering&&(this._postFixersInProgress=!0,this.document._callPostFixers(this._writer),this._postFixersInProgress=!1,this.fire("render")),e}catch(t){w.rethrowUnexpectedError(t,this)}}forceRender(){this._hasChangedSinceTheLastRendering=!0,this.getObserver(pc).flush(),this.change((()=>{}))}destroy(){for(const t of this._observers.values())t.destroy();this.document.destroy(),this.stopListening()}createPositionAt(t,e){return ws._createAt(t,e)}createPositionAfter(t){return ws._createAfter(t)}createPositionBefore(t){return ws._createBefore(t)}createRange(t,e){return new _s(t,e)}createRangeOn(t){return _s._createOn(t)}createRangeIn(t){return _s._createIn(t)}createSelection(...t){return new Cs(...t)}_disableRendering(t){this._renderingDisabled=t,0==t&&this.change((()=>{}))}_render(){this.isRenderingInProgress=!0,this.disableObservers(),this._renderer.render(),this.enableObservers(),this.isRenderingInProgress=!1}}class xc{is(){throw new Error("is() method is abstract")}}class Ec extends xc{constructor(t){super(),this.parent=null,this._attrs=Jo(t)}get document(){return null}get index(){let t;if(!this.parent)return null;if(null===(t=this.parent.getChildIndex(this)))throw new w("model-node-not-found-in-parent",this);return t}get startOffset(){let t;if(!this.parent)return null;if(null===(t=this.parent.getChildStartOffset(this)))throw new w("model-node-not-found-in-parent",this);return t}get offsetSize(){return 1}get endOffset(){return this.parent?this.startOffset+this.offsetSize:null}get nextSibling(){const t=this.index;return null!==t&&this.parent.getChild(t+1)||null}get previousSibling(){const t=this.index;return null!==t&&this.parent.getChild(t-1)||null}get root(){let t=this;for(;t.parent;)t=t.parent;return t}isAttached(){return null!==this.parent&&this.root.isAttached()}getPath(){const t=[];let e=this;for(;e.parent;)t.unshift(e.startOffset),e=e.parent;return t}getAncestors(t={}){const e=[];let n=t.includeSelf?this:this.parent;for(;n;)e[t.parentFirst?"push":"unshift"](n),n=n.parent;return e}getCommonAncestor(t,e={}){const n=this.getAncestors(e),i=t.getAncestors(e);let o=0;for(;n[o]==i[o]&&n[o];)o++;return 0===o?null:n[o-1]}isBefore(t){if(this==t)return!1;if(this.root!==t.root)return!1;const e=this.getPath(),n=t.getPath(),i=Q(e,n);switch(i){case"prefix":return!0;case"extension":return!1;default:return e[i](t[e[0]]=e[1],t)),{})),t}_clone(t){return new this.constructor(this._attrs)}_remove(){this.parent._removeChildren(this.index)}_setAttribute(t,e){this._attrs.set(t,e)}_setAttributesTo(t){this._attrs=Jo(t)}_removeAttribute(t){return this._attrs.delete(t)}_clearAttributes(){this._attrs.clear()}}Ec.prototype.is=function(t){return"node"===t||"model:node"===t};class Dc{constructor(t){this._nodes=[],t&&this._insertNodes(0,t)}[Symbol.iterator](){return this._nodes[Symbol.iterator]()}get length(){return this._nodes.length}get maxOffset(){return this._nodes.reduce(((t,e)=>t+e.offsetSize),0)}getNode(t){return this._nodes[t]||null}getNodeIndex(t){const e=this._nodes.indexOf(t);return-1==e?null:e}getNodeStartOffset(t){const e=this.getNodeIndex(t);return null===e?null:this._nodes.slice(0,e).reduce(((t,e)=>t+e.offsetSize),0)}indexToOffset(t){if(t==this._nodes.length)return this.maxOffset;const e=this._nodes[t];if(!e)throw new w("model-nodelist-index-out-of-bounds",this);return this.getNodeStartOffset(e)}offsetToIndex(t){let e=0;for(const n of this._nodes){if(t>=e&&t1e4)return t.slice(0,n).concat(e).concat(t.slice(n+i,t.length));{const o=Array.from(t);return o.splice(n,i,...e),o}}(this._nodes,Array.from(e),t,0)}_removeNodes(t,e=1){return this._nodes.splice(t,e)}toJSON(){return this._nodes.map((t=>t.toJSON()))}}class Bc extends Ec{constructor(t,e){super(e),this._data=t||""}get offsetSize(){return this.data.length}get data(){return this._data}toJSON(){const t=super.toJSON();return t.data=this.data,t}_clone(){return new Bc(this.data,this.getAttributes())}static fromJSON(t){return new Bc(t.data,t.attributes)}}Bc.prototype.is=function(t){return"$text"===t||"model:$text"===t||"text"===t||"model:text"===t||"node"===t||"model:node"===t};class Sc extends xc{constructor(t,e,n){if(super(),this.textNode=t,e<0||e>t.offsetSize)throw new w("model-textproxy-wrong-offsetintext",this);if(n<0||e+n>t.offsetSize)throw new w("model-textproxy-wrong-length",this);this.data=t.data.substring(e,e+n),this.offsetInText=e}get startOffset(){return null!==this.textNode.startOffset?this.textNode.startOffset+this.offsetInText:null}get offsetSize(){return this.data.length}get endOffset(){return null!==this.startOffset?this.startOffset+this.offsetSize:null}get isPartial(){return this.offsetSize!==this.textNode.offsetSize}get parent(){return this.textNode.parent}get root(){return this.textNode.root}getPath(){const t=this.textNode.getPath();return t.length>0&&(t[t.length-1]+=this.offsetInText),t}getAncestors(t={}){const e=[];let n=t.includeSelf?this:this.parent;for(;n;)e[t.parentFirst?"push":"unshift"](n),n=n.parent;return e}hasAttribute(t){return this.textNode.hasAttribute(t)}getAttribute(t){return this.textNode.getAttribute(t)}getAttributes(){return this.textNode.getAttributes()}getAttributeKeys(){return this.textNode.getAttributeKeys()}}Sc.prototype.is=function(t){return"$textProxy"===t||"model:$textProxy"===t||"textProxy"===t||"model:textProxy"===t};class Tc extends Ec{constructor(t,e,n){super(e),this._children=new Dc,this.name=t,n&&this._insertChild(0,n)}get childCount(){return this._children.length}get maxOffset(){return this._children.maxOffset}get isEmpty(){return 0===this.childCount}getChild(t){return this._children.getNode(t)}getChildren(){return this._children[Symbol.iterator]()}getChildIndex(t){return this._children.getNodeIndex(t)}getChildStartOffset(t){return this._children.getNodeStartOffset(t)}offsetToIndex(t){return this._children.offsetToIndex(t)}getNodeByPath(t){let e=this;for(const n of t)e=e.getChild(e.offsetToIndex(n));return e}findAncestor(t,e={}){let n=e.includeSelf?this:this.parent;for(;n;){if(n.name===t)return n;n=n.parent}return null}toJSON(){const t=super.toJSON();if(t.name=this.name,this._children.length>0){t.children=[];for(const e of this._children)t.children.push(e.toJSON())}return t}_clone(t=!1){const e=t?Array.from(this._children).map((t=>t._clone(!0))):void 0;return new Tc(this.name,this.getAttributes(),e)}_appendChild(t){this._insertChild(this.childCount,t)}_insertChild(t,e){const n=function(t){if("string"==typeof t)return[new Bc(t)];X(t)||(t=[t]);return Array.from(t).map((t=>"string"==typeof t?new Bc(t):t instanceof Sc?new Bc(t.data,t.getAttributes()):t))}(e);for(const t of n)null!==t.parent&&t._remove(),t.parent=this;this._children._insertNodes(t,n)}_removeChildren(t,e=1){const n=this._children._removeNodes(t,e);for(const t of n)t.parent=null;return n}static fromJSON(t){let e;if(t.children){e=[];for(const n of t.children)n.name?e.push(Tc.fromJSON(n)):e.push(Bc.fromJSON(n))}return new Tc(t.name,t.attributes,e)}}Tc.prototype.is=function(t,e){return e?e===this.name&&("element"===t||"model:element"===t):"element"===t||"model:element"===t||"node"===t||"model:node"===t};class Ic{constructor(t){if(!t||!t.boundaries&&!t.startPosition)throw new w("model-tree-walker-no-start-position",null);const e=t.direction||"forward";if("forward"!=e&&"backward"!=e)throw new w("model-tree-walker-unknown-direction",t,{direction:e});this.direction=e,this.boundaries=t.boundaries||null,t.startPosition?this._position=t.startPosition.clone():this._position=Rc._createAt(this.boundaries["backward"==this.direction?"end":"start"]),this.position.stickiness="toNone",this.singleCharacters=!!t.singleCharacters,this.shallow=!!t.shallow,this.ignoreElementEnd=!!t.ignoreElementEnd,this._boundaryStartParent=this.boundaries?this.boundaries.start.parent:null,this._boundaryEndParent=this.boundaries?this.boundaries.end.parent:null,this._visitedParent=this.position.parent}[Symbol.iterator](){return this}get position(){return this._position}skip(t){let e,n,i,o;do{i=this.position,o=this._visitedParent,({done:e,value:n}=this.next())}while(!e&&t(n));e||(this._position=i,this._visitedParent=o)}next(){return"forward"==this.direction?this._next():this._previous()}_next(){const t=this.position,e=this.position.clone(),n=this._visitedParent;if(null===n.parent&&e.offset===n.maxOffset)return{done:!0,value:void 0};if(n===this._boundaryEndParent&&e.offset==this.boundaries.end.offset)return{done:!0,value:void 0};const i=Vc(e,n),o=i||Fc(e,n,i);if(o instanceof Tc){if(this.shallow){if(this.boundaries&&this.boundaries.end.isBefore(e))return{done:!0,value:void 0};e.offset++}else e.path.push(0),this._visitedParent=o;return this._position=e,Pc("elementStart",o,t,e,1)}if(o instanceof Bc){let i;if(this.singleCharacters)i=1;else{let t=o.endOffset;this._boundaryEndParent==n&&this.boundaries.end.offsett&&(t=this.boundaries.start.offset),i=e.offset-t}const o=e.offset-r.startOffset,s=new Sc(r,o-i,i);return e.offset-=i,this._position=e,Pc("text",s,t,e,i)}return e.path.pop(),this._position=e,this._visitedParent=n.parent,Pc("elementStart",n,t,e,1)}}function Pc(t,e,n,i,o){return{done:!1,value:{type:t,item:e,previousPosition:n,nextPosition:i,length:o}}}class Rc extends xc{constructor(t,e,n="toNone"){if(super(),!t.is("element")&&!t.is("documentFragment"))throw new w("model-position-root-invalid",t);if(!(e instanceof Array)||0===e.length)throw new w("model-position-path-incorrect-format",t,{path:e});t.is("rootElement")?e=e.slice():(e=[...t.getPath(),...e],t=t.root),this.root=t,this.path=e,this.stickiness=n}get offset(){return this.path[this.path.length-1]}set offset(t){this.path[this.path.length-1]=t}get parent(){let t=this.root;for(let e=0;e1)return!1;if(1===e)return Oc(t,this,n);if(-1===e)return Oc(this,t,n)}return this.path.length===t.path.length||(this.path.length>t.path.length?zc(this.path,e):zc(t.path,e))}hasSameParentAs(t){if(this.root!==t.root)return!1;return"same"==Q(this.getParentPath(),t.getParentPath())}getTransformedByOperation(t){let e;switch(t.type){case"insert":e=this._getTransformedByInsertOperation(t);break;case"move":case"remove":case"reinsert":e=this._getTransformedByMoveOperation(t);break;case"split":e=this._getTransformedBySplitOperation(t);break;case"merge":e=this._getTransformedByMergeOperation(t);break;default:e=Rc._createAt(this)}return e}_getTransformedByInsertOperation(t){return this._getTransformedByInsertion(t.position,t.howMany)}_getTransformedByMoveOperation(t){return this._getTransformedByMove(t.sourcePosition,t.targetPosition,t.howMany)}_getTransformedBySplitOperation(t){const e=t.movedRange;return e.containsPosition(this)||e.start.isEqual(this)&&"toNext"==this.stickiness?this._getCombined(t.splitPosition,t.moveTargetPosition):t.graveyardPosition?this._getTransformedByMove(t.graveyardPosition,t.insertionPosition,1):this._getTransformedByInsertion(t.insertionPosition,1)}_getTransformedByMergeOperation(t){const e=t.movedRange;let n;return e.containsPosition(this)||e.start.isEqual(this)?(n=this._getCombined(t.sourcePosition,t.targetPosition),t.sourcePosition.isBefore(t.targetPosition)&&(n=n._getTransformedByDeletion(t.deletionPosition,1))):n=this.isEqual(t.deletionPosition)?Rc._createAt(t.deletionPosition):this._getTransformedByMove(t.deletionPosition,t.graveyardPosition,1),n}_getTransformedByDeletion(t,e){const n=Rc._createAt(this);if(this.root!=t.root)return n;if("same"==Q(t.getParentPath(),this.getParentPath())){if(t.offsetthis.offset)return null;n.offset-=e}}else if("prefix"==Q(t.getParentPath(),this.getParentPath())){const i=t.path.length-1;if(t.offset<=this.path[i]){if(t.offset+e>this.path[i])return null;n.path[i]-=e}}return n}_getTransformedByInsertion(t,e){const n=Rc._createAt(this);if(this.root!=t.root)return n;if("same"==Q(t.getParentPath(),this.getParentPath()))(t.offset=e;){if(t.path[i]+o!==n.maxOffset)return!1;o=1,i--,n=n.parent}return!0}(t,n+1))}function zc(t,e){for(;ee+1;){const e=i.maxOffset-n.offset;0!==e&&t.push(new Mc(n,n.getShiftedBy(e))),n.path=n.path.slice(0,-1),n.offset++,i=i.parent}for(;n.path.length<=this.end.path.length;){const e=this.end.path[n.path.length-1],i=e-n.offset;0!==i&&t.push(new Mc(n,n.getShiftedBy(i))),n.offset=e,n.path.push(0)}return t}getWalker(t={}){return t.boundaries=this,new Ic(t)}*getItems(t={}){t.boundaries=this,t.ignoreElementEnd=!0;const e=new Ic(t);for(const t of e)yield t.item}*getPositions(t={}){t.boundaries=this;const e=new Ic(t);yield e.position;for(const t of e)yield t.nextPosition}getTransformedByOperation(t){switch(t.type){case"insert":return this._getTransformedByInsertOperation(t);case"move":case"remove":case"reinsert":return this._getTransformedByMoveOperation(t);case"split":return[this._getTransformedBySplitOperation(t)];case"merge":return[this._getTransformedByMergeOperation(t)]}return[new Mc(this.start,this.end)]}getTransformedByOperations(t){const e=[new Mc(this.start,this.end)];for(const n of t)for(let t=0;t0?new this(n,i):new this(i,n)}static _createIn(t){return new this(Rc._createAt(t,0),Rc._createAt(t,t.maxOffset))}static _createOn(t){return this._createFromPositionAndShift(Rc._createBefore(t),t.offsetSize)}static _createFromRanges(t){if(0===t.length)throw new w("range-create-from-ranges-empty-array",null);if(1==t.length)return t[0].clone();const e=t[0];t.sort(((t,e)=>t.start.isAfter(e.start)?1:-1));const n=t.indexOf(e),i=new this(e.start,e.end);if(n>0)for(let e=n-1;t[e].end.isEqual(i.start);e++)i.start=Rc._createAt(t[e].start);for(let e=n+1;e{if(e.viewPosition)return;const n=this._modelToViewMapping.get(e.modelPosition.parent);if(!n)throw new w("mapping-model-position-view-parent-not-found",this,{modelPosition:e.modelPosition});e.viewPosition=this.findPositionIn(n,e.modelPosition.offset)}),{priority:"low"}),this.on("viewToModelPosition",((t,e)=>{if(e.modelPosition)return;const n=this.findMappedViewAncestor(e.viewPosition),i=this._viewToModelMapping.get(n),o=this._toModelOffset(e.viewPosition.parent,e.viewPosition.offset,n);e.modelPosition=Rc._createAt(i,o)}),{priority:"low"})}bindElements(t,e){this._modelToViewMapping.set(t,e),this._viewToModelMapping.set(e,t)}unbindViewElement(t,e={}){const n=this.toModelElement(t);if(this._elementToMarkerNames.has(t))for(const e of this._elementToMarkerNames.get(t))this._unboundMarkerNames.add(e);e.defer?this._deferredBindingRemovals.set(t,t.root):(this._viewToModelMapping.delete(t),this._modelToViewMapping.get(n)==t&&this._modelToViewMapping.delete(n))}unbindModelElement(t){const e=this.toViewElement(t);this._modelToViewMapping.delete(t),this._viewToModelMapping.get(e)==t&&this._viewToModelMapping.delete(e)}bindElementToMarker(t,e){const n=this._markerNameToElements.get(e)||new Set;n.add(t);const i=this._elementToMarkerNames.get(t)||new Set;i.add(e),this._markerNameToElements.set(e,n),this._elementToMarkerNames.set(t,i)}unbindElementFromMarkerName(t,e){const n=this._markerNameToElements.get(e);n&&(n.delete(t),0==n.size&&this._markerNameToElements.delete(e));const i=this._elementToMarkerNames.get(t);i&&(i.delete(e),0==i.size&&this._elementToMarkerNames.delete(t))}flushUnboundMarkerNames(){const t=Array.from(this._unboundMarkerNames);return this._unboundMarkerNames.clear(),t}flushDeferredBindings(){for(const[t,e]of this._deferredBindingRemovals)t.root==e&&this.unbindViewElement(t);this._deferredBindingRemovals=new Map}clearBindings(){this._modelToViewMapping=new WeakMap,this._viewToModelMapping=new WeakMap,this._markerNameToElements=new Map,this._elementToMarkerNames=new Map,this._unboundMarkerNames=new Set,this._deferredBindingRemovals=new Map}toModelElement(t){return this._viewToModelMapping.get(t)}toViewElement(t){return this._modelToViewMapping.get(t)}toModelRange(t){return new Mc(this.toModelPosition(t.start),this.toModelPosition(t.end))}toViewRange(t){return new _s(this.toViewPosition(t.start),this.toViewPosition(t.end))}toModelPosition(t){const e={viewPosition:t,mapper:this};return this.fire("viewToModelPosition",e),e.modelPosition}toViewPosition(t,e={}){const n={modelPosition:t,mapper:this,isPhantom:e.isPhantom};return this.fire("modelToViewPosition",n),n.viewPosition}markerNameToElements(t){const e=this._markerNameToElements.get(t);if(!e)return null;const n=new Set;for(const t of e)if(t.is("attributeElement"))for(const e of t.getElementsWithSameId())n.add(e);else n.add(t);return n}registerViewToModelLength(t,e){this._viewToModelLengthCallbacks.set(t,e)}findMappedViewAncestor(t){let e=t.parent;for(;!this._viewToModelMapping.has(e);)e=e.parent;return e}_toModelOffset(t,e,n){if(n!=t){return this._toModelOffset(t.parent,t.index,n)+this._toModelOffset(t,e,t)}if(t.is("$text"))return e;let i=0;for(let n=0;n1?e[0]+":"+e[1]:e[0]}var qc=Object.defineProperty,Wc=Object.defineProperties,Uc=Object.getOwnPropertyDescriptors,$c=Object.getOwnPropertySymbols,Gc=Object.prototype.hasOwnProperty,Kc=Object.prototype.propertyIsEnumerable,Jc=(t,e,n)=>e in t?qc(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Zc=(t,e)=>{for(var n in e||(e={}))Gc.call(e,n)&&Jc(t,n,e[n]);if($c)for(var n of $c(e))Kc.call(e,n)&&Jc(t,n,e[n]);return t},Yc=(t,e)=>Wc(t,Uc(e));class Qc extends(S()){constructor(t){super(),this._conversionApi=Zc({dispatcher:this},t),this._firedEventsMap=new WeakMap}convertChanges(t,e,n){const i=this._createConversionApi(n,t.getRefreshedItems());for(const e of t.getMarkersToRemove())this._convertMarkerRemove(e.name,e.range,i);const o=this._reduceChanges(t.getChanges());for(const t of o)"insert"===t.type?this._convertInsert(Mc._createFromPositionAndShift(t.position,t.length),i):"reinsert"===t.type?this._convertReinsert(Mc._createFromPositionAndShift(t.position,t.length),i):"remove"===t.type?this._convertRemove(t.position,t.length,t.name,i):this._convertAttribute(t.range,t.attributeKey,t.attributeOldValue,t.attributeNewValue,i);i.mapper.flushDeferredBindings();for(const t of i.mapper.flushUnboundMarkerNames()){const n=e.get(t).getRange();this._convertMarkerRemove(t,n,i),this._convertMarkerAdd(t,n,i)}for(const e of t.getMarkersToAdd())this._convertMarkerAdd(e.name,e.range,i);i.consumable.verifyAllConsumed("insert")}convert(t,e,n,i={}){const o=this._createConversionApi(n,void 0,i);this._convertInsert(t,o);for(const[t,n]of e)this._convertMarkerAdd(t,n,o);o.consumable.verifyAllConsumed("insert")}convertSelection(t,e,n){const i=this._createConversionApi(n);this.fire("cleanSelection",{selection:t},i);const o=t.getFirstPosition().root;if(!i.mapper.toViewElement(o))return;const r=Array.from(e.getMarkersAtPosition(t.getFirstPosition()));if(this._addConsumablesForSelection(i.consumable,t,r),this.fire("selection",{selection:t},i),t.isCollapsed){for(const e of r)if(i.consumable.test(t,"addMarker:"+e.name)){const n=e.getRange();if(!Xc(t.getFirstPosition(),e,i.mapper))continue;const o={item:t,markerName:e.name,markerRange:n};this.fire(`addMarker:${e.name}`,o,i)}for(const e of t.getAttributeKeys())if(i.consumable.test(t,"attribute:"+e)){const n={item:t,range:t.getFirstRange(),attributeKey:e,attributeOldValue:null,attributeNewValue:t.getAttribute(e)};this.fire(`attribute:${e}:$text`,n,i)}}}_convertInsert(t,e,n={}){n.doNotAddConsumables||this._addConsumablesForInsert(e.consumable,t);for(const n of Array.from(t.getWalker({shallow:!0})).map(tl))this._testAndFire("insert",n,e)}_convertRemove(t,e,n,i){this.fire(`remove:${n}`,{position:t,length:e},i)}_convertAttribute(t,e,n,i,o){this._addConsumablesForRange(o.consumable,t,`attribute:${e}`);for(const r of t){const t={item:r.item,range:Mc._createFromPositionAndShift(r.previousPosition,r.length),attributeKey:e,attributeOldValue:n,attributeNewValue:i};this._testAndFire(`attribute:${e}`,t,o)}}_convertReinsert(t,e){const n=Array.from(t.getWalker({shallow:!0}));this._addConsumablesForInsert(e.consumable,n);for(const t of n.map(tl))this._testAndFire("insert",Yc(Zc({},t),{reconversion:!0}),e)}_convertMarkerAdd(t,e,n){if("$graveyard"==e.root.rootName)return;const i=`addMarker:${t}`;if(n.consumable.add(e,i),this.fire(i,{markerName:t,markerRange:e},n),n.consumable.consume(e,i)){this._addConsumablesForRange(n.consumable,e,i);for(const o of e.getItems()){if(!n.consumable.test(o,i))continue;const r={item:o,range:Mc._createOn(o),markerName:t,markerRange:e};this.fire(i,r,n)}}}_convertMarkerRemove(t,e,n){"$graveyard"!=e.root.rootName&&this.fire(`removeMarker:${t}`,{markerName:t,markerRange:e},n)}_reduceChanges(t){const e={changes:t};return this.fire("reduceChanges",e),e.changes}_addConsumablesForInsert(t,e){for(const n of e){const e=n.item;if(null===t.test(e,"insert")){t.add(e,"insert");for(const n of e.getAttributeKeys())t.add(e,"attribute:"+n)}}return t}_addConsumablesForRange(t,e,n){for(const i of e.getItems())t.add(i,n);return t}_addConsumablesForSelection(t,e,n){t.add(e,"selection");for(const i of n)t.add(e,"addMarker:"+i.name);for(const n of e.getAttributeKeys())t.add(e,"attribute:"+n);return t}_testAndFire(t,e,n){const i=function(t,e){const n=e.item.is("element")?e.item.name:"$text";return`${t}:${n}`}(t,e),o=e.item.is("$textProxy")?n.consumable._getSymbolForTextProxy(e.item):e.item,r=this._firedEventsMap.get(n),s=r.get(o);if(s){if(s.has(i))return;s.add(i)}else r.set(o,new Set([i]));this.fire(i,e,n)}_testAndFireAddAttributes(t,e){const n={item:t,range:Mc._createOn(t)};for(const t of n.item.getAttributeKeys())n.attributeKey=t,n.attributeOldValue=null,n.attributeNewValue=n.item.getAttribute(t),this._testAndFire(`attribute:${t}`,n,e)}_createConversionApi(t,e=new Set,n={}){const i=Yc(Zc({},this._conversionApi),{consumable:new Hc,writer:t,options:n,convertItem:t=>this._convertInsert(Mc._createOn(t),i),convertChildren:t=>this._convertInsert(Mc._createIn(t),i,{doNotAddConsumables:!0}),convertAttributes:t=>this._testAndFireAddAttributes(t,i),canReuseView:t=>!e.has(i.mapper.toModelElement(t))});return this._firedEventsMap.set(i,new Map),i}}function Xc(t,e,n){const i=e.getRange(),o=Array.from(t.getAncestors());o.shift(),o.reverse();return!o.some((t=>{if(i.containsItem(t)){return!!n.toViewElement(t).getCustomProperty("addHighlight")}}))}function tl(t){return{item:t.item,range:Mc._createFromPositionAndShift(t.previousPosition,t.length)}}class el extends(S(xc)){constructor(...t){super(),this._lastRangeBackward=!1,this._attrs=new Map,this._ranges=[],t.length&&this.setTo(...t)}get anchor(){if(this._ranges.length>0){const t=this._ranges[this._ranges.length-1];return this._lastRangeBackward?t.end:t.start}return null}get focus(){if(this._ranges.length>0){const t=this._ranges[this._ranges.length-1];return this._lastRangeBackward?t.start:t.end}return null}get isCollapsed(){return 1===this._ranges.length&&this._ranges[0].isCollapsed}get rangeCount(){return this._ranges.length}get isBackward(){return!this.isCollapsed&&this._lastRangeBackward}isEqual(t){if(this.rangeCount!=t.rangeCount)return!1;if(0===this.rangeCount)return!0;if(!this.anchor.isEqual(t.anchor)||!this.focus.isEqual(t.focus))return!1;for(const e of this._ranges){let n=!1;for(const i of t._ranges)if(e.isEqual(i)){n=!0;break}if(!n)return!1}return!0}*getRanges(){for(const t of this._ranges)yield new Mc(t.start,t.end)}getFirstRange(){let t=null;for(const e of this._ranges)t&&!e.start.isBefore(t.start)||(t=e);return t?new Mc(t.start,t.end):null}getLastRange(){let t=null;for(const e of this._ranges)t&&!e.end.isAfter(t.end)||(t=e);return t?new Mc(t.start,t.end):null}getFirstPosition(){const t=this.getFirstRange();return t?t.start.clone():null}getLastPosition(){const t=this.getLastRange();return t?t.end.clone():null}setTo(...t){let[e,n,i]=t;if("object"==typeof n&&(i=n,n=void 0),null===e)this._setRanges([]);else if(e instanceof el)this._setRanges(e.getRanges(),e.isBackward);else if(e&&"function"==typeof e.getRanges)this._setRanges(e.getRanges(),e.isBackward);else if(e instanceof Mc)this._setRanges([e],!!i&&!!i.backward);else if(e instanceof Rc)this._setRanges([new Mc(e)]);else if(e instanceof Ec){const t=!!i&&!!i.backward;let o;if("in"==n)o=Mc._createIn(e);else if("on"==n)o=Mc._createOn(e);else{if(void 0===n)throw new w("model-selection-setto-required-second-parameter",[this,e]);o=new Mc(Rc._createAt(e,n))}this._setRanges([o],t)}else{if(!X(e))throw new w("model-selection-setto-not-selectable",[this,e]);this._setRanges(e,i&&!!i.backward)}}_setRanges(t,e=!1){const n=Array.from(t),i=n.some((e=>{if(!(e instanceof Mc))throw new w("model-selection-set-ranges-not-range",[this,t]);return this._ranges.every((t=>!t.isEqual(e)))}));(n.length!==this._ranges.length||i)&&(this._replaceAllRanges(n),this._lastRangeBackward=!!e,this.fire("change:range",{directChange:!0}))}setFocus(t,e){if(null===this.anchor)throw new w("model-selection-setfocus-no-ranges",[this,t]);const n=Rc._createAt(t,e);if("same"==n.compareWith(this.focus))return;const i=this.anchor;this._ranges.length&&this._popRange(),"before"==n.compareWith(i)?(this._pushRange(new Mc(n,i)),this._lastRangeBackward=!0):(this._pushRange(new Mc(i,n)),this._lastRangeBackward=!1),this.fire("change:range",{directChange:!0})}getAttribute(t){return this._attrs.get(t)}getAttributes(){return this._attrs.entries()}getAttributeKeys(){return this._attrs.keys()}hasAttribute(t){return this._attrs.has(t)}removeAttribute(t){this.hasAttribute(t)&&(this._attrs.delete(t),this.fire("change:attribute",{attributeKeys:[t],directChange:!0}))}setAttribute(t,e){this.getAttribute(t)!==e&&(this._attrs.set(t,e),this.fire("change:attribute",{attributeKeys:[t],directChange:!0}))}getSelectedElement(){return 1!==this.rangeCount?null:this.getFirstRange().getContainedElement()}*getSelectedBlocks(){const t=new WeakSet;for(const e of this.getRanges()){const n=ol(e.start,t);sl(n,e)&&(yield n);for(const n of e.getWalker()){const i=n.item;"elementEnd"==n.type&&il(i,t,e)&&(yield i)}const i=ol(e.end,t);al(i,e)&&(yield i)}}containsEntireContent(t=this.anchor.root){const e=Rc._createAt(t,0),n=Rc._createAt(t,"end");return e.isTouching(this.getFirstPosition())&&n.isTouching(this.getLastPosition())}_pushRange(t){this._checkRange(t),this._ranges.push(new Mc(t.start,t.end))}_checkRange(t){for(let e=0;e0;)this._popRange()}_popRange(){this._ranges.pop()}}function nl(t,e){return!e.has(t)&&(e.add(t),t.root.document.model.schema.isBlock(t)&&!!t.parent)}function il(t,e,n){return nl(t,e)&&rl(t,n)}function ol(t,e){const n=t.parent.root.document.model.schema,i=t.parent.getAncestors({parentFirst:!0,includeSelf:!0});let o=!1;const r=i.find((t=>!o&&(o=n.isLimit(t),!o&&nl(t,e))));return i.forEach((t=>e.add(t))),r}function rl(t,e){const n=function(t){const e=t.root.document.model.schema;let n=t.parent;for(;n;){if(e.isBlock(n))return n;n=n.parent}}(t);if(!n)return!0;return!e.containsRange(Mc._createOn(n),!0)}function sl(t,e){return!!t&&(!(!e.isCollapsed&&!t.isEmpty)||!e.start.isTouching(Rc._createAt(t,t.maxOffset))&&rl(t,e))}function al(t,e){return!!t&&(!(!e.isCollapsed&&!t.isEmpty)||!e.end.isTouching(Rc._createAt(t,0))&&rl(t,e))}el.prototype.is=function(t){return"selection"===t||"model:selection"===t};class cl extends(S(Mc)){constructor(t,e){super(t,e),ll.call(this)}detach(){this.stopListening()}toRange(){return new Mc(this.start,this.end)}static fromRange(t){return new cl(t.start,t.end)}}function ll(){this.listenTo(this.root.document.model,"applyOperation",((t,e)=>{const n=e[0];n.isDocumentOperation&&dl.call(this,n)}),{priority:"low"})}function dl(t){const e=this.getTransformedByOperation(t),n=Mc._createFromRanges(e),i=!n.isEqual(this),o=function(t,e){switch(e.type){case"insert":return t.containsPosition(e.position);case"move":case"remove":case"reinsert":case"merge":return t.containsPosition(e.sourcePosition)||t.start.isEqual(e.sourcePosition)||t.containsPosition(e.targetPosition);case"split":return t.containsPosition(e.splitPosition)||t.containsPosition(e.insertionPosition)}return!1}(this,t);let r=null;if(i){"$graveyard"==n.root.rootName&&(r="remove"==t.type?t.sourcePosition:t.deletionPosition);const e=this.toRange();this.start=n.start,this.end=n.end,this.fire("change:range",e,{deletionPosition:r})}else o&&this.fire("change:content",this.toRange(),{deletionPosition:r})}cl.prototype.is=function(t){return"liveRange"===t||"model:liveRange"===t||"range"==t||"model:range"===t};const hl="selection:";class ul extends(S(xc)){constructor(t){super(),this._selection=new ml(t),this._selection.delegate("change:range").to(this),this._selection.delegate("change:attribute").to(this),this._selection.delegate("change:marker").to(this)}get isCollapsed(){return this._selection.isCollapsed}get anchor(){return this._selection.anchor}get focus(){return this._selection.focus}get rangeCount(){return this._selection.rangeCount}get hasOwnRange(){return this._selection.hasOwnRange}get isBackward(){return this._selection.isBackward}get isGravityOverridden(){return this._selection.isGravityOverridden}get markers(){return this._selection.markers}get _ranges(){return this._selection._ranges}getRanges(){return this._selection.getRanges()}getFirstPosition(){return this._selection.getFirstPosition()}getLastPosition(){return this._selection.getLastPosition()}getFirstRange(){return this._selection.getFirstRange()}getLastRange(){return this._selection.getLastRange()}getSelectedBlocks(){return this._selection.getSelectedBlocks()}getSelectedElement(){return this._selection.getSelectedElement()}containsEntireContent(t){return this._selection.containsEntireContent(t)}destroy(){this._selection.destroy()}getAttributeKeys(){return this._selection.getAttributeKeys()}getAttributes(){return this._selection.getAttributes()}getAttribute(t){return this._selection.getAttribute(t)}hasAttribute(t){return this._selection.hasAttribute(t)}refresh(){this._selection.updateMarkers(),this._selection._updateAttributes(!1)}observeMarkers(t){this._selection.observeMarkers(t)}_setFocus(t,e){this._selection.setFocus(t,e)}_setTo(...t){this._selection.setTo(...t)}_setAttribute(t,e){this._selection.setAttribute(t,e)}_removeAttribute(t){this._selection.removeAttribute(t)}_getStoredAttributes(){return this._selection.getStoredAttributes()}_overrideGravity(){return this._selection.overrideGravity()}_restoreGravity(t){this._selection.restoreGravity(t)}static _getStoreAttributeKey(t){return hl+t}static _isStoreAttributeKey(t){return t.startsWith(hl)}}ul.prototype.is=function(t){return"selection"===t||"model:selection"==t||"documentSelection"==t||"model:documentSelection"==t};class ml extends el{constructor(t){super(),this.markers=new Uo({idProperty:"name"}),this._attributePriority=new Map,this._selectionRestorePosition=null,this._hasChangedRange=!1,this._overriddenGravityRegister=new Set,this._observedMarkers=new Set,this._model=t.model,this._document=t,this.listenTo(this._model,"applyOperation",((t,e)=>{const n=e[0];n.isDocumentOperation&&"marker"!=n.type&&"rename"!=n.type&&"noop"!=n.type&&(0==this._ranges.length&&this._selectionRestorePosition&&this._fixGraveyardSelection(this._selectionRestorePosition),this._selectionRestorePosition=null,this._hasChangedRange&&(this._hasChangedRange=!1,this.fire("change:range",{directChange:!1})))}),{priority:"lowest"}),this.on("change:range",(()=>{this._validateSelectionRanges(this.getRanges())})),this.listenTo(this._model.markers,"update",((t,e,n,i)=>{this._updateMarker(e,i)})),this.listenTo(this._document,"change",((t,e)=>{!function(t,e){const n=t.document.differ;for(const i of n.getChanges()){if("insert"!=i.type)continue;const n=i.position.parent;i.length===n.maxOffset&&t.enqueueChange(e,(t=>{const e=Array.from(n.getAttributeKeys()).filter((t=>t.startsWith(hl)));for(const i of e)t.removeAttribute(i,n)}))}}(this._model,e)}))}get isCollapsed(){return 0===this._ranges.length?this._document._getDefaultRange().isCollapsed:super.isCollapsed}get anchor(){return super.anchor||this._document._getDefaultRange().start}get focus(){return super.focus||this._document._getDefaultRange().end}get rangeCount(){return this._ranges.length?this._ranges.length:1}get hasOwnRange(){return this._ranges.length>0}get isGravityOverridden(){return!!this._overriddenGravityRegister.size}destroy(){for(let t=0;t{if(this._hasChangedRange=!0,e.root==this._document.graveyard){this._selectionRestorePosition=i.deletionPosition;const t=this._ranges.indexOf(e);this._ranges.splice(t,1),e.detach()}})),e}updateMarkers(){if(!this._observedMarkers.size)return;const t=[];let e=!1;for(const e of this._model.markers){const n=e.name.split(":",1)[0];if(!this._observedMarkers.has(n))continue;const i=e.getRange();for(const n of this.getRanges())i.containsRange(n,!n.isCollapsed)&&t.push(e)}const n=Array.from(this.markers);for(const n of t)this.markers.has(n)||(this.markers.add(n),e=!0);for(const n of Array.from(this.markers))t.includes(n)||(this.markers.remove(n),e=!0);e&&this.fire("change:marker",{oldMarkers:n,directChange:!1})}_updateMarker(t,e){const n=t.name.split(":",1)[0];if(!this._observedMarkers.has(n))return;let i=!1;const o=Array.from(this.markers),r=this.markers.has(t);if(e){let n=!1;for(const t of this.getRanges())if(e.containsRange(t,!t.isCollapsed)){n=!0;break}n&&!r?(this.markers.add(t),i=!0):!n&&r&&(this.markers.remove(t),i=!0)}else r&&(this.markers.remove(t),i=!0);i&&this.fire("change:marker",{oldMarkers:o,directChange:!1})}_updateAttributes(t){const e=Jo(this._getSurroundingAttributes()),n=Jo(this.getAttributes());if(t)this._attributePriority=new Map,this._attrs=new Map;else for(const[t,e]of this._attributePriority)"low"==e&&(this._attrs.delete(t),this._attributePriority.delete(t));this._setAttributesTo(e);const i=[];for(const[t,e]of this.getAttributes())n.has(t)&&n.get(t)===e||i.push(t);for(const[t]of n)this.hasAttribute(t)||i.push(t);i.length>0&&this.fire("change:attribute",{attributeKeys:i,directChange:!1})}_setAttribute(t,e,n=!0){const i=n?"normal":"low";if("low"==i&&"normal"==this._attributePriority.get(t))return!1;return super.getAttribute(t)!==e&&(this._attrs.set(t,e),this._attributePriority.set(t,i),!0)}_removeAttribute(t,e=!0){const n=e?"normal":"low";return("low"!=n||"normal"!=this._attributePriority.get(t))&&(this._attributePriority.set(t,n),!!super.hasAttribute(t)&&(this._attrs.delete(t),!0))}_setAttributesTo(t){const e=new Set;for(const[e,n]of this.getAttributes())t.get(e)!==n&&this._removeAttribute(e,!1);for(const[n,i]of t){this._setAttribute(n,i,!1)&&e.add(n)}return e}*getStoredAttributes(){const t=this.getFirstPosition().parent;if(this.isCollapsed&&t.isEmpty)for(const e of t.getAttributeKeys())if(e.startsWith(hl)){const n=e.substr(10);yield[n,t.getAttribute(e)]}}_getSurroundingAttributes(){const t=this.getFirstPosition(),e=this._model.schema;if("$graveyard"==t.root.rootName)return null;let n=null;if(this.isCollapsed){const i=t.textNode?t.textNode:t.nodeBefore,o=t.textNode?t.textNode:t.nodeAfter;if(this.isGravityOverridden||(n=gl(i,e)),n||(n=gl(o,e)),!this.isGravityOverridden&&!n){let t=i;for(;t&&!n;)t=t.previousSibling,n=gl(t,e)}if(!n){let t=o;for(;t&&!n;)t=t.nextSibling,n=gl(t,e)}n||(n=this.getStoredAttributes())}else{const t=this.getFirstRange();for(const i of t){if(i.item.is("element")&&e.isObject(i.item)){n=gl(i.item,e);break}if("text"==i.type){n=i.item.getAttributes();break}}}return n}_fixGraveyardSelection(t){const e=this._model.schema.getNearestSelectionRange(t);e&&this._pushRange(e)}}function gl(t,e){if(!t)return null;if(t instanceof Sc||t instanceof Bc)return t.getAttributes();if(!e.isInline(t))return null;if(!e.isObject(t))return[];const n=[];for(const[i,o]of t.getAttributes())e.checkAttribute("$text",i)&&!1!==e.getAttributeProperties(i).copyFromObject&&n.push([i,o]);return n}class pl{constructor(t){this._dispatchers=t}add(t){for(const e of this._dispatchers)t(e);return this}}class fl extends pl{elementToElement(t){return this.add(function(t){const e=Cl(t.model),n=vl(t.view,"container");e.attributes.length&&(e.children=!0);return i=>{i.on(`insert:${e.name}`,wl(n,Bl(e)),{priority:t.converterPriority||"normal"}),(e.children||e.attributes.length)&&i.on("reduceChanges",Dl(e),{priority:"low"})}}(t))}elementToStructure(t){return this.add(function(t){const e=Cl(t.model),n=vl(t.view,"container");return e.children=!0,i=>{if(i._conversionApi.schema.checkChild(e.name,"$text"))throw new w("conversion-element-to-structure-disallowed-text",i,{elementName:e.name});var o,r;i.on(`insert:${e.name}`,(o=n,r=Bl(e),(t,e,n)=>{if(!r(e.item,n.consumable,{preflight:!0}))return;const i=new Map;n.writer._registerSlotFactory(function(t,e,n){return(i,o)=>{const r=i.createContainerElement("$slot");let s=null;if("children"===o)s=Array.from(t.getChildren());else{if("function"!=typeof o)throw new w("conversion-slot-mode-unknown",n.dispatcher,{modeOrFilter:o});s=Array.from(t.getChildren()).filter((t=>o(t)))}return e.set(r,s),r}}(e.item,i,n));const s=o(e.item,n,e);if(n.writer._clearSlotFactory(),!s)return;!function(t,e,n){const i=Array.from(e.values()).flat(),o=new Set(i);if(o.size!=i.length)throw new w("conversion-slot-filter-overlap",n.dispatcher,{element:t});if(o.size!=t.childCount)throw new w("conversion-slot-filter-incomplete",n.dispatcher,{element:t})}(e.item,i,n),r(e.item,n.consumable);const a=n.mapper.toViewPosition(e.range.start);n.mapper.bindElements(e.item,s),n.writer.insert(a,s),n.convertAttributes(e.item),function(t,e,n,i){n.mapper.on("modelToViewPosition",s,{priority:"highest"});let o=null,r=null;for([o,r]of e)Sl(t,r,n,i),n.writer.move(n.writer.createRangeIn(o),n.writer.createPositionBefore(o)),n.writer.remove(o);function s(t,e){const n=e.modelPosition.nodeAfter,i=r.indexOf(n);i<0||(e.viewPosition=e.mapper.findPositionIn(o,i))}n.mapper.off("modelToViewPosition",s)}(s,i,n,{reconversion:e.reconversion})}),{priority:t.converterPriority||"normal"}),i.on("reduceChanges",Dl(e),{priority:"low"})}}(t))}attributeToElement(t){return this.add(function(t){t=vc(t);let e=t.model;"string"==typeof e&&(e={key:e});let n=`attribute:${e.key}`;e.name&&(n+=":"+e.name);if(e.values)for(const n of e.values)t.view[n]=vl(t.view[n],"attribute");else t.view=vl(t.view,"attribute");const i=yl(t);return e=>{e.on(n,kl(i),{priority:t.converterPriority||"normal"})}}(t))}attributeToAttribute(t){return this.add(function(t){t=vc(t);let e=t.model;"string"==typeof e&&(e={key:e});let n=`attribute:${e.key}`;e.name&&(n+=":"+e.name);if(e.values)for(const n of e.values)t.view[n]=xl(t.view[n]);else t.view=xl(t.view);const i=yl(t);return e=>{var o;e.on(n,(o=i,(t,e,n)=>{if(!n.consumable.test(e.item,t.name))return;const i=o(e.attributeOldValue,n,e),r=o(e.attributeNewValue,n,e);if(!i&&!r)return;n.consumable.consume(e.item,t.name);const s=n.mapper.toViewElement(e.item),a=n.writer;if(!s)throw new w("conversion-attribute-to-attribute-on-text",n.dispatcher,e);if(null!==e.attributeOldValue&&i)if("class"==i.key){const t="string"==typeof i.value?i.value.split(/\s+/):i.value;for(const e of t)a.removeClass(e,s)}else if("style"==i.key)if("string"==typeof i.value){const t=new as(a.document.stylesProcessor);t.setTo(i.value);for(const[e]of t.getStylesEntries())a.removeStyle(e,s)}else{const t=Object.keys(i.value);for(const e of t)a.removeStyle(e,s)}else a.removeAttribute(i.key,s);if(null!==e.attributeNewValue&&r)if("class"==r.key){const t="string"==typeof r.value?r.value.split(/\s+/):r.value;for(const e of t)a.addClass(e,s)}else if("style"==r.key)if("string"==typeof r.value){const t=new as(a.document.stylesProcessor);t.setTo(r.value);for(const[e,n]of t.getStylesEntries())a.setStyle(e,n,s)}else{const t=Object.keys(r.value);for(const e of t)a.setStyle(e,r.value[e],s)}else a.setAttribute(r.key,r.value,s)}),{priority:t.converterPriority||"normal"})}}(t))}markerToElement(t){return this.add(function(t){const e=vl(t.view,"ui");return n=>{n.on(`addMarker:${t.model}`,_l(e),{priority:t.converterPriority||"normal"}),n.on(`removeMarker:${t.model}`,((t,e,n)=>{const i=n.mapper.markerNameToElements(e.markerName);if(i){for(const t of i)n.mapper.unbindElementFromMarkerName(t,e.markerName),n.writer.clear(n.writer.createRangeOn(t),t);n.writer.clearClonedElementsGroup(e.markerName),t.stop()}}),{priority:t.converterPriority||"normal"})}}(t))}markerToHighlight(t){return this.add(function(t){return e=>{var n;e.on(`addMarker:${t.model}`,(n=t.view,(t,e,i)=>{if(!e.item)return;if(!(e.item instanceof el||e.item instanceof ul||e.item.is("$textProxy")))return;const o=El(n,e,i);if(!o)return;if(!i.consumable.consume(e.item,t.name))return;const r=i.writer,s=bl(r,o),a=r.document.selection;if(e.item instanceof el||e.item instanceof ul)r.wrap(a.getFirstRange(),s);else{const t=i.mapper.toViewRange(e.range),n=r.wrap(t,s);for(const t of n.getItems())if(t.is("attributeElement")&&t.isSimilar(s)){i.mapper.bindElementToMarker(t,e.markerName);break}}}),{priority:t.converterPriority||"normal"}),e.on(`addMarker:${t.model}`,function(t){return(e,n,i)=>{if(!n.item)return;if(!(n.item instanceof Tc))return;const o=El(t,n,i);if(!o)return;if(!i.consumable.test(n.item,e.name))return;const r=i.mapper.toViewElement(n.item);if(r&&r.getCustomProperty("addHighlight")){i.consumable.consume(n.item,e.name);for(const t of Mc._createIn(n.item))i.consumable.consume(t.item,e.name);r.getCustomProperty("addHighlight")(r,o,i.writer),i.mapper.bindElementToMarker(r,n.markerName)}}}(t.view),{priority:t.converterPriority||"normal"}),e.on(`removeMarker:${t.model}`,function(t){return(e,n,i)=>{if(n.markerRange.isCollapsed)return;const o=El(t,n,i);if(!o)return;const r=bl(i.writer,o),s=i.mapper.markerNameToElements(n.markerName);if(s){for(const t of s)if(i.mapper.unbindElementFromMarkerName(t,n.markerName),t.is("attributeElement"))i.writer.unwrap(i.writer.createRangeOn(t),r);else{t.getCustomProperty("removeHighlight")(t,o.id,i.writer)}i.writer.clearClonedElementsGroup(n.markerName),e.stop()}}}(t.view),{priority:t.converterPriority||"normal"})}}(t))}markerToData(t){return this.add(function(t){t=vc(t);const e=t.model;let n=t.view;n||(n=n=>({group:e,name:n.substr(t.model.length+1)}));return i=>{var o;i.on(`addMarker:${e}`,(o=n,(t,e,n)=>{const i=o(e.markerName,n);if(!i)return;const r=e.markerRange;n.consumable.consume(r,t.name)&&(Al(r,!1,n,e,i),Al(r,!0,n,e,i),t.stop())}),{priority:t.converterPriority||"normal"}),i.on(`removeMarker:${e}`,function(t){return(e,n,i)=>{const o=t(n.markerName,i);if(!o)return;const r=i.mapper.markerNameToElements(n.markerName);if(r){for(const t of r)i.mapper.unbindElementFromMarkerName(t,n.markerName),t.is("containerElement")?(s(`data-${o.group}-start-before`,t),s(`data-${o.group}-start-after`,t),s(`data-${o.group}-end-before`,t),s(`data-${o.group}-end-after`,t)):i.writer.clear(i.writer.createRangeOn(t),t);i.writer.clearClonedElementsGroup(n.markerName),e.stop()}function s(t,e){if(e.hasAttribute(t)){const n=new Set(e.getAttribute(t).split(","));n.delete(o.name),0==n.size?i.writer.removeAttribute(t,e):i.writer.setAttribute(t,Array.from(n).join(","),e)}}}}(n),{priority:t.converterPriority||"normal"})}}(t))}}function bl(t,e){const n=t.createAttributeElement("span",e.attributes);return e.classes&&n._addClass(e.classes),"number"==typeof e.priority&&(n._priority=e.priority),n._id=e.id,n}function kl(t){return(e,n,i)=>{if(!i.consumable.test(n.item,e.name))return;const o=t(n.attributeOldValue,i,n),r=t(n.attributeNewValue,i,n);if(!o&&!r)return;i.consumable.consume(n.item,e.name);const s=i.writer,a=s.document.selection;if(n.item instanceof el||n.item instanceof ul)s.wrap(a.getFirstRange(),r);else{let t=i.mapper.toViewRange(n.range);null!==n.attributeOldValue&&o&&(t=s.unwrap(t,o)),null!==n.attributeNewValue&&r&&s.wrap(t,r)}}}function wl(t,e=Il){return(n,i,o)=>{if(!e(i.item,o.consumable,{preflight:!0}))return;const r=t(i.item,o,i);if(!r)return;e(i.item,o.consumable);const s=o.mapper.toViewPosition(i.range.start);o.mapper.bindElements(i.item,r),o.writer.insert(s,r),o.convertAttributes(i.item),Sl(r,i.item.getChildren(),o,{reconversion:i.reconversion})}}function _l(t){return(e,n,i)=>{n.isOpening=!0;const o=t(n,i);n.isOpening=!1;const r=t(n,i);if(!o||!r)return;const s=n.markerRange;if(s.isCollapsed&&!i.consumable.consume(s,e.name))return;for(const t of s)if(!i.consumable.consume(t.item,e.name))return;const a=i.mapper,c=i.writer;c.insert(a.toViewPosition(s.start),o),i.mapper.bindElementToMarker(o,n.markerName),s.isCollapsed||(c.insert(a.toViewPosition(s.end),r),i.mapper.bindElementToMarker(r,n.markerName)),e.stop()}}function Al(t,e,n,i,o){const r=e?t.start:t.end,s=r.nodeAfter&&r.nodeAfter.is("element")?r.nodeAfter:null,a=r.nodeBefore&&r.nodeBefore.is("element")?r.nodeBefore:null;if(s||a){let t,r;e&&s||!e&&!a?(t=s,r=!0):(t=a,r=!1);const c=n.mapper.toViewElement(t);if(c)return void function(t,e,n,i,o,r){const s=`data-${r.group}-${e?"start":"end"}-${n?"before":"after"}`,a=t.hasAttribute(s)?t.getAttribute(s).split(","):[];a.unshift(r.name),i.writer.setAttribute(s,a.join(","),t),i.mapper.bindElementToMarker(t,o.markerName)}(c,e,r,n,i,o)}!function(t,e,n,i,o){const r=`${o.group}-${e?"start":"end"}`,s=o.name?{name:o.name}:null,a=n.writer.createUIElement(r,s);n.writer.insert(t,a),n.mapper.bindElementToMarker(a,i.markerName)}(n.mapper.toViewPosition(r),e,n,i,o)}function Cl(t){return"string"==typeof t&&(t={name:t}),{name:t.name,attributes:t.attributes?_o(t.attributes):[],children:!!t.children}}function vl(t,e){return"function"==typeof t?t:(n,i)=>function(t,e,n){"string"==typeof t&&(t={name:t});let i;const o=e.writer,r=Object.assign({},t.attributes);if("container"==n)i=o.createContainerElement(t.name,r);else if("attribute"==n){const e={priority:t.priority||Ps.DEFAULT_PRIORITY};i=o.createAttributeElement(t.name,r,e)}else i=o.createUIElement(t.name,r);if(t.styles){const e=Object.keys(t.styles);for(const n of e)o.setStyle(n,t.styles[n],i)}if(t.classes){const e=t.classes;if("string"==typeof e)o.addClass(e,i);else for(const t of e)o.addClass(t,i)}return i}(t,i,e)}function yl(t){return t.model.values?(e,n,i)=>{const o=t.view[e];return o?o(e,n,i):null}:t.view}function xl(t){return"string"==typeof t?e=>({key:t,value:e}):"object"==typeof t?t.value?()=>t:e=>({key:t.key,value:e}):t}function El(t,e,n){const i="function"==typeof t?t(e,n):t;return i?(i.priority||(i.priority=10),i.id||(i.id=e.markerName),i):null}function Dl(t){const e=function(t){return(e,n)=>{if(!e.is("element",t.name))return!1;if("attribute"==n.type){if(t.attributes.includes(n.attributeKey))return!0}else if(t.children)return!0;return!1}}(t);return(t,n)=>{const i=[];n.reconvertedElements||(n.reconvertedElements=new Set);for(const t of n.changes){const o="attribute"==t.type?t.range.start.nodeAfter:t.position.parent;if(o&&e(o,t)){if(!n.reconvertedElements.has(o)){n.reconvertedElements.add(o);const t=Rc._createBefore(o);let e=i.length;for(let n=i.length-1;n>=0;n--){const o=i[n],r=("attribute"==o.type?o.range.start:o.position).compareWith(t);if("before"==r||"remove"==o.type&&"same"==r)break;e=n}i.splice(e,0,{type:"remove",name:o.name,position:t,length:1},{type:"reinsert",name:o.name,position:t,length:1})}}else i.push(t)}n.changes=i}}function Bl(t){return(e,n,i={})=>{const o=["insert"];for(const n of t.attributes)e.hasAttribute(n)&&o.push(`attribute:${n}`);return!!o.every((t=>n.test(e,t)))&&(i.preflight||o.forEach((t=>n.consume(e,t))),!0)}}function Sl(t,e,n,i){for(const o of e)Tl(t.root,o,n,i)||n.convertItem(o)}function Tl(t,e,n,i){const{writer:o,mapper:r}=n;if(!i.reconversion)return!1;const s=r.toViewElement(e);return!(!s||s.root==t)&&(!!n.canReuseView(s)&&(o.move(o.createRangeOn(s),r.toViewPosition(Rc._createBefore(e))),!0))}function Il(t,e,{preflight:n}={}){return n?e.test(t,"insert"):e.consume(t,"insert")}function Pl(t){const{schema:e,document:n}=t.model;for(const i of n.getRoots())if(i.isEmpty&&!e.checkChild(i,"$text")&&e.checkChild(i,"paragraph"))return t.insertElement("paragraph",i),!0;return!1}function Rl(t,e,n){const i=n.createContext(t);return!!n.checkChild(i,"paragraph")&&!!n.checkChild(i.push("paragraph"),e)}function Vl(t,e){const n=e.createElement("paragraph");return e.insert(n,t),e.createPositionAt(n,0)}var Fl=Object.defineProperty,Ll=Object.defineProperties,Ol=Object.getOwnPropertyDescriptors,zl=Object.getOwnPropertySymbols,Ml=Object.prototype.hasOwnProperty,Nl=Object.prototype.propertyIsEnumerable,Hl=(t,e,n)=>e in t?Fl(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class jl extends pl{elementToElement(t){return this.add(ql(t))}elementToAttribute(t){return this.add(function(t){t=vc(t),$l(t);const e=Gl(t,!1),n=Wl(t.view),i=n?`element:${n}`:"element";return n=>{n.on(i,e,{priority:t.converterPriority||"low"})}}(t))}attributeToAttribute(t){return this.add(function(t){t=vc(t);let e=null;("string"==typeof t.view||t.view.key)&&(e=function(t){"string"==typeof t.view&&(t.view={key:t.view});const e=t.view.key,n=void 0===t.view.value?/[\s\S]*/:t.view.value;let i;if("class"==e||"style"==e){const t="class"==e?"classes":"styles";i={[t]:n}}else i={attributes:{[e]:n}};t.view.name&&(i.name=t.view.name);return t.view=i,e}(t));$l(t,e);const n=Gl(t,!0);return e=>{e.on("element",n,{priority:t.converterPriority||"low"})}}(t))}elementToMarker(t){return this.add(function(t){const e=function(t){return(e,n)=>{const i="string"==typeof t?t:t(e,n);return n.writer.createElement("$marker",{"data-name":i})}}(t.model);return ql((n=((t,e)=>{for(var n in e||(e={}))Ml.call(e,n)&&Hl(t,n,e[n]);if(zl)for(var n of zl(e))Nl.call(e,n)&&Hl(t,n,e[n]);return t})({},t),i={model:e},Ll(n,Ol(i))));var n,i}(t))}dataToMarker(t){return this.add(function(t){t=vc(t),t.model||(t.model=e=>e?t.view+":"+e:t.view);const e={view:t.view,model:t.model},n=Ul(Kl(e,"start")),i=Ul(Kl(e,"end"));return o=>{o.on(`element:${t.view}-start`,n,{priority:t.converterPriority||"normal"}),o.on(`element:${t.view}-end`,i,{priority:t.converterPriority||"normal"});const r=f.low,s=f.highest,a=f.get(t.converterPriority)/s;o.on("element",function(t){return(e,n,i)=>{const o=`data-${t.view}`;function r(e,o){for(const r of o){const o=t.model(r,i),s=i.writer.createElement("$marker",{"data-name":o});i.writer.insert(s,e),n.modelCursor.isEqual(e)?n.modelCursor=n.modelCursor.getShiftedBy(1):n.modelCursor=n.modelCursor._getTransformedByInsertion(e,1),n.modelRange=n.modelRange._getTransformedByInsertion(e,1)[0]}}(i.consumable.test(n.viewItem,{attributes:o+"-end-after"})||i.consumable.test(n.viewItem,{attributes:o+"-start-after"})||i.consumable.test(n.viewItem,{attributes:o+"-end-before"})||i.consumable.test(n.viewItem,{attributes:o+"-start-before"}))&&(n.modelRange||Object.assign(n,i.convertChildren(n.viewItem,n.modelCursor)),i.consumable.consume(n.viewItem,{attributes:o+"-end-after"})&&r(n.modelRange.end,n.viewItem.getAttribute(o+"-end-after").split(",")),i.consumable.consume(n.viewItem,{attributes:o+"-start-after"})&&r(n.modelRange.end,n.viewItem.getAttribute(o+"-start-after").split(",")),i.consumable.consume(n.viewItem,{attributes:o+"-end-before"})&&r(n.modelRange.start,n.viewItem.getAttribute(o+"-end-before").split(",")),i.consumable.consume(n.viewItem,{attributes:o+"-start-before"})&&r(n.modelRange.start,n.viewItem.getAttribute(o+"-start-before").split(",")))}}(e),{priority:r+a})}}(t))}}function ql(t){const e=Ul(t=vc(t)),n=Wl(t.view),i=n?`element:${n}`:"element";return n=>{n.on(i,e,{priority:t.converterPriority||"normal"})}}function Wl(t){return"string"==typeof t?t:"object"==typeof t&&"string"==typeof t.name?t.name:null}function Ul(t){const e=new Ir(t.view);return(n,i,o)=>{const r=e.match(i.viewItem);if(!r)return;const s=r.match;if(s.name=!0,!o.consumable.test(i.viewItem,s))return;const a=function(t,e,n){return t instanceof Function?t(e,n):n.writer.createElement(t)}(t.model,i.viewItem,o);a&&o.safeInsert(a,i.modelCursor)&&(o.consumable.consume(i.viewItem,s),o.convertChildren(i.viewItem,a),o.updateConversionResult(a,i))}}function $l(t,e=null){const n=null===e||(t=>t.getAttribute(e)),i="object"!=typeof t.model?t.model:t.model.key,o="object"!=typeof t.model||void 0===t.model.value?n:t.model.value;t.model={key:i,value:o}}function Gl(t,e){const n=new Ir(t.view);return(i,o,r)=>{if(!o.modelRange&&e)return;const s=n.match(o.viewItem);if(!s)return;if(!function(t,e){const n="function"==typeof t?t(e):t;if("object"==typeof n&&!Wl(n))return!1;return!n.classes&&!n.attributes&&!n.styles}(t.view,o.viewItem)?delete s.match.name:s.match.name=!0,!r.consumable.test(o.viewItem,s.match))return;const a=t.model.key,c="function"==typeof t.model.value?t.model.value(o.viewItem,r):t.model.value;if(null===c)return;o.modelRange||Object.assign(o,r.convertChildren(o.viewItem,o.modelCursor));const l=function(t,e,n,i){let o=!1;for(const r of Array.from(t.getItems({shallow:n})))i.schema.checkAttribute(r,e.key)&&(o=!0,r.hasAttribute(e.key)||i.writer.setAttribute(e.key,e.value,r));return o}(o.modelRange,{key:a,value:c},e,r);l&&(r.consumable.test(o.viewItem,{name:!0})&&(s.match.name=!0),r.consumable.consume(o.viewItem,s.match))}}function Kl(t,e){return{view:`${t.view}-${e}`,model:(e,n)=>{const i=e.getAttribute("name"),o=t.model(i,n);return n.writer.createElement("$marker",{"data-name":o})}}}function Jl(t){t.document.registerPostFixer((e=>function(t,e){const n=e.document.selection,i=e.schema,o=[];let r=!1;for(const t of n.getRanges()){const e=Zl(t,i);e&&!e.isEqual(t)?(o.push(e),r=!0):o.push(t)}r&&t.setSelection(function(t){const e=[...t],n=new Set;let i=1;for(;i!n.has(e)))}(o),{backward:n.isBackward});return!1}(e,t)))}function Zl(t,e){return t.isCollapsed?function(t,e){const n=t.start,i=e.getNearestSelectionRange(n);if(!i){const t=n.getAncestors().reverse().find((t=>e.isObject(t)));return t?Mc._createOn(t):null}if(!i.isCollapsed)return i;const o=i.start;if(n.isEqual(o))return null;return new Mc(o)}(t,e):function(t,e){const{start:n,end:i}=t,o=e.checkChild(n,"$text"),r=e.checkChild(i,"$text"),s=e.getLimitElement(n),a=e.getLimitElement(i);if(s===a){if(o&&r)return null;if(function(t,e,n){const i=t.nodeAfter&&!n.isLimit(t.nodeAfter)||n.checkChild(t,"$text"),o=e.nodeBefore&&!n.isLimit(e.nodeBefore)||n.checkChild(e,"$text");return i||o}(n,i,e)){const t=n.nodeAfter&&e.isSelectable(n.nodeAfter)?null:e.getNearestSelectionRange(n,"forward"),o=i.nodeBefore&&e.isSelectable(i.nodeBefore)?null:e.getNearestSelectionRange(i,"backward"),r=t?t.start:n,s=o?o.end:i;return new Mc(r,s)}}const c=s&&!s.is("rootElement"),l=a&&!a.is("rootElement");if(c||l){const t=n.nodeAfter&&i.nodeBefore&&n.nodeAfter.parent===i.nodeBefore.parent,o=c&&(!t||!Ql(n.nodeAfter,e)),r=l&&(!t||!Ql(i.nodeBefore,e));let d=n,h=i;return o&&(d=Rc._createBefore(Yl(s,e))),r&&(h=Rc._createAfter(Yl(a,e))),new Mc(d,h)}return null}(t,e)}function Yl(t,e){let n=t,i=n;for(;e.isLimit(i)&&i.parent;)n=i,i=i.parent;return n}function Ql(t,e){return t&&e.isSelectable(t)}class Xl extends(W()){constructor(t,e){super(),this.model=t,this.view=new yc(e),this.mapper=new Nc,this.downcastDispatcher=new Qc({mapper:this.mapper,schema:t.schema});const n=this.model.document,i=n.selection,o=this.model.markers;var r,a,c;this.listenTo(this.model,"_beforeChanges",(()=>{this.view._disableRendering(!0)}),{priority:"highest"}),this.listenTo(this.model,"_afterChanges",(()=>{this.view._disableRendering(!1)}),{priority:"lowest"}),this.listenTo(n,"change",(()=>{this.view.change((t=>{this.downcastDispatcher.convertChanges(n.differ,o,t),this.downcastDispatcher.convertSelection(i,o,t)}))}),{priority:"low"}),this.listenTo(this.view.document,"selectionChange",function(t,e){return(n,i)=>{const o=i.newSelection,r=[];for(const t of o.getRanges())r.push(e.toModelRange(t));const s=t.createSelection(r,{backward:o.isBackward});s.isEqual(t.document.selection)||t.change((t=>{t.setSelection(s)}))}}(this.model,this.mapper)),this.listenTo(this.view.document,"beforeinput",(r=this.mapper,a=this.model.schema,c=this.view,(t,e)=>{if(!c.document.isComposing||s.isAndroid)for(let t=0;t{if(!n.consumable.consume(e.item,t.name))return;const i=n.writer,o=n.mapper.toViewPosition(e.range.start),r=i.createText(e.item.data);i.insert(o,r)}),{priority:"lowest"}),this.downcastDispatcher.on("insert",((t,e,n)=>{n.convertAttributes(e.item),e.reconversion||!e.item.is("element")||e.item.isEmpty||n.convertChildren(e.item)}),{priority:"lowest"}),this.downcastDispatcher.on("remove",((t,e,n)=>{const i=n.mapper.toViewPosition(e.position),o=e.position.getShiftedBy(e.length),r=n.mapper.toViewPosition(o,{isPhantom:!0}),s=n.writer.createRange(i,r),a=n.writer.remove(s.getTrimmed());for(const t of n.writer.createRangeIn(a).getItems())n.mapper.unbindViewElement(t,{defer:!0})}),{priority:"low"}),this.downcastDispatcher.on("cleanSelection",((t,e,n)=>{const i=n.writer,o=i.document.selection;for(const t of o.getRanges())t.isCollapsed&&t.end.parent.isAttached()&&n.writer.mergeAttributes(t.start);i.setSelection(null)})),this.downcastDispatcher.on("selection",((t,e,n)=>{const i=e.selection;if(i.isCollapsed)return;if(!n.consumable.consume(i,"selection"))return;const o=[];for(const t of i.getRanges())o.push(n.mapper.toViewRange(t));n.writer.setSelection(o,{backward:i.isBackward})}),{priority:"low"}),this.downcastDispatcher.on("selection",((t,e,n)=>{const i=e.selection;if(!i.isCollapsed)return;if(!n.consumable.consume(i,"selection"))return;const o=n.writer,r=i.getFirstPosition(),s=n.mapper.toViewPosition(r),a=o.breakAttributes(s);o.setSelection(a)}),{priority:"low"}),this.view.document.roots.bindTo(this.model.document.roots).using((t=>{if("$graveyard"==t.rootName)return null;const e=new bs(this.view.document,t.name);return e.rootName=t.rootName,this.mapper.bindElements(t,e),e}))}destroy(){this.view.destroy(),this.stopListening()}reconvertMarker(t){const e="string"==typeof t?t:t.name,n=this.model.markers.get(e);if(!n)throw new w("editingcontroller-reconvertmarker-marker-not-exist",this,{markerName:e});this.model.change((()=>{this.model.markers._refresh(n)}))}reconvertItem(t){this.model.change((()=>{this.model.document.differ._refreshItem(t)}))}}class td{constructor(){this._consumables=new Map}add(t,e){let n;t.is("$text")||t.is("documentFragment")?this._consumables.set(t,!0):(this._consumables.has(t)?n=this._consumables.get(t):(n=new nd(t),this._consumables.set(t,n)),n.add(e))}test(t,e){const n=this._consumables.get(t);return void 0===n?null:t.is("$text")||t.is("documentFragment")?n:n.test(e)}consume(t,e){return!!this.test(t,e)&&(t.is("$text")||t.is("documentFragment")?this._consumables.set(t,!1):this._consumables.get(t).consume(e),!0)}revert(t,e){const n=this._consumables.get(t);void 0!==n&&(t.is("$text")||t.is("documentFragment")?this._consumables.set(t,!0):n.revert(e))}static consumablesFromElement(t){const e={element:t,name:!0,attributes:[],classes:[],styles:[]},n=t.getAttributeKeys();for(const t of n)"style"!=t&&"class"!=t&&e.attributes.push(t);const i=t.getClassNames();for(const t of i)e.classes.push(t);const o=t.getStyleNames();for(const t of o)e.styles.push(t);return e}static createFrom(t,e){if(e||(e=new td),t.is("$text"))return e.add(t),e;t.is("element")&&e.add(t,td.consumablesFromElement(t)),t.is("documentFragment")&&e.add(t);for(const n of t.getChildren())e=td.createFrom(n,e);return e}}const ed=["attributes","classes","styles"];class nd{constructor(t){this.element=t,this._canConsumeName=null,this._consumables={attributes:new Map,styles:new Map,classes:new Map}}add(t){t.name&&(this._canConsumeName=!0);for(const e of ed)e in t&&this._add(e,t[e])}test(t){if(t.name&&!this._canConsumeName)return this._canConsumeName;for(const e of ed)if(e in t){const n=this._test(e,t[e]);if(!0!==n)return n}return!0}consume(t){t.name&&(this._canConsumeName=!1);for(const e of ed)e in t&&this._consume(e,t[e])}revert(t){t.name&&(this._canConsumeName=!0);for(const e of ed)e in t&&this._revert(e,t[e])}_add(t,e){const n=_o(e),i=this._consumables[t];for(const e of n){if("attributes"===t&&("class"===e||"style"===e))throw new w("viewconsumable-invalid-attribute",this);if(i.set(e,!0),"styles"===t)for(const t of this.element.document.stylesProcessor.getRelatedStyles(e))i.set(t,!0)}}_test(t,e){const n=_o(e),i=this._consumables[t];for(const e of n)if("attributes"!==t||"class"!==e&&"style"!==e){const t=i.get(e);if(void 0===t)return null;if(!t)return!1}else{const t="class"==e?"classes":"styles",n=this._test(t,[...this._consumables[t].keys()]);if(!0!==n)return n}return!0}_consume(t,e){const n=_o(e),i=this._consumables[t];for(const e of n)if("attributes"!==t||"class"!==e&&"style"!==e){if(i.set(e,!1),"styles"==t)for(const t of this.element.document.stylesProcessor.getRelatedStyles(e))i.set(t,!1)}else{const t="class"==e?"classes":"styles";this._consume(t,[...this._consumables[t].keys()])}}_revert(t,e){const n=_o(e),i=this._consumables[t];for(const e of n)if("attributes"!==t||"class"!==e&&"style"!==e){!1===i.get(e)&&i.set(e,!0)}else{const t="class"==e?"classes":"styles";this._revert(t,[...this._consumables[t].keys()])}}}class id extends(W()){constructor(){super(),this._sourceDefinitions={},this._attributeProperties={},this.decorate("checkChild"),this.decorate("checkAttribute"),this.on("checkAttribute",((t,e)=>{e[0]=new od(e[0])}),{priority:"highest"}),this.on("checkChild",((t,e)=>{e[0]=new od(e[0]),e[1]=this.getDefinition(e[1])}),{priority:"highest"})}register(t,e){if(this._sourceDefinitions[t])throw new w("schema-cannot-register-item-twice",this,{itemName:t});this._sourceDefinitions[t]=[Object.assign({},e)],this._clearCache()}extend(t,e){if(!this._sourceDefinitions[t])throw new w("schema-cannot-extend-missing-item",this,{itemName:t});this._sourceDefinitions[t].push(Object.assign({},e)),this._clearCache()}getDefinitions(){return this._compiledDefinitions||this._compile(),this._compiledDefinitions}getDefinition(t){let e;return e="string"==typeof t?t:"is"in t&&(t.is("$text")||t.is("$textProxy"))?"$text":t.name,this.getDefinitions()[e]}isRegistered(t){return!!this.getDefinition(t)}isBlock(t){const e=this.getDefinition(t);return!(!e||!e.isBlock)}isLimit(t){const e=this.getDefinition(t);return!!e&&!(!e.isLimit&&!e.isObject)}isObject(t){const e=this.getDefinition(t);return!!e&&!!(e.isObject||e.isLimit&&e.isSelectable&&e.isContent)}isInline(t){const e=this.getDefinition(t);return!(!e||!e.isInline)}isSelectable(t){const e=this.getDefinition(t);return!!e&&!(!e.isSelectable&&!e.isObject)}isContent(t){const e=this.getDefinition(t);return!!e&&!(!e.isContent&&!e.isObject)}checkChild(t,e){return!!e&&this._checkContextMatch(e,t)}checkAttribute(t,e){const n=this.getDefinition(t.last);return!!n&&n.allowAttributes.includes(e)}checkMerge(t,e){if(t instanceof Rc){const e=t.nodeBefore,n=t.nodeAfter;if(!(e instanceof Tc))throw new w("schema-check-merge-no-element-before",this);if(!(n instanceof Tc))throw new w("schema-check-merge-no-element-after",this);return this.checkMerge(e,n)}for(const n of e.getChildren())if(!this.checkChild(t,n))return!1;return!0}addChildCheck(t){this.on("checkChild",((e,[n,i])=>{if(!i)return;const o=t(n,i);"boolean"==typeof o&&(e.stop(),e.return=o)}),{priority:"high"})}addAttributeCheck(t){this.on("checkAttribute",((e,[n,i])=>{const o=t(n,i);"boolean"==typeof o&&(e.stop(),e.return=o)}),{priority:"high"})}setAttributeProperties(t,e){this._attributeProperties[t]=Object.assign(this.getAttributeProperties(t),e)}getAttributeProperties(t){return this._attributeProperties[t]||{}}getLimitElement(t){let e;if(t instanceof Rc)e=t.parent;else{e=(t instanceof Mc?[t]:Array.from(t.getRanges())).reduce(((t,e)=>{const n=e.getCommonAncestor();return t?t.getCommonAncestor(n,{includeSelf:!0}):n}),null)}for(;!this.isLimit(e)&&e.parent;)e=e.parent;return e}checkAttributeInSelection(t,e){if(t.isCollapsed){const n=[...t.getFirstPosition().getAncestors(),new Bc("",t.getAttributes())];return this.checkAttribute(n,e)}{const n=t.getRanges();for(const t of n)for(const n of t)if(this.checkAttribute(n.item,e))return!0}return!1}*getValidRanges(t,e){t=function*(t){for(const e of t)yield*e.getMinimalFlatRanges()}(t);for(const n of t)yield*this._getValidRangesForRange(n,e)}getNearestSelectionRange(t,e="both"){if("$graveyard"==t.root.rootName)return null;if(this.checkChild(t,"$text"))return new Mc(t);let n,i;const o=t.getAncestors().reverse().find((t=>this.isLimit(t)))||t.root;"both"!=e&&"backward"!=e||(n=new Ic({boundaries:Mc._createIn(o),startPosition:t,direction:"backward"})),"both"!=e&&"forward"!=e||(i=new Ic({boundaries:Mc._createIn(o),startPosition:t}));for(const t of function*(t,e){let n=!1;for(;!n;){if(n=!0,t){const e=t.next();e.done||(n=!1,yield{walker:t,value:e.value})}if(e){const t=e.next();t.done||(n=!1,yield{walker:e,value:t.value})}}}(n,i)){const e=t.walker==n?"elementEnd":"elementStart",i=t.value;if(i.type==e&&this.isObject(i.item))return Mc._createOn(i.item);if(this.checkChild(i.nextPosition,"$text"))return new Mc(i.nextPosition)}return null}findAllowedParent(t,e){let n=t.parent;for(;n;){if(this.checkChild(n,e))return n;if(this.isLimit(n))return null;n=n.parent}return null}setAllowedAttributes(t,e,n){const i=n.model;for(const[o,r]of Object.entries(e))i.schema.checkAttribute(t,o)&&n.setAttribute(o,r,t)}removeDisallowedAttributes(t,e){for(const n of t)if(n.is("$text"))bd(this,n,e);else{const t=Mc._createIn(n).getPositions();for(const n of t){bd(this,n.nodeBefore||n.parent,e)}}}getAttributesWithProperty(t,e,n){const i={};for(const[o,r]of t.getAttributes()){const t=this.getAttributeProperties(o);void 0!==t[e]&&(void 0!==n&&n!==t[e]||(i[o]=r))}return i}createContext(t){return new od(t)}_clearCache(){this._compiledDefinitions=null}_compile(){const t={},e=this._sourceDefinitions,n=Object.keys(e);for(const i of n)t[i]=rd(e[i],i);for(const e of n)sd(t,e);for(const e of n)ad(t,e);for(const e of n)cd(t,e);for(const e of n)ld(t,e),dd(t,e);for(const e of n)hd(t,e),ud(t,e),md(t,e);this._compiledDefinitions=t}_checkContextMatch(t,e,n=e.length-1){const i=e.getItem(n);if(t.allowIn.includes(i.name)){if(0==n)return!0;{const t=this.getDefinition(i);return this._checkContextMatch(t,e,n-1)}}return!1}*_getValidRangesForRange(t,e){let n=t.start,i=t.start;for(const o of t.getItems({shallow:!0}))o.is("element")&&(yield*this._getValidRangesForRange(Mc._createIn(o),e)),this.checkAttribute(o,e)||(n.isEqual(i)||(yield new Mc(n,i)),n=Rc._createAfter(o)),i=Rc._createAfter(o);n.isEqual(i)||(yield new Mc(n,i))}findOptimalInsertionRange(t,e){const n=t.getSelectedElement();if(n&&this.isObject(n)&&!this.isInline(n))return"before"==e||"after"==e?new Mc(Rc._createAt(n,e)):Mc._createOn(n);const i=$o(t.getSelectedBlocks());if(!i)return new Mc(t.focus);if(i.isEmpty)return new Mc(Rc._createAt(i,0));const o=Rc._createAfter(i);return t.focus.isTouching(o)?new Mc(o):new Mc(Rc._createBefore(i))}}class od{constructor(t){if(t instanceof od)return t;let e;e="string"==typeof t?[t]:Array.isArray(t)?t:t.getAncestors({includeSelf:!0}),this._items=e.map(fd)}get length(){return this._items.length}get last(){return this._items[this._items.length-1]}[Symbol.iterator](){return this._items[Symbol.iterator]()}push(t){const e=new od([t]);return e._items=[...this._items,...e._items],e}getItem(t){return this._items[t]}*getNames(){yield*this._items.map((t=>t.name))}endsWith(t){return Array.from(this.getNames()).join(" ").endsWith(t)}startsWith(t){return Array.from(this.getNames()).join(" ").startsWith(t)}}function rd(t,e){const n={name:e,allowIn:[],allowContentOf:[],allowWhere:[],allowAttributes:[],allowAttributesOf:[],allowChildren:[],inheritTypesFrom:[]};return function(t,e){for(const n of t){const t=Object.keys(n).filter((t=>t.startsWith("is")));for(const i of t)e[i]=!!n[i]}}(t,n),gd(t,n,"allowIn"),gd(t,n,"allowContentOf"),gd(t,n,"allowWhere"),gd(t,n,"allowAttributes"),gd(t,n,"allowAttributesOf"),gd(t,n,"allowChildren"),gd(t,n,"inheritTypesFrom"),function(t,e){for(const n of t){const t=n.inheritAllFrom;t&&(e.allowContentOf.push(t),e.allowWhere.push(t),e.allowAttributesOf.push(t),e.inheritTypesFrom.push(t))}}(t,n),n}function sd(t,e){const n=t[e];for(const i of n.allowChildren){const n=t[i];n&&n.allowIn.push(e)}n.allowChildren.length=0}function ad(t,e){for(const n of t[e].allowContentOf)if(t[n]){pd(t,n).forEach((t=>{t.allowIn.push(e)}))}delete t[e].allowContentOf}function cd(t,e){for(const n of t[e].allowWhere){const i=t[n];if(i){const n=i.allowIn;t[e].allowIn.push(...n)}}delete t[e].allowWhere}function ld(t,e){for(const n of t[e].allowAttributesOf){const i=t[n];if(i){const n=i.allowAttributes;t[e].allowAttributes.push(...n)}}delete t[e].allowAttributesOf}function dd(t,e){const n=t[e];for(const e of n.inheritTypesFrom){const i=t[e];if(i){const t=Object.keys(i).filter((t=>t.startsWith("is")));for(const e of t)e in n||(n[e]=i[e])}}delete n.inheritTypesFrom}function hd(t,e){const n=t[e],i=n.allowIn.filter((e=>t[e]));n.allowIn=Array.from(new Set(i))}function ud(t,e){const n=t[e];for(const i of n.allowIn){t[i].allowChildren.push(e)}}function md(t,e){const n=t[e];n.allowAttributes=Array.from(new Set(n.allowAttributes))}function gd(t,e,n){for(const i of t){const t=i[n];"string"==typeof t?e[n].push(t):Array.isArray(t)&&e[n].push(...t)}}function pd(t,e){const n=t[e];return(i=t,Object.keys(i).map((t=>i[t]))).filter((t=>t.allowIn.includes(n.name)));var i}function fd(t){return"string"==typeof t||t.is("documentFragment")?{name:"string"==typeof t?t:"$documentFragment",*getAttributeKeys(){},getAttribute(){}}:{name:t.is("element")?t.name:"$text",*getAttributeKeys(){yield*t.getAttributeKeys()},getAttribute:e=>t.getAttribute(e)}}function bd(t,e,n){for(const i of e.getAttributeKeys())t.checkAttribute(e,i)||n.removeAttribute(i,e)}var kd=Object.defineProperty,wd=Object.defineProperties,_d=Object.getOwnPropertyDescriptors,Ad=Object.getOwnPropertySymbols,Cd=Object.prototype.hasOwnProperty,vd=Object.prototype.propertyIsEnumerable,yd=(t,e,n)=>e in t?kd(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class xd extends(S()){constructor(t){var e;super(),this._splitParts=new Map,this._cursorParents=new Map,this._modelCursor=null,this._emptyElementsToKeep=new Set,this.conversionApi=(e=((t,e)=>{for(var n in e||(e={}))Cd.call(e,n)&&yd(t,n,e[n]);if(Ad)for(var n of Ad(e))vd.call(e,n)&&yd(t,n,e[n]);return t})({},t),wd(e,_d({consumable:null,writer:null,store:null,convertItem:(t,e)=>this._convertItem(t,e),convertChildren:(t,e)=>this._convertChildren(t,e),safeInsert:(t,e)=>this._safeInsert(t,e),updateConversionResult:(t,e)=>this._updateConversionResult(t,e),splitToAllowedParent:(t,e)=>this._splitToAllowedParent(t,e),getSplitParts:t=>this._getSplitParts(t),keepEmptyElement:t=>this._keepEmptyElement(t)})))}convert(t,e,n=["$root"]){this.fire("viewCleanup",t),this._modelCursor=function(t,e){let n;for(const i of new od(t)){const t={};for(const e of i.getAttributeKeys())t[e]=i.getAttribute(e);const o=e.createElement(i.name,t);n&&e.insert(o,n),n=Rc._createAt(o,0)}return n}(n,e),this.conversionApi.writer=e,this.conversionApi.consumable=td.createFrom(t),this.conversionApi.store={};const{modelRange:i}=this._convertItem(t,this._modelCursor),o=e.createDocumentFragment();if(i){this._removeEmptyElements();for(const t of Array.from(this._modelCursor.parent.getChildren()))e.append(t,o);o.markers=function(t,e){const n=new Set,i=new Map,o=Mc._createIn(t).getItems();for(const t of o)t.is("element","$marker")&&n.add(t);for(const t of n){const n=t.getAttribute("data-name"),o=e.createPositionBefore(t);i.has(n)?i.get(n).end=o.clone():i.set(n,new Mc(o.clone())),e.remove(t)}return i}(o,e)}return this._modelCursor=null,this._splitParts.clear(),this._cursorParents.clear(),this._emptyElementsToKeep.clear(),this.conversionApi.writer=null,this.conversionApi.store=null,o}_convertItem(t,e){const n={viewItem:t,modelCursor:e,modelRange:null};if(t.is("element")?this.fire(`element:${t.name}`,n,this.conversionApi):t.is("$text")?this.fire("text",n,this.conversionApi):this.fire("documentFragment",n,this.conversionApi),n.modelRange&&!(n.modelRange instanceof Mc))throw new w("view-conversion-dispatcher-incorrect-result",this);return{modelRange:n.modelRange,modelCursor:n.modelCursor}}_convertChildren(t,e){let n=e.is("position")?e:Rc._createAt(e,0);const i=new Mc(n);for(const e of Array.from(t.getChildren())){const t=this._convertItem(e,n);t.modelRange instanceof Mc&&(i.end=t.modelRange.end,n=t.modelCursor)}return{modelRange:i,modelCursor:n}}_safeInsert(t,e){const n=this._splitToAllowedParent(t,e);return!!n&&(this.conversionApi.writer.insert(t,n.position),!0)}_updateConversionResult(t,e){const n=this._getSplitParts(t),i=this.conversionApi.writer;e.modelRange||(e.modelRange=i.createRange(i.createPositionBefore(t),i.createPositionAfter(n[n.length-1])));const o=this._cursorParents.get(t);e.modelCursor=o?i.createPositionAt(o,0):e.modelRange.end}_splitToAllowedParent(t,e){const{schema:n,writer:i}=this.conversionApi;let o=n.findAllowedParent(e,t);if(o){if(o===e.parent)return{position:e};this._modelCursor.parent.getAncestors().includes(o)&&(o=null)}if(!o)return Rl(e,t,n)?{position:Vl(e,i)}:null;const r=this.conversionApi.writer.split(e,o),s=[];for(const t of r.range.getWalker())if("elementEnd"==t.type)s.push(t.item);else{const e=s.pop(),n=t.item;this._registerSplitPair(e,n)}const a=r.range.end.parent;return this._cursorParents.set(t,a),{position:r.position,cursorParent:a}}_registerSplitPair(t,e){this._splitParts.has(t)||this._splitParts.set(t,[t]);const n=this._splitParts.get(t);this._splitParts.set(e,n),n.push(e)}_getSplitParts(t){let e;return e=this._splitParts.has(t)?this._splitParts.get(t):[t],e}_keepEmptyElement(t){this._emptyElementsToKeep.add(t)}_removeEmptyElements(){let t=!1;for(const e of this._splitParts.keys())e.isEmpty&&!this._emptyElementsToKeep.has(e)&&(this.conversionApi.writer.remove(e),this._splitParts.delete(e),t=!0);t&&this._removeEmptyElements()}}class Ed{getHtml(t){const n=e.document.implementation.createHTMLDocument("").createElement("div");return n.appendChild(t),n.innerHTML}}class Dd{constructor(t){this.skipComments=!0,this.domParser=new DOMParser,this.domConverter=new Ca(t,{renderingMode:"data"}),this.htmlWriter=new Ed}toData(t){const e=this.domConverter.viewToDom(t);return this.htmlWriter.getHtml(e)}toView(t){const e=this._toDom(t);return this.domConverter.domToView(e,{skipComments:this.skipComments})}registerRawContentMatcher(t){this.domConverter.registerRawContentMatcher(t)}useFillerType(t){this.domConverter.blockFillerMode="marked"==t?"markedNbsp":"nbsp"}_toDom(t){t.match(/<(?:html|body|head|meta)(?:\s[^>]*)?>/i)||(t=`${t}`);const e=this.domParser.parseFromString(t,"text/html"),n=e.createDocumentFragment(),i=e.body.childNodes;for(;i.length>0;)n.appendChild(i[0]);return n}}class Bd extends(S()){constructor(t,e){super(),this.model=t,this.mapper=new Nc,this.downcastDispatcher=new Qc({mapper:this.mapper,schema:t.schema}),this.downcastDispatcher.on("insert:$text",((t,e,n)=>{if(!n.consumable.consume(e.item,t.name))return;const i=n.writer,o=n.mapper.toViewPosition(e.range.start),r=i.createText(e.item.data);i.insert(o,r)}),{priority:"lowest"}),this.downcastDispatcher.on("insert",((t,e,n)=>{n.convertAttributes(e.item),e.reconversion||!e.item.is("element")||e.item.isEmpty||n.convertChildren(e.item)}),{priority:"lowest"}),this.upcastDispatcher=new xd({schema:t.schema}),this.viewDocument=new Is(e),this.stylesProcessor=e,this.htmlProcessor=new Dd(this.viewDocument),this.processor=this.htmlProcessor,this._viewWriter=new qs(this.viewDocument),this.upcastDispatcher.on("text",((t,e,{schema:n,consumable:i,writer:o})=>{let r=e.modelCursor;if(!i.test(e.viewItem))return;if(!n.checkChild(r,"$text")){if(!Rl(r,"$text",n))return;if(0==e.viewItem.data.trim().length)return;const t=r.nodeBefore;r=Vl(r,o),t&&t.is("element","$marker")&&(o.move(o.createRangeOn(t),r),r=o.createPositionAfter(t))}i.consume(e.viewItem);const s=o.createText(e.viewItem.data);o.insert(s,r),e.modelRange=o.createRange(r,r.getShiftedBy(s.offsetSize)),e.modelCursor=e.modelRange.end}),{priority:"lowest"}),this.upcastDispatcher.on("element",((t,e,n)=>{if(!e.modelRange&&n.consumable.consume(e.viewItem,{name:!0})){const{modelRange:t,modelCursor:i}=n.convertChildren(e.viewItem,e.modelCursor);e.modelRange=t,e.modelCursor=i}}),{priority:"lowest"}),this.upcastDispatcher.on("documentFragment",((t,e,n)=>{if(!e.modelRange&&n.consumable.consume(e.viewItem,{name:!0})){const{modelRange:t,modelCursor:i}=n.convertChildren(e.viewItem,e.modelCursor);e.modelRange=t,e.modelCursor=i}}),{priority:"lowest"}),W().prototype.decorate.call(this,"init"),W().prototype.decorate.call(this,"set"),W().prototype.decorate.call(this,"get"),W().prototype.decorate.call(this,"toView"),W().prototype.decorate.call(this,"toModel"),this.on("init",(()=>{this.fire("ready")}),{priority:"lowest"}),this.on("ready",(()=>{this.model.enqueueChange({isUndoable:!1},Pl)}),{priority:"lowest"})}get(t={}){const{rootName:e="main",trim:n="empty"}=t;if(!this._checkIfRootsExists([e]))throw new w("datacontroller-get-non-existent-root",this);const i=this.model.document.getRoot(e);return i.isAttached()||_("datacontroller-get-detached-root",this),"empty"!==n||this.model.hasContent(i,{ignoreWhitespaces:!0})?this.stringify(i,t):""}stringify(t,e={}){const n=this.toView(t,e);return this.processor.toData(n)}toView(t,e={}){const n=this.viewDocument,i=this._viewWriter;this.mapper.clearBindings();const o=Mc._createIn(t),r=new js(n);this.mapper.bindElements(t,r);const s=t.is("documentFragment")?t.markers:function(t){const e=[],n=t.root.document;if(!n)return new Map;const i=Mc._createIn(t);for(const t of n.model.markers){const n=t.getRange(),o=n.isCollapsed,r=n.start.isEqual(i.start)||n.end.isEqual(i.end);if(o&&r)e.push([t.name,n]);else{const o=i.getIntersection(n);o&&e.push([t.name,o])}}return e.sort((([t,e],[n,i])=>{if("after"!==e.end.compareWith(i.start))return 1;if("before"!==e.start.compareWith(i.end))return-1;switch(e.start.compareWith(i.start)){case"before":return 1;case"after":return-1;default:switch(e.end.compareWith(i.end)){case"before":return 1;case"after":return-1;default:return n.localeCompare(t)}}})),new Map(e)}(t);return this.downcastDispatcher.convert(o,s,i,e),r}init(t){if(this.model.document.version)throw new w("datacontroller-init-document-not-empty",this);let e={};if("string"==typeof t?e.main=t:e=t,!this._checkIfRootsExists(Object.keys(e)))throw new w("datacontroller-init-non-existent-root",this);return this.model.enqueueChange({isUndoable:!1},(t=>{for(const n of Object.keys(e)){const i=this.model.document.getRoot(n);t.insert(this.parse(e[n],i),i,0)}})),Promise.resolve()}set(t,e={}){let n={};if("string"==typeof t?n.main=t:n=t,!this._checkIfRootsExists(Object.keys(n)))throw new w("datacontroller-set-non-existent-root",this);this.model.enqueueChange(e.batchType||{},(t=>{t.setSelection(null),t.removeSelectionAttribute(this.model.document.selection.getAttributeKeys());for(const e of Object.keys(n)){const i=this.model.document.getRoot(e);t.remove(t.createRangeIn(i)),t.insert(this.parse(n[e],i),i,0)}}))}parse(t,e="$root"){const n=this.processor.toView(t);return this.toModel(n,e)}toModel(t,e="$root"){return this.model.change((n=>this.upcastDispatcher.convert(t,n,e)))}addStyleProcessorRules(t){t(this.stylesProcessor)}registerRawContentMatcher(t){this.processor&&this.processor!==this.htmlProcessor&&this.processor.registerRawContentMatcher(t),this.htmlProcessor.registerRawContentMatcher(t)}destroy(){this.stopListening()}_checkIfRootsExists(t){for(const e of t)if(!this.model.document.getRoot(e))return!1;return!0}}class Sd{constructor(t,e){this._helpers=new Map,this._downcast=_o(t),this._createConversionHelpers({name:"downcast",dispatchers:this._downcast,isDowncast:!0}),this._upcast=_o(e),this._createConversionHelpers({name:"upcast",dispatchers:this._upcast,isDowncast:!1})}addAlias(t,e){const n=this._downcast.includes(e);if(!this._upcast.includes(e)&&!n)throw new w("conversion-add-alias-dispatcher-not-registered",this);this._createConversionHelpers({name:t,dispatchers:[e],isDowncast:n})}for(t){if(!this._helpers.has(t))throw new w("conversion-for-unknown-group",this);return this._helpers.get(t)}elementToElement(t){this.for("downcast").elementToElement(t);for(const{model:e,view:n}of Td(t))this.for("upcast").elementToElement({model:e,view:n,converterPriority:t.converterPriority})}attributeToElement(t){this.for("downcast").attributeToElement(t);for(const{model:e,view:n}of Td(t))this.for("upcast").elementToAttribute({view:n,model:e,converterPriority:t.converterPriority})}attributeToAttribute(t){this.for("downcast").attributeToAttribute(t);for(const{model:e,view:n}of Td(t))this.for("upcast").attributeToAttribute({view:n,model:e})}_createConversionHelpers({name:t,dispatchers:e,isDowncast:n}){if(this._helpers.has(t))throw new w("conversion-group-exists",this);const i=n?new fl(e):new jl(e);this._helpers.set(t,i)}}function*Td(t){if(t.model.values)for(const e of t.model.values){const n={key:t.model.key,value:e},i=t.view[e],o=t.upcastAlso?t.upcastAlso[e]:void 0;yield*Id(n,i,o)}else yield*Id(t.model,t.view,t.upcastAlso)}function*Id(t,e,n){if(yield{model:t,view:e},n)for(const e of _o(n))yield{model:t,view:e}}class Pd{constructor(t){this.baseVersion=t,this.isDocumentOperation=null!==this.baseVersion,this.batch=null}_validate(){}toJSON(){const t=Object.assign({},this);return t.__className=this.constructor.className,delete t.batch,delete t.isDocumentOperation,t}static get className(){return"Operation"}static fromJSON(t,e){return new this(t.baseVersion)}}function Rd(t,e){const n=Ld(e),i=n.reduce(((t,e)=>t+e.offsetSize),0),o=t.parent;zd(t);const r=t.index;return o._insertChild(r,n),Od(o,r+n.length),Od(o,r),new Mc(t,t.getShiftedBy(i))}function Vd(t){if(!t.isFlat)throw new w("operation-utils-remove-range-not-flat",this);const e=t.start.parent;zd(t.start),zd(t.end);const n=e._removeChildren(t.start.index,t.end.index-t.start.index);return Od(e,t.start.index),n}function Fd(t,e){if(!t.isFlat)throw new w("operation-utils-move-range-not-flat",this);const n=Vd(t);return Rd(e=e._getTransformedByDeletion(t.start,t.end.offset-t.start.offset),n)}function Ld(t){const e=[];!function t(n){if("string"==typeof n)e.push(new Bc(n));else if(n instanceof Sc)e.push(new Bc(n.data,n.getAttributes()));else if(n instanceof Ec)e.push(n);else if(X(n))for(const e of n)t(e);else{}}(t);for(let t=1;tt.maxOffset)throw new w("move-operation-nodes-do-not-exist",this);if(t===e&&n=n&&this.targetPosition.path[t]t._clone(!0)))),e=new Hd(this.position,t,this.baseVersion);return e.shouldReceiveAttributes=this.shouldReceiveAttributes,e}getReversed(){const t=this.position.root.document.graveyard,e=new Rc(t,[0]);return new Nd(this.position,this.nodes.maxOffset,e,this.baseVersion+1)}_validate(){const t=this.position.parent;if(!t||t.maxOffsett._clone(!0)))),Rd(this.position,t)}toJSON(){const t=super.toJSON();return t.position=this.position.toJSON(),t.nodes=this.nodes.toJSON(),t}static get className(){return"InsertOperation"}static fromJSON(t,e){const n=[];for(const e of t.nodes)e.name?n.push(Tc.fromJSON(e)):n.push(Bc.fromJSON(e));const i=new Hd(Rc.fromJSON(t.position,e),n,t.baseVersion);return i.shouldReceiveAttributes=t.shouldReceiveAttributes,i}}class jd extends Pd{constructor(t,e,n,i,o){super(o),this.splitPosition=t.clone(),this.splitPosition.stickiness="toNext",this.howMany=e,this.insertionPosition=n,this.graveyardPosition=i?i.clone():null,this.graveyardPosition&&(this.graveyardPosition.stickiness="toNext")}get type(){return"split"}get moveTargetPosition(){const t=this.insertionPosition.path.slice();return t.push(0),new Rc(this.insertionPosition.root,t)}get movedRange(){const t=this.splitPosition.getShiftedBy(Number.POSITIVE_INFINITY);return new Mc(this.splitPosition,t)}get affectedSelectable(){const t=[Mc._createFromPositionAndShift(this.splitPosition,0),Mc._createFromPositionAndShift(this.insertionPosition,0)];return this.graveyardPosition&&t.push(Mc._createFromPositionAndShift(this.graveyardPosition,0)),t}clone(){return new jd(this.splitPosition,this.howMany,this.insertionPosition,this.graveyardPosition,this.baseVersion)}getReversed(){const t=this.splitPosition.root.document.graveyard,e=new Rc(t,[0]);return new qd(this.moveTargetPosition,this.howMany,this.splitPosition,e,this.baseVersion+1)}_validate(){const t=this.splitPosition.parent,e=this.splitPosition.offset;if(!t||t.maxOffset0&&(t.sourcePosition.isEqual(e.sourcePosition.getShiftedBy(e.howMany))&&this._setRelation(t,e,"mergeSourceAffected"),t.targetPosition.isEqual(e.sourcePosition)&&this._setRelation(t,e,"mergeTargetWasBefore"));else if(t instanceof Wd){const n=t.newRange;if(!n)return;if(e instanceof Nd){const i=Mc._createFromPositionAndShift(e.sourcePosition,e.howMany),o=i.containsPosition(n.start)||i.start.isEqual(n.start),r=i.containsPosition(n.end)||i.end.isEqual(n.end);!o&&!r||i.containsRange(n)||this._setRelation(t,e,{side:o?"left":"right",path:o?n.start.path.slice():n.end.path.slice()})}else if(e instanceof qd){const i=n.start.isEqual(e.targetPosition),o=n.start.isEqual(e.deletionPosition),r=n.end.isEqual(e.deletionPosition),s=n.end.isEqual(e.sourcePosition);(i||o||r||s)&&this._setRelation(t,e,{wasInLeftElement:i,wasStartBeforeMergedElement:o,wasEndBeforeMergedElement:r,wasInRightElement:s})}}}getContext(t,e,n){return{aIsStrong:n,aWasUndone:this._wasUndone(t),bWasUndone:this._wasUndone(e),abRelation:this._useRelations?this._getRelation(t,e):null,baRelation:this._useRelations?this._getRelation(e,t):null,forceWeakRemove:this._forceWeakRemove}}_wasUndone(t){const e=this.originalOperations.get(t);return e.wasUndone||this._history.isUndoneOperation(e)}_getRelation(t,e){const n=this.originalOperations.get(e),i=this._history.getUndoneOperation(n);if(!i)return null;const o=this.originalOperations.get(t),r=this._relations.get(o);return r&&r.get(i)||null}_setRelation(t,e,n){const i=this.originalOperations.get(t),o=this.originalOperations.get(e);let r=this._relations.get(i);r||(r=new Map,this._relations.set(i,r)),r.set(o,n)}}function rh(t,e){for(const n of t)n.baseVersion=e++}function sh(t,e){for(let n=0;n{if(t.key===e.key&&t.range.start.hasSameParentAs(e.range.start)){const i=t.range.getDifference(e.range).map((e=>new $d(e,t.key,t.oldValue,t.newValue,0))),o=t.range.getIntersection(e.range);return o&&n.aIsStrong&&i.push(new $d(o,e.key,e.newValue,t.newValue,0)),0==i.length?[new Gd(0)]:i}return[t]})),th($d,Hd,((t,e)=>{if(t.range.start.hasSameParentAs(e.position)&&t.range.containsPosition(e.position)){const n=t.range._getTransformedByInsertion(e.position,e.howMany,!e.shouldReceiveAttributes).map((e=>new $d(e,t.key,t.oldValue,t.newValue,t.baseVersion)));if(e.shouldReceiveAttributes){const i=ah(e,t.key,t.oldValue);i&&n.unshift(i)}return n}return t.range=t.range._getTransformedByInsertion(e.position,e.howMany,!1)[0],[t]})),th($d,qd,((t,e)=>{const n=[];t.range.start.hasSameParentAs(e.deletionPosition)&&(t.range.containsPosition(e.deletionPosition)||t.range.start.isEqual(e.deletionPosition))&&n.push(Mc._createFromPositionAndShift(e.graveyardPosition,1));const i=t.range._getTransformedByMergeOperation(e);return i.isCollapsed||n.push(i),n.map((e=>new $d(e,t.key,t.oldValue,t.newValue,t.baseVersion)))})),th($d,Nd,((t,e)=>{const n=function(t,e){const n=Mc._createFromPositionAndShift(e.sourcePosition,e.howMany);let i=null,o=[];n.containsRange(t,!0)?i=t:t.start.hasSameParentAs(n.start)?(o=t.getDifference(n),i=t.getIntersection(n)):o=[t];const r=[];for(let t of o){t=t._getTransformedByDeletion(e.sourcePosition,e.howMany);const n=e.getMovedRangeStart(),i=t.start.hasSameParentAs(n),o=t._getTransformedByInsertion(n,e.howMany,i);r.push(...o)}i&&r.push(i._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany,!1)[0]);return r}(t.range,e);return n.map((e=>new $d(e,t.key,t.oldValue,t.newValue,t.baseVersion)))})),th($d,jd,((t,e)=>{if(t.range.end.isEqual(e.insertionPosition))return e.graveyardPosition||t.range.end.offset++,[t];if(t.range.start.hasSameParentAs(e.splitPosition)&&t.range.containsPosition(e.splitPosition)){const n=t.clone();return n.range=new Mc(e.moveTargetPosition.clone(),t.range.end._getCombined(e.splitPosition,e.moveTargetPosition)),t.range.end=e.splitPosition.clone(),t.range.end.stickiness="toPrevious",[t,n]}return t.range=t.range._getTransformedBySplitOperation(e),[t]})),th(Hd,$d,((t,e)=>{const n=[t];if(t.shouldReceiveAttributes&&t.position.hasSameParentAs(e.range.start)&&e.range.containsPosition(t.position)){const i=ah(t,e.key,e.newValue);i&&n.push(i)}return n})),th(Hd,Hd,((t,e,n)=>(t.position.isEqual(e.position)&&n.aIsStrong||(t.position=t.position._getTransformedByInsertOperation(e)),[t]))),th(Hd,Nd,((t,e)=>(t.position=t.position._getTransformedByMoveOperation(e),[t]))),th(Hd,jd,((t,e)=>(t.position=t.position._getTransformedBySplitOperation(e),[t]))),th(Hd,qd,((t,e)=>(t.position=t.position._getTransformedByMergeOperation(e),[t]))),th(Wd,Hd,((t,e)=>(t.oldRange&&(t.oldRange=t.oldRange._getTransformedByInsertOperation(e)[0]),t.newRange&&(t.newRange=t.newRange._getTransformedByInsertOperation(e)[0]),[t]))),th(Wd,Wd,((t,e,n)=>{if(t.name==e.name){if(!n.aIsStrong)return[new Gd(0)];t.oldRange=e.newRange?e.newRange.clone():null}return[t]})),th(Wd,qd,((t,e)=>(t.oldRange&&(t.oldRange=t.oldRange._getTransformedByMergeOperation(e)),t.newRange&&(t.newRange=t.newRange._getTransformedByMergeOperation(e)),[t]))),th(Wd,Nd,((t,e,n)=>{if(t.oldRange&&(t.oldRange=Mc._createFromRanges(t.oldRange._getTransformedByMoveOperation(e))),t.newRange){if(n.abRelation){const i=Mc._createFromRanges(t.newRange._getTransformedByMoveOperation(e));if("left"==n.abRelation.side&&e.targetPosition.isEqual(t.newRange.start))return t.newRange.end=i.end,t.newRange.start.path=n.abRelation.path,[t];if("right"==n.abRelation.side&&e.targetPosition.isEqual(t.newRange.end))return t.newRange.start=i.start,t.newRange.end.path=n.abRelation.path,[t]}t.newRange=Mc._createFromRanges(t.newRange._getTransformedByMoveOperation(e))}return[t]})),th(Wd,jd,((t,e,n)=>{if(t.oldRange&&(t.oldRange=t.oldRange._getTransformedBySplitOperation(e)),t.newRange){if(n.abRelation){const i=t.newRange._getTransformedBySplitOperation(e);return t.newRange.start.isEqual(e.splitPosition)&&n.abRelation.wasStartBeforeMergedElement?t.newRange.start=Rc._createAt(e.insertionPosition):t.newRange.start.isEqual(e.splitPosition)&&!n.abRelation.wasInLeftElement&&(t.newRange.start=Rc._createAt(e.moveTargetPosition)),t.newRange.end.isEqual(e.splitPosition)&&n.abRelation.wasInRightElement?t.newRange.end=Rc._createAt(e.moveTargetPosition):t.newRange.end.isEqual(e.splitPosition)&&n.abRelation.wasEndBeforeMergedElement?t.newRange.end=Rc._createAt(e.insertionPosition):t.newRange.end=i.end,[t]}t.newRange=t.newRange._getTransformedBySplitOperation(e)}return[t]})),th(qd,Hd,((t,e)=>(t.sourcePosition.hasSameParentAs(e.position)&&(t.howMany+=e.howMany),t.sourcePosition=t.sourcePosition._getTransformedByInsertOperation(e),t.targetPosition=t.targetPosition._getTransformedByInsertOperation(e),[t]))),th(qd,qd,((t,e,n)=>{if(t.sourcePosition.isEqual(e.sourcePosition)&&t.targetPosition.isEqual(e.targetPosition)){if(n.bWasUndone){const n=e.graveyardPosition.path.slice();return n.push(0),t.sourcePosition=new Rc(e.graveyardPosition.root,n),t.howMany=0,[t]}return[new Gd(0)]}if(t.sourcePosition.isEqual(e.sourcePosition)&&!t.targetPosition.isEqual(e.targetPosition)&&!n.bWasUndone&&"splitAtSource"!=n.abRelation){const i="$graveyard"==t.targetPosition.root.rootName,o="$graveyard"==e.targetPosition.root.rootName;if(o&&!i||!(i&&!o)&&n.aIsStrong){const n=e.targetPosition._getTransformedByMergeOperation(e),i=t.targetPosition._getTransformedByMergeOperation(e);return[new Nd(n,t.howMany,i,0)]}return[new Gd(0)]}return t.sourcePosition.hasSameParentAs(e.targetPosition)&&(t.howMany+=e.howMany),t.sourcePosition=t.sourcePosition._getTransformedByMergeOperation(e),t.targetPosition=t.targetPosition._getTransformedByMergeOperation(e),t.graveyardPosition.isEqual(e.graveyardPosition)&&n.aIsStrong||(t.graveyardPosition=t.graveyardPosition._getTransformedByMergeOperation(e)),[t]})),th(qd,Nd,((t,e,n)=>{const i=Mc._createFromPositionAndShift(e.sourcePosition,e.howMany);return"remove"==e.type&&!n.bWasUndone&&!n.forceWeakRemove&&t.deletionPosition.hasSameParentAs(e.sourcePosition)&&i.containsPosition(t.sourcePosition)?[new Gd(0)]:(e.sourcePosition.getShiftedBy(e.howMany).isEqual(t.sourcePosition)?t.sourcePosition.stickiness="toNone":e.targetPosition.isEqual(t.sourcePosition)&&"mergeSourceAffected"==n.abRelation?t.sourcePosition.stickiness="toNext":e.sourcePosition.isEqual(t.targetPosition)?(t.targetPosition.stickiness="toNone",t.howMany-=e.howMany):e.targetPosition.isEqual(t.targetPosition)&&"mergeTargetWasBefore"==n.abRelation?(t.targetPosition.stickiness="toPrevious",t.howMany+=e.howMany):(t.sourcePosition.hasSameParentAs(e.targetPosition)&&(t.howMany+=e.howMany),t.sourcePosition.hasSameParentAs(e.sourcePosition)&&(t.howMany-=e.howMany)),t.sourcePosition=t.sourcePosition._getTransformedByMoveOperation(e),t.targetPosition=t.targetPosition._getTransformedByMoveOperation(e),t.sourcePosition.stickiness="toPrevious",t.targetPosition.stickiness="toNext",t.graveyardPosition.isEqual(e.targetPosition)||(t.graveyardPosition=t.graveyardPosition._getTransformedByMoveOperation(e)),[t])})),th(qd,jd,((t,e,n)=>{if(e.graveyardPosition&&(t.graveyardPosition=t.graveyardPosition._getTransformedByDeletion(e.graveyardPosition,1),t.deletionPosition.isEqual(e.graveyardPosition)&&(t.howMany=e.howMany)),t.targetPosition.isEqual(e.splitPosition)){const i=0!=e.howMany,o=e.graveyardPosition&&t.deletionPosition.isEqual(e.graveyardPosition);if(i||o||"mergeTargetNotMoved"==n.abRelation)return t.sourcePosition=t.sourcePosition._getTransformedBySplitOperation(e),[t]}if(t.sourcePosition.isEqual(e.splitPosition)){if("mergeSourceNotMoved"==n.abRelation)return t.howMany=0,t.targetPosition=t.targetPosition._getTransformedBySplitOperation(e),[t];if("mergeSameElement"==n.abRelation||t.sourcePosition.offset>0)return t.sourcePosition=e.moveTargetPosition.clone(),t.targetPosition=t.targetPosition._getTransformedBySplitOperation(e),[t]}return t.sourcePosition.hasSameParentAs(e.splitPosition)&&(t.howMany=e.splitPosition.offset),t.sourcePosition=t.sourcePosition._getTransformedBySplitOperation(e),t.targetPosition=t.targetPosition._getTransformedBySplitOperation(e),[t]})),th(Nd,Hd,((t,e)=>{const n=Mc._createFromPositionAndShift(t.sourcePosition,t.howMany)._getTransformedByInsertOperation(e,!1)[0];return t.sourcePosition=n.start,t.howMany=n.end.offset-n.start.offset,t.targetPosition.isEqual(e.position)||(t.targetPosition=t.targetPosition._getTransformedByInsertOperation(e)),[t]})),th(Nd,Nd,((t,e,n)=>{const i=Mc._createFromPositionAndShift(t.sourcePosition,t.howMany),o=Mc._createFromPositionAndShift(e.sourcePosition,e.howMany);let r,s=n.aIsStrong,a=!n.aIsStrong;if("insertBefore"==n.abRelation||"insertAfter"==n.baRelation?a=!0:"insertAfter"!=n.abRelation&&"insertBefore"!=n.baRelation||(a=!1),r=t.targetPosition.isEqual(e.targetPosition)&&a?t.targetPosition._getTransformedByDeletion(e.sourcePosition,e.howMany):t.targetPosition._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany),ch(t,e)&&ch(e,t))return[e.getReversed()];if(i.containsPosition(e.targetPosition)&&i.containsRange(o,!0))return i.start=i.start._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany),i.end=i.end._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany),lh([i],r);if(o.containsPosition(t.targetPosition)&&o.containsRange(i,!0))return i.start=i.start._getCombined(e.sourcePosition,e.getMovedRangeStart()),i.end=i.end._getCombined(e.sourcePosition,e.getMovedRangeStart()),lh([i],r);const c=Q(t.sourcePosition.getParentPath(),e.sourcePosition.getParentPath());if("prefix"==c||"extension"==c)return i.start=i.start._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany),i.end=i.end._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany),lh([i],r);"remove"!=t.type||"remove"==e.type||n.aWasUndone||n.forceWeakRemove?"remove"==t.type||"remove"!=e.type||n.bWasUndone||n.forceWeakRemove||(s=!1):s=!0;const l=[],d=i.getDifference(o);for(const t of d){t.start=t.start._getTransformedByDeletion(e.sourcePosition,e.howMany),t.end=t.end._getTransformedByDeletion(e.sourcePosition,e.howMany);const n="same"==Q(t.start.getParentPath(),e.getMovedRangeStart().getParentPath()),i=t._getTransformedByInsertion(e.getMovedRangeStart(),e.howMany,n);l.push(...i)}const h=i.getIntersection(o);return null!==h&&s&&(h.start=h.start._getCombined(e.sourcePosition,e.getMovedRangeStart()),h.end=h.end._getCombined(e.sourcePosition,e.getMovedRangeStart()),0===l.length?l.push(h):1==l.length?o.start.isBefore(i.start)||o.start.isEqual(i.start)?l.unshift(h):l.push(h):l.splice(1,0,h)),0===l.length?[new Gd(t.baseVersion)]:lh(l,r)})),th(Nd,jd,((t,e,n)=>{let i=t.targetPosition.clone();t.targetPosition.isEqual(e.insertionPosition)&&e.graveyardPosition&&"moveTargetAfter"!=n.abRelation||(i=t.targetPosition._getTransformedBySplitOperation(e));const o=Mc._createFromPositionAndShift(t.sourcePosition,t.howMany);if(o.end.isEqual(e.insertionPosition))return e.graveyardPosition||t.howMany++,t.targetPosition=i,[t];if(o.start.hasSameParentAs(e.splitPosition)&&o.containsPosition(e.splitPosition)){let t=new Mc(e.splitPosition,o.end);t=t._getTransformedBySplitOperation(e);return lh([new Mc(o.start,e.splitPosition),t],i)}t.targetPosition.isEqual(e.splitPosition)&&"insertAtSource"==n.abRelation&&(i=e.moveTargetPosition),t.targetPosition.isEqual(e.insertionPosition)&&"insertBetween"==n.abRelation&&(i=t.targetPosition);const r=[o._getTransformedBySplitOperation(e)];if(e.graveyardPosition){const i=o.start.isEqual(e.graveyardPosition)||o.containsPosition(e.graveyardPosition);t.howMany>1&&i&&!n.aWasUndone&&r.push(Mc._createFromPositionAndShift(e.insertionPosition,1))}return lh(r,i)})),th(Nd,qd,((t,e,n)=>{const i=Mc._createFromPositionAndShift(t.sourcePosition,t.howMany);if(e.deletionPosition.hasSameParentAs(t.sourcePosition)&&i.containsPosition(e.sourcePosition))if("remove"!=t.type||n.forceWeakRemove){if(1==t.howMany)return n.bWasUndone?(t.sourcePosition=e.graveyardPosition.clone(),t.targetPosition=t.targetPosition._getTransformedByMergeOperation(e),[t]):[new Gd(0)]}else if(!n.aWasUndone){const n=[];let i=e.graveyardPosition.clone(),o=e.targetPosition._getTransformedByMergeOperation(e);t.howMany>1&&(n.push(new Nd(t.sourcePosition,t.howMany-1,t.targetPosition,0)),i=i._getTransformedByMove(t.sourcePosition,t.targetPosition,t.howMany-1),o=o._getTransformedByMove(t.sourcePosition,t.targetPosition,t.howMany-1));const r=e.deletionPosition._getCombined(t.sourcePosition,t.targetPosition),s=new Nd(i,1,r,0),a=s.getMovedRangeStart().path.slice();a.push(0);const c=new Rc(s.targetPosition.root,a);o=o._getTransformedByMove(i,r,1);const l=new Nd(o,e.howMany,c,0);return n.push(s),n.push(l),n}const o=Mc._createFromPositionAndShift(t.sourcePosition,t.howMany)._getTransformedByMergeOperation(e);return t.sourcePosition=o.start,t.howMany=o.end.offset-o.start.offset,t.targetPosition=t.targetPosition._getTransformedByMergeOperation(e),[t]})),th(Kd,Hd,((t,e)=>(t.position=t.position._getTransformedByInsertOperation(e),[t]))),th(Kd,qd,((t,e)=>t.position.isEqual(e.deletionPosition)?(t.position=e.graveyardPosition.clone(),t.position.stickiness="toNext",[t]):(t.position=t.position._getTransformedByMergeOperation(e),[t]))),th(Kd,Nd,((t,e)=>(t.position=t.position._getTransformedByMoveOperation(e),[t]))),th(Kd,Kd,((t,e,n)=>{if(t.position.isEqual(e.position)){if(!n.aIsStrong)return[new Gd(0)];t.oldName=e.newName}return[t]})),th(Kd,jd,((t,e)=>{if("same"==Q(t.position.path,e.splitPosition.getParentPath())&&!e.graveyardPosition){const e=new Kd(t.position.getShiftedBy(1),t.oldName,t.newName,0);return[t,e]}return t.position=t.position._getTransformedBySplitOperation(e),[t]})),th(Jd,Jd,((t,e,n)=>{if(t.root===e.root&&t.key===e.key){if(!n.aIsStrong||t.newValue===e.newValue)return[new Gd(0)];t.oldValue=e.newValue}return[t]})),th(Zd,Zd,((t,e)=>t.rootName===e.rootName&&t.isAdd===e.isAdd?[new Gd(0)]:[t])),th(jd,Hd,((t,e)=>(t.splitPosition.hasSameParentAs(e.position)&&t.splitPosition.offset{if(!t.graveyardPosition&&!n.bWasUndone&&t.splitPosition.hasSameParentAs(e.sourcePosition)){const n=e.graveyardPosition.path.slice();n.push(0);const i=new Rc(e.graveyardPosition.root,n),o=jd.getInsertionPosition(new Rc(e.graveyardPosition.root,n)),r=new jd(i,0,o,null,0);return t.splitPosition=t.splitPosition._getTransformedByMergeOperation(e),t.insertionPosition=jd.getInsertionPosition(t.splitPosition),t.graveyardPosition=r.insertionPosition.clone(),t.graveyardPosition.stickiness="toNext",[r,t]}return t.splitPosition.hasSameParentAs(e.deletionPosition)&&!t.splitPosition.isAfter(e.deletionPosition)&&t.howMany--,t.splitPosition.hasSameParentAs(e.targetPosition)&&(t.howMany+=e.howMany),t.splitPosition=t.splitPosition._getTransformedByMergeOperation(e),t.insertionPosition=jd.getInsertionPosition(t.splitPosition),t.graveyardPosition&&(t.graveyardPosition=t.graveyardPosition._getTransformedByMergeOperation(e)),[t]})),th(jd,Nd,((t,e,n)=>{const i=Mc._createFromPositionAndShift(e.sourcePosition,e.howMany);if(t.graveyardPosition){const o=i.start.isEqual(t.graveyardPosition)||i.containsPosition(t.graveyardPosition);if(!n.bWasUndone&&o){const n=t.splitPosition._getTransformedByMoveOperation(e),i=t.graveyardPosition._getTransformedByMoveOperation(e),o=i.path.slice();o.push(0);const r=new Rc(i.root,o);return[new Nd(n,t.howMany,r,0)]}t.graveyardPosition=t.graveyardPosition._getTransformedByMoveOperation(e)}const o=t.splitPosition.isEqual(e.targetPosition);if(o&&("insertAtSource"==n.baRelation||"splitBefore"==n.abRelation))return t.howMany+=e.howMany,t.splitPosition=t.splitPosition._getTransformedByDeletion(e.sourcePosition,e.howMany),t.insertionPosition=jd.getInsertionPosition(t.splitPosition),[t];if(o&&n.abRelation&&n.abRelation.howMany){const{howMany:e,offset:i}=n.abRelation;return t.howMany+=e,t.splitPosition=t.splitPosition.getShiftedBy(i),[t]}if(t.splitPosition.hasSameParentAs(e.sourcePosition)&&i.containsPosition(t.splitPosition)){const n=e.howMany-(t.splitPosition.offset-e.sourcePosition.offset);return t.howMany-=n,t.splitPosition.hasSameParentAs(e.targetPosition)&&t.splitPosition.offset{if(t.splitPosition.isEqual(e.splitPosition)){if(!t.graveyardPosition&&!e.graveyardPosition)return[new Gd(0)];if(t.graveyardPosition&&e.graveyardPosition&&t.graveyardPosition.isEqual(e.graveyardPosition))return[new Gd(0)];if("splitBefore"==n.abRelation)return t.howMany=0,t.graveyardPosition=t.graveyardPosition._getTransformedBySplitOperation(e),[t]}if(t.graveyardPosition&&e.graveyardPosition&&t.graveyardPosition.isEqual(e.graveyardPosition)){const i="$graveyard"==t.splitPosition.root.rootName,o="$graveyard"==e.splitPosition.root.rootName;if(o&&!i||!(i&&!o)&&n.aIsStrong){const n=[];return e.howMany&&n.push(new Nd(e.moveTargetPosition,e.howMany,e.splitPosition,0)),t.howMany&&n.push(new Nd(t.splitPosition,t.howMany,t.moveTargetPosition,0)),n}return[new Gd(0)]}if(t.graveyardPosition&&(t.graveyardPosition=t.graveyardPosition._getTransformedBySplitOperation(e)),t.splitPosition.isEqual(e.insertionPosition)&&"splitBefore"==n.abRelation)return t.howMany++,[t];if(e.splitPosition.isEqual(t.insertionPosition)&&"splitBefore"==n.baRelation){const n=e.insertionPosition.path.slice();n.push(0);const i=new Rc(e.insertionPosition.root,n);return[t,new Nd(t.insertionPosition,1,i,0)]}return t.splitPosition.hasSameParentAs(e.splitPosition)&&t.splitPosition.offset{const n=e[0];n.isDocumentOperation&&uh.call(this,n)}),{priority:"low"})}function uh(t){const e=this.getTransformedByOperation(t);if(!this.isEqual(e)){const t=this.toPosition();this.path=e.path,this.root=e.root,this.fire("change",t)}}dh.prototype.is=function(t){return"livePosition"===t||"model:livePosition"===t||"position"==t||"model:position"===t};class mh{constructor(t={}){"string"==typeof t&&(t="transparent"===t?{isUndoable:!1}:{},_("batch-constructor-deprecated-string-type"));const{isUndoable:e=!0,isLocal:n=!0,isUndo:i=!1,isTyping:o=!1}=t;this.operations=[],this.isUndoable=e,this.isLocal=n,this.isUndo=i,this.isTyping=o}get type(){return _("batch-type-deprecated"),"default"}get baseVersion(){for(const t of this.operations)if(null!==t.baseVersion)return t.baseVersion;return null}addOperation(t){return t.batch=this,this.operations.push(t),t}}var gh=Object.defineProperty,ph=Object.defineProperties,fh=Object.getOwnPropertyDescriptors,bh=Object.getOwnPropertySymbols,kh=Object.prototype.hasOwnProperty,wh=Object.prototype.propertyIsEnumerable,_h=(t,e,n)=>e in t?gh(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Ah=(t,e)=>{for(var n in e||(e={}))kh.call(e,n)&&_h(t,n,e[n]);if(bh)for(var n of bh(e))wh.call(e,n)&&_h(t,n,e[n]);return t};class Ch{constructor(t){this._changesInElement=new Map,this._elementSnapshots=new Map,this._changedMarkers=new Map,this._changedRoots=new Map,this._changeCount=0,this._cachedChanges=null,this._cachedChangesWithGraveyard=null,this._refreshedItems=new Set,this._markerCollection=t}get isEmpty(){return 0==this._changesInElement.size&&0==this._changedMarkers.size&&0==this._changedRoots.size}bufferOperation(t){const e=t;switch(e.type){case"insert":if(this._isInInsertedElement(e.position.parent))return;this._markInsert(e.position.parent,e.position.offset,e.nodes.maxOffset);break;case"addAttribute":case"removeAttribute":case"changeAttribute":for(const t of e.range.getItems({shallow:!0}))this._isInInsertedElement(t.parent)||this._markAttribute(t);break;case"remove":case"move":case"reinsert":{if(e.sourcePosition.isEqual(e.targetPosition)||e.sourcePosition.getShiftedBy(e.howMany).isEqual(e.targetPosition))return;const t=this._isInInsertedElement(e.sourcePosition.parent),n=this._isInInsertedElement(e.targetPosition.parent);t||this._markRemove(e.sourcePosition.parent,e.sourcePosition.offset,e.howMany),n||this._markInsert(e.targetPosition.parent,e.getMovedRangeStart().offset,e.howMany);break}case"rename":{if(this._isInInsertedElement(e.position.parent))return;this._markRemove(e.position.parent,e.position.offset,1),this._markInsert(e.position.parent,e.position.offset,1);const t=Mc._createFromPositionAndShift(e.position,1);for(const e of this._markerCollection.getMarkersIntersectingRange(t)){const t=e.getData();this.bufferMarkerChange(e.name,t,t)}break}case"split":{const t=e.splitPosition.parent;this._isInInsertedElement(t)||this._markRemove(t,e.splitPosition.offset,e.howMany),this._isInInsertedElement(e.insertionPosition.parent)||this._markInsert(e.insertionPosition.parent,e.insertionPosition.offset,1),e.graveyardPosition&&this._markRemove(e.graveyardPosition.parent,e.graveyardPosition.offset,1);break}case"merge":{const t=e.sourcePosition.parent;this._isInInsertedElement(t.parent)||this._markRemove(t.parent,t.startOffset,1);const n=e.graveyardPosition.parent;this._markInsert(n,e.graveyardPosition.offset,1);const i=e.targetPosition.parent;this._isInInsertedElement(i)||this._markInsert(i,e.targetPosition.offset,t.maxOffset);break}case"detachRoot":case"addRoot":{const t=e.affectedSelectable;if(!t._isLoaded)return;if(t.isAttached()==e.isAdd)return;this._bufferRootStateChange(e.rootName,e.isAdd);break}case"addRootAttribute":case"removeRootAttribute":case"changeRootAttribute":{if(!e.root._isLoaded)return;const t=e.root.rootName;this._bufferRootAttributeChange(t,e.key,e.oldValue,e.newValue);break}}this._cachedChanges=null}bufferMarkerChange(t,e,n){e.range&&e.range.root.is("rootElement")&&!e.range.root._isLoaded&&(e.range=null),n.range&&n.range.root.is("rootElement")&&!n.range.root._isLoaded&&(n.range=null);let i=this._changedMarkers.get(t);i?i.newMarkerData=n:(i={newMarkerData:n,oldMarkerData:e},this._changedMarkers.set(t,i)),null==i.oldMarkerData.range&&null==n.range&&this._changedMarkers.delete(t)}getMarkersToRemove(){const t=[];for(const[e,n]of this._changedMarkers)null!=n.oldMarkerData.range&&t.push({name:e,range:n.oldMarkerData.range});return t}getMarkersToAdd(){const t=[];for(const[e,n]of this._changedMarkers)null!=n.newMarkerData.range&&t.push({name:e,range:n.newMarkerData.range});return t}getChangedMarkers(){return Array.from(this._changedMarkers).map((([t,e])=>({name:t,data:{oldRange:e.oldMarkerData.range,newRange:e.newMarkerData.range}})))}hasDataChanges(){if(this.getChanges().length)return!0;if(this._changedRoots.size>0)return!0;for(const{newMarkerData:t,oldMarkerData:e}of this._changedMarkers.values()){if(t.affectsData!==e.affectsData)return!0;if(t.affectsData){const n=t.range&&!e.range,i=!t.range&&e.range,o=t.range&&e.range&&!t.range.isEqual(e.range);if(n||i||o)return!0}}return!1}getChanges(t={}){if(this._cachedChanges)return t.includeChangesInGraveyard?this._cachedChangesWithGraveyard.slice():this._cachedChanges.slice();let e=[];for(const t of this._changesInElement.keys()){const n=this._changesInElement.get(t).sort(((t,e)=>t.offset===e.offset?t.type!=e.type?"remove"==t.type?-1:1:0:t.offsett.position.root!=e.position.root?t.position.root.rootNamet));for(const t of e)delete t.changeCount,"attribute"==t.type&&(delete t.position,delete t.length);return this._changeCount=0,this._cachedChangesWithGraveyard=e,this._cachedChanges=e.filter(xh),t.includeChangesInGraveyard?this._cachedChangesWithGraveyard.slice():this._cachedChanges.slice()}getChangedRoots(){return Array.from(this._changedRoots.values()).map((t=>{const e=Ah({},t);return void 0!==e.state&&delete e.attributes,e}))}getRefreshedItems(){return new Set(this._refreshedItems)}reset(){this._changesInElement.clear(),this._elementSnapshots.clear(),this._changedMarkers.clear(),this._changedRoots.clear(),this._refreshedItems=new Set,this._cachedChanges=null}_bufferRootStateChange(t,e){if(!this._changedRoots.has(t))return void this._changedRoots.set(t,{name:t,state:e?"attached":"detached"});const n=this._changedRoots.get(t);void 0!==n.state?(delete n.state,void 0===n.attributes&&this._changedRoots.delete(t)):n.state=e?"attached":"detached"}_bufferRootAttributeChange(t,e,n,i){const o=this._changedRoots.get(t)||{name:t},r=o.attributes||{};if(r[e]){const t=r[e];i===t.oldValue?delete r[e]:t.newValue=i}else r[e]={oldValue:n,newValue:i};0===Object.entries(r).length?(delete o.attributes,void 0===o.state&&this._changedRoots.delete(t)):(o.attributes=r,this._changedRoots.set(t,o))}_refreshItem(t){if(this._isInInsertedElement(t.parent))return;this._markRemove(t.parent,t.startOffset,t.offsetSize),this._markInsert(t.parent,t.startOffset,t.offsetSize),this._refreshedItems.add(t);const e=Mc._createOn(t);for(const t of this._markerCollection.getMarkersIntersectingRange(e)){const e=t.getData();this.bufferMarkerChange(t.name,e,e)}this._cachedChanges=null}_bufferRootLoad(t){if(t.isAttached()){this._bufferRootStateChange(t.rootName,!0),this._markInsert(t,0,t.maxOffset);for(const e of t.getAttributeKeys())this._bufferRootAttributeChange(t.rootName,e,null,t.getAttribute(e));for(const n of this._markerCollection)if(n.getRange().root==t){const t=n.getData();this.bufferMarkerChange(n.name,(e=Ah({},t),ph(e,fh({range:null}))),t)}var e}}_markInsert(t,e,n){if(t.root.is("rootElement")&&!t.root._isLoaded)return;const i={type:"insert",offset:e,howMany:n,count:this._changeCount++};this._markChange(t,i)}_markRemove(t,e,n){if(t.root.is("rootElement")&&!t.root._isLoaded)return;const i={type:"remove",offset:e,howMany:n,count:this._changeCount++};this._markChange(t,i),this._removeAllNestedChanges(t,e,n)}_markAttribute(t){if(t.root.is("rootElement")&&!t.root._isLoaded)return;const e={type:"attribute",offset:t.startOffset,howMany:t.offsetSize,count:this._changeCount++};this._markChange(t.parent,e)}_markChange(t,e){this._makeSnapshot(t);const n=this._getChangesForElement(t);this._handleChange(e,n),n.push(e);for(let t=0;tn.offset){if(i>o){const t={type:"attribute",offset:o,howMany:i-o,count:this._changeCount++};this._handleChange(t,e),e.push(t)}t.nodesToHandle=n.offset-t.offset,t.howMany=t.nodesToHandle}else t.offset>=n.offset&&t.offseto?(t.nodesToHandle=i-o,t.offset=o):t.nodesToHandle=0);if("remove"==n.type&&t.offsetn.offset){const o={type:"attribute",offset:n.offset,howMany:i-n.offset,count:this._changeCount++};this._handleChange(o,e),e.push(o),t.nodesToHandle=n.offset-t.offset,t.howMany=t.nodesToHandle}"attribute"==n.type&&(t.offset>=n.offset&&i<=o?(t.nodesToHandle=0,t.howMany=0,t.offset=0):t.offset<=n.offset&&i>=o&&(n.howMany=0))}}t.howMany=t.nodesToHandle,delete t.nodesToHandle}_getInsertDiff(t,e,n){return{type:"insert",position:Rc._createAt(t,e),name:n.name,attributes:new Map(n.attributes),length:1,changeCount:this._changeCount++,_element:n.element}}_getRemoveDiff(t,e,n){return{type:"remove",position:Rc._createAt(t,e),name:n.name,attributes:new Map(n.attributes),length:1,changeCount:this._changeCount++,_element:n.element}}_getAttributesDiff(t,e,n){const i=[];n=new Map(n);for(const[o,r]of e){const e=n.has(o)?n.get(o):null;e!==r&&i.push({type:"attribute",position:t.start,range:t.clone(),length:1,attributeKey:o,attributeOldValue:r,attributeNewValue:e,changeCount:this._changeCount++}),n.delete(o)}for(const[e,o]of n)i.push({type:"attribute",position:t.start,range:t.clone(),length:1,attributeKey:e,attributeOldValue:null,attributeNewValue:o,changeCount:this._changeCount++});return i}_isInInsertedElement(t){const e=t.parent;if(!e)return!1;const n=this._changesInElement.get(e),i=t.startOffset;if(n)for(const t of n)if("insert"==t.type&&i>=t.offset&&ii){for(let e=0;ethis._version+1&&this._gaps.set(this._version,t),this._version=t}get lastOperation(){return this._operations[this._operations.length-1]}addOperation(t){if(t.baseVersion!==this.version)throw new w("model-document-history-addoperation-incorrect-version",this,{operation:t,historyVersion:this.version});this._operations.push(t),this._version++,this._baseVersionToOperationIndex.set(t.baseVersion,this._operations.length-1)}getOperations(t,e=this.version){if(!this._operations.length)return[];const n=this._operations[0];void 0===t&&(t=n.baseVersion);let i=e-1;for(const[e,n]of this._gaps)t>e&&te&&ithis.lastOperation.baseVersion)return[];let o=this._baseVersionToOperationIndex.get(t);void 0===o&&(o=0);let r=this._baseVersionToOperationIndex.get(i);return void 0===r&&(r=this._operations.length-1),this._operations.slice(o,r+1)}getOperation(t){const e=this._baseVersionToOperationIndex.get(t);if(void 0!==e)return this._operations[e]}setOperationAsUndone(t,e){this._undoPairs.set(e,t),this._undoneOperations.add(t)}isUndoingOperation(t){return this._undoPairs.has(t)}isUndoneOperation(t){return this._undoneOperations.has(t)}getUndoneOperation(t){return this._undoPairs.get(t)}reset(){this._version=0,this._undoPairs=new Map,this._operations=[],this._undoneOperations=new Set,this._gaps=new Map,this._baseVersionToOperationIndex=new Map}}class Dh extends Tc{constructor(t,e,n="main"){super(e),this._isAttached=!0,this._isLoaded=!0,this._document=t,this.rootName=n}get document(){return this._document}isAttached(){return this._isAttached}toJSON(){return this.rootName}}Dh.prototype.is=function(t,e){return e?e===this.name&&("rootElement"===t||"model:rootElement"===t||"element"===t||"model:element"===t):"rootElement"===t||"model:rootElement"===t||"element"===t||"model:element"===t||"node"===t||"model:node"===t};var Bh=Object.defineProperty,Sh=Object.defineProperties,Th=Object.getOwnPropertyDescriptors,Ih=Object.getOwnPropertySymbols,Ph=Object.prototype.hasOwnProperty,Rh=Object.prototype.propertyIsEnumerable,Vh=(t,e,n)=>e in t?Bh(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Fh=(t,e)=>{for(var n in e||(e={}))Ph.call(e,n)&&Vh(t,n,e[n]);if(Ih)for(var n of Ih(e))Rh.call(e,n)&&Vh(t,n,e[n]);return t},Lh=(t,e)=>Sh(t,Th(e));const Oh="$graveyard";class zh extends(S()){constructor(t){super(),this.model=t,this.history=new Eh,this.selection=new ul(this),this.roots=new Uo({idProperty:"rootName"}),this.differ=new Ch(t.markers),this.isReadOnly=!1,this._postFixers=new Set,this._hasSelectionChangedFromTheLastChangeBlock=!1,this.createRoot("$root",Oh),this.listenTo(t,"applyOperation",((t,e)=>{const n=e[0];n.isDocumentOperation&&this.differ.bufferOperation(n)}),{priority:"high"}),this.listenTo(t,"applyOperation",((t,e)=>{const n=e[0];n.isDocumentOperation&&this.history.addOperation(n)}),{priority:"low"}),this.listenTo(this.selection,"change",(()=>{this._hasSelectionChangedFromTheLastChangeBlock=!0})),this.listenTo(t.markers,"update",((t,e,n,i,o)=>{const r=Lh(Fh({},e.getData()),{range:i});this.differ.bufferMarkerChange(e.name,o,r),null===n&&e.on("change",((t,n)=>{const i=e.getData();this.differ.bufferMarkerChange(e.name,Lh(Fh({},i),{range:n}),i)}))})),this.registerPostFixer((t=>{let e=!1;for(const n of this.roots)n.isAttached()||n.isEmpty||(t.remove(t.createRangeIn(n)),e=!0);for(const n of this.model.markers)n.getRange().root.isAttached()||(t.removeMarker(n),e=!0);return e}))}get version(){return this.history.version}set version(t){this.history.version=t}get graveyard(){return this.getRoot(Oh)}createRoot(t="$root",e="main"){if(this.roots.get(e))throw new w("model-document-createroot-name-exists",this,{name:e});const n=new Dh(this,t,e);return this.roots.add(n),n}destroy(){this.selection.destroy(),this.stopListening()}getRoot(t="main"){return this.roots.get(t)}getRootNames(t=!1){return this.getRoots(t).map((t=>t.rootName))}getRoots(t=!1){return this.roots.filter((e=>e!=this.graveyard&&(t||e.isAttached())&&e._isLoaded))}registerPostFixer(t){this._postFixers.add(t)}toJSON(){const t=Dr(this);return t.selection="[engine.model.DocumentSelection]",t.model="[engine.model.Model]",t}_handleChangeBlock(t){this._hasDocumentChangedFromTheLastChangeBlock()&&(this._callPostFixers(t),this.selection.refresh(),this.differ.hasDataChanges()?this.fire("change:data",t.batch):this.fire("change",t.batch),this.selection.refresh(),this.differ.reset()),this._hasSelectionChangedFromTheLastChangeBlock=!1}_hasDocumentChangedFromTheLastChangeBlock(){return!this.differ.isEmpty||this._hasSelectionChangedFromTheLastChangeBlock}_getDefaultRoot(){const t=this.getRoots();return t.length?t[0]:this.graveyard}_getDefaultRange(){const t=this._getDefaultRoot(),e=this.model,n=e.schema,i=e.createPositionFromPath(t,[0]);return n.getNearestSelectionRange(i)||e.createRange(i)}_validateSelectionRange(t){return Mh(t.start)&&Mh(t.end)}_callPostFixers(t){let e=!1;do{for(const n of this._postFixers)if(this.selection.refresh(),e=n(t),e)break}while(e)}}function Mh(t){const e=t.textNode;if(e){const n=e.data,i=t.offset-e.startOffset;return!Yo(n,i)&&!Qo(n,i)}return!0}var Nh=Object.defineProperty,Hh=Object.defineProperties,jh=Object.getOwnPropertyDescriptors,qh=Object.getOwnPropertySymbols,Wh=Object.prototype.hasOwnProperty,Uh=Object.prototype.propertyIsEnumerable,$h=(t,e,n)=>e in t?Nh(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class Gh extends(S()){constructor(){super(...arguments),this._markers=new Map}[Symbol.iterator](){return this._markers.values()}has(t){const e=t instanceof Kh?t.name:t;return this._markers.has(e)}get(t){return this._markers.get(t)||null}_set(t,e,n=!1,i=!1){const o=t instanceof Kh?t.name:t;if(o.includes(","))throw new w("markercollection-incorrect-marker-name",this);const r=this._markers.get(o);if(r){const t=r.getData(),s=r.getRange();let a=!1;return s.isEqual(e)||(r._attachLiveRange(cl.fromRange(e)),a=!0),n!=r.managedUsingOperations&&(r._managedUsingOperations=n,a=!0),"boolean"==typeof i&&i!=r.affectsData&&(r._affectsData=i,a=!0),a&&this.fire(`update:${o}`,r,s,e,t),r}const s=cl.fromRange(e),a=new Kh(o,s,n,i);var c;return this._markers.set(o,a),this.fire(`update:${o}`,a,null,e,(c=((t,e)=>{for(var n in e||(e={}))Wh.call(e,n)&&$h(t,n,e[n]);if(qh)for(var n of qh(e))Uh.call(e,n)&&$h(t,n,e[n]);return t})({},a.getData()),Hh(c,jh({range:null})))),a}_remove(t){const e=t instanceof Kh?t.name:t,n=this._markers.get(e);return!!n&&(this._markers.delete(e),this.fire(`update:${e}`,n,n.getRange(),null,n.getData()),this._destroyMarker(n),!0)}_refresh(t){const e=t instanceof Kh?t.name:t,n=this._markers.get(e);if(!n)throw new w("markercollection-refresh-marker-not-exists",this);const i=n.getRange();this.fire(`update:${e}`,n,i,i,n.getData())}*getMarkersAtPosition(t){for(const e of this)e.getRange().containsPosition(t)&&(yield e)}*getMarkersIntersectingRange(t){for(const e of this)null!==e.getRange().getIntersection(t)&&(yield e)}destroy(){for(const t of this._markers.values())this._destroyMarker(t);this._markers=null,this.stopListening()}*getMarkersGroup(t){for(const e of this._markers.values())e.name.startsWith(t+":")&&(yield e)}_destroyMarker(t){t.stopListening(),t._detachLiveRange()}}class Kh extends(S(xc)){constructor(t,e,n,i){super(),this.name=t,this._liveRange=this._attachLiveRange(e),this._managedUsingOperations=n,this._affectsData=i}get managedUsingOperations(){if(!this._liveRange)throw new w("marker-destroyed",this);return this._managedUsingOperations}get affectsData(){if(!this._liveRange)throw new w("marker-destroyed",this);return this._affectsData}getData(){return{range:this.getRange(),affectsData:this.affectsData,managedUsingOperations:this.managedUsingOperations}}getStart(){if(!this._liveRange)throw new w("marker-destroyed",this);return this._liveRange.start.clone()}getEnd(){if(!this._liveRange)throw new w("marker-destroyed",this);return this._liveRange.end.clone()}getRange(){if(!this._liveRange)throw new w("marker-destroyed",this);return this._liveRange.toRange()}_attachLiveRange(t){return this._liveRange&&this._detachLiveRange(),t.delegate("change:range").to(this),t.delegate("change:content").to(this),this._liveRange=t,t}_detachLiveRange(){this._liveRange.stopDelegating("change:range",this),this._liveRange.stopDelegating("change:content",this),this._liveRange.detach(),this._liveRange=null}}Kh.prototype.is=function(t){return"marker"===t||"model:marker"===t};class Jh extends Pd{constructor(t,e){super(null),this.sourcePosition=t.clone(),this.howMany=e}get type(){return"detach"}get affectedSelectable(){return null}toJSON(){const t=super.toJSON();return t.sourcePosition=this.sourcePosition.toJSON(),t}_validate(){if(this.sourcePosition.root.document)throw new w("detach-operation-on-document-node",this)}_execute(){Vd(Mc._createFromPositionAndShift(this.sourcePosition,this.howMany))}static get className(){return"DetachOperation"}}class Zh extends xc{constructor(t){super(),this.markers=new Map,this._children=new Dc,t&&this._insertChild(0,t)}[Symbol.iterator](){return this.getChildren()}get childCount(){return this._children.length}get maxOffset(){return this._children.maxOffset}get isEmpty(){return 0===this.childCount}get nextSibling(){return null}get previousSibling(){return null}get root(){return this}get parent(){return null}get document(){return null}isAttached(){return!1}getAncestors(){return[]}getChild(t){return this._children.getNode(t)}getChildren(){return this._children[Symbol.iterator]()}getChildIndex(t){return this._children.getNodeIndex(t)}getChildStartOffset(t){return this._children.getNodeStartOffset(t)}getPath(){return[]}getNodeByPath(t){let e=this;for(const n of t)e=e.getChild(e.offsetToIndex(n));return e}offsetToIndex(t){return this._children.offsetToIndex(t)}toJSON(){const t=[];for(const e of this._children)t.push(e.toJSON());return t}static fromJSON(t){const e=[];for(const n of t)n.name?e.push(Tc.fromJSON(n)):e.push(Bc.fromJSON(n));return new Zh(e)}_appendChild(t){this._insertChild(this.childCount,t)}_insertChild(t,e){const n=function(t){if("string"==typeof t)return[new Bc(t)];X(t)||(t=[t]);return Array.from(t).map((t=>"string"==typeof t?new Bc(t):t instanceof Sc?new Bc(t.data,t.getAttributes()):t))}(e);for(const t of n)null!==t.parent&&t._remove(),t.parent=this;this._children._insertNodes(t,n)}_removeChildren(t,e=1){const n=this._children._removeNodes(t,e);for(const t of n)t.parent=null;return n}}Zh.prototype.is=function(t){return"documentFragment"===t||"model:documentFragment"===t};class Yh{constructor(t,e){this.model=t,this.batch=e}createText(t,e){return new Bc(t,e)}createElement(t,e){return new Tc(t,e)}createDocumentFragment(){return new Zh}cloneElement(t,e=!0){return t._clone(e)}insert(t,e,n=0){if(this._assertWriterUsedCorrectly(),t instanceof Bc&&""==t.data)return;const i=Rc._createAt(e,n);if(t.parent){if(nu(t.root,i.root))return void this.move(Mc._createOn(t),i);if(t.root.document)throw new w("model-writer-insert-forbidden-move",this);this.remove(t)}const o=i.root.document?i.root.document.version:null,r=new Hd(i,t,o);if(t instanceof Bc&&(r.shouldReceiveAttributes=!0),this.batch.addOperation(r),this.model.applyOperation(r),t instanceof Zh)for(const[e,n]of t.markers){const t=Rc._createAt(n.root,0),o={range:new Mc(n.start._getCombined(t,i),n.end._getCombined(t,i)),usingOperation:!0,affectsData:!0};this.model.markers.has(e)?this.updateMarker(e,o):this.addMarker(e,o)}}insertText(t,e,n,i){e instanceof Zh||e instanceof Tc||e instanceof Rc?this.insert(this.createText(t),e,n):this.insert(this.createText(t,e),n,i)}insertElement(t,e,n,i){e instanceof Zh||e instanceof Tc||e instanceof Rc?this.insert(this.createElement(t),e,n):this.insert(this.createElement(t,e),n,i)}append(t,e){this.insert(t,e,"end")}appendText(t,e,n){e instanceof Zh||e instanceof Tc?this.insert(this.createText(t),e,"end"):this.insert(this.createText(t,e),n,"end")}appendElement(t,e,n){e instanceof Zh||e instanceof Tc?this.insert(this.createElement(t),e,"end"):this.insert(this.createElement(t,e),n,"end")}setAttribute(t,e,n){if(this._assertWriterUsedCorrectly(),n instanceof Mc){const i=n.getMinimalFlatRanges();for(const n of i)Qh(this,t,e,n)}else Xh(this,t,e,n)}setAttributes(t,e){for(const[n,i]of Jo(t))this.setAttribute(n,i,e)}removeAttribute(t,e){if(this._assertWriterUsedCorrectly(),e instanceof Mc){const n=e.getMinimalFlatRanges();for(const e of n)Qh(this,t,null,e)}else Xh(this,t,null,e)}clearAttributes(t){this._assertWriterUsedCorrectly();const e=t=>{for(const e of t.getAttributeKeys())this.removeAttribute(e,t)};if(t instanceof Mc)for(const n of t.getItems())e(n);else e(t)}move(t,e,n){if(this._assertWriterUsedCorrectly(),!(t instanceof Mc))throw new w("writer-move-invalid-range",this);if(!t.isFlat)throw new w("writer-move-range-not-flat",this);const i=Rc._createAt(e,n);if(i.isEqual(t.start))return;if(this._addOperationForAffectedMarkers("move",t),!nu(t.root,i.root))throw new w("writer-move-different-document",this);const o=t.root.document?t.root.document.version:null,r=new Nd(t.start,t.end.offset-t.start.offset,i,o);this.batch.addOperation(r),this.model.applyOperation(r)}remove(t){this._assertWriterUsedCorrectly();const e=(t instanceof Mc?t:Mc._createOn(t)).getMinimalFlatRanges().reverse();for(const t of e)this._addOperationForAffectedMarkers("move",t),eu(t.start,t.end.offset-t.start.offset,this.batch,this.model)}merge(t){this._assertWriterUsedCorrectly();const e=t.nodeBefore,n=t.nodeAfter;if(this._addOperationForAffectedMarkers("merge",t),!(e instanceof Tc))throw new w("writer-merge-no-element-before",this);if(!(n instanceof Tc))throw new w("writer-merge-no-element-after",this);t.root.document?this._merge(t):this._mergeDetached(t)}createPositionFromPath(t,e,n){return this.model.createPositionFromPath(t,e,n)}createPositionAt(t,e){return this.model.createPositionAt(t,e)}createPositionAfter(t){return this.model.createPositionAfter(t)}createPositionBefore(t){return this.model.createPositionBefore(t)}createRange(t,e){return this.model.createRange(t,e)}createRangeIn(t){return this.model.createRangeIn(t)}createRangeOn(t){return this.model.createRangeOn(t)}createSelection(...t){return this.model.createSelection(...t)}_mergeDetached(t){const e=t.nodeBefore,n=t.nodeAfter;this.move(Mc._createIn(n),Rc._createAt(e,"end")),this.remove(n)}_merge(t){const e=Rc._createAt(t.nodeBefore,"end"),n=Rc._createAt(t.nodeAfter,0),i=t.root.document.graveyard,o=new Rc(i,[0]),r=t.root.document.version,s=new qd(n,t.nodeAfter.maxOffset,e,o,r);this.batch.addOperation(s),this.model.applyOperation(s)}rename(t,e){if(this._assertWriterUsedCorrectly(),!(t instanceof Tc))throw new w("writer-rename-not-element-instance",this);const n=t.root.document?t.root.document.version:null,i=new Kd(Rc._createBefore(t),t.name,e,n);this.batch.addOperation(i),this.model.applyOperation(i)}split(t,e){this._assertWriterUsedCorrectly();let n,i,o=t.parent;if(!o.parent)throw new w("writer-split-element-no-parent",this);if(e||(e=o.parent),!t.parent.getAncestors({includeSelf:!0}).includes(e))throw new w("writer-split-invalid-limit-element",this);do{const e=o.root.document?o.root.document.version:null,r=o.maxOffset-t.offset,s=jd.getInsertionPosition(t),a=new jd(t,r,s,null,e);this.batch.addOperation(a),this.model.applyOperation(a),n||i||(n=o,i=t.parent.nextSibling),o=(t=this.createPositionAfter(t.parent)).parent}while(o!==e);return{position:t,range:new Mc(Rc._createAt(n,"end"),Rc._createAt(i,0))}}wrap(t,e){if(this._assertWriterUsedCorrectly(),!t.isFlat)throw new w("writer-wrap-range-not-flat",this);const n=e instanceof Tc?e:new Tc(e);if(n.childCount>0)throw new w("writer-wrap-element-not-empty",this);if(null!==n.parent)throw new w("writer-wrap-element-attached",this);this.insert(n,t.start);const i=new Mc(t.start.getShiftedBy(1),t.end.getShiftedBy(1));this.move(i,Rc._createAt(n,0))}unwrap(t){if(this._assertWriterUsedCorrectly(),null===t.parent)throw new w("writer-unwrap-element-no-parent",this);this.move(Mc._createIn(t),this.createPositionAfter(t)),this.remove(t)}addMarker(t,e){if(this._assertWriterUsedCorrectly(),!e||"boolean"!=typeof e.usingOperation)throw new w("writer-addmarker-no-usingoperation",this);const n=e.usingOperation,i=e.range,o=void 0!==e.affectsData&&e.affectsData;if(this.model.markers.has(t))throw new w("writer-addmarker-marker-exists",this);if(!i)throw new w("writer-addmarker-no-range",this);return n?(tu(this,t,null,i,o),this.model.markers.get(t)):this.model.markers._set(t,i,n,o)}updateMarker(t,e){this._assertWriterUsedCorrectly();const n="string"==typeof t?t:t.name,i=this.model.markers.get(n);if(!i)throw new w("writer-updatemarker-marker-not-exists",this);if(!e)return _("writer-updatemarker-reconvert-using-editingcontroller",{markerName:n}),void this.model.markers._refresh(i);const o="boolean"==typeof e.usingOperation,r="boolean"==typeof e.affectsData,s=r?e.affectsData:i.affectsData;if(!o&&!e.range&&!r)throw new w("writer-updatemarker-wrong-options",this);const a=i.getRange(),c=e.range?e.range:a;o&&e.usingOperation!==i.managedUsingOperations?e.usingOperation?tu(this,n,null,c,s):(tu(this,n,a,null,s),this.model.markers._set(n,c,void 0,s)):i.managedUsingOperations?tu(this,n,a,c,s):this.model.markers._set(n,c,void 0,s)}removeMarker(t){this._assertWriterUsedCorrectly();const e="string"==typeof t?t:t.name;if(!this.model.markers.has(e))throw new w("writer-removemarker-no-marker",this);const n=this.model.markers.get(e);if(!n.managedUsingOperations)return void this.model.markers._remove(e);tu(this,e,n.getRange(),null,n.affectsData)}addRoot(t,e="$root"){this._assertWriterUsedCorrectly();const n=this.model.document.getRoot(t);if(n&&n.isAttached())throw new w("writer-addroot-root-exists",this);const i=this.model.document,o=new Zd(t,e,!0,i,i.version);return this.batch.addOperation(o),this.model.applyOperation(o),this.model.document.getRoot(t)}detachRoot(t){this._assertWriterUsedCorrectly();const e="string"==typeof t?this.model.document.getRoot(t):t;if(!e||!e.isAttached())throw new w("writer-detachroot-no-root",this);for(const t of this.model.markers)t.getRange().root===e&&this.removeMarker(t);for(const t of e.getAttributeKeys())this.removeAttribute(t,e);this.remove(this.createRangeIn(e));const n=this.model.document,i=new Zd(e.rootName,e.name,!1,n,n.version);this.batch.addOperation(i),this.model.applyOperation(i)}setSelection(...t){this._assertWriterUsedCorrectly(),this.model.document.selection._setTo(...t)}setSelectionFocus(t,e){this._assertWriterUsedCorrectly(),this.model.document.selection._setFocus(t,e)}setSelectionAttribute(t,e){if(this._assertWriterUsedCorrectly(),"string"==typeof t)this._setSelectionAttribute(t,e);else for(const[e,n]of Jo(t))this._setSelectionAttribute(e,n)}removeSelectionAttribute(t){if(this._assertWriterUsedCorrectly(),"string"==typeof t)this._removeSelectionAttribute(t);else for(const e of t)this._removeSelectionAttribute(e)}overrideSelectionGravity(){return this.model.document.selection._overrideGravity()}restoreSelectionGravity(t){this.model.document.selection._restoreGravity(t)}_setSelectionAttribute(t,e){const n=this.model.document.selection;if(n.isCollapsed&&n.anchor.parent.isEmpty){const i=ul._getStoreAttributeKey(t);this.setAttribute(i,e,n.anchor.parent)}n._setAttribute(t,e)}_removeSelectionAttribute(t){const e=this.model.document.selection;if(e.isCollapsed&&e.anchor.parent.isEmpty){const n=ul._getStoreAttributeKey(t);this.removeAttribute(n,e.anchor.parent)}e._removeAttribute(t)}_assertWriterUsedCorrectly(){if(this.model._currentWriter!==this)throw new w("writer-incorrect-use",this)}_addOperationForAffectedMarkers(t,e){for(const n of this.model.markers){if(!n.managedUsingOperations)continue;const i=n.getRange();let o=!1;if("move"===t){const t=e;o=t.containsPosition(i.start)||t.start.isEqual(i.start)||t.containsPosition(i.end)||t.end.isEqual(i.end)}else{const t=e,n=t.nodeBefore,r=t.nodeAfter,s=i.start.parent==n&&i.start.isAtEnd,a=i.end.parent==r&&0==i.end.offset,c=i.end.nodeAfter==r,l=i.start.nodeAfter==r;o=s||a||c||l}o&&this.updateMarker(n.name,{range:i})}}}function Qh(t,e,n,i){const o=t.model,r=o.document;let s,a,c,l=i.start;for(const t of i.getWalker({shallow:!0}))c=t.item.getAttribute(e),s&&a!=c&&(a!=n&&d(),l=s),s=t.nextPosition,a=c;function d(){const i=new Mc(l,s),c=i.root.document?r.version:null,d=new $d(i,e,a,n,c);t.batch.addOperation(d),o.applyOperation(d)}s instanceof Rc&&s!=l&&a!=n&&d()}function Xh(t,e,n,i){const o=t.model,r=o.document,s=i.getAttribute(e);let a,c;if(s!=n){if(i.root===i){const t=i.document?r.version:null;c=new Jd(i,e,s,n,t)}else{a=new Mc(Rc._createBefore(i),t.createPositionAfter(i));const o=a.root.document?r.version:null;c=new $d(a,e,s,n,o)}t.batch.addOperation(c),o.applyOperation(c)}}function tu(t,e,n,i,o){const r=t.model,s=r.document,a=new Wd(e,n,i,r.markers,!!o,s.version);t.batch.addOperation(a),r.applyOperation(a)}function eu(t,e,n,i){let o;if(t.root.document){const n=i.document,r=new Rc(n.graveyard,[0]);o=new Nd(t,e,r,n.version)}else o=new Jh(t,e);n.addOperation(o),i.applyOperation(o)}function nu(t,e){return t===e||t instanceof Dh&&e instanceof Dh}function iu(t,e,n={}){if(e.isCollapsed)return;const i=e.getFirstRange();if("$graveyard"==i.root.rootName)return;const o=t.schema;t.change((t=>{if(!n.doNotResetEntireContent&&function(t,e){const n=t.getLimitElement(e);if(!e.containsEntireContent(n))return!1;const i=e.getFirstRange();if(i.start.parent==i.end.parent)return!1;return t.checkChild(n,"paragraph")}(o,e))return void function(t,e){const n=t.model.schema.getLimitElement(e);t.remove(t.createRangeIn(n)),au(t,t.createPositionAt(n,0),e)}(t,e);const r={};if(!n.doNotAutoparagraph){const t=e.getSelectedElement();t&&Object.assign(r,o.getAttributesWithProperty(t,"copyOnReplace",!0))}const[s,a]=function(t){const e=t.root.document.model,n=t.start;let i=t.end;if(e.hasContent(t,{ignoreMarkers:!0})){const n=function(t){const e=t.parent,n=e.root.document.model.schema,i=e.getAncestors({parentFirst:!0,includeSelf:!0});for(const t of i){if(n.isLimit(t))return null;if(n.isBlock(t))return t}}(i);if(n&&i.isTouching(e.createPositionAt(n,0))){const n=e.createSelection(t);e.modifySelection(n,{direction:"backward"});const o=n.getLastPosition(),r=e.createRange(o,i);e.hasContent(r,{ignoreMarkers:!0})||(i=o)}}return[dh.fromPosition(n,"toPrevious"),dh.fromPosition(i,"toNext")]}(i);s.isTouching(a)||t.remove(t.createRange(s,a)),n.leaveUnmerged||(!function(t,e,n){const i=t.model;if(!su(t.model.schema,e,n))return;const[o,r]=function(t,e){const n=t.getAncestors(),i=e.getAncestors();let o=0;for(;n[o]&&n[o]==i[o];)o++;return[n[o],i[o]]}(e,n);if(!o||!r)return;!i.hasContent(o,{ignoreMarkers:!0})&&i.hasContent(r,{ignoreMarkers:!0})?ru(t,e,n,o.parent):ou(t,e,n,o.parent)}(t,s,a),o.removeDisallowedAttributes(s.parent.getChildren(),t)),cu(t,e,s),!n.doNotAutoparagraph&&function(t,e){const n=t.checkChild(e,"$text"),i=t.checkChild(e,"paragraph");return!n&&i}(o,s)&&au(t,s,e,r),s.detach(),a.detach()}))}function ou(t,e,n,i){const o=e.parent,r=n.parent;if(o!=i&&r!=i){for(e=t.createPositionAfter(o),(n=t.createPositionBefore(r)).isEqual(e)||t.insert(r,e),t.merge(e);n.parent.isEmpty;){const e=n.parent;n=t.createPositionBefore(e),t.remove(e)}su(t.model.schema,e,n)&&ou(t,e,n,i)}}function ru(t,e,n,i){const o=e.parent,r=n.parent;if(o!=i&&r!=i){for(e=t.createPositionAfter(o),(n=t.createPositionBefore(r)).isEqual(e)||t.insert(o,n);e.parent.isEmpty;){const n=e.parent;e=t.createPositionBefore(n),t.remove(n)}n=t.createPositionBefore(r),function(t,e){const n=e.nodeBefore,i=e.nodeAfter;n.name!=i.name&&t.rename(n,i.name);t.clearAttributes(n),t.setAttributes(Object.fromEntries(i.getAttributes()),n),t.merge(e)}(t,n),su(t.model.schema,e,n)&&ru(t,e,n,i)}}function su(t,e,n){const i=e.parent,o=n.parent;return i!=o&&(!t.isLimit(i)&&!t.isLimit(o)&&function(t,e,n){const i=new Mc(t,e);for(const t of i.getWalker())if(n.isLimit(t.item))return!1;return!0}(e,n,t))}function au(t,e,n,i={}){const o=t.createElement("paragraph");t.model.schema.setAllowedAttributes(o,i,t),t.insert(o,e),cu(t,n,t.createPositionAt(o,0))}function cu(t,e,n){e instanceof ul?t.setSelection(n):e.setTo(n)}function lu(t,e){const n=[];Array.from(t.getItems({direction:"backward"})).map((t=>e.createRangeOn(t))).filter((e=>(e.start.isAfter(t.start)||e.start.isEqual(t.start))&&(e.end.isBefore(t.end)||e.end.isEqual(t.end)))).forEach((t=>{n.push(t.start.parent),e.remove(t)})),n.forEach((t=>{let n=t;for(;n.parent&&n.isEmpty;){const t=e.createRangeOn(n);n=n.parent,e.remove(t)}}))}class du{constructor(t,e,n){this._firstNode=null,this._lastNode=null,this._lastAutoParagraph=null,this._filterAttributesOf=[],this._affectedStart=null,this._affectedEnd=null,this._nodeToSelect=null,this.model=t,this.writer=e,this.position=n,this.canMergeWith=new Set([this.position.parent]),this.schema=t.schema,this._documentFragment=e.createDocumentFragment(),this._documentFragmentPosition=e.createPositionAt(this._documentFragment,0)}handleNodes(t){for(const e of Array.from(t))this._handleNode(e);this._insertPartialFragment(),this._lastAutoParagraph&&this._updateLastNodeFromAutoParagraph(this._lastAutoParagraph),this._mergeOnRight(),this.schema.removeDisallowedAttributes(this._filterAttributesOf,this.writer),this._filterAttributesOf=[]}_updateLastNodeFromAutoParagraph(t){const e=this.writer.createPositionAfter(this._lastNode),n=this.writer.createPositionAfter(t);if(n.isAfter(e)){if(this._lastNode=t,this.position.parent!=t||!this.position.isAtEnd)throw new w("insertcontent-invalid-insertion-position",this);this.position=n,this._setAffectedBoundaries(this.position)}}getSelectionRange(){return this._nodeToSelect?Mc._createOn(this._nodeToSelect):this.model.schema.getNearestSelectionRange(this.position)}getAffectedRange(){return this._affectedStart?new Mc(this._affectedStart,this._affectedEnd):null}destroy(){this._affectedStart&&this._affectedStart.detach(),this._affectedEnd&&this._affectedEnd.detach()}_handleNode(t){if(this.schema.isObject(t))return void this._handleObject(t);let e=this._checkAndAutoParagraphToAllowedPosition(t);e||(e=this._checkAndSplitToAllowedPosition(t),e)?(this._appendToFragment(t),this._firstNode||(this._firstNode=t),this._lastNode=t):this._handleDisallowedNode(t)}_insertPartialFragment(){if(this._documentFragment.isEmpty)return;const t=dh.fromPosition(this.position,"toNext");this._setAffectedBoundaries(this.position),this._documentFragment.getChild(0)==this._firstNode&&(this.writer.insert(this._firstNode,this.position),this._mergeOnLeft(),this.position=t.toPosition()),this._documentFragment.isEmpty||this.writer.insert(this._documentFragment,this.position),this._documentFragmentPosition=this.writer.createPositionAt(this._documentFragment,0),this.position=t.toPosition(),t.detach()}_handleObject(t){this._checkAndSplitToAllowedPosition(t)?this._appendToFragment(t):this._tryAutoparagraphing(t)}_handleDisallowedNode(t){t.is("element")?this.handleNodes(t.getChildren()):this._tryAutoparagraphing(t)}_appendToFragment(t){if(!this.schema.checkChild(this.position,t))throw new w("insertcontent-wrong-position",this,{node:t,position:this.position});this.writer.insert(t,this._documentFragmentPosition),this._documentFragmentPosition=this._documentFragmentPosition.getShiftedBy(t.offsetSize),this.schema.isObject(t)&&!this.schema.checkChild(this.position,"$text")?this._nodeToSelect=t:this._nodeToSelect=null,this._filterAttributesOf.push(t)}_setAffectedBoundaries(t){this._affectedStart||(this._affectedStart=dh.fromPosition(t,"toPrevious")),this._affectedEnd&&!this._affectedEnd.isBefore(t)||(this._affectedEnd&&this._affectedEnd.detach(),this._affectedEnd=dh.fromPosition(t,"toNext"))}_mergeOnLeft(){const t=this._firstNode;if(!(t instanceof Tc))return;if(!this._canMergeLeft(t))return;const e=dh._createBefore(t);e.stickiness="toNext";const n=dh.fromPosition(this.position,"toNext");this._affectedStart.isEqual(e)&&(this._affectedStart.detach(),this._affectedStart=dh._createAt(e.nodeBefore,"end","toPrevious")),this._firstNode===this._lastNode&&(this._firstNode=e.nodeBefore,this._lastNode=e.nodeBefore),this.writer.merge(e),e.isEqual(this._affectedEnd)&&this._firstNode===this._lastNode&&(this._affectedEnd.detach(),this._affectedEnd=dh._createAt(e.nodeBefore,"end","toNext")),this.position=n.toPosition(),n.detach(),this._filterAttributesOf.push(this.position.parent),e.detach()}_mergeOnRight(){const t=this._lastNode;if(!(t instanceof Tc))return;if(!this._canMergeRight(t))return;const e=dh._createAfter(t);if(e.stickiness="toNext",!this.position.isEqual(e))throw new w("insertcontent-invalid-insertion-position",this);this.position=Rc._createAt(e.nodeBefore,"end");const n=dh.fromPosition(this.position,"toPrevious");this._affectedEnd.isEqual(e)&&(this._affectedEnd.detach(),this._affectedEnd=dh._createAt(e.nodeBefore,"end","toNext")),this._firstNode===this._lastNode&&(this._firstNode=e.nodeBefore,this._lastNode=e.nodeBefore),this.writer.merge(e),e.getShiftedBy(-1).isEqual(this._affectedStart)&&this._firstNode===this._lastNode&&(this._affectedStart.detach(),this._affectedStart=dh._createAt(e.nodeBefore,0,"toPrevious")),this.position=n.toPosition(),n.detach(),this._filterAttributesOf.push(this.position.parent),e.detach()}_canMergeLeft(t){const e=t.previousSibling;return e instanceof Tc&&this.canMergeWith.has(e)&&this.model.schema.checkMerge(e,t)}_canMergeRight(t){const e=t.nextSibling;return e instanceof Tc&&this.canMergeWith.has(e)&&this.model.schema.checkMerge(t,e)}_tryAutoparagraphing(t){const e=this.writer.createElement("paragraph");this._getAllowedIn(this.position.parent,e)&&this.schema.checkChild(e,t)&&(e._appendChild(t),this._handleNode(e))}_checkAndAutoParagraphToAllowedPosition(t){if(this.schema.checkChild(this.position.parent,t))return!0;if(!this.schema.checkChild(this.position.parent,"paragraph")||!this.schema.checkChild("paragraph",t))return!1;this._insertPartialFragment();const e=this.writer.createElement("paragraph");return this.writer.insert(e,this.position),this._setAffectedBoundaries(this.position),this._lastAutoParagraph=e,this.position=this.writer.createPositionAt(e,0),!0}_checkAndSplitToAllowedPosition(t){const e=this._getAllowedIn(this.position.parent,t);if(!e)return!1;for(e!=this.position.parent&&this._insertPartialFragment();e!=this.position.parent;)if(this.position.isAtStart){const t=this.position.parent;this.position=this.writer.createPositionBefore(t),t.isEmpty&&t.parent===e&&this.writer.remove(t)}else if(this.position.isAtEnd)this.position=this.writer.createPositionAfter(this.position.parent);else{const t=this.writer.createPositionAfter(this.position.parent);this._setAffectedBoundaries(this.position),this.writer.split(this.position),this.position=t,this.canMergeWith.add(this.position.nodeAfter)}return!0}_getAllowedIn(t,e){return this.schema.checkChild(t,e)?t:this.schema.isLimit(t)?null:this._getAllowedIn(t.parent,e)}}function hu(t,e,n,i={}){if(!t.schema.isObject(e))throw new w("insertobject-element-not-an-object",t,{object:e});const o=n||t.document.selection;let r=o;i.findOptimalPosition&&t.schema.isBlock(e)&&(r=t.createSelection(t.schema.findOptimalInsertionRange(o,i.findOptimalPosition)));const s=$o(o.getSelectedBlocks()),a={};return s&&Object.assign(a,t.schema.getAttributesWithProperty(s,"copyOnReplace",!0)),t.change((n=>{r.isCollapsed||t.deleteContent(r,{doNotAutoparagraph:!0});let o=e;const s=r.anchor.parent;!t.schema.checkChild(s,e)&&t.schema.checkChild(s,"paragraph")&&t.schema.checkChild("paragraph",e)&&(o=n.createElement("paragraph"),n.insert(e,o)),t.schema.setAllowedAttributes(o,a,n);const c=t.insertContent(o,r);return c.isCollapsed||i.setSelection&&function(t,e,n,i){const o=t.model;if("on"==n)return void t.setSelection(e,"on");if("after"!=n)throw new w("insertobject-invalid-place-parameter-value",o);let r=e.nextSibling;if(o.schema.isInline(e))return void t.setSelection(e,"after");const s=r&&o.schema.checkChild(r,"$text");!s&&o.schema.checkChild(e.parent,"paragraph")&&(r=t.createElement("paragraph"),o.schema.setAllowedAttributes(r,i,t),o.insertContent(r,t.createPositionAfter(e)));r&&t.setSelection(r,0)}(n,e,i.setSelection,a),c}))}const uu=' ,.?!:;"-()';function mu(t,e){const{isForward:n,walker:i,unit:o,schema:r,treatEmojiAsSingleUnit:s}=t,{type:a,item:c,nextPosition:l}=e;if("text"==a)return"word"===t.unit?function(t,e){let n=t.position.textNode;n||(n=e?t.position.nodeAfter:t.position.nodeBefore);for(;n&&n.is("$text");){const i=t.position.offset-n.startOffset;if(fu(n,i,e))n=e?t.position.nodeAfter:t.position.nodeBefore;else{if(pu(n.data,i,e))break;t.next()}}return t.position}(i,n):function(t,e,n){const i=t.position.textNode;if(i){const o=i.data;let r=t.position.offset-i.startOffset;for(;Yo(o,r)||"character"==e&&Qo(o,r)||n&&tr(o,r);)t.next(),r=t.position.offset-i.startOffset}return t.position}(i,o,s);if(a==(n?"elementStart":"elementEnd")){if(r.isSelectable(c))return Rc._createAt(c,n?"after":"before");if(r.checkChild(l,"$text"))return l}else{if(r.isLimit(c))return void i.skip((()=>!0));if(r.checkChild(l,"$text"))return l}}function gu(t,e){const n=t.root,i=Rc._createAt(n,e?"end":0);return e?new Mc(t,i):new Mc(i,t)}function pu(t,e,n){const i=e+(n?0:-1);return uu.includes(t.charAt(i))}function fu(t,e,n){return e===(n?t.offsetSize:0)}class bu extends(W()){constructor(){super(),this.markers=new Gh,this.document=new zh(this),this.schema=new id,this._pendingChanges=[],this._currentWriter=null,["deleteContent","modifySelection","getSelectedContent","applyOperation"].forEach((t=>this.decorate(t))),this.on("applyOperation",((t,e)=>{e[0]._validate()}),{priority:"highest"}),this.schema.register("$root",{isLimit:!0}),this.schema.register("$container",{allowIn:["$root","$container"]}),this.schema.register("$block",{allowIn:["$root","$container"],isBlock:!0}),this.schema.register("$blockObject",{allowWhere:"$block",isBlock:!0,isObject:!0}),this.schema.register("$inlineObject",{allowWhere:"$text",allowAttributesOf:"$text",isInline:!0,isObject:!0}),this.schema.register("$text",{allowIn:"$block",isInline:!0,isContent:!0}),this.schema.register("$clipboardHolder",{allowContentOf:"$root",allowChildren:"$text",isLimit:!0}),this.schema.register("$documentFragment",{allowContentOf:"$root",allowChildren:"$text",isLimit:!0}),this.schema.register("$marker"),this.schema.addChildCheck(((t,e)=>{if("$marker"===e.name)return!0})),Jl(this),this.document.registerPostFixer(Pl),this.on("insertContent",((t,[e,n])=>{t.return=function(t,e,n){return t.change((i=>{const o=n||t.document.selection;o.isCollapsed||t.deleteContent(o,{doNotAutoparagraph:!0});const r=new du(t,i,o.anchor),s=[];let a;if(e.is("documentFragment")){if(e.markers.size){const t=[];for(const[n,i]of e.markers){const{start:e,end:o}=i,r=e.isEqual(o);t.push({position:e,name:n,isCollapsed:r},{position:o,name:n,isCollapsed:r})}t.sort((({position:t},{position:e})=>t.isBefore(e)?1:-1));for(const{position:n,name:o,isCollapsed:r}of t){let t=null,a=null;const c=n.parent===e&&n.isAtStart,l=n.parent===e&&n.isAtEnd;c||l?r&&(a=c?"start":"end"):(t=i.createElement("$marker"),i.insert(t,n)),s.push({name:o,element:t,collapsed:a})}}a=e.getChildren()}else a=[e];r.handleNodes(a);let c=r.getSelectionRange();if(e.is("documentFragment")&&s.length){const t=c?cl.fromRange(c):null,e={};for(let t=s.length-1;t>=0;t--){const{name:n,element:o,collapsed:a}=s[t],c=!e[n];if(c&&(e[n]=[]),o){const t=i.createPositionAt(o,"before");e[n].push(t),i.remove(o)}else{const t=r.getAffectedRange();if(!t){a&&e[n].push(r.position);continue}a?e[n].push(t[a]):e[n].push(c?t.start:t.end)}}for(const[t,[n,o]]of Object.entries(e))n&&o&&n.root===o.root&&n.root.document&&!i.model.markers.has(t)&&i.addMarker(t,{usingOperation:!0,affectsData:!0,range:new Mc(n,o)});t&&(c=t.toRange(),t.detach())}c&&(o instanceof ul?i.setSelection(c):o.setTo(c));const l=r.getAffectedRange()||t.createRange(o.anchor);return r.destroy(),l}))}(this,e,n)})),this.on("insertObject",((t,[e,n,i])=>{t.return=hu(this,e,n,i)})),this.on("canEditAt",(t=>{const e=!this.document.isReadOnly;t.return=e,e||t.stop()}))}change(t){try{return 0===this._pendingChanges.length?(this._pendingChanges.push({batch:new mh,callback:t}),this._runPendingChanges()[0]):t(this._currentWriter)}catch(t){w.rethrowUnexpectedError(t,this)}}enqueueChange(t,e){try{t?"function"==typeof t?(e=t,t=new mh):t instanceof mh||(t=new mh(t)):t=new mh,this._pendingChanges.push({batch:t,callback:e}),1==this._pendingChanges.length&&this._runPendingChanges()}catch(t){w.rethrowUnexpectedError(t,this)}}applyOperation(t){t._execute()}insertContent(t,e,n,...i){const o=ku(e,n);return this.fire("insertContent",[t,o,n,...i])}insertObject(t,e,n,i,...o){const r=ku(e,n);return this.fire("insertObject",[t,r,i,i,...o])}deleteContent(t,e){iu(this,t,e)}modifySelection(t,e){!function(t,e,n={}){const i=t.schema,o="backward"!=n.direction,r=n.unit?n.unit:"character",s=!!n.treatEmojiAsSingleUnit,a=e.focus,c=new Ic({boundaries:gu(a,o),singleCharacters:!0,direction:o?"forward":"backward"}),l={walker:c,schema:i,isForward:o,unit:r,treatEmojiAsSingleUnit:s};let d;for(;d=c.next();){if(d.done)return;const n=mu(l,d.value);if(n)return void(e instanceof ul?t.change((t=>{t.setSelectionFocus(n)})):e.setFocus(n))}}(this,t,e)}getSelectedContent(t){return function(t,e){return t.change((t=>{const n=t.createDocumentFragment(),i=e.getFirstRange();if(!i||i.isCollapsed)return n;const o=i.start.root,r=i.start.getCommonPath(i.end),s=o.getNodeByPath(r);let a;a=i.start.parent==i.end.parent?i:t.createRange(t.createPositionAt(s,i.start.path[r.length]),t.createPositionAt(s,i.end.path[r.length]+1));const c=a.end.offset-a.start.offset;for(const e of a.getItems({shallow:!0}))e.is("$textProxy")?t.appendText(e.data,e.getAttributes(),n):t.append(t.cloneElement(e,!0),n);if(a!=i){const e=i._getTransformedByMove(a.start,t.createPositionAt(n,0),c)[0],o=t.createRange(t.createPositionAt(n,0),e.start);lu(t.createRange(e.end,t.createPositionAt(n,"end")),t),lu(o,t)}return n}))}(this,t)}hasContent(t,e={}){const n=t instanceof Mc?t:Mc._createIn(t);if(n.isCollapsed)return!1;const{ignoreWhitespaces:i=!1,ignoreMarkers:o=!1}=e;if(!o)for(const t of this.markers.getMarkersIntersectingRange(n))if(t.affectsData)return!0;for(const t of n.getItems())if(this.schema.isContent(t)){if(!t.is("$textProxy"))return!0;if(!i)return!0;if(-1!==t.data.search(/\S/))return!0}return!1}canEditAt(t){const e=ku(t);return this.fire("canEditAt",[e])}createPositionFromPath(t,e,n){return new Rc(t,e,n)}createPositionAt(t,e){return Rc._createAt(t,e)}createPositionAfter(t){return Rc._createAfter(t)}createPositionBefore(t){return Rc._createBefore(t)}createRange(t,e){return new Mc(t,e)}createRangeIn(t){return Mc._createIn(t)}createRangeOn(t){return Mc._createOn(t)}createSelection(...t){return new el(...t)}createBatch(t){return new mh(t)}createOperationFromJSON(t){return Qd.fromJSON(t,this.document)}destroy(){this.document.destroy(),this.stopListening()}_runPendingChanges(){const t=[];this.fire("_beforeChanges");try{for(;this._pendingChanges.length;){const e=this._pendingChanges[0].batch;this._currentWriter=new Yh(this,e);const n=this._pendingChanges[0].callback(this._currentWriter);t.push(n),this.document._handleChangeBlock(this._currentWriter),this._pendingChanges.shift(),this._currentWriter=null}}finally{this._pendingChanges.length=0,this._currentWriter=null,this.fire("_afterChanges")}return t}}function ku(t,e){if(t)return t instanceof el||t instanceof ul?t:t instanceof Ec?e||0===e?new el(t,e):t.is("rootElement")?new el(t,"in"):new el(t,"on"):new el(t)}class wu extends Ta{constructor(){super(...arguments),this.domEventType="click"}onDomEvent(t){this.fire(t.type,t)}}class _u extends Ta{constructor(){super(...arguments),this.domEventType=["mousedown","mouseup","mouseover","mouseout"]}onDomEvent(t){this.fire(t.type,t)}}class Au{constructor(t){this.document=t}createDocumentFragment(t){return new js(this.document,t)}createElement(t,e,n){return new hs(this.document,t,e,n)}createText(t){return new Sr(this.document,t)}clone(t,e=!1){return t._clone(e)}appendChild(t,e){return e._appendChild(t)}insertChild(t,e,n){return n._insertChild(t,e)}removeChildren(t,e,n){return n._removeChildren(t,e)}remove(t){const e=t.parent;return e?this.removeChildren(e.getChildIndex(t),1,e):[]}replace(t,e){const n=t.parent;if(n){const i=n.getChildIndex(t);return this.removeChildren(i,1,n),this.insertChild(i,e,n),!0}return!1}unwrapElement(t){const e=t.parent;if(e){const n=e.getChildIndex(t);this.remove(t),this.insertChild(n,t.getChildren(),e)}}rename(t,e){const n=new hs(this.document,t,e.getAttributes(),e.getChildren());return this.replace(e,n)?n:null}setAttribute(t,e,n){n._setAttribute(t,e)}removeAttribute(t,e){e._removeAttribute(t)}addClass(t,e){e._addClass(t)}removeClass(t,e){e._removeClass(t)}setStyle(t,e,n){yt(t)&&void 0===n?e._setStyle(t):n._setStyle(t,e)}removeStyle(t,e){e._removeStyle(t)}setCustomProperty(t,e,n){n._setCustomProperty(t,e)}removeCustomProperty(t,e){return e._removeCustomProperty(t)}createPositionAt(t,e){return ws._createAt(t,e)}createPositionAfter(t){return ws._createAfter(t)}createPositionBefore(t){return ws._createBefore(t)}createRange(t,e){return new _s(t,e)}createRangeOn(t){return _s._createOn(t)}createRangeIn(t){return _s._createIn(t)}createSelection(...t){return new Cs(...t)}}const Cu=/^#([0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/i,vu=/^rgb\([ ]?([0-9]{1,3}[ %]?,[ ]?){2,3}[0-9]{1,3}[ %]?\)$/i,yu=/^rgba\([ ]?([0-9]{1,3}[ %]?,[ ]?){3}(1|[0-9]+%|[0]?\.?[0-9]+)\)$/i,xu=/^hsl\([ ]?([0-9]{1,3}[ %]?[,]?[ ]*){3}(1|[0-9]+%|[0]?\.?[0-9]+)?\)$/i,Eu=/^hsla\([ ]?([0-9]{1,3}[ %]?,[ ]?){2,3}(1|[0-9]+%|[0]?\.?[0-9]+)\)$/i,Du=/\w+\((?:[^()]|\([^()]*\))*\)|\S+/gi,Bu=new Set(["black","silver","gray","white","maroon","red","purple","fuchsia","green","lime","olive","yellow","navy","blue","teal","aqua","orange","aliceblue","antiquewhite","aquamarine","azure","beige","bisque","blanchedalmond","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","gainsboro","ghostwhite","gold","goldenrod","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","limegreen","linen","magenta","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","oldlace","olivedrab","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","thistle","tomato","turquoise","violet","wheat","whitesmoke","yellowgreen","activeborder","activecaption","appworkspace","background","buttonface","buttonhighlight","buttonshadow","buttontext","captiontext","graytext","highlight","highlighttext","inactiveborder","inactivecaption","inactivecaptiontext","infobackground","infotext","menu","menutext","scrollbar","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","window","windowframe","windowtext","rebeccapurple","currentcolor","transparent"]);function Su(t){return t.startsWith("#")?Cu.test(t):t.startsWith("rgb")?vu.test(t)||yu.test(t):t.startsWith("hsl")?xu.test(t)||Eu.test(t):Bu.has(t.toLowerCase())}const Tu=["none","hidden","dotted","dashed","solid","double","groove","ridge","inset","outset"];function Iu(t){return Tu.includes(t)}const Pu=/^([+-]?[0-9]*([.][0-9]+)?(px|cm|mm|in|pc|pt|ch|em|ex|rem|vh|vw|vmin|vmax)|0)$/;function Ru(t){return Pu.test(t)}const Vu=/^[+-]?[0-9]*([.][0-9]+)?%$/;function Fu(t){return Vu.test(t)}const Lu=["repeat-x","repeat-y","repeat","space","round","no-repeat"];function Ou(t){return Lu.includes(t)}const zu=["center","top","bottom","left","right"];function Mu(t){return zu.includes(t)}const Nu=["fixed","scroll","local"];function Hu(t){return Nu.includes(t)}const ju=/^url\(/;function qu(t){return ju.test(t)}function Wu(t=""){if(""===t)return{top:void 0,right:void 0,bottom:void 0,left:void 0};const e=Ku(t),n=e[0],i=e[2]||n,o=e[1]||n;return{top:n,bottom:i,right:o,left:e[3]||o}}function Uu(t){return e=>{const{top:n,right:i,bottom:o,left:r}=e,s=[];return[n,i,r,o].every((t=>!!t))?s.push([t,$u(e)]):(n&&s.push([t+"-top",n]),i&&s.push([t+"-right",i]),o&&s.push([t+"-bottom",o]),r&&s.push([t+"-left",r])),s}}function $u({top:t,right:e,bottom:n,left:i}){const o=[];return i!==e?o.push(t,e,n,i):n!==t?o.push(t,e,n):e!==t?o.push(t,e):o.push(t),o.join(" ")}function Gu(t){return e=>({path:t,value:Wu(e)})}function Ku(t){const e=t.matchAll(Du);return Array.from(e).map((t=>t[0]))}function Ju(t){t.setNormalizer("background",(t=>{const e={},n=Ku(t);for(const t of n)Ou(t)?(e.repeat=e.repeat||[],e.repeat.push(t)):Mu(t)?(e.position=e.position||[],e.position.push(t)):Hu(t)?e.attachment=t:Su(t)?e.color=t:qu(t)&&(e.image=t);return{path:"background",value:e}})),t.setNormalizer("background-color",(t=>({path:"background.color",value:t}))),t.setReducer("background",(t=>{const e=[];return e.push(["background-color",t.color]),e})),t.setStyleRelation("background",["background-color"])}function Zu(t){t.setNormalizer("border",(t=>{const{color:e,style:n,width:i}=im(t);return{path:"border",value:{color:Wu(e),style:Wu(n),width:Wu(i)}}})),t.setNormalizer("border-top",Yu("top")),t.setNormalizer("border-right",Yu("right")),t.setNormalizer("border-bottom",Yu("bottom")),t.setNormalizer("border-left",Yu("left")),t.setNormalizer("border-color",Qu("color")),t.setNormalizer("border-width",Qu("width")),t.setNormalizer("border-style",Qu("style")),t.setNormalizer("border-top-color",tm("color","top")),t.setNormalizer("border-top-style",tm("style","top")),t.setNormalizer("border-top-width",tm("width","top")),t.setNormalizer("border-right-color",tm("color","right")),t.setNormalizer("border-right-style",tm("style","right")),t.setNormalizer("border-right-width",tm("width","right")),t.setNormalizer("border-bottom-color",tm("color","bottom")),t.setNormalizer("border-bottom-style",tm("style","bottom")),t.setNormalizer("border-bottom-width",tm("width","bottom")),t.setNormalizer("border-left-color",tm("color","left")),t.setNormalizer("border-left-style",tm("style","left")),t.setNormalizer("border-left-width",tm("width","left")),t.setExtractor("border-top",em("top")),t.setExtractor("border-right",em("right")),t.setExtractor("border-bottom",em("bottom")),t.setExtractor("border-left",em("left")),t.setExtractor("border-top-color","border.color.top"),t.setExtractor("border-right-color","border.color.right"),t.setExtractor("border-bottom-color","border.color.bottom"),t.setExtractor("border-left-color","border.color.left"),t.setExtractor("border-top-width","border.width.top"),t.setExtractor("border-right-width","border.width.right"),t.setExtractor("border-bottom-width","border.width.bottom"),t.setExtractor("border-left-width","border.width.left"),t.setExtractor("border-top-style","border.style.top"),t.setExtractor("border-right-style","border.style.right"),t.setExtractor("border-bottom-style","border.style.bottom"),t.setExtractor("border-left-style","border.style.left"),t.setReducer("border-color",Uu("border-color")),t.setReducer("border-style",Uu("border-style")),t.setReducer("border-width",Uu("border-width")),t.setReducer("border-top",om("top")),t.setReducer("border-right",om("right")),t.setReducer("border-bottom",om("bottom")),t.setReducer("border-left",om("left")),t.setReducer("border",function(){return e=>{const n=nm(e,"top"),i=nm(e,"right"),o=nm(e,"bottom"),r=nm(e,"left"),s=[n,i,o,r],a={width:t(s,"width"),style:t(s,"style"),color:t(s,"color")},c=rm(a,"all");if(c.length)return c;return[...Object.entries(a).reduce(((t,[e,n])=>(n&&(t.push([`border-${e}`,n]),s.forEach((t=>delete t[e]))),t)),[]),...rm(n,"top"),...rm(i,"right"),...rm(o,"bottom"),...rm(r,"left")]};function t(t,e){return t.map((t=>t[e])).reduce(((t,e)=>t==e?t:null))}}()),t.setStyleRelation("border",["border-color","border-style","border-width","border-top","border-right","border-bottom","border-left","border-top-color","border-right-color","border-bottom-color","border-left-color","border-top-style","border-right-style","border-bottom-style","border-left-style","border-top-width","border-right-width","border-bottom-width","border-left-width"]),t.setStyleRelation("border-color",["border-top-color","border-right-color","border-bottom-color","border-left-color"]),t.setStyleRelation("border-style",["border-top-style","border-right-style","border-bottom-style","border-left-style"]),t.setStyleRelation("border-width",["border-top-width","border-right-width","border-bottom-width","border-left-width"]),t.setStyleRelation("border-top",["border-top-color","border-top-style","border-top-width"]),t.setStyleRelation("border-right",["border-right-color","border-right-style","border-right-width"]),t.setStyleRelation("border-bottom",["border-bottom-color","border-bottom-style","border-bottom-width"]),t.setStyleRelation("border-left",["border-left-color","border-left-style","border-left-width"])}function Yu(t){return e=>{const{color:n,style:i,width:o}=im(e),r={};return void 0!==n&&(r.color={[t]:n}),void 0!==i&&(r.style={[t]:i}),void 0!==o&&(r.width={[t]:o}),{path:"border",value:r}}}function Qu(t){return e=>({path:"border",value:Xu(e,t)})}function Xu(t,e){return{[e]:Wu(t)}}function tm(t,e){return n=>({path:"border",value:{[t]:{[e]:n}}})}function em(t){return(e,n)=>{if(n.border)return nm(n.border,t)}}function nm(t,e){const n={};return t.width&&t.width[e]&&(n.width=t.width[e]),t.style&&t.style[e]&&(n.style=t.style[e]),t.color&&t.color[e]&&(n.color=t.color[e]),n}function im(t){const e={},n=Ku(t);for(const t of n)Ru(t)||/thin|medium|thick/.test(t)?e.width=t:Iu(t)?e.style=t:e.color=t;return e}function om(t){return e=>rm(e,t)}function rm(t,e){const n=[];if(t&&t.width&&n.push("width"),t&&t.style&&n.push("style"),t&&t.color&&n.push("color"),3==n.length){const i=n.map((e=>t[e])).join(" ");return["all"==e?["border",i]:[`border-${e}`,i]]}return"all"==e?[]:n.map((n=>[`border-${e}-${n}`,t[n]]))}function sm(t){t.setNormalizer("margin",Gu("margin")),t.setNormalizer("margin-top",(t=>({path:"margin.top",value:t}))),t.setNormalizer("margin-right",(t=>({path:"margin.right",value:t}))),t.setNormalizer("margin-bottom",(t=>({path:"margin.bottom",value:t}))),t.setNormalizer("margin-left",(t=>({path:"margin.left",value:t}))),t.setReducer("margin",Uu("margin")),t.setStyleRelation("margin",["margin-top","margin-right","margin-bottom","margin-left"])}function am(t){t.setNormalizer("padding",Gu("padding")),t.setNormalizer("padding-top",(t=>({path:"padding.top",value:t}))),t.setNormalizer("padding-right",(t=>({path:"padding.right",value:t}))),t.setNormalizer("padding-bottom",(t=>({path:"padding.bottom",value:t}))),t.setNormalizer("padding-left",(t=>({path:"padding.left",value:t}))),t.setReducer("padding",Uu("padding")),t.setStyleRelation("padding",["padding-top","padding-right","padding-bottom","padding-left"])}class cm{constructor(){this._commands=new Map}add(t,e){this._commands.set(t,e)}get(t){return this._commands.get(t)}execute(t,...e){const n=this.get(t);if(!n)throw new w("commandcollection-command-not-found",this,{commandName:t});return n.execute(...e)}*names(){yield*this._commands.keys()}*commands(){yield*this._commands.values()}[Symbol.iterator](){return this._commands[Symbol.iterator]()}destroy(){for(const t of this.commands())t.destroy()}}var lm=Object.defineProperty,dm=Object.getOwnPropertySymbols,hm=Object.prototype.hasOwnProperty,um=Object.prototype.propertyIsEnumerable,mm=(t,e,n)=>e in t?lm(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;const gm="contentEditing",pm="common";class fm{constructor(t){this.keystrokeInfos=new Map,this._editor=t;const e=t.config.get("menuBar.isVisible"),n=t.locale.t;this.addKeystrokeInfoCategory({id:gm,label:n("Content editing keystrokes"),description:n("These keyboard shortcuts allow for quick access to content editing features.")});const i=[{label:n("Close contextual balloons, dropdowns, and dialogs"),keystroke:"Esc"},{label:n("Open the accessibility help dialog"),keystroke:"Alt+0"},{label:n("Move focus between form fields (inputs, buttons, etc.)"),keystroke:[["Tab"],["Shift+Tab"]]},{label:n("Move focus to the toolbar, navigate between toolbars"),keystroke:"Alt+F10",mayRequireFn:!0},{label:n("Navigate through the toolbar or menu bar"),keystroke:[["arrowup"],["arrowright"],["arrowdown"],["arrowleft"]]},{label:n("Execute the currently focused button. Executing buttons that interact with the editor content moves the focus back to the content."),keystroke:[["Enter"],["Space"]]}];e&&i.push({label:n("Move focus to the menu bar, navigate between menu bars"),keystroke:"Alt+F9",mayRequireFn:!0}),this.addKeystrokeInfoCategory({id:"navigation",label:n("User interface and content navigation keystrokes"),description:n("Use the following keystrokes for more efficient navigation in the CKEditor 5 user interface."),groups:[{id:"common",keystrokes:i}]})}addKeystrokeInfoCategory({id:t,label:e,description:n,groups:i}){this.keystrokeInfos.set(t,{id:t,label:e,description:n,groups:new Map}),this.addKeystrokeInfoGroup({categoryId:t,id:pm}),i&&i.forEach((e=>{this.addKeystrokeInfoGroup(((t,e)=>{for(var n in e||(e={}))hm.call(e,n)&&mm(t,n,e[n]);if(dm)for(var n of dm(e))um.call(e,n)&&mm(t,n,e[n]);return t})({categoryId:t},e))}))}addKeystrokeInfoGroup({categoryId:t=gm,id:e,label:n,keystrokes:i}){const o=this.keystrokeInfos.get(t);if(!o)throw new w("accessibility-unknown-keystroke-info-category",this._editor,{groupId:e,categoryId:t});o.groups.set(e,{id:e,label:n,keystrokes:i||[]})}addKeystrokeInfos({categoryId:t=gm,groupId:e=pm,keystrokes:n}){if(!this.keystrokeInfos.has(t))throw new w("accessibility-unknown-keystroke-info-category",this._editor,{categoryId:t,keystrokes:n});const i=this.keystrokeInfos.get(t);if(!i.groups.has(e))throw new w("accessibility-unknown-keystroke-info-group",this._editor,{groupId:e,categoryId:t,keystrokes:n});i.groups.get(e).keystrokes.push(...n)}}var bm=Object.getOwnPropertySymbols,km=Object.prototype.hasOwnProperty,wm=Object.prototype.propertyIsEnumerable,_m=(t,e)=>{var n={};for(var i in t)km.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(null!=t&&bm)for(var i of bm(t))e.indexOf(i)<0&&wm.call(t,i)&&(n[i]=t[i]);return n};class Am extends(W()){constructor(t={}){super();const e=this.constructor,n=e.defaultConfig||{},{translations:i}=n,o=_m(n,["translations"]),r=t,{translations:s=i}=r,a=_m(r,["translations"]),c=t.language||o.language;this._context=t.context||new dr({language:c,translations:s}),this._context._addEditor(this,!t.context);const l=Array.from(e.builtinPlugins||[]);this.config=new Ci(a,o),this.config.define("plugins",l),this.config.define(this._context._getEditorConfig()),this.plugins=new sr(this,l,this._context.plugins),this.locale=this._context.locale,this.t=this.locale.t,this._readOnlyLocks=new Set,this.commands=new cm,this.set("state","initializing"),this.once("ready",(()=>this.state="ready"),{priority:"high"}),this.once("destroy",(()=>this.state="destroyed"),{priority:"high"}),this.model=new bu,this.on("change:isReadOnly",(()=>{this.model.document.isReadOnly=this.isReadOnly}));const d=new cs;this.data=new Bd(this.model,d),this.editing=new Xl(this.model,d),this.editing.view.document.bind("isReadOnly").to(this),this.conversion=new Sd([this.editing.downcastDispatcher,this.data.downcastDispatcher],this.data.upcastDispatcher),this.conversion.addAlias("dataDowncast",this.data.downcastDispatcher),this.conversion.addAlias("editingDowncast",this.editing.downcastDispatcher),this.keystrokes=new ur(this),this.keystrokes.listenTo(this.editing.view.document),this.accessibility=new fm(this)}get isReadOnly(){return this._readOnlyLocks.size>0}set isReadOnly(t){throw new w("editor-isreadonly-has-no-setter")}enableReadOnlyMode(t){if("string"!=typeof t&&"symbol"!=typeof t)throw new w("editor-read-only-lock-id-invalid",null,{lockId:t});this._readOnlyLocks.has(t)||(this._readOnlyLocks.add(t),1===this._readOnlyLocks.size&&this.fire("change:isReadOnly","isReadOnly",!0,!1))}disableReadOnlyMode(t){if("string"!=typeof t&&"symbol"!=typeof t)throw new w("editor-read-only-lock-id-invalid",null,{lockId:t});this._readOnlyLocks.has(t)&&(this._readOnlyLocks.delete(t),0===this._readOnlyLocks.size&&this.fire("change:isReadOnly","isReadOnly",!1,!0))}setData(t){this.data.set(t)}getData(t){return this.data.get(t)}initPlugins(){const t=this.config,e=t.get("plugins"),n=t.get("removePlugins")||[],i=t.get("extraPlugins")||[],o=t.get("substitutePlugins")||[];return this.plugins.init(e.concat(i),n,o)}destroy(){let t=Promise.resolve();return"initializing"==this.state&&(t=new Promise((t=>this.once("ready",t)))),t.then((()=>{this.fire("destroy"),this.stopListening(),this.commands.destroy()})).then((()=>this.plugins.destroy())).then((()=>{this.model.destroy(),this.data.destroy(),this.editing.destroy(),this.keystrokes.destroy()})).then((()=>this._context._removeEditor(this)))}execute(t,...e){try{return this.commands.execute(t,...e)}catch(t){w.rethrowUnexpectedError(t,this)}}focus(){this.editing.view.focus()}static create(...t){throw new Error("This is an abstract method.")}}function Cm(t){return class extends t{updateSourceElement(t){if(!this.sourceElement)throw new w("editor-missing-sourceelement",this);const e=this.config.get("updateSourceElementOnDestroy"),n=this.sourceElement instanceof HTMLTextAreaElement;if(!e&&!n)return void qi(this.sourceElement,"");const i="string"==typeof t?t:this.data.get();qi(this.sourceElement,i)}}}Cm.updateSourceElement=Cm(Object).prototype.updateSourceElement;class vm extends hr{static get pluginName(){return"PendingActions"}init(){this.set("hasAny",!1),this._actions=new Uo({idProperty:"_id"}),this._actions.delegate("add","remove").to(this)}add(t){if("string"!=typeof t)throw new w("pendingactions-add-invalid-message",this);const e=new(W());return e.set("message",t),this._actions.add(e),this.hasAny=!0,e}remove(t){this._actions.remove(t),this.hasAny=!!this._actions.length}get first(){return this._actions.get(0)}[Symbol.iterator](){return this._actions[Symbol.iterator]()}}const ym={bold:'',cancel:'',caption:'',check:'',cog:'',colorPalette:'',eraser:'',history:'',image:'',imageUpload:'',imageAssetManager:'',imageUrl:'',lowVision:'',textAlternative:'',loupe:'',previousArrow:'',nextArrow:'',importExport:'',paragraph:'',plus:'',text:'',alignBottom:'',alignMiddle:'',alignTop:'',alignLeft:'',alignCenter:'',alignRight:'',alignJustify:'',objectLeft:'',objectCenter:'',objectRight:'',objectFullWidth:'',objectInline:'',objectBlockLeft:'',objectBlockRight:'',objectSizeCustom:'',objectSizeFull:'',objectSizeLarge:'',objectSizeSmall:'',objectSizeMedium:'',pencil:'',pilcrow:'',quote:'',threeVerticalDots:'',dragIndicator:'',redo:'',undo:'',bulletedList:'',numberedList:'',todoList:'',codeBlock:'',browseFiles:'',heading1:'',heading2:'',heading3:'',heading4:'',heading5:'',heading6:'',horizontalLine:'',html:'',indent:'',outdent:'',table:''};class xm extends Uo{constructor(t=[]){super(t,{idProperty:"viewUid"}),this.on("add",((t,e,n)=>{this._renderViewIntoCollectionParent(e,n)})),this.on("remove",((t,e)=>{e.element&&this._parentElement&&e.element.remove()})),this._parentElement=null}destroy(){this.map((t=>t.destroy()))}setParent(t){this._parentElement=t;for(const t of this)this._renderViewIntoCollectionParent(t)}delegate(...t){if(!t.length||!t.every((t=>"string"==typeof t)))throw new w("ui-viewcollection-delegate-wrong-events",this);return{to:e=>{for(const n of this)for(const i of t)n.delegate(i).to(e);this.on("add",((n,i)=>{for(const n of t)i.delegate(n).to(e)})),this.on("remove",((n,i)=>{for(const n of t)i.stopDelegating(n,e)}))}}}_renderViewIntoCollectionParent(t,e){t.isRendered||t.render(),t.element&&this._parentElement&&this._parentElement.insertBefore(t.element,this._parentElement.children[e])}remove(t){return super.remove(t)}}class Em extends(S()){constructor(t){super(),Object.assign(this,Lm(Fm(t))),this._isRendered=!1,this._revertData=null}render(){const t=this._renderNode({intoFragment:!0});return this._isRendered=!0,t}apply(t){return this._revertData={children:[],bindings:[],attributes:{}},this._renderNode({node:t,intoFragment:!1,isApplying:!0,revertData:this._revertData}),t}revert(t){if(!this._revertData)throw new w("ui-template-revert-not-applied",[this,t]);this._revertTemplateFromNode(t,this._revertData)}*getViews(){yield*function*t(e){if(e.children)for(const n of e.children)jm(n)?yield n:qm(n)&&(yield*t(n))}(this)}static bind(t,e){return{to:(n,i)=>new Bm({eventNameOrFunction:n,attribute:n,observable:t,emitter:e,callback:i}),if:(n,i,o)=>new Sm({observable:t,emitter:e,attribute:n,valueIfTrue:i,callback:o})}}static extend(t,e){if(t._isRendered)throw new w("template-extend-render",[this,t]);Nm(t,Lm(Fm(e)))}_renderNode(t){let e;if(e=t.node?this.tag&&this.text:this.tag?this.text:!this.text,e)throw new w("ui-template-wrong-syntax",this);return this.text?this._renderText(t):this._renderElement(t)}_renderElement(t){let e=t.node;return e||(e=t.node=document.createElementNS(this.ns||"http://www.w3.org/1999/xhtml",this.tag)),this._renderAttributes(t),this._renderElementChildren(t),this._setUpListeners(t),e}_renderText(t){let e=t.node;return e?t.revertData.text=e.textContent:e=t.node=document.createTextNode(""),Tm(this.text)?this._bindToObservable({schema:this.text,updater:Pm(e),data:t}):e.textContent=this.text.join(""),e}_renderAttributes(t){if(!this.attributes)return;const e=t.node,n=t.revertData;for(const i in this.attributes){const o=e.getAttribute(i),r=this.attributes[i];n&&(n.attributes[i]=o);const s=Um(r)?r[0].ns:null;if(Tm(r)){const a=Um(r)?r[0].value:r;n&&$m(i)&&a.unshift(o),this._bindToObservable({schema:a,updater:Rm(e,i,s),data:t})}else if("style"==i&&"string"!=typeof r[0])this._renderStyleAttribute(r[0],t);else{n&&o&&$m(i)&&r.unshift(o);const t=r.map((t=>t&&t.value||t)).reduce(((t,e)=>t.concat(e)),[]).reduce(zm,"");Hm(t)||e.setAttributeNS(s,i,t)}}}_renderStyleAttribute(t,e){const n=e.node;for(const i in t){const o=t[i];Tm(o)?this._bindToObservable({schema:[o],updater:Vm(n,i),data:e}):n.style[i]=o}}_renderElementChildren(t){const e=t.node,n=t.intoFragment?document.createDocumentFragment():e,i=t.isApplying;let o=0;for(const r of this.children)if(Wm(r)){if(!i){r.setParent(e);for(const t of r)n.appendChild(t.element)}}else if(jm(r))i||(r.isRendered||r.render(),n.appendChild(r.element));else if(xi(r))n.appendChild(r);else if(i){const e={children:[],bindings:[],attributes:{}};t.revertData.children.push(e),r._renderNode({intoFragment:!1,node:n.childNodes[o++],isApplying:!0,revertData:e})}else n.appendChild(r.render());t.intoFragment&&e.appendChild(n)}_setUpListeners(t){if(this.eventListeners)for(const e in this.eventListeners){const n=this.eventListeners[e].map((n=>{const[i,o]=e.split("@");return n.activateDomEventListener(i,o,t)}));t.revertData&&t.revertData.bindings.push(n)}}_bindToObservable({schema:t,updater:e,data:n}){const i=n.revertData;Im(t,e,n);const o=t.filter((t=>!Hm(t))).filter((t=>t.observable)).map((i=>i.activateAttributeListener(t,e,n)));i&&i.bindings.push(o)}_revertTemplateFromNode(t,e){for(const t of e.bindings)for(const e of t)e();if(e.text)return void(t.textContent=e.text);const n=t;for(const t in e.attributes){const i=e.attributes[t];null===i?n.removeAttribute(t):n.setAttribute(t,i)}for(let t=0;tIm(t,e,n);return this.emitter.listenTo(this.observable,`change:${this.attribute}`,i),()=>{this.emitter.stopListening(this.observable,`change:${this.attribute}`,i)}}}class Bm extends Dm{constructor(t){super(t),this.eventNameOrFunction=t.eventNameOrFunction}activateDomEventListener(t,e,n){const i=(t,n)=>{e&&!n.target.matches(e)||("function"==typeof this.eventNameOrFunction?this.eventNameOrFunction(n):this.observable.fire(this.eventNameOrFunction,n))};return this.emitter.listenTo(n.node,t,i),()=>{this.emitter.stopListening(n.node,t,i)}}}class Sm extends Dm{constructor(t){super(t),this.valueIfTrue=t.valueIfTrue}getValue(t){return!Hm(super.getValue(t))&&(this.valueIfTrue||!0)}}function Tm(t){return!!t&&(t.value&&(t=t.value),Array.isArray(t)?t.some(Tm):t instanceof Dm)}function Im(t,e,{node:n}){const i=function(t,e){return t.map((t=>t instanceof Dm?t.getValue(e):t))}(t,n);let o;o=1==t.length&&t[0]instanceof Sm?i[0]:i.reduce(zm,""),Hm(o)?e.remove():e.set(o)}function Pm(t){return{set(e){t.textContent=e},remove(){t.textContent=""}}}function Rm(t,e,n){return{set(i){t.setAttributeNS(n,e,i)},remove(){t.removeAttributeNS(n,e)}}}function Vm(t,e){return{set(n){t.style[e]=n},remove(){t.style[e]=null}}}function Fm(t){return _i(t,(t=>{if(t&&(t instanceof Dm||qm(t)||jm(t)||Wm(t)))return t}))}function Lm(t){if("string"==typeof t?t=function(t){return{text:[t]}}(t):t.text&&function(t){t.text=_o(t.text)}(t),t.on&&(t.eventListeners=function(t){for(const e in t)Om(t,e);return t}(t.on),delete t.on),!t.text){t.attributes&&function(t){for(const e in t)t[e].value&&(t[e].value=_o(t[e].value)),Om(t,e)}(t.attributes);const e=[];if(t.children)if(Wm(t.children))e.push(t.children);else for(const n of t.children)qm(n)||jm(n)||xi(n)?e.push(n):e.push(new Em(n));t.children=e}return t}function Om(t,e){t[e]=_o(t[e])}function zm(t,e){return Hm(e)?t:Hm(t)?e:`${t} ${e}`}function Mm(t,e){for(const n in e)t[n]?t[n].push(...e[n]):t[n]=e[n]}function Nm(t,e){if(e.attributes&&(t.attributes||(t.attributes={}),Mm(t.attributes,e.attributes)),e.eventListeners&&(t.eventListeners||(t.eventListeners={}),Mm(t.eventListeners,e.eventListeners)),e.text&&t.text.push(...e.text),e.children&&e.children.length){if(t.children.length!=e.children.length)throw new w("ui-template-extend-children-mismatch",t);let n=0;for(const i of e.children)Nm(t.children[n++],i)}}function Hm(t){return!t&&0!==t}function jm(t){return t instanceof Jm}function qm(t){return t instanceof Em}function Wm(t){return t instanceof xm}function Um(t){return O(t[0])&&t[0].ns}function $m(t){return"class"==t||"style"==t}var Gm=n(7676),Km={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Gm.A,Km);Gm.A.locals;class Jm extends(Bi(W())){constructor(t){super(),this.element=null,this.isRendered=!1,this.locale=t,this.t=t&&t.t,this._viewCollections=new Uo,this._unboundChildren=this.createCollection(),this._viewCollections.on("add",((e,n)=>{n.locale=t,n.t=t&&t.t})),this.decorate("render")}get bindTemplate(){return this._bindTemplate?this._bindTemplate:this._bindTemplate=Em.bind(this,this)}createCollection(t){const e=new xm(t);return this._viewCollections.add(e),e}registerChild(t){X(t)||(t=[t]);for(const e of t)this._unboundChildren.add(e)}deregisterChild(t){X(t)||(t=[t]);for(const e of t)this._unboundChildren.remove(e)}setTemplate(t){this.template=new Em(t)}extendTemplate(t){Em.extend(this.template,t)}render(){if(this.isRendered)throw new w("ui-view-render-already-rendered",this);this.template&&(this.element=this.template.render(),this.registerChild(this.template.getViews())),this.isRendered=!0}destroy(){this.stopListening(),this._viewCollections.map((t=>t.destroy())),this.template&&this.template._revertData&&this.template.revert(this.element)}}function Zm({emitter:t,activator:e,callback:n,contextElements:i}){t.listenTo(document,"mousedown",((t,o)=>{if(!e())return;const r="function"==typeof o.composedPath?o.composedPath():[],s="function"==typeof i?i():i;for(const t of s)if(t.contains(o.target)||r.includes(t))return;n()}))}function Ym(t){return class extends t{disableCssTransitions(){this._isCssTransitionsDisabled=!0}enableCssTransitions(){this._isCssTransitionsDisabled=!1}constructor(...t){super(...t),this.set("_isCssTransitionsDisabled",!1),this.initializeCssTransitionDisablerMixin()}initializeCssTransitionDisablerMixin(){this.extendTemplate({attributes:{class:[this.bindTemplate.if("_isCssTransitionsDisabled","ck-transitions-disabled")]}})}}}function Qm({view:t}){t.listenTo(t.element,"submit",((e,n)=>{n.preventDefault(),t.fire("submit")}),{useCapture:!0})}function Xm({keystrokeHandler:t,focusTracker:e,gridItems:n,numberOfColumns:i,uiLanguageDirection:o}){const r="number"==typeof i?()=>i:i;function s(t){return i=>{const o=n.find((t=>t.element===e.focusedElement)),r=n.getIndex(o),s=t(r,n);n.get(s).focus(),i.stopPropagation(),i.preventDefault()}}function a(t,e){return t===e-1?0:t+1}function c(t,e){return 0===t?e-1:t-1}t.set("arrowright",s(((t,e)=>"rtl"===o?c(t,e.length):a(t,e.length)))),t.set("arrowleft",s(((t,e)=>"rtl"===o?a(t,e.length):c(t,e.length)))),t.set("arrowup",s(((t,e)=>{let n=t-r();return n<0&&(n=t+r()*Math.floor(e.length/r()),n>e.length-1&&(n-=r())),n}))),t.set("arrowdown",s(((t,e)=>{let n=t+r();return n>e.length-1&&(n=t%r()),n})))}var tg=n(7801),eg={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(tg.A,eg);tg.A.locals;class ng extends Jm{constructor(t){super(t),this.set("text",void 0),this.set("for",void 0),this.id=`ck-editor__label_${p()}`;const e=this.bindTemplate;this.setTemplate({tag:"label",attributes:{class:["ck","ck-label"],id:this.id,for:e.to("for")},children:[{text:e.to("text")}]})}}var ig=n(8527),og={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(ig.A,og);ig.A.locals;class rg extends xm{constructor(t,e=[]){super(e),this.locale=t}get bodyCollectionContainer(){return this._bodyCollectionContainer}attachToDom(){this._bodyCollectionContainer=new Em({tag:"div",attributes:{class:["ck","ck-reset_all","ck-body","ck-rounded-corners"],dir:this.locale.uiLanguageDirection},children:this}).render();let t=document.querySelector(".ck-body-wrapper");t||(t=ft(document,"div",{class:"ck-body-wrapper"}),document.body.appendChild(t)),t.appendChild(this._bodyCollectionContainer)}detachFromDom(){super.destroy(),this._bodyCollectionContainer&&this._bodyCollectionContainer.remove();const t=document.querySelector(".ck-body-wrapper");t&&0==t.childElementCount&&t.remove()}}var sg=n(7621),ag={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(sg.A,ag);sg.A.locals;const cg=class extends Jm{constructor(){super();const t=this.bindTemplate;this.set("content",""),this.set("viewBox","0 0 20 20"),this.set("fillColor",""),this.set("isColorInherited",!0),this.set("isVisible",!0),this.setTemplate({tag:"svg",ns:"http://www.w3.org/2000/svg",attributes:{class:["ck","ck-icon",t.if("isVisible","ck-hidden",(t=>!t)),"ck-reset_all-excluded",t.if("isColorInherited","ck-icon_inherit-color")],viewBox:t.to("viewBox")}})}render(){super.render(),this._updateXMLContent(),this._colorFillPaths(),this.on("change:content",(()=>{this._updateXMLContent(),this._colorFillPaths()})),this.on("change:fillColor",(()=>{this._colorFillPaths()}))}_updateXMLContent(){if(this.content){const t=(new DOMParser).parseFromString(this.content.trim(),"image/svg+xml").querySelector("svg"),e=t.getAttribute("viewBox");e&&(this.viewBox=e);for(const{name:e,value:n}of Array.from(t.attributes))cg.presentationalAttributeNames.includes(e)&&this.element.setAttribute(e,n);for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);for(;t.childNodes.length>0;)this.element.appendChild(t.childNodes[0])}}_colorFillPaths(){this.fillColor&&this.element.querySelectorAll(".ck-icon__fill").forEach((t=>{t.style.fill=this.fillColor}))}};let lg=cg;lg.presentationalAttributeNames=["alignment-baseline","baseline-shift","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-rendering","cursor","direction","display","dominant-baseline","fill","fill-opacity","fill-rule","filter","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","image-rendering","letter-spacing","lighting-color","marker-end","marker-mid","marker-start","mask","opacity","overflow","paint-order","pointer-events","shape-rendering","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","text-anchor","text-decoration","text-overflow","text-rendering","transform","unicode-bidi","vector-effect","visibility","white-space","word-spacing","writing-mode"];class dg extends Jm{constructor(){super(),this.set({style:void 0,text:void 0,id:void 0});const t=this.bindTemplate;this.setTemplate({tag:"span",attributes:{class:["ck","ck-button__label"],style:t.to("style"),id:t.to("id")},children:[{text:t.to("text")}]})}}var hg=n(9715),ug={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(hg.A,ug);hg.A.locals;class mg extends Jm{constructor(t,e=new dg){super(t),this._focusDelayed=null;const n=this.bindTemplate,i=p();this.set("ariaLabel",void 0),this.set("ariaLabelledBy",`ck-editor__aria-label_${i}`),this.set("class",void 0),this.set("labelStyle",void 0),this.set("icon",void 0),this.set("isEnabled",!0),this.set("isOn",!1),this.set("isVisible",!0),this.set("isToggleable",!1),this.set("keystroke",void 0),this.set("label",void 0),this.set("role",void 0),this.set("tabindex",-1),this.set("tooltip",!1),this.set("tooltipPosition","s"),this.set("type","button"),this.set("withText",!1),this.set("withKeystroke",!1),this.children=this.createCollection(),this.labelView=this._setupLabelView(e),this.iconView=new lg,this.iconView.extendTemplate({attributes:{class:"ck-button__icon"}}),this.keystrokeView=this._createKeystrokeView(),this.bind("_tooltipString").to(this,"tooltip",this,"label",this,"keystroke",this._getTooltipString.bind(this));const o={tag:"button",attributes:{class:["ck","ck-button",n.to("class"),n.if("isEnabled","ck-disabled",(t=>!t)),n.if("isVisible","ck-hidden",(t=>!t)),n.to("isOn",(t=>t?"ck-on":"ck-off")),n.if("withText","ck-button_with-text"),n.if("withKeystroke","ck-button_with-keystroke")],role:n.to("role"),type:n.to("type",(t=>t||"button")),tabindex:n.to("tabindex"),"aria-checked":n.to("ariaChecked"),"aria-label":n.to("ariaLabel"),"aria-labelledby":n.to("ariaLabelledBy"),"aria-disabled":n.if("isEnabled",!0,(t=>!t)),"aria-pressed":n.to("isOn",(t=>!!this.isToggleable&&String(!!t))),"data-cke-tooltip-text":n.to("_tooltipString"),"data-cke-tooltip-position":n.to("tooltipPosition")},children:this.children,on:{click:n.to((t=>{this.isEnabled?this.fire("execute"):t.preventDefault()}))}};s.isSafari&&(this._focusDelayed||(this._focusDelayed=Zo((()=>this.focus()),0)),o.on.mousedown=n.to((()=>{this._focusDelayed()})),o.on.mouseup=n.to((()=>{this._focusDelayed.cancel()}))),this.setTemplate(o)}render(){super.render(),this.icon&&(this.iconView.bind("content").to(this,"icon"),this.children.add(this.iconView)),this.children.add(this.labelView),this.withKeystroke&&this.keystroke&&this.children.add(this.keystrokeView)}focus(){this.element.focus()}destroy(){this._focusDelayed&&this._focusDelayed.cancel(),super.destroy()}_setupLabelView(t){return t.bind("text","style","id").to(this,"label","labelStyle","ariaLabelledBy"),t}_createKeystrokeView(){const t=new Jm;return t.setTemplate({tag:"span",attributes:{class:["ck","ck-button__keystroke"]},children:[{text:this.bindTemplate.to("keystroke",(t=>ko(t)))}]}),t}_getTooltipString(t,e,n){return t?"string"==typeof t?t:(n&&(n=ko(n)),t instanceof Function?t(e,n):`${e}${n?` (${n})`:""}`):""}}var gg=n(4391),pg={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(gg.A,pg);gg.A.locals;class fg extends mg{constructor(t){super(t),this.isToggleable=!0,this.toggleSwitchView=this._createToggleView(),this.extendTemplate({attributes:{class:"ck-switchbutton"}})}render(){super.render(),this.children.add(this.toggleSwitchView)}_createToggleView(){const t=new Jm;return t.setTemplate({tag:"span",attributes:{class:["ck","ck-button__toggle"]},children:[{tag:"span",attributes:{class:["ck","ck-button__toggle__inner"]}}]}),t}}class bg extends mg{constructor(t){super(t),this.buttonView=this,this._fileInputView=new kg(t),this._fileInputView.bind("acceptedType").to(this),this._fileInputView.bind("allowMultipleFiles").to(this),this._fileInputView.delegate("done").to(this),this.on("execute",(()=>{this._fileInputView.open()})),this.extendTemplate({attributes:{class:"ck-file-dialog-button"}})}render(){super.render(),this.children.add(this._fileInputView)}}class kg extends Jm{constructor(t){super(t),this.set("acceptedType",void 0),this.set("allowMultipleFiles",!1);const e=this.bindTemplate;this.setTemplate({tag:"input",attributes:{class:["ck-hidden"],type:"file",tabindex:"-1",accept:e.to("acceptedType"),multiple:e.to("allowMultipleFiles")},on:{change:e.to((()=>{this.element&&this.element.files&&this.element.files.length&&this.fire("done",this.element.files),this.element.value=""}))}})}open(){this.element.click()}}const wg='';var _g=n(25),Ag={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(_g.A,Ag);_g.A.locals;class Cg extends Jm{constructor(t,e){super(t);const n=this.bindTemplate;this.set("isCollapsed",!1),this.set("label",""),this.buttonView=this._createButtonView(),this.children=this.createCollection(),this.set("_collapsibleAriaLabelUid",void 0),e&&this.children.addMany(e),this.setTemplate({tag:"div",attributes:{class:["ck","ck-collapsible",n.if("isCollapsed","ck-collapsible_collapsed")]},children:[this.buttonView,{tag:"div",attributes:{class:["ck","ck-collapsible__children"],role:"region",hidden:n.if("isCollapsed","hidden"),"aria-labelledby":n.to("_collapsibleAriaLabelUid")},children:this.children}]})}render(){super.render(),this._collapsibleAriaLabelUid=this.buttonView.labelView.element.id}focus(){this.buttonView.focus()}_createButtonView(){const t=new mg(this.locale),e=t.bindTemplate;return t.set({withText:!0,icon:wg}),t.extendTemplate({attributes:{"aria-expanded":e.to("isOn",(t=>String(t)))}}),t.bind("label").to(this),t.bind("isOn").to(this,"isCollapsed",(t=>!t)),t.on("execute",(()=>{this.isCollapsed=!this.isCollapsed})),t}}function vg(t,e){const n=t.t,i={Black:n("Black"),"Dim grey":n("Dim grey"),Grey:n("Grey"),"Light grey":n("Light grey"),White:n("White"),Red:n("Red"),Orange:n("Orange"),Yellow:n("Yellow"),"Light green":n("Light green"),Green:n("Green"),Aquamarine:n("Aquamarine"),Turquoise:n("Turquoise"),"Light blue":n("Light blue"),Blue:n("Blue"),Purple:n("Purple")};return e.map((t=>{const e=i[t.label];return e&&e!=t.label&&(t.label=e),t}))}function yg(t){return t.map(xg).filter((t=>!!t))}function xg(t){return"string"==typeof t?{model:t,label:t,hasBorder:!1,view:{name:"span",styles:{color:t}}}:{model:t.color,label:t.label||t.color,hasBorder:void 0!==t.hasBorder&&t.hasBorder,view:{name:"span",styles:{color:`${t.color}`}}}}class Eg extends mg{constructor(t){super(t);const e=this.bindTemplate;this.set("color",void 0),this.set("hasBorder",!1),this.icon='',this.extendTemplate({attributes:{style:{backgroundColor:e.to("color",(t=>s.isMediaForcedColors?null:t))},class:["ck","ck-color-grid__tile",e.if("hasBorder","ck-color-selector__color-tile_bordered")]}})}render(){super.render(),this.iconView.fillColor="hsl(0, 0%, 100%)"}}var Dg=n(7317),Bg={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Dg.A,Bg);Dg.A.locals;class Sg extends Jm{constructor(t,e){super(t);const n=e&&e.colorDefinitions?e.colorDefinitions:[];this.columns=e&&e.columns?e.columns:5;const i={gridTemplateColumns:`repeat( ${this.columns}, 1fr)`};this.set("selectedColor",void 0),this.items=this.createCollection(),this.focusTracker=new Go,this.keystrokes=new Ko,this.items.on("add",((t,e)=>{e.isOn=e.color===this.selectedColor})),n.forEach((t=>{const e=new Eg;e.set({color:t.color,label:t.label,tooltip:!0,hasBorder:t.options.hasBorder}),e.on("execute",(()=>{this.fire("execute",{value:t.color,hasBorder:t.options.hasBorder,label:t.label})})),this.items.add(e)})),this.setTemplate({tag:"div",children:this.items,attributes:{class:["ck","ck-color-grid"],style:i}}),this.on("change:selectedColor",((t,e,n)=>{for(const t of this.items)t.isOn=t.color===n}))}focus(){this.items.length&&this.items.first.focus()}focusLast(){this.items.length&&this.items.last.focus()}render(){super.render();for(const t of this.items)this.focusTracker.add(t.element);this.items.on("add",((t,e)=>{this.focusTracker.add(e.element)})),this.items.on("remove",((t,e)=>{this.focusTracker.remove(e.element)})),this.keystrokes.listenTo(this.element),Xm({keystrokeHandler:this.keystrokes,focusTracker:this.focusTracker,gridItems:this.items,numberOfColumns:this.columns,uiLanguageDirection:this.locale&&this.locale.uiLanguageDirection})}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}}var Tg=n(6931);const Ig=function(t){var e,n,i=[],o=1;if("string"==typeof t)if(Tg[t])i=Tg[t].slice(),n="rgb";else if("transparent"===t)o=0,n="rgb",i=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(t)){var r=t.slice(1);o=1,(c=r.length)<=4?(i=[parseInt(r[0]+r[0],16),parseInt(r[1]+r[1],16),parseInt(r[2]+r[2],16)],4===c&&(o=parseInt(r[3]+r[3],16)/255)):(i=[parseInt(r[0]+r[1],16),parseInt(r[2]+r[3],16),parseInt(r[4]+r[5],16)],8===c&&(o=parseInt(r[6]+r[7],16)/255)),i[0]||(i[0]=0),i[1]||(i[1]=0),i[2]||(i[2]=0),n="rgb"}else if(e=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(t)){var s=e[1],a="rgb"===s;n=r=s.replace(/a$/,"");var c="cmyk"===r?4:"gray"===r?1:3;i=e[2].trim().split(/\s*[,\/]\s*|\s+/).map((function(t,e){if(/%$/.test(t))return e===c?parseFloat(t)/100:"rgb"===r?255*parseFloat(t)/100:parseFloat(t);if("h"===r[e]){if(/deg$/.test(t))return parseFloat(t);if(void 0!==Pg[t])return Pg[t]}return parseFloat(t)})),s===r&&i.push(1),o=a||void 0===i[c]?1:i[c],i=i.slice(0,c)}else t.length>10&&/[0-9](?:\s|\/)/.test(t)&&(i=t.match(/([0-9]+)/g).map((function(t){return parseFloat(t)})),n=t.match(/([a-z])/gi).join("").toLowerCase());else isNaN(t)?Array.isArray(t)||t.length?(i=[t[0],t[1],t[2]],n="rgb",o=4===t.length?t[3]:1):t instanceof Object&&(null!=t.r||null!=t.red||null!=t.R?(n="rgb",i=[t.r||t.red||t.R||0,t.g||t.green||t.G||0,t.b||t.blue||t.B||0]):(n="hsl",i=[t.h||t.hue||t.H||0,t.s||t.saturation||t.S||0,t.l||t.lightness||t.L||t.b||t.brightness]),o=t.a||t.alpha||t.opacity||1,null!=t.opacity&&(o/=100)):(n="rgb",i=[t>>>16,(65280&t)>>>8,255&t]);return{space:n,values:i,alpha:o}};var Pg={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};var Rg=n(9047);function Vg(t,e){if(!t)return"";const n=Fg(t);if(!n)return"";if(n.space===e)return t;if(i=n,!Object.keys(Rg).includes(i.space))return"";var i;const o=Rg[n.space][e];if(!o)return"";return function(t,e){switch(e){case"hex":return`#${t}`;case"rgb":return`rgb( ${t[0]}, ${t[1]}, ${t[2]} )`;case"hsl":return`hsl( ${t[0]}, ${t[1]}%, ${t[2]}% )`;case"hwb":return`hwb( ${t[0]}, ${t[1]}, ${t[2]} )`;case"lab":return`lab( ${t[0]}% ${t[1]} ${t[2]} )`;case"lch":return`lch( ${t[0]}% ${t[1]} ${t[2]} )`;default:return""}}(o("hex"===n.space?n.hexValue:n.values),e)}function Fg(t){if(t.startsWith("#")){const e=Ig(t);return{space:"hex",values:e.values,hexValue:t,alpha:e.alpha}}const e=Ig(t);return e.space?e:null}var Lg=n(4962),Og={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Lg.A,Og);Lg.A.locals;class zg extends Jm{constructor(t,e){super(t);const n=`ck-labeled-field-view-${p()}`,i=`ck-labeled-field-view-status-${p()}`;this.fieldView=e(this,n,i),this.set("label",void 0),this.set("isEnabled",!0),this.set("isEmpty",!0),this.set("isFocused",!1),this.set("errorText",null),this.set("infoText",null),this.set("class",void 0),this.set("placeholder",void 0),this.labelView=this._createLabelView(n),this.statusView=this._createStatusView(i),this.fieldWrapperChildren=this.createCollection([this.fieldView,this.labelView]),this.bind("_statusText").to(this,"errorText",this,"infoText",((t,e)=>t||e));const o=this.bindTemplate;this.setTemplate({tag:"div",attributes:{class:["ck","ck-labeled-field-view",o.to("class"),o.if("isEnabled","ck-disabled",(t=>!t)),o.if("isEmpty","ck-labeled-field-view_empty"),o.if("isFocused","ck-labeled-field-view_focused"),o.if("placeholder","ck-labeled-field-view_placeholder"),o.if("errorText","ck-error")]},children:[{tag:"div",attributes:{class:["ck","ck-labeled-field-view__input-wrapper"]},children:this.fieldWrapperChildren},this.statusView]})}_createLabelView(t){const e=new ng(this.locale);return e.for=t,e.bind("text").to(this,"label"),e}_createStatusView(t){const e=new Jm(this.locale),n=this.bindTemplate;return e.setTemplate({tag:"div",attributes:{class:["ck","ck-labeled-field-view__status",n.if("errorText","ck-labeled-field-view__status_error"),n.if("_statusText","ck-hidden",(t=>!t))],id:t,role:n.if("errorText","alert")},children:[{text:n.to("_statusText")}]}),e}focus(t){this.fieldView.focus(t)}}class Mg extends Jm{constructor(t){super(t),this.set("value",void 0),this.set("id",void 0),this.set("placeholder",void 0),this.set("tabIndex",void 0),this.set("isReadOnly",!1),this.set("hasError",!1),this.set("ariaDescribedById",void 0),this.set("ariaLabel",void 0),this.focusTracker=new Go,this.bind("isFocused").to(this.focusTracker),this.set("isEmpty",!0);const e=this.bindTemplate;this.setTemplate({tag:"input",attributes:{class:["ck","ck-input",e.if("isFocused","ck-input_focused"),e.if("isEmpty","ck-input-text_empty"),e.if("hasError","ck-error")],id:e.to("id"),placeholder:e.to("placeholder"),tabindex:e.to("tabIndex"),readonly:e.to("isReadOnly"),"aria-invalid":e.if("hasError",!0),"aria-describedby":e.to("ariaDescribedById"),"aria-label":e.to("ariaLabel")},on:{input:e.to(((...t)=>{this.fire("input",...t),this._updateIsEmpty()})),change:e.to(this._updateIsEmpty.bind(this))}})}render(){super.render(),this.focusTracker.add(this.element),this._setDomElementValue(this.value),this._updateIsEmpty(),this.on("change:value",((t,e,n)=>{this._setDomElementValue(n),this._updateIsEmpty()}))}destroy(){super.destroy(),this.focusTracker.destroy()}select(){this.element.select()}focus(){this.element.focus()}reset(){this.value=this.element.value="",this._updateIsEmpty()}_updateIsEmpty(){this.isEmpty=!this.element.value}_setDomElementValue(t){this.element.value=t||0===t?t:""}}var Ng=n(253),Hg={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Ng.A,Hg);Ng.A.locals;class jg extends Mg{constructor(t){super(t),this.set("inputMode","text");const e=this.bindTemplate;this.extendTemplate({attributes:{inputmode:e.to("inputMode")}})}}class qg extends jg{constructor(t){super(t),this.extendTemplate({attributes:{type:"text",class:["ck-input-text"]}})}}class Wg extends jg{constructor(t,{min:e,max:n,step:i}={}){super(t);const o=this.bindTemplate;this.set("min",e),this.set("max",n),this.set("step",i),this.extendTemplate({attributes:{type:"number",class:["ck-input-number"],min:o.to("min"),max:o.to("max"),step:o.to("step")}})}}var Ug=n(1671),$g={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Ug.A,$g);Ug.A.locals;class Gg extends Jm{constructor(t){super(t);const e=this.bindTemplate;this.set("isVisible",!1),this.set("position","se"),this.children=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-reset","ck-dropdown__panel",e.to("position",(t=>`ck-dropdown__panel_${t}`)),e.if("isVisible","ck-dropdown__panel-visible")],tabindex:"-1"},children:this.children,on:{selectstart:e.to((t=>{"input"!==t.target.tagName.toLocaleLowerCase()&&t.preventDefault()}))}})}focus(){if(this.children.length){const t=this.children.first;"function"==typeof t.focus?t.focus():_("ui-dropdown-panel-focus-child-missing-focus",{childView:this.children.first,dropdownPanel:this})}}focusLast(){if(this.children.length){const t=this.children.last;"function"==typeof t.focusLast?t.focusLast():t.focus()}}}var Kg=n(8149),Jg={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Kg.A,Jg);Kg.A.locals;const Zg=class extends Jm{constructor(t,e,n){super(t);const i=this.bindTemplate;this.buttonView=e,this.panelView=n,this.set("isOpen",!1),this.set("isEnabled",!0),this.set("class",void 0),this.set("id",void 0),this.set("panelPosition","auto"),this.panelView.bind("isVisible").to(this,"isOpen"),this.keystrokes=new Ko,this.focusTracker=new Go,this.setTemplate({tag:"div",attributes:{class:["ck","ck-dropdown",i.to("class"),i.if("isEnabled","ck-disabled",(t=>!t))],id:i.to("id"),"aria-describedby":i.to("ariaDescribedById")},children:[e,n]}),e.extendTemplate({attributes:{class:["ck-dropdown__button"],"data-cke-tooltip-disabled":i.to("isOpen")}})}render(){super.render(),this.focusTracker.add(this.buttonView.element),this.focusTracker.add(this.panelView.element),this.listenTo(this.buttonView,"open",(()=>{this.isOpen=!this.isOpen})),this.on("change:isOpen",((t,e,n)=>{if(n)if("auto"===this.panelPosition){const t=Zg._getOptimalPosition({element:this.panelView.element,target:this.buttonView.element,fitInViewport:!0,positions:this._panelPositions});this.panelView.position=t?t.name:this._panelPositions[0].name}else this.panelView.position=this.panelPosition})),this.keystrokes.listenTo(this.element);const t=(t,e)=>{this.isOpen&&(this.isOpen=!1,e())};this.keystrokes.set("arrowdown",((t,e)=>{this.buttonView.isEnabled&&!this.isOpen&&(this.isOpen=!0,e())})),this.keystrokes.set("arrowright",((t,e)=>{this.isOpen&&e()})),this.keystrokes.set("arrowleft",t),this.keystrokes.set("esc",t)}focus(){this.buttonView.focus()}get _panelPositions(){const{south:t,north:e,southEast:n,southWest:i,northEast:o,northWest:r,southMiddleEast:s,southMiddleWest:a,northMiddleEast:c,northMiddleWest:l}=Zg.defaultPanelPositions;return"rtl"!==this.locale.uiLanguageDirection?[n,i,s,a,t,o,r,c,l,e]:[i,n,a,s,t,r,o,l,c,e]}};let Yg=Zg;Yg.defaultPanelPositions={south:(t,e)=>({top:t.bottom,left:t.left-(e.width-t.width)/2,name:"s"}),southEast:t=>({top:t.bottom,left:t.left,name:"se"}),southWest:(t,e)=>({top:t.bottom,left:t.left-e.width+t.width,name:"sw"}),southMiddleEast:(t,e)=>({top:t.bottom,left:t.left-(e.width-t.width)/4,name:"sme"}),southMiddleWest:(t,e)=>({top:t.bottom,left:t.left-3*(e.width-t.width)/4,name:"smw"}),north:(t,e)=>({top:t.top-e.height,left:t.left-(e.width-t.width)/2,name:"n"}),northEast:(t,e)=>({top:t.top-e.height,left:t.left,name:"ne"}),northWest:(t,e)=>({top:t.top-e.height,left:t.left-e.width+t.width,name:"nw"}),northMiddleEast:(t,e)=>({top:t.top-e.height,left:t.left-(e.width-t.width)/4,name:"nme"}),northMiddleWest:(t,e)=>({top:t.top-e.height,left:t.left-3*(e.width-t.width)/4,name:"nmw"})},Yg._getOptimalPosition=Zi;class Qg extends mg{constructor(t){super(t),this.arrowView=this._createArrowView(),this.extendTemplate({attributes:{"aria-haspopup":!0,"aria-expanded":this.bindTemplate.to("isOn",(t=>String(t)))}}),this.delegate("execute").to(this,"open")}render(){super.render(),this.children.add(this.arrowView)}_createArrowView(){const t=new lg;return t.content=wg,t.extendTemplate({attributes:{class:"ck-dropdown__arrow"}}),t}}class Xg extends(S()){constructor(t){if(super(),this.focusables=t.focusables,this.focusTracker=t.focusTracker,this.keystrokeHandler=t.keystrokeHandler,this.actions=t.actions,t.actions&&t.keystrokeHandler)for(const e in t.actions){let n=t.actions[e];"string"==typeof n&&(n=[n]);for(const i of n)t.keystrokeHandler.set(i,((t,n)=>{this[e](),n()}))}this.on("forwardCycle",(()=>this.focusFirst()),{priority:"low"}),this.on("backwardCycle",(()=>this.focusLast()),{priority:"low"})}get first(){return this.focusables.find(tp)||null}get last(){return this.focusables.filter(tp).slice(-1)[0]||null}get next(){return this._getDomFocusableItem(1)}get previous(){return this._getDomFocusableItem(-1)}get current(){let t=null;return null===this.focusTracker.focusedElement?null:(this.focusables.find(((e,n)=>{const i=e.element===this.focusTracker.focusedElement;return i&&(t=n),i})),t)}focusFirst(){this._focus(this.first,1)}focusLast(){this._focus(this.last,-1)}focusNext(){const t=this.next;t&&this.focusables.getIndex(t)===this.current||t===this.first?this.fire("forwardCycle"):this._focus(t,1)}focusPrevious(){const t=this.previous;t&&this.focusables.getIndex(t)===this.current||t===this.last?this.fire("backwardCycle"):this._focus(t,-1)}_focus(t,e){t&&this.focusTracker.focusedElement!==t.element&&t.focus(e)}_getDomFocusableItem(t){const e=this.focusables.length;if(!e)return null;const n=this.current;if(null===n)return this[1===t?"first":"last"];let i=this.focusables.get(n),o=(n+e+t)%e;do{const n=this.focusables.get(o);if(tp(n)){i=n;break}o=(o+e+t)%e}while(o!==n);return i}}function tp(t){return ep(t)&&Ki(t.element)}function ep(t){return!(!("focus"in t)||"function"!=typeof t.focus)}class np extends Jm{constructor(t){super(t),this.setTemplate({tag:"span",attributes:{class:["ck","ck-toolbar__separator"]}})}}class ip extends Jm{constructor(t){super(t),this.setTemplate({tag:"span",attributes:{class:["ck","ck-toolbar__line-break"]}})}}var op=Object.defineProperty,rp=Object.getOwnPropertySymbols,sp=Object.prototype.hasOwnProperty,ap=Object.prototype.propertyIsEnumerable,cp=(t,e,n)=>e in t?op(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,lp=(t,e)=>{for(var n in e||(e={}))sp.call(e,n)&&cp(t,n,e[n]);if(rp)for(var n of rp(e))ap.call(e,n)&&cp(t,n,e[n]);return t};function dp(t){if(Array.isArray(t))return{items:t,removeItems:[]};const e={items:[],removeItems:[]};return t?lp(lp({},e),t):e}var hp=n(9677),up={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(hp.A,up);hp.A.locals;const mp={alignLeft:ym.alignLeft,bold:ym.bold,importExport:ym.importExport,paragraph:ym.paragraph,plus:ym.plus,text:ym.text,threeVerticalDots:ym.threeVerticalDots,pilcrow:ym.pilcrow,dragIndicator:ym.dragIndicator};class gp extends Jm{constructor(t,e){super(t);const n=this.bindTemplate,i=this.t;this.options=e||{},this.set("ariaLabel",i("Editor toolbar")),this.set("maxWidth","auto"),this.items=this.createCollection(),this.focusTracker=new Go,this.keystrokes=new Ko,this.set("class",void 0),this.set("isCompact",!1),this.itemsView=new pp(t),this.children=this.createCollection(),this.children.add(this.itemsView),this.focusables=this.createCollection();const o="rtl"===t.uiLanguageDirection;this._focusCycler=new Xg({focusables:this.focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:[o?"arrowright":"arrowleft","arrowup"],focusNext:[o?"arrowleft":"arrowright","arrowdown"]}});const r=["ck","ck-toolbar",n.to("class"),n.if("isCompact","ck-toolbar_compact")];var s;this.options.shouldGroupWhenFull&&this.options.isFloating&&r.push("ck-toolbar_floating"),this.setTemplate({tag:"div",attributes:{class:r,role:"toolbar","aria-label":n.to("ariaLabel"),style:{maxWidth:n.to("maxWidth")},tabindex:-1},children:this.children,on:{mousedown:(s=this,s.bindTemplate.to((t=>{t.target===s.element&&t.preventDefault()})))}}),this._behavior=this.options.shouldGroupWhenFull?new bp(this):new fp(this)}render(){super.render(),this.focusTracker.add(this.element);for(const t of this.items)this.focusTracker.add(t.element);this.items.on("add",((t,e)=>{this.focusTracker.add(e.element)})),this.items.on("remove",((t,e)=>{this.focusTracker.remove(e.element)})),this.keystrokes.listenTo(this.element),this._behavior.render(this)}destroy(){return this._behavior.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy(),super.destroy()}focus(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}fillFromConfig(t,e,n){this.items.addMany(this._buildItemsFromConfig(t,e,n))}_buildItemsFromConfig(t,e,n){const i=dp(t),o=n||i.removeItems;return this._cleanItemsConfiguration(i.items,e,o).map((t=>O(t)?this._createNestedToolbarDropdown(t,e,o):"|"===t?new np:"-"===t?new ip:e.create(t))).filter((t=>!!t))}_cleanItemsConfiguration(t,e,n){const i=t.filter(((t,i,o)=>"|"===t||-1===n.indexOf(t)&&("-"===t?!this.options.shouldGroupWhenFull||(_("toolbarview-line-break-ignored-when-grouping-items",o),!1):!(!O(t)&&!e.has(t))||(_("toolbarview-item-unavailable",{item:t}),!1))));return this._cleanSeparatorsAndLineBreaks(i)}_cleanSeparatorsAndLineBreaks(t){const e=t=>"-"!==t&&"|"!==t,n=t.length,i=t.findIndex(e);if(-1===i)return[];const o=n-t.slice().reverse().findIndex(e);return t.slice(i,o).filter(((t,n,i)=>{if(e(t))return!0;return!(n>0&&i[n-1]===t)}))}_createNestedToolbarDropdown(t,e,n){let{label:i,icon:o,items:r,tooltip:s=!0,withText:a=!1}=t;if(r=this._cleanItemsConfiguration(r,e,n),!r.length)return null;const c=Ip(this.locale);return i||_("toolbarview-nested-toolbar-dropdown-missing-label",t),c.class="ck-toolbar__nested-toolbar-dropdown",c.buttonView.set({label:i,tooltip:s,withText:!!a}),!1!==o?c.buttonView.icon=mp[o]||o||ym.threeVerticalDots:c.buttonView.withText=!0,Pp(c,(()=>c.toolbarView._buildItemsFromConfig(r,e,n))),c}}class pp extends Jm{constructor(t){super(t),this.children=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-toolbar__items"]},children:this.children})}}class fp{constructor(t){const e=t.bindTemplate;t.set("isVertical",!1),t.itemsView.children.bindTo(t.items).using((t=>t)),t.focusables.bindTo(t.items).using((t=>ep(t)?t:null)),t.extendTemplate({attributes:{class:[e.if("isVertical","ck-toolbar_vertical")]}})}render(){}destroy(){}}class bp{constructor(t){this.resizeObserver=null,this.cachedPadding=null,this.shouldUpdateGroupingOnNextResize=!1,this.view=t,this.viewChildren=t.children,this.viewFocusables=t.focusables,this.viewItemsView=t.itemsView,this.viewFocusTracker=t.focusTracker,this.viewLocale=t.locale,this.ungroupedItems=t.createCollection(),this.groupedItems=t.createCollection(),this.groupedItemsDropdown=this._createGroupedItemsDropdown(),t.itemsView.children.bindTo(this.ungroupedItems).using((t=>t)),this.ungroupedItems.on("change",this._updateFocusCyclableItems.bind(this)),t.children.on("change",this._updateFocusCyclableItems.bind(this)),t.items.on("change",((t,e)=>{const n=e.index,i=Array.from(e.added);for(const t of e.removed)n>=this.ungroupedItems.length?this.groupedItems.remove(t):this.ungroupedItems.remove(t);for(let t=n;tthis.ungroupedItems.length?this.groupedItems.add(e,t-this.ungroupedItems.length):this.ungroupedItems.add(e,t)}this._updateGrouping()})),t.extendTemplate({attributes:{class:["ck-toolbar_grouping"]}})}render(t){this.viewElement=t.element,this._enableGroupingOnResize(),this._enableGroupingOnMaxWidthChange(t)}destroy(){this.groupedItemsDropdown.destroy(),this.resizeObserver.destroy()}_updateGrouping(){if(!this.viewElement.ownerDocument.body.contains(this.viewElement))return;if(!Ki(this.viewElement))return void(this.shouldUpdateGroupingOnNextResize=!0);const t=this.groupedItems.length;let e;for(;this._areItemsOverflowing;)this._groupLastItem(),e=!0;if(!e&&this.groupedItems.length){for(;this.groupedItems.length&&!this._areItemsOverflowing;)this._ungroupFirstItem();this._areItemsOverflowing&&this._groupLastItem()}this.groupedItems.length!==t&&this.view.fire("groupedItemsUpdate")}get _areItemsOverflowing(){if(!this.ungroupedItems.length)return!1;const t=this.viewElement,n=this.viewLocale.uiLanguageDirection,i=new Li(t.lastChild),o=new Li(t);if(!this.cachedPadding){const i=e.window.getComputedStyle(t),o="ltr"===n?"paddingRight":"paddingLeft";this.cachedPadding=Number.parseInt(i[o])}return"ltr"===n?i.right>o.right-this.cachedPadding:i.left{t&&t===e.contentRect.width&&!this.shouldUpdateGroupingOnNextResize||(this.shouldUpdateGroupingOnNextResize=!1,this._updateGrouping(),t=e.contentRect.width)})),this._updateGrouping()}_enableGroupingOnMaxWidthChange(t){t.on("change:maxWidth",(()=>{this._updateGrouping()}))}_groupLastItem(){this.groupedItems.length||(this.viewChildren.add(new np),this.viewChildren.add(this.groupedItemsDropdown),this.viewFocusTracker.add(this.groupedItemsDropdown.element)),this.groupedItems.add(this.ungroupedItems.remove(this.ungroupedItems.last),0)}_ungroupFirstItem(){this.ungroupedItems.add(this.groupedItems.remove(this.groupedItems.first)),this.groupedItems.length||(this.viewChildren.remove(this.groupedItemsDropdown),this.viewChildren.remove(this.viewChildren.last),this.viewFocusTracker.remove(this.groupedItemsDropdown.element))}_createGroupedItemsDropdown(){const t=this.viewLocale,e=t.t,n=Ip(t);return n.class="ck-toolbar__grouped-dropdown",n.panelPosition="ltr"===t.uiLanguageDirection?"sw":"se",Pp(n,this.groupedItems),n.buttonView.set({label:e("Show more items"),tooltip:!0,tooltipPosition:"rtl"===t.uiLanguageDirection?"se":"sw",icon:ym.threeVerticalDots}),n}_updateFocusCyclableItems(){this.viewFocusables.clear(),this.ungroupedItems.map((t=>{ep(t)&&this.viewFocusables.add(t)})),this.groupedItems.length&&this.viewFocusables.add(this.groupedItemsDropdown)}}class kp extends Jm{constructor(t){super(t);const e=this.bindTemplate;this.set("isVisible",!0),this.children=this.createCollection(),this.setTemplate({tag:"li",attributes:{class:["ck","ck-list__item",e.if("isVisible","ck-hidden",(t=>!t))],role:"presentation"},children:this.children})}focus(){this.children.first&&this.children.first.focus()}}class wp extends Jm{constructor(t){super(t),this.setTemplate({tag:"li",attributes:{class:["ck","ck-list__separator"]}})}}class _p extends Jm{constructor(t,e=new ng){super(t);const n=this.bindTemplate,i=new vp(t);this.set({label:"",isVisible:!0}),this.labelView=e,this.labelView.bind("text").to(this,"label"),this.children=this.createCollection(),this.children.addMany([this.labelView,i]),i.set({role:"group",ariaLabelledBy:e.id}),i.focusTracker.destroy(),i.keystrokes.destroy(),this.items=i.items,this.setTemplate({tag:"li",attributes:{role:"presentation",class:["ck","ck-list__group",n.if("isVisible","ck-hidden",(t=>!t))]},children:this.children})}focus(){if(this.items){const t=this.items.find((t=>!(t instanceof wp)));t&&t.focus()}}}var Ap=n(5199),Cp={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Ap.A,Cp);Ap.A.locals;class vp extends Jm{constructor(t){super(t),this._listItemGroupToChangeListeners=new WeakMap;const e=this.bindTemplate;this.focusables=new xm,this.items=this.createCollection(),this.focusTracker=new Go,this.keystrokes=new Ko,this._focusCycler=new Xg({focusables:this.focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"arrowup",focusNext:"arrowdown"}}),this.set("ariaLabel",void 0),this.set("ariaLabelledBy",void 0),this.set("role",void 0),this.setTemplate({tag:"ul",attributes:{class:["ck","ck-reset","ck-list"],role:e.to("role"),"aria-label":e.to("ariaLabel"),"aria-labelledby":e.to("ariaLabelledBy")},children:this.items})}render(){super.render();for(const t of this.items)t instanceof _p?this._registerFocusableItemsGroup(t):t instanceof kp&&this._registerFocusableListItem(t);this.items.on("change",((t,e)=>{for(const t of e.removed)t instanceof _p?this._deregisterFocusableItemsGroup(t):t instanceof kp&&this._deregisterFocusableListItem(t);for(const t of Array.from(e.added).reverse())t instanceof _p?this._registerFocusableItemsGroup(t,e.index):this._registerFocusableListItem(t,e.index)})),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this._focusCycler.focusFirst()}focusFirst(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}_registerFocusableListItem(t,e){this.focusTracker.add(t.element),this.focusables.add(t,e)}_deregisterFocusableListItem(t){this.focusTracker.remove(t.element),this.focusables.remove(t)}_getOnGroupItemsChangeCallback(t){return(e,n)=>{for(const t of n.removed)this._deregisterFocusableListItem(t);for(const e of Array.from(n.added).reverse())this._registerFocusableListItem(e,this.items.getIndex(t)+n.index)}}_registerFocusableItemsGroup(t,e){Array.from(t.items).forEach(((t,n)=>{const i=void 0!==e?e+n:void 0;this._registerFocusableListItem(t,i)}));const n=this._getOnGroupItemsChangeCallback(t);this._listItemGroupToChangeListeners.set(t,n),t.items.on("change",n)}_deregisterFocusableItemsGroup(t){for(const e of t.items)this._deregisterFocusableListItem(e);t.items.off("change",this._listItemGroupToChangeListeners.get(t)),this._listItemGroupToChangeListeners.delete(t)}}var yp=n(1792),xp={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(yp.A,xp);yp.A.locals;class Ep extends Jm{constructor(t,e){super(t);const n=this.bindTemplate;this.set("class",void 0),this.set("labelStyle",void 0),this.set("icon",void 0),this.set("isEnabled",!0),this.set("isOn",!1),this.set("isToggleable",!1),this.set("isVisible",!0),this.set("keystroke",void 0),this.set("withKeystroke",!1),this.set("label",void 0),this.set("tabindex",-1),this.set("tooltip",!1),this.set("tooltipPosition","s"),this.set("type","button"),this.set("withText",!1),this.children=this.createCollection(),this.actionView=this._createActionView(e),this.arrowView=this._createArrowView(),this.keystrokes=new Ko,this.focusTracker=new Go,this.setTemplate({tag:"div",attributes:{class:["ck","ck-splitbutton",n.to("class"),n.if("isVisible","ck-hidden",(t=>!t)),this.arrowView.bindTemplate.if("isOn","ck-splitbutton_open")]},children:this.children})}render(){super.render(),this.children.add(this.actionView),this.children.add(this.arrowView),this.focusTracker.add(this.actionView.element),this.focusTracker.add(this.arrowView.element),this.keystrokes.listenTo(this.element),this.keystrokes.set("arrowright",((t,e)=>{this.focusTracker.focusedElement===this.actionView.element&&(this.arrowView.focus(),e())})),this.keystrokes.set("arrowleft",((t,e)=>{this.focusTracker.focusedElement===this.arrowView.element&&(this.actionView.focus(),e())}))}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}focus(){this.actionView.focus()}_createActionView(t){const e=t||new mg;return t||e.bind("icon","isEnabled","isOn","isToggleable","keystroke","label","tabindex","tooltip","tooltipPosition","type","withText").to(this),e.extendTemplate({attributes:{class:"ck-splitbutton__action"}}),e.delegate("execute").to(this),e}_createArrowView(){const t=new mg,e=t.bindTemplate;return t.icon=wg,t.extendTemplate({attributes:{class:["ck-splitbutton__arrow"],"data-cke-tooltip-disabled":e.to("isOn"),"aria-haspopup":!0,"aria-expanded":e.to("isOn",(t=>String(t)))}}),t.bind("isEnabled").to(this),t.bind("label").to(this),t.bind("tooltip").to(this),t.delegate("execute").to(this,"open"),t}}var Dp=n(1666),Bp={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Dp.A,Bp);Dp.A.locals;var Sp=n(3629),Tp={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Sp.A,Tp);Sp.A.locals;function Ip(t,n=Qg){const i="function"==typeof n?new n(t):n,o=new Gg(t),r=new Yg(t,i,o);return i.bind("isEnabled").to(r),i instanceof Ep?i.arrowView.bind("isOn").to(r,"isOpen"):i.bind("isOn").to(r,"isOpen"),function(t){(function(t){t.on("render",(()=>{Zm({emitter:t,activator:()=>t.isOpen,callback:()=>{t.isOpen=!1},contextElements:()=>[t.element,...t.focusTracker._elements]})}))})(t),function(t){t.on("execute",(e=>{e.source instanceof fg||(t.isOpen=!1)}))}(t),function(t){t.focusTracker.on("change:isFocused",((e,n,i)=>{t.isOpen&&!i&&(t.isOpen=!1)}))}(t),function(t){t.keystrokes.set("arrowdown",((e,n)=>{t.isOpen&&(t.panelView.focus(),n())})),t.keystrokes.set("arrowup",((e,n)=>{t.isOpen&&(t.panelView.focusLast(),n())}))}(t),function(t){t.on("change:isOpen",((n,i,o)=>{if(o)return;const r=t.panelView.element;r&&r.contains(e.document.activeElement)&&t.buttonView.focus()}))}(t),function(t){t.on("change:isOpen",((e,n,i)=>{i&&t.panelView.focus()}),{priority:"low"})}(t)}(r),r}function Pp(t,e,n={}){t.extendTemplate({attributes:{class:["ck-toolbar-dropdown"]}}),t.isOpen?Rp(t,e,n):t.once("change:isOpen",(()=>Rp(t,e,n)),{priority:"highest"}),n.enableActiveItemFocusOnDropdownOpen&&Lp(t,(()=>t.toolbarView.items.find((t=>t.isOn))))}function Rp(t,e,n){const i=t.locale,o=i.t,r=t.toolbarView=new gp(i),s="function"==typeof e?e():e;r.ariaLabel=n.ariaLabel||o("Dropdown toolbar"),n.maxWidth&&(r.maxWidth=n.maxWidth),n.class&&(r.class=n.class),n.isCompact&&(r.isCompact=n.isCompact),n.isVertical&&(r.isVertical=!0),s instanceof xm?r.items.bindTo(s).using((t=>t)):r.items.addMany(s),t.panelView.children.add(r),r.items.delegate("execute").to(t)}function Vp(t,e,n={}){t.isOpen?Fp(t,e,n):t.once("change:isOpen",(()=>Fp(t,e,n)),{priority:"highest"}),Lp(t,(()=>t.listView.items.find((t=>t instanceof kp&&t.children.first.isOn))))}function Fp(t,e,n){const i=t.locale,o=t.listView=new vp(i),r="function"==typeof e?e():e;o.ariaLabel=n.ariaLabel,o.role=n.role,Op(t,o.items,r,i),t.panelView.children.add(o),o.items.delegate("execute").to(t)}function Lp(t,e){t.on("change:isOpen",(()=>{if(!t.isOpen)return;const n=e();n&&("function"==typeof n.focus?n.focus():_("ui-dropdown-focus-child-on-open-child-missing-focus",{view:n}))}),{priority:f.low-10})}function Op(t,e,n,i){e.bindTo(n).using((e=>{if("separator"===e.type)return new wp(i);if("group"===e.type){const n=new _p(i);return n.set({label:e.label}),Op(t,n.items,e.items,i),n.items.delegate("execute").to(t),n}if("button"===e.type||"switchbutton"===e.type){const t=new kp(i);let n;return"button"===e.type?(n=new mg(i),n.bind("ariaChecked").to(n,"isOn")):n=new fg(i),n.bind(...Object.keys(e.model)).to(e.model),n.delegate("execute").to(t),t.children.add(n),t}return null}))}const zp=(t,e,n)=>{const i=new qg(t.locale);return i.set({id:e,ariaDescribedById:n}),i.bind("isReadOnly").to(t,"isEnabled",(t=>!t)),i.bind("hasError").to(t,"errorText",(t=>!!t)),i.on("input",(()=>{t.errorText=null})),t.bind("isEmpty","isFocused","placeholder").to(i),i},Mp=(t,e,n)=>{const i=new Wg(t.locale);return i.set({id:e,ariaDescribedById:n,inputMode:"numeric"}),i.bind("isReadOnly").to(t,"isEnabled",(t=>!t)),i.bind("hasError").to(t,"errorText",(t=>!!t)),i.on("input",(()=>{t.errorText=null})),t.bind("isEmpty","isFocused","placeholder").to(i),i},Np=(t,e,n)=>{const i=Ip(t.locale);return i.set({id:e,ariaDescribedById:n}),i.bind("isEnabled").to(t),i},Hp=(t,e=0,n=1)=>t>n?n:tMath.round(n*t)/n,qp=(Math.PI,t=>("#"===t[0]&&(t=t.substring(1)),t.length<6?{r:parseInt(t[0]+t[0],16),g:parseInt(t[1]+t[1],16),b:parseInt(t[2]+t[2],16),a:4===t.length?jp(parseInt(t[3]+t[3],16)/255,2):1}:{r:parseInt(t.substring(0,2),16),g:parseInt(t.substring(2,4),16),b:parseInt(t.substring(4,6),16),a:8===t.length?jp(parseInt(t.substring(6,8),16)/255,2):1})),Wp=({h:t,s:e,v:n,a:i})=>{const o=(200-e)*n/100;return{h:jp(t),s:jp(o>0&&o<200?e*n/100/(o<=100?o:200-o)*100:0),l:jp(o/2),a:jp(i,2)}},Up=t=>{const{h:e,s:n,l:i}=Wp(t);return`hsl(${e}, ${n}%, ${i}%)`},$p=({h:t,s:e,v:n,a:i})=>{t=t/360*6,e/=100,n/=100;const o=Math.floor(t),r=n*(1-e),s=n*(1-(t-o)*e),a=n*(1-(1-t+o)*e),c=o%6;return{r:jp(255*[n,s,r,r,a,n][c]),g:jp(255*[a,n,n,s,r,r][c]),b:jp(255*[r,r,a,n,n,s][c]),a:jp(i,2)}},Gp=t=>{const e=t.toString(16);return e.length<2?"0"+e:e},Kp=({r:t,g:e,b:n,a:i})=>{const o=i<1?Gp(jp(255*i)):"";return"#"+Gp(t)+Gp(e)+Gp(n)+o},Jp=({r:t,g:e,b:n,a:i})=>{const o=Math.max(t,e,n),r=o-Math.min(t,e,n),s=r?o===t?(e-n)/r:o===e?2+(n-t)/r:4+(t-e)/r:0;return{h:jp(60*(s<0?s+6:s)),s:jp(o?r/o*100:0),v:jp(o/255*100),a:i}},Zp=(t,e)=>{if(t===e)return!0;for(const n in t)if(t[n]!==e[n])return!1;return!0},Yp={},Qp=t=>{let e=Yp[t];return e||(e=document.createElement("template"),e.innerHTML=t,Yp[t]=e),e},Xp=(t,e,n)=>{t.dispatchEvent(new CustomEvent(e,{bubbles:!0,detail:n}))};let tf=!1;const ef=t=>"touches"in t,nf=(t,e)=>{const n=ef(e)?e.touches[0]:e,i=t.el.getBoundingClientRect();Xp(t.el,"move",t.getMove({x:Hp((n.pageX-(i.left+window.pageXOffset))/i.width),y:Hp((n.pageY-(i.top+window.pageYOffset))/i.height)}))};class of{constructor(t,e,n,i){const o=Qp(`
`);t.appendChild(o.content.cloneNode(!0));const r=t.querySelector(`[part=${e}]`);r.addEventListener("mousedown",this),r.addEventListener("touchstart",this),r.addEventListener("keydown",this),this.el=r,this.xy=i,this.nodes=[r.firstChild,r]}set dragging(t){const e=t?document.addEventListener:document.removeEventListener;e(tf?"touchmove":"mousemove",this),e(tf?"touchend":"mouseup",this)}handleEvent(t){switch(t.type){case"mousedown":case"touchstart":if(t.preventDefault(),!(t=>!(tf&&!ef(t)||(tf||(tf=ef(t)),0)))(t)||!tf&&0!=t.button)return;this.el.focus(),nf(this,t),this.dragging=!0;break;case"mousemove":case"touchmove":t.preventDefault(),nf(this,t);break;case"mouseup":case"touchend":this.dragging=!1;break;case"keydown":((t,e)=>{const n=e.keyCode;n>40||t.xy&&n<37||n<33||(e.preventDefault(),Xp(t.el,"move",t.getMove({x:39===n?.01:37===n?-.01:34===n?.05:33===n?-.05:35===n?1:36===n?-1:0,y:40===n?.01:38===n?-.01:0},!0)))})(this,t)}}style(t){t.forEach(((t,e)=>{for(const n in t)this.nodes[e].style.setProperty(n,t[n])}))}}class rf extends of{constructor(t){super(t,"hue",'aria-label="Hue" aria-valuemin="0" aria-valuemax="360"',!1)}update({h:t}){this.h=t,this.style([{left:t/360*100+"%",color:Up({h:t,s:100,v:100,a:1})}]),this.el.setAttribute("aria-valuenow",`${jp(t)}`)}getMove(t,e){return{h:e?Hp(this.h+360*t.x,0,360):360*t.x}}}class sf extends of{constructor(t){super(t,"saturation",'aria-label="Color"',!0)}update(t){this.hsva=t,this.style([{top:100-t.v+"%",left:`${t.s}%`,color:Up(t)},{"background-color":Up({h:t.h,s:100,v:100,a:1})}]),this.el.setAttribute("aria-valuetext",`Saturation ${jp(t.s)}%, Brightness ${jp(t.v)}%`)}getMove(t,e){return{s:e?Hp(this.hsva.s+100*t.x,0,100):100*t.x,v:e?Hp(this.hsva.v-100*t.y,0,100):Math.round(100-100*t.y)}}}const af=Symbol("same"),cf=Symbol("color"),lf=Symbol("hsva"),df=Symbol("update"),hf=Symbol("parts"),uf=Symbol("css"),mf=Symbol("sliders");class gf extends HTMLElement{static get observedAttributes(){return["color"]}get[uf](){return[':host{display:flex;flex-direction:column;position:relative;width:200px;height:200px;user-select:none;-webkit-user-select:none;cursor:default}:host([hidden]){display:none!important}[role=slider]{position:relative;touch-action:none;user-select:none;-webkit-user-select:none;outline:0}[role=slider]:last-child{border-radius:0 0 8px 8px}[part$=pointer]{position:absolute;z-index:1;box-sizing:border-box;width:28px;height:28px;display:flex;place-content:center center;transform:translate(-50%,-50%);background-color:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}[part$=pointer]::after{content:"";width:100%;height:100%;border-radius:inherit;background-color:currentColor}[role=slider]:focus [part$=pointer]{transform:translate(-50%,-50%) scale(1.1)}',"[part=hue]{flex:0 0 24px;background:linear-gradient(to right,red 0,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)}[part=hue-pointer]{top:50%;z-index:2}","[part=saturation]{flex-grow:1;border-color:transparent;border-bottom:12px solid #000;border-radius:8px 8px 0 0;background-image:linear-gradient(to top,#000,transparent),linear-gradient(to right,#fff,rgba(255,255,255,0));box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)}[part=saturation-pointer]{z-index:3}"]}get[mf](){return[sf,rf]}get color(){return this[cf]}set color(t){if(!this[af](t)){const e=this.colorModel.toHsva(t);this[df](e),this[cf]=t}}constructor(){super();const t=Qp(``),e=this.attachShadow({mode:"open"});e.appendChild(t.content.cloneNode(!0)),e.addEventListener("move",this),this[hf]=this[mf].map((t=>new t(e)))}connectedCallback(){if(this.hasOwnProperty("color")){const t=this.color;delete this.color,this.color=t}else this.color||(this.color=this.colorModel.defaultColor)}attributeChangedCallback(t,e,n){const i=this.colorModel.fromAttr(n);this[af](i)||(this.color=i)}handleEvent(t){const e=this[lf],n={...e,...t.detail};let i;this[df](n),Zp(n,e)||this[af](i=this.colorModel.fromHsva(n))||(this[cf]=i,Xp(this,"color-changed",{value:i}))}[af](t){return this.color&&this.colorModel.equal(t,this.color)}[df](t){this[lf]=t,this[hf].forEach((e=>e.update(t)))}}const pf={defaultColor:"#000",toHsva:t=>Jp(qp(t)),fromHsva:({h:t,s:e,v:n})=>Kp($p({h:t,s:e,v:n,a:1})),equal:(t,e)=>t.toLowerCase()===e.toLowerCase()||Zp(qp(t),qp(e)),fromAttr:t=>t};class ff extends gf{get colorModel(){return pf}}var bf=n(1905),kf={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(bf.A,kf);bf.A.locals;class wf extends Jm{constructor(t,e={}){super(t),this.set({color:"",_hexColor:""}),this.hexInputRow=this._createInputRow();const n=this.createCollection();e.hideInput||n.add(this.hexInputRow),this.setTemplate({tag:"div",attributes:{class:["ck","ck-color-picker"],tabindex:-1},children:n}),this._config=e,this._debounceColorPickerEvent=Wa((t=>{this.set("color",t),this.fire("colorSelected",{color:this.color})}),150,{leading:!0}),this.on("set:color",((t,e,n)=>{t.return=Vg(n,this._config.format||"hsl")})),this.on("change:color",(()=>{this._hexColor=_f(this.color)})),this.on("change:_hexColor",(()=>{document.activeElement!==this.picker&&this.picker.setAttribute("color",this._hexColor),_f(this.color)!=_f(this._hexColor)&&(this.color=this._hexColor)}))}render(){var t,n;if(super.render(),t="hex-color-picker",n=ff,void 0===customElements.get(t)&&customElements.define(t,n),this.picker=e.document.createElement("hex-color-picker"),this.picker.setAttribute("class","hex-color-picker"),this.picker.setAttribute("tabindex","-1"),this._createSlidersView(),this.element){this.hexInputRow.element?this.element.insertBefore(this.picker,this.hexInputRow.element):this.element.appendChild(this.picker);const t=document.createElement("style");t.textContent='[role="slider"]:focus [part$="pointer"] {border: 1px solid #fff;outline: 1px solid var(--ck-color-focus-border);box-shadow: 0 0 0 2px #fff;}',this.picker.shadowRoot.appendChild(t)}this.picker.addEventListener("color-changed",(t=>{const e=t.detail.value;this._debounceColorPickerEvent(e)}))}focus(){if(!this._config.hideInput&&(s.isGecko||s.isiOS||s.isSafari)){this.hexInputRow.children.get(1).focus()}this.slidersView.first.focus()}_createSlidersView(){const t=[...this.picker.shadowRoot.children].filter((t=>"slider"===t.getAttribute("role"))).map((t=>new Af(t)));this.slidersView=this.createCollection(),t.forEach((t=>{this.slidersView.add(t)}))}_createInputRow(){const t=this._createColorInput();return new vf(this.locale,t)}_createColorInput(){const t=new zg(this.locale,zp),{t:e}=this.locale;return t.set({label:e("HEX"),class:"color-picker-hex-input"}),t.fieldView.bind("value").to(this,"_hexColor",(e=>t.isFocused?t.fieldView.value:e.startsWith("#")?e.substring(1):e)),t.fieldView.on("input",(()=>{const e=t.fieldView.element.value;if(e){const t=yf(e);t&&this._debounceColorPickerEvent(t)}})),t}isValid(){const{t}=this.locale;return this.resetValidationStatus(),!!this.hexInputRow.getParsedColor()||(this.hexInputRow.inputView.errorText=t('Please enter a valid color (e.g. "ff0000").'),!1)}resetValidationStatus(){this.hexInputRow.inputView.errorText=null}}function _f(t){let e=function(t){if(!t)return"";const e=Fg(t);return e?"hex"===e.space?e.hexValue:Vg(t,"hex"):"#000"}(t);return e||(e="#000"),4===e.length&&(e="#"+[e[1],e[1],e[2],e[2],e[3],e[3]].join("")),e.toLowerCase()}class Af extends Jm{constructor(t){super(),this.element=t}focus(){this.element.focus()}}class Cf extends Jm{constructor(t){super(t),this.setTemplate({tag:"div",attributes:{class:["ck","ck-color-picker__hash-view"]},children:"#"})}}class vf extends Jm{constructor(t,e){super(t),this.inputView=e,this.children=this.createCollection([new Cf,this.inputView]),this.setTemplate({tag:"div",attributes:{class:["ck","ck-color-picker__row"]},children:this.children})}getParsedColor(){return yf(this.inputView.fieldView.element.value)}}function yf(t){if(!t)return null;const e=t.trim().replace(/^#/,"");return[3,4,6,8].includes(e.length)&&/^(([0-9a-fA-F]{2}){3,4}|([0-9a-fA-F]){3,4})$/.test(e)?`#${e}`:null}class xf extends(W(Uo)){constructor(t){super(t),this.set("isEmpty",!0),this.on("change",(()=>{this.set("isEmpty",0===this.length)}))}add(t,e){return this.find((e=>e.color===t.color))?this:super.add(t,e)}hasColor(t){return!!this.find((e=>e.color===t))}}const{eraser:Ef,colorPalette:Df}=ym;class Bf extends Jm{constructor(t,{colors:e,columns:n,removeButtonLabel:i,documentColorsLabel:o,documentColorsCount:r,colorPickerLabel:s,focusTracker:a,focusables:c}){super(t);const l=this.bindTemplate;this.set("isVisible",!0),this.focusTracker=a,this.items=this.createCollection(),this.colorDefinitions=e,this.columns=n,this.documentColors=new xf,this.documentColorsCount=r,this._focusables=c,this._removeButtonLabel=i,this._colorPickerLabel=s,this._documentColorsLabel=o,this.setTemplate({tag:"div",attributes:{class:["ck-color-grids-fragment",l.if("isVisible","ck-hidden",(t=>!t))]},children:this.items}),this.removeColorButtonView=this._createRemoveColorButton(),this.items.add(this.removeColorButtonView)}updateDocumentColors(t,e){const n=t.document,i=this.documentColorsCount;this.documentColors.clear();for(const o of n.getRoots()){const n=t.createRangeIn(o);for(const t of n.getItems())if(t.is("$textProxy")&&t.hasAttribute(e)&&(this._addColorToDocumentColors(t.getAttribute(e)),this.documentColors.length>=i))return}}updateSelectedColors(){const t=this.documentColorsGrid,e=this.staticColorsGrid,n=this.selectedColor;e.selectedColor=n,t&&(t.selectedColor=n)}render(){if(super.render(),this.staticColorsGrid=this._createStaticColorsGrid(),this.items.add(this.staticColorsGrid),this.documentColorsCount){const t=Em.bind(this.documentColors,this.documentColors),e=new ng(this.locale);e.text=this._documentColorsLabel,e.extendTemplate({attributes:{class:["ck","ck-color-grid__label",t.if("isEmpty","ck-hidden")]}}),this.items.add(e),this.documentColorsGrid=this._createDocumentColorsGrid(),this.items.add(this.documentColorsGrid)}this._createColorPickerButton(),this._addColorSelectorElementsToFocusTracker()}focus(){this.removeColorButtonView.focus()}destroy(){super.destroy()}addColorPickerButton(){this.colorPickerButtonView&&(this.items.add(this.colorPickerButtonView),this.focusTracker.add(this.colorPickerButtonView.element),this._focusables.add(this.colorPickerButtonView))}_addColorSelectorElementsToFocusTracker(){this.focusTracker.add(this.removeColorButtonView.element),this._focusables.add(this.removeColorButtonView),this.staticColorsGrid&&(this.focusTracker.add(this.staticColorsGrid.element),this._focusables.add(this.staticColorsGrid)),this.documentColorsGrid&&(this.focusTracker.add(this.documentColorsGrid.element),this._focusables.add(this.documentColorsGrid))}_createColorPickerButton(){this.colorPickerButtonView=new mg,this.colorPickerButtonView.set({label:this._colorPickerLabel,withText:!0,icon:Df,class:"ck-color-selector__color-picker"}),this.colorPickerButtonView.on("execute",(()=>{this.fire("colorPicker:show")}))}_createRemoveColorButton(){const t=new mg;return t.set({withText:!0,icon:Ef,label:this._removeButtonLabel}),t.class="ck-color-selector__remove-color",t.on("execute",(()=>{this.fire("execute",{value:null,source:"removeColorButton"})})),t.render(),t}_createStaticColorsGrid(){const t=new Sg(this.locale,{colorDefinitions:this.colorDefinitions,columns:this.columns});return t.on("execute",((t,e)=>{this.fire("execute",{value:e.value,source:"staticColorsGrid"})})),t}_createDocumentColorsGrid(){const t=Em.bind(this.documentColors,this.documentColors),e=new Sg(this.locale,{columns:this.columns});return e.extendTemplate({attributes:{class:t.if("isEmpty","ck-hidden")}}),e.items.bindTo(this.documentColors).using((t=>{const e=new Eg;return e.set({color:t.color,hasBorder:t.options&&t.options.hasBorder}),t.label&&e.set({label:t.label,tooltip:!0}),e.on("execute",(()=>{this.fire("execute",{value:t.color,source:"documentColorsGrid"})})),e})),this.documentColors.on("change:isEmpty",((t,n,i)=>{i&&(e.selectedColor=null)})),e}_addColorToDocumentColors(t){const e=this.colorDefinitions.find((e=>e.color===t));e?this.documentColors.add(Object.assign({},e)):this.documentColors.add({color:t,label:t,options:{hasBorder:!1}})}}var Sf=Object.defineProperty,Tf=Object.getOwnPropertySymbols,If=Object.prototype.hasOwnProperty,Pf=Object.prototype.propertyIsEnumerable,Rf=(t,e,n)=>e in t?Sf(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class Vf extends Jm{constructor(t,{focusTracker:e,focusables:n,keystrokes:i,colorPickerViewConfig:o}){super(t),this.items=this.createCollection(),this.focusTracker=e,this.keystrokes=i,this.set("isVisible",!1),this.set("selectedColor",void 0),this._focusables=n,this._colorPickerViewConfig=o;const r=this.bindTemplate,{saveButtonView:s,cancelButtonView:a}=this._createActionButtons();this.saveButtonView=s,this.cancelButtonView=a,this.actionBarView=this._createActionBarView({saveButtonView:s,cancelButtonView:a}),this.setTemplate({tag:"div",attributes:{class:["ck-color-picker-fragment",r.if("isVisible","ck-hidden",(t=>!t))]},children:this.items})}render(){super.render();const t=new wf(this.locale,((t,e)=>{for(var n in e||(e={}))If.call(e,n)&&Rf(t,n,e[n]);if(Tf)for(var n of Tf(e))Pf.call(e,n)&&Rf(t,n,e[n]);return t})({},this._colorPickerViewConfig));this.colorPickerView=t,this.colorPickerView.render(),this.selectedColor&&(t.color=this.selectedColor),this.listenTo(this,"change:selectedColor",((e,n,i)=>{t.color=i})),this.items.add(this.colorPickerView),this.items.add(this.actionBarView),this._addColorPickersElementsToFocusTracker(),this._stopPropagationOnArrowsKeys(),this._executeOnEnterPress(),this._executeUponColorChange()}destroy(){super.destroy()}focus(){this.colorPickerView.focus()}resetValidationStatus(){this.colorPickerView.resetValidationStatus()}_executeOnEnterPress(){this.keystrokes.set("enter",(t=>{this.isVisible&&this.focusTracker.focusedElement!==this.cancelButtonView.element&&this.colorPickerView.isValid()&&(this.fire("execute",{value:this.selectedColor}),t.stopPropagation(),t.preventDefault())}))}_stopPropagationOnArrowsKeys(){const t=t=>t.stopPropagation();this.keystrokes.set("arrowright",t),this.keystrokes.set("arrowleft",t),this.keystrokes.set("arrowup",t),this.keystrokes.set("arrowdown",t)}_addColorPickersElementsToFocusTracker(){for(const t of this.colorPickerView.slidersView)this.focusTracker.add(t.element),this._focusables.add(t);const t=this.colorPickerView.hexInputRow.children.get(1);t.element&&(this.focusTracker.add(t.element),this._focusables.add(t)),this.focusTracker.add(this.saveButtonView.element),this._focusables.add(this.saveButtonView),this.focusTracker.add(this.cancelButtonView.element),this._focusables.add(this.cancelButtonView)}_createActionBarView({saveButtonView:t,cancelButtonView:e}){const n=new Jm,i=this.createCollection();return i.add(t),i.add(e),n.setTemplate({tag:"div",attributes:{class:["ck","ck-color-selector_action-bar"]},children:i}),n}_createActionButtons(){const t=this.locale,e=t.t,n=new mg(t),i=new mg(t);return n.set({icon:ym.check,class:"ck-button-save",type:"button",withText:!1,label:e("Accept")}),i.set({icon:ym.cancel,class:"ck-button-cancel",type:"button",withText:!1,label:e("Cancel")}),n.on("execute",(()=>{this.colorPickerView.isValid()&&this.fire("execute",{source:"colorPickerSaveButton",value:this.selectedColor})})),i.on("execute",(()=>{this.fire("colorPicker:cancel")})),{saveButtonView:n,cancelButtonView:i}}_executeUponColorChange(){this.colorPickerView.on("colorSelected",((t,e)=>{this.fire("execute",{value:e.color,source:"colorPicker"}),this.set("selectedColor",e.color)}))}}var Ff=n(6309),Lf={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Ff.A,Lf);Ff.A.locals;class Of extends Jm{constructor(t,{colors:e,columns:n,removeButtonLabel:i,documentColorsLabel:o,documentColorsCount:r,colorPickerLabel:s,colorPickerViewConfig:a}){super(t),this.items=this.createCollection(),this.focusTracker=new Go,this.keystrokes=new Ko,this._focusables=new xm,this._colorPickerViewConfig=a,this._focusCycler=new Xg({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.colorGridsFragmentView=new Bf(t,{colors:e,columns:n,removeButtonLabel:i,documentColorsLabel:o,documentColorsCount:r,colorPickerLabel:s,focusTracker:this.focusTracker,focusables:this._focusables}),this.colorPickerFragmentView=new Vf(t,{focusables:this._focusables,focusTracker:this.focusTracker,keystrokes:this.keystrokes,colorPickerViewConfig:a}),this.set("_isColorGridsFragmentVisible",!0),this.set("_isColorPickerFragmentVisible",!1),this.set("selectedColor",void 0),this.colorGridsFragmentView.bind("isVisible").to(this,"_isColorGridsFragmentVisible"),this.colorPickerFragmentView.bind("isVisible").to(this,"_isColorPickerFragmentVisible"),this.on("change:selectedColor",((t,e,n)=>{this.colorGridsFragmentView.set("selectedColor",n),this.colorPickerFragmentView.set("selectedColor",n)})),this.colorGridsFragmentView.on("change:selectedColor",((t,e,n)=>{this.set("selectedColor",n)})),this.colorPickerFragmentView.on("change:selectedColor",((t,e,n)=>{this.set("selectedColor",n)})),this.setTemplate({tag:"div",attributes:{class:["ck","ck-color-selector"]},children:this.items})}render(){super.render(),this.keystrokes.listenTo(this.element)}destroy(){super.destroy(),this.focusTracker.destroy(),this.keystrokes.destroy()}appendUI(){this._appendColorGridsFragment(),this._colorPickerViewConfig&&this._appendColorPickerFragment()}showColorPickerFragment(){this.colorPickerFragmentView.colorPickerView&&!this._isColorPickerFragmentVisible&&(this._isColorPickerFragmentVisible=!0,this.colorPickerFragmentView.focus(),this.colorPickerFragmentView.resetValidationStatus(),this._isColorGridsFragmentVisible=!1)}showColorGridsFragment(){this._isColorGridsFragmentVisible||(this._isColorGridsFragmentVisible=!0,this.colorGridsFragmentView.focus(),this._isColorPickerFragmentVisible=!1)}focus(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}updateDocumentColors(t,e){this.colorGridsFragmentView.updateDocumentColors(t,e)}updateSelectedColors(){this.colorGridsFragmentView.updateSelectedColors()}_appendColorGridsFragment(){this.items.length||(this.items.add(this.colorGridsFragmentView),this.colorGridsFragmentView.delegate("execute").to(this),this.colorGridsFragmentView.delegate("colorPicker:show").to(this))}_appendColorPickerFragment(){2!==this.items.length&&(this.items.add(this.colorPickerFragmentView),this.colorGridsFragmentView.colorPickerButtonView&&this.colorGridsFragmentView.colorPickerButtonView.on("execute",(()=>{this.showColorPickerFragment()})),this.colorGridsFragmentView.addColorPickerButton(),this.colorPickerFragmentView.delegate("execute").to(this),this.colorPickerFragmentView.delegate("colorPicker:cancel").to(this))}}class zf{constructor(t){this._components=new Map,this.editor=t}*names(){for(const t of this._components.values())yield t.originalName}add(t,e){this._components.set(Mf(t),{callback:e,originalName:t})}create(t){if(!this.has(t))throw new w("componentfactory-item-missing",this,{name:t});return this._components.get(Mf(t)).callback(this.editor.locale)}has(t){return this._components.has(Mf(t))}}function Mf(t){return String(t).toLowerCase()}var Nf=n(7913),Hf={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Nf.A,Hf);Nf.A.locals;class jf extends Jm{constructor(t,e={}){super(t);const n=this.bindTemplate;this.set("label",e.label||""),this.set("class",e.class||null),this.children=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-form__header",n.to("class")]},children:this.children}),e.icon&&(this.iconView=new lg,this.iconView.content=e.icon,this.children.add(this.iconView));const i=new Jm(t);i.setTemplate({tag:"h2",attributes:{class:["ck","ck-form__header__label"],role:"presentation"},children:[{text:n.to("label")}]}),this.children.add(i)}}var qf=n(9822),Wf={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(qf.A,Wf);qf.A.locals;class Uf extends Jm{constructor(t){super(t),this.children=this.createCollection(),this.keystrokes=new Ko,this._focusTracker=new Go,this._focusables=new xm,this.focusCycler=new Xg({focusables:this._focusables,focusTracker:this._focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-dialog__actions"]},children:this.children})}render(){super.render(),this.keystrokes.listenTo(this.element)}setButtons(t){for(const e of t){const t=new mg(this.locale);let n;for(n in t.on("execute",(()=>e.onExecute())),e.onCreate&&e.onCreate(t),e)"onExecute"!=n&&"onCreate"!=n&&t.set(n,e[n]);this.children.add(t)}this._updateFocusCyclableItems()}focus(t){-1===t?this.focusCycler.focusLast():this.focusCycler.focusFirst()}_updateFocusCyclableItems(){Array.from(this.children).forEach((t=>{this._focusables.add(t),this._focusTracker.add(t.element)}))}}class $f extends Jm{constructor(t){super(t),this.children=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-dialog__content"]},children:this.children})}reset(){for(;this.children.length;)this.children.remove(0)}}var Gf=n(9819),Kf={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Gf.A,Kf);Gf.A.locals;const Jf="screen-center",Zf="editor-center",Yf="editor-top-side",Qf="editor-top-center",Xf="editor-bottom-center",tb="editor-above-center",eb="editor-below-center",nb=Wi("px"),ib=class extends(function(t){return class extends t{constructor(...t){super(...t),this._onDragBound=this._onDrag.bind(this),this._onDragEndBound=this._onDragEnd.bind(this),this._lastDraggingCoordinates={x:0,y:0},this.on("render",(()=>{this._attachListeners()})),this.set("isDragging",!1)}_attachListeners(){this.listenTo(this.element,"mousedown",this._onDragStart.bind(this)),this.listenTo(this.element,"touchstart",this._onDragStart.bind(this))}_attachDragListeners(){this.listenTo(e.document,"mouseup",this._onDragEndBound),this.listenTo(e.document,"touchend",this._onDragEndBound),this.listenTo(e.document,"mousemove",this._onDragBound),this.listenTo(e.document,"touchmove",this._onDragBound)}_detachDragListeners(){this.stopListening(e.document,"mouseup",this._onDragEndBound),this.stopListening(e.document,"touchend",this._onDragEndBound),this.stopListening(e.document,"mousemove",this._onDragBound),this.stopListening(e.document,"touchmove",this._onDragBound)}_onDragStart(t,e){if(!this._isHandleElementPressed(e))return;this._attachDragListeners();let n=0,i=0;e instanceof MouseEvent?(n=e.clientX,i=e.clientY):(n=e.touches[0].clientX,i=e.touches[0].clientY),this._lastDraggingCoordinates={x:n,y:i},this.isDragging=!0}_onDrag(t,e){if(!this.isDragging)return void this._detachDragListeners();let n=0,i=0;e instanceof MouseEvent?(n=e.clientX,i=e.clientY):(n=e.touches[0].clientX,i=e.touches[0].clientY),e.preventDefault(),this.fire("drag",{deltaX:Math.round(n-this._lastDraggingCoordinates.x),deltaY:Math.round(i-this._lastDraggingCoordinates.y)}),this._lastDraggingCoordinates={x:n,y:i}}_onDragEnd(){this._detachDragListeners(),this.isDragging=!1}_isHandleElementPressed(t){return!!this.dragHandleElement&&(this.dragHandleElement===t.target||t.target instanceof HTMLElement&&this.dragHandleElement.contains(t.target))}}}(Jm)){constructor(t,{getCurrentDomRoot:e,getViewportOffset:n}){super(t),this.wasMoved=!1;const i=this.bindTemplate,o=t.t;this.set("className",""),this.set("ariaLabel",o("Editor dialog")),this.set("isModal",!1),this.set("position",Jf),this.set("_isVisible",!1),this.set("_isTransparent",!1),this.set("_top",0),this.set("_left",0),this._getCurrentDomRoot=e,this._getViewportOffset=n,this.decorate("moveTo"),this.parts=this.createCollection(),this.keystrokes=new Ko,this.focusTracker=new Go,this._focusables=new xm,this._focusCycler=new Xg({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-dialog-overlay",i.if("isModal","ck-dialog-overlay__transparent",(t=>!t)),i.if("_isVisible","ck-hidden",(t=>!t))],tabindex:"-1"},children:[{tag:"div",attributes:{tabindex:"-1",class:["ck","ck-dialog",i.to("className")],role:"dialog","aria-label":i.to("ariaLabel"),style:{top:i.to("_top",(t=>nb(t))),left:i.to("_left",(t=>nb(t))),visibility:i.if("_isTransparent","hidden")}},children:this.parts}]})}render(){super.render(),this.keystrokes.set("Esc",((t,e)=>{this.fire("close",{source:"escKeyPress"}),e()})),this.on("drag",((t,{deltaX:e,deltaY:n})=>{this.wasMoved=!0,this.moveBy(e,n)})),this.listenTo(e.window,"resize",(()=>{this._isVisible&&!this.wasMoved&&this.updatePosition()})),this.listenTo(e.document,"scroll",(()=>{this._isVisible&&!this.wasMoved&&this.updatePosition()})),this.on("change:_isVisible",((t,e,n)=>{n&&(this._isTransparent=!0,setTimeout((()=>{this.updatePosition(),this._isTransparent=!1,this.focus()}),10))})),this.keystrokes.listenTo(this.element)}get dragHandleElement(){return this.headerView?this.headerView.element:null}setupParts({icon:t,title:e,hasCloseButton:n=!0,content:i,actionButtons:o}){e&&(this.headerView=new jf(this.locale,{icon:t}),n&&(this.closeButtonView=this._createCloseButton(),this.headerView.children.add(this.closeButtonView)),this.headerView.label=e,this.ariaLabel=e,this.parts.add(this.headerView,0)),i&&(i instanceof Jm&&(i=[i]),this.contentView=new $f(this.locale),this.contentView.children.addMany(i),this.parts.add(this.contentView)),o&&(this.actionsView=new Uf(this.locale),this.actionsView.setButtons(o),this.parts.add(this.actionsView)),this._updateFocusCyclableItems()}focus(){this._focusCycler.focusFirst()}moveTo(t,e){const n=this._getViewportRect(),i=this._getDialogRect();t+i.width>n.right&&(t=n.right-i.width),t{var e;this._focusables.add(t),this.focusTracker.add(t.element),ep(e=t)&&"focusCycler"in e&&e.focusCycler instanceof Xg&&(this.listenTo(t.focusCycler,"forwardCycle",(t=>{this._focusCycler.focusNext(),this._focusCycler.next!==this._focusCycler.focusables.get(this._focusCycler.current)&&t.stop()})),this.listenTo(t.focusCycler,"backwardCycle",(t=>{this._focusCycler.focusPrevious(),this._focusCycler.previous!==this._focusCycler.focusables.get(this._focusCycler.current)&&t.stop()})))}))}_createCloseButton(){const t=new mg(this.locale),e=this.locale.t;return t.set({label:e("Close"),tooltip:!0,icon:ym.cancel}),t.on("execute",(()=>this.fire("close",{source:"closeButton"}))),t}};let ob=ib;ob.defaultOffset=15;class rb extends er{constructor(t){super(t);const e=t.t;this._initShowHideListeners(),this._initFocusToggler(),this._initMultiRootIntegration(),this.set("id",null),t.accessibility.addKeystrokeInfos({categoryId:"navigation",keystrokes:[{label:e("Move focus in and out of an active dialog window"),keystroke:"Ctrl+F6",mayRequireFn:!0}]})}static get pluginName(){return"Dialog"}_initShowHideListeners(){this.on("show",((t,e)=>{this._show(e)})),this.on("show",((t,e)=>{e.onShow&&e.onShow(this)}),{priority:"low"}),this.on("hide",(()=>{rb._visibleDialogPlugin&&rb._visibleDialogPlugin._hide()})),this.on("hide",(()=>{this._onHide&&(this._onHide(this),this._onHide=void 0)}),{priority:"low"})}_initFocusToggler(){const t=this.editor;t.keystrokes.set("Ctrl+F6",((e,n)=>{this.isOpen&&!this.view.isModal&&(this.view.focusTracker.isFocused?t.editing.view.focus():this.view.focus(),n())}))}_initMultiRootIntegration(){const t=this.editor.model;t.document.on("change:data",(()=>{if(!this.view)return;const e=t.document.differ.getChangedRoots();for(const t of e)t.state&&this.view.updatePosition()}))}show(t){this.hide(),this.fire(`show:${t.id}`,t)}_show({id:t,icon:e,title:n,hasCloseButton:i=!0,content:o,actionButtons:r,className:s,isModal:a,position:c,onHide:l}){const d=this.editor;this.view=new ob(d.locale,{getCurrentDomRoot:()=>d.editing.view.getDomRoot(d.model.document.selection.anchor.root.rootName),getViewportOffset:()=>d.ui.viewportOffset});const h=this.view;h.on("close",(()=>{this.hide()})),d.ui.view.body.add(h),d.ui.focusTracker.add(h.element),d.keystrokes.listenTo(h.element),c||(c=a?Jf:Zf),h.set({position:c,_isVisible:!0,className:s,isModal:a}),h.setupParts({icon:e,title:n,hasCloseButton:i,content:o,actionButtons:r}),this.id=t,l&&(this._onHide=l),this.isOpen=!0,rb._visibleDialogPlugin=this}hide(){rb._visibleDialogPlugin&&rb._visibleDialogPlugin.fire(`hide:${rb._visibleDialogPlugin.id}`)}_hide(){if(!this.view)return;const t=this.editor,e=this.view;e.contentView&&e.contentView.reset(),t.ui.view.body.remove(e),t.ui.focusTracker.remove(e.element),t.keystrokes.stopListening(e.element),e.destroy(),t.editing.view.focus(),this.id=null,this.isOpen=!1,rb._visibleDialogPlugin=null}}var sb=n(3710),ab={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(sb.A,ab);sb.A.locals;var cb=Object.defineProperty,lb=Object.getOwnPropertySymbols,db=Object.prototype.hasOwnProperty,hb=Object.prototype.propertyIsEnumerable,ub=(t,e,n)=>e in t?cb(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,mb=(t,e)=>{for(var n in e||(e={}))db.call(e,n)&&ub(t,n,e[n]);if(lb)for(var n of lb(e))hb.call(e,n)&&ub(t,n,e[n]);return t};const gb=Wi("px"),pb=e.document.body,fb={top:-99999,left:-99999,name:"arrowless",config:{withArrow:!1}},bb=class extends Jm{constructor(t){super(t);const e=this.bindTemplate;this.set("top",0),this.set("left",0),this.set("position","arrow_nw"),this.set("isVisible",!1),this.set("withArrow",!0),this.set("class",void 0),this._pinWhenIsVisibleCallback=null,this.content=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-balloon-panel",e.to("position",(t=>`ck-balloon-panel_${t}`)),e.if("isVisible","ck-balloon-panel_visible"),e.if("withArrow","ck-balloon-panel_with-arrow"),e.to("class")],style:{top:e.to("top",gb),left:e.to("left",gb)}},children:this.content})}show(){this.isVisible=!0}hide(){this.isVisible=!1}attachTo(t){this.show();const e=bb.defaultPositions,n=Object.assign({},{element:this.element,positions:[e.southArrowNorth,e.southArrowNorthMiddleWest,e.southArrowNorthMiddleEast,e.southArrowNorthWest,e.southArrowNorthEast,e.northArrowSouth,e.northArrowSouthMiddleWest,e.northArrowSouthMiddleEast,e.northArrowSouthWest,e.northArrowSouthEast,e.viewportStickyNorth],limiter:pb,fitInViewport:!0},t),i=bb._getOptimalPosition(n)||fb,o=parseInt(i.left),r=parseInt(i.top),s=i.name,a=i.config||{},{withArrow:c=!0}=a;this.top=r,this.left=o,this.position=s,this.withArrow=c}pin(t){this.unpin(),this._pinWhenIsVisibleCallback=()=>{this.isVisible?this._startPinning(t):this._stopPinning()},this._startPinning(t),this.listenTo(this,"change:isVisible",this._pinWhenIsVisibleCallback)}unpin(){this._pinWhenIsVisibleCallback&&(this._stopPinning(),this.stopListening(this,"change:isVisible",this._pinWhenIsVisibleCallback),this._pinWhenIsVisibleCallback=null,this.hide())}_startPinning(t){this.attachTo(t);const n=wb(t.target),i=t.limiter?wb(t.limiter):pb;this.listenTo(e.document,"scroll",((e,o)=>{const r=o.target,s=n&&r.contains(n),a=i&&r.contains(i);!s&&!a&&n&&i||this.attachTo(t)}),{useCapture:!0}),this.listenTo(e.window,"resize",(()=>{this.attachTo(t)}))}_stopPinning(){this.stopListening(e.document,"scroll"),this.stopListening(e.window,"resize")}};let kb=bb;function wb(t){return Ai(t)?t:Ri(t)?t.commonAncestorContainer:"function"==typeof t?wb(t()):null}function _b(t={}){const{sideOffset:e=kb.arrowSideOffset,heightOffset:n=kb.arrowHeightOffset,stickyVerticalOffset:i=kb.stickyVerticalOffset,config:o}=t;return{northWestArrowSouthWest:(t,n)=>mb({top:r(t,n),left:t.left-e,name:"arrow_sw"},o&&{config:o}),northWestArrowSouthMiddleWest:(t,n)=>mb({top:r(t,n),left:t.left-.25*n.width-e,name:"arrow_smw"},o&&{config:o}),northWestArrowSouth:(t,e)=>mb({top:r(t,e),left:t.left-e.width/2,name:"arrow_s"},o&&{config:o}),northWestArrowSouthMiddleEast:(t,n)=>mb({top:r(t,n),left:t.left-.75*n.width+e,name:"arrow_sme"},o&&{config:o}),northWestArrowSouthEast:(t,n)=>mb({top:r(t,n),left:t.left-n.width+e,name:"arrow_se"},o&&{config:o}),northArrowSouthWest:(t,n)=>mb({top:r(t,n),left:t.left+t.width/2-e,name:"arrow_sw"},o&&{config:o}),northArrowSouthMiddleWest:(t,n)=>mb({top:r(t,n),left:t.left+t.width/2-.25*n.width-e,name:"arrow_smw"},o&&{config:o}),northArrowSouth:(t,e)=>mb({top:r(t,e),left:t.left+t.width/2-e.width/2,name:"arrow_s"},o&&{config:o}),northArrowSouthMiddleEast:(t,n)=>mb({top:r(t,n),left:t.left+t.width/2-.75*n.width+e,name:"arrow_sme"},o&&{config:o}),northArrowSouthEast:(t,n)=>mb({top:r(t,n),left:t.left+t.width/2-n.width+e,name:"arrow_se"},o&&{config:o}),northEastArrowSouthWest:(t,n)=>mb({top:r(t,n),left:t.right-e,name:"arrow_sw"},o&&{config:o}),northEastArrowSouthMiddleWest:(t,n)=>mb({top:r(t,n),left:t.right-.25*n.width-e,name:"arrow_smw"},o&&{config:o}),northEastArrowSouth:(t,e)=>mb({top:r(t,e),left:t.right-e.width/2,name:"arrow_s"},o&&{config:o}),northEastArrowSouthMiddleEast:(t,n)=>mb({top:r(t,n),left:t.right-.75*n.width+e,name:"arrow_sme"},o&&{config:o}),northEastArrowSouthEast:(t,n)=>mb({top:r(t,n),left:t.right-n.width+e,name:"arrow_se"},o&&{config:o}),southWestArrowNorthWest:t=>mb({top:s(t),left:t.left-e,name:"arrow_nw"},o&&{config:o}),southWestArrowNorthMiddleWest:(t,n)=>mb({top:s(t),left:t.left-.25*n.width-e,name:"arrow_nmw"},o&&{config:o}),southWestArrowNorth:(t,e)=>mb({top:s(t),left:t.left-e.width/2,name:"arrow_n"},o&&{config:o}),southWestArrowNorthMiddleEast:(t,n)=>mb({top:s(t),left:t.left-.75*n.width+e,name:"arrow_nme"},o&&{config:o}),southWestArrowNorthEast:(t,n)=>mb({top:s(t),left:t.left-n.width+e,name:"arrow_ne"},o&&{config:o}),southArrowNorthWest:t=>mb({top:s(t),left:t.left+t.width/2-e,name:"arrow_nw"},o&&{config:o}),southArrowNorthMiddleWest:(t,n)=>mb({top:s(t),left:t.left+t.width/2-.25*n.width-e,name:"arrow_nmw"},o&&{config:o}),southArrowNorth:(t,e)=>mb({top:s(t),left:t.left+t.width/2-e.width/2,name:"arrow_n"},o&&{config:o}),southArrowNorthMiddleEast:(t,n)=>mb({top:s(t),left:t.left+t.width/2-.75*n.width+e,name:"arrow_nme"},o&&{config:o}),southArrowNorthEast:(t,n)=>mb({top:s(t),left:t.left+t.width/2-n.width+e,name:"arrow_ne"},o&&{config:o}),southEastArrowNorthWest:t=>mb({top:s(t),left:t.right-e,name:"arrow_nw"},o&&{config:o}),southEastArrowNorthMiddleWest:(t,n)=>mb({top:s(t),left:t.right-.25*n.width-e,name:"arrow_nmw"},o&&{config:o}),southEastArrowNorth:(t,e)=>mb({top:s(t),left:t.right-e.width/2,name:"arrow_n"},o&&{config:o}),southEastArrowNorthMiddleEast:(t,n)=>mb({top:s(t),left:t.right-.75*n.width+e,name:"arrow_nme"},o&&{config:o}),southEastArrowNorthEast:(t,n)=>mb({top:s(t),left:t.right-n.width+e,name:"arrow_ne"},o&&{config:o}),westArrowEast:(t,e)=>mb({top:t.top+t.height/2-e.height/2,left:t.left-e.width-n,name:"arrow_e"},o&&{config:o}),eastArrowWest:(t,e)=>mb({top:t.top+t.height/2-e.height/2,left:t.right+n,name:"arrow_w"},o&&{config:o}),viewportStickyNorth:(t,e,n,r)=>{const s=r||n;return t.getIntersection(s)?s.height-t.height>i?null:{top:s.top+i,left:t.left+t.width/2-e.width/2,name:"arrowless",config:mb({withArrow:!1},o)}:null}};function r(t,e){return t.top-e.height-n}function s(t){return t.bottom+n}}kb.arrowSideOffset=25,kb.arrowHeightOffset=10,kb.stickyVerticalOffset=20,kb._getOptimalPosition=Zi,kb.defaultPositions=_b();var Ab=n(9205),Cb={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Ab.A,Cb);Ab.A.locals;const vb="ck-tooltip",yb=class extends(Bi()){constructor(t){if(super(),this._currentElementWithTooltip=null,this._currentTooltipPosition=null,this._resizeObserver=null,this._mutationObserver=null,yb._editors.add(t),yb._instance)return yb._instance;yb._instance=this,this.tooltipTextView=new Jm(t.locale),this.tooltipTextView.set("text",""),this.tooltipTextView.setTemplate({tag:"span",attributes:{class:["ck","ck-tooltip__text"]},children:[{text:this.tooltipTextView.bindTemplate.to("text")}]}),this.balloonPanelView=new kb(t.locale),this.balloonPanelView.class=vb,this.balloonPanelView.content.add(this.tooltipTextView),this._mutationObserver=function(t){const e=new MutationObserver((()=>{t()}));return{attach(t){e.observe(t,{attributes:!0,attributeFilter:["data-cke-tooltip-text","data-cke-tooltip-position"]})},detach(){e.disconnect()}}}((()=>{this._updateTooltipPosition()})),this._pinTooltipDebounced=Wa(this._pinTooltip,600),this._unpinTooltipDebounced=Wa(this._unpinTooltip,400),this.listenTo(e.document,"keydown",this._onKeyDown.bind(this),{useCapture:!0}),this.listenTo(e.document,"mouseenter",this._onEnterOrFocus.bind(this),{useCapture:!0}),this.listenTo(e.document,"mouseleave",this._onLeaveOrBlur.bind(this),{useCapture:!0}),this.listenTo(e.document,"focus",this._onEnterOrFocus.bind(this),{useCapture:!0}),this.listenTo(e.document,"blur",this._onLeaveOrBlur.bind(this),{useCapture:!0}),this.listenTo(e.document,"scroll",this._onScroll.bind(this),{useCapture:!0}),this._watchdogExcluded=!0}destroy(t){const e=t.ui.view&&t.ui.view.body;yb._editors.delete(t),this.stopListening(t.ui),e&&e.has(this.balloonPanelView)&&e.remove(this.balloonPanelView),yb._editors.size||(this._unpinTooltip(),this.balloonPanelView.destroy(),this.stopListening(),yb._instance=null)}static getPositioningFunctions(t){const e=yb.defaultBalloonPositions;return{s:[e.southArrowNorth,e.southArrowNorthEast,e.southArrowNorthWest],n:[e.northArrowSouth],e:[e.eastArrowWest],w:[e.westArrowEast],sw:[e.southArrowNorthEast],se:[e.southArrowNorthWest]}[t]}_onKeyDown(t,e){"Escape"===e.key&&this._currentElementWithTooltip&&(this._unpinTooltip(),e.stopPropagation())}_onEnterOrFocus(t,{target:e}){const n=Eb(e);n?n!==this._currentElementWithTooltip&&(this._unpinTooltip(),this._pinTooltipDebounced(n,Db(n))):"focus"===t.name&&this._unpinTooltip()}_onLeaveOrBlur(t,{target:e,relatedTarget:n}){if("mouseleave"===t.name){if(!Ai(e))return;const t=this.balloonPanelView.element,i=t&&(t===n||t.contains(n)),o=!i&&e===t;if(i)return void this._unpinTooltipDebounced.cancel();if(!o&&this._currentElementWithTooltip&&e!==this._currentElementWithTooltip)return;const r=Eb(e),s=Eb(n);(o||r&&r!==s)&&this._unpinTooltipDebounced()}else{if(this._currentElementWithTooltip&&e!==this._currentElementWithTooltip)return;this._unpinTooltipDebounced()}}_onScroll(t,{target:e}){this._currentElementWithTooltip&&(e.contains(this.balloonPanelView.element)&&e.contains(this._currentElementWithTooltip)||this._unpinTooltip())}_pinTooltip(t,{text:e,position:n,cssClass:i}){this._unpinTooltip();const o=$o(yb._editors.values()).ui.view.body;o.has(this.balloonPanelView)||o.add(this.balloonPanelView),this.tooltipTextView.text=e,this.balloonPanelView.pin({target:t,positions:yb.getPositioningFunctions(n)}),this._resizeObserver=new ji(t,(()=>{Ki(t)||this._unpinTooltip()})),this._mutationObserver.attach(t),this.balloonPanelView.class=[vb,i].filter((t=>t)).join(" ");for(const t of yb._editors)this.listenTo(t.ui,"update",this._updateTooltipPosition.bind(this),{priority:"low"});this._currentElementWithTooltip=t,this._currentTooltipPosition=n}_unpinTooltip(){this._unpinTooltipDebounced.cancel(),this._pinTooltipDebounced.cancel(),this.balloonPanelView.unpin();for(const t of yb._editors)this.stopListening(t.ui,"update");this._currentElementWithTooltip=null,this._currentTooltipPosition=null,this.tooltipTextView.text="",this._resizeObserver&&this._resizeObserver.destroy(),this._mutationObserver.detach()}_updateTooltipPosition(){if(!this._currentElementWithTooltip)return;const t=Db(this._currentElementWithTooltip);Ki(this._currentElementWithTooltip)&&t.text?this.balloonPanelView.pin({target:this._currentElementWithTooltip,positions:yb.getPositioningFunctions(t.position)}):this._unpinTooltip()}};let xb=yb;function Eb(t){return Ai(t)?t.closest("[data-cke-tooltip-text]:not([data-cke-tooltip-disabled])"):null}function Db(t){return{text:t.dataset.ckeTooltipText,position:t.dataset.ckeTooltipPosition||"s",cssClass:t.dataset.ckeTooltipClass||""}}xb.defaultBalloonPositions=_b({heightOffset:5,sideOffset:13}),xb._editors=new Set,xb._instance=null;const Bb=function(t,e,n){var i=!0,o=!0;if("function"!=typeof t)throw new TypeError("Expected a function");return O(n)&&(i="leading"in n?!!n.leading:i,o="trailing"in n?!!n.trailing:o),Wa(t,e,{leading:i,maxWait:e,trailing:o})};var Sb=Object.defineProperty,Tb=Object.getOwnPropertySymbols,Ib=Object.prototype.hasOwnProperty,Pb=Object.prototype.propertyIsEnumerable,Rb=(t,e,n)=>e in t?Sb(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Vb=(t,e)=>{for(var n in e||(e={}))Ib.call(e,n)&&Rb(t,n,e[n]);if(Tb)for(var n of Tb(e))Pb.call(e,n)&&Rb(t,n,e[n]);return t};const Fb=50,Lb=350,Ob="Powered by";class zb extends(Bi()){constructor(t){super(),this.editor=t,this._balloonView=null,this._lastFocusedEditableElement=null,this._showBalloonThrottled=Bb(this._showBalloon.bind(this),50,{leading:!0}),t.on("ready",this._handleEditorReady.bind(this))}destroy(){const t=this._balloonView;t&&(t.unpin(),this._balloonView=null),this._showBalloonThrottled.cancel(),this.stopListening()}_handleEditorReady(){const t=this.editor;(!!t.config.get("ui.poweredBy.forceVisible")||"VALID"!==function(t){function e(t){return t.length>=40&&t.length<=255?"VALID":"INVALID"}if(!t)return"INVALID";let n="";try{n=atob(t)}catch(t){return"INVALID"}const i=n.split("-"),o=i[0],r=i[1];if(!r)return e(t);try{atob(r)}catch(n){try{if(atob(o),!atob(o).length)return e(t)}catch(n){return e(t)}}if(o.length<40||o.length>255)return"INVALID";let s="";try{atob(o),s=atob(r)}catch(t){return"INVALID"}if(8!==s.length)return"INVALID";const a=Number(s.substring(0,4)),c=Number(s.substring(4,6))-1,l=Number(s.substring(6,8)),d=new Date(a,c,l);return d{this._updateLastFocusedEditableElement(),n?this._showBalloon():this._hideBalloon()})),t.ui.focusTracker.on("change:focusedElement",((t,e,n)=>{this._updateLastFocusedEditableElement(),n&&this._showBalloon()})),t.ui.on("update",(()=>{this._showBalloonThrottled()})))}_createBalloonView(){const t=this.editor,e=this._balloonView=new kb,n=Hb(t),i=new Mb(t.locale,n.label);e.content.add(i),e.set({class:"ck-powered-by-balloon"}),t.ui.view.body.add(e),t.ui.focusTracker.add(e.element),this._balloonView=e}_showBalloon(){if(!this._lastFocusedEditableElement)return;const t=function(t,e){const n=Hb(t),i="right"===n.side?function(t,e){return Nb(t,e,((t,n)=>t.left+t.width-n.width-e.horizontalOffset))}(e,n):function(t,e){return Nb(t,e,(t=>t.left+e.horizontalOffset))}(e,n);return{target:e,positions:[i]}}(this.editor,this._lastFocusedEditableElement);t&&(this._balloonView||this._createBalloonView(),this._balloonView.pin(t))}_hideBalloon(){this._balloonView&&this._balloonView.unpin()}_updateLastFocusedEditableElement(){const t=this.editor,e=t.ui.focusTracker.isFocused,n=t.ui.focusTracker.focusedElement;if(!e||!n)return void(this._lastFocusedEditableElement=null);const i=Array.from(t.ui.getEditableElementsNames()).map((e=>t.ui.getEditableElement(e)));i.includes(n)?this._lastFocusedEditableElement=n:this._lastFocusedEditableElement=i[0]}}class Mb extends Jm{constructor(t,e){super(t);const n=new lg,i=this.bindTemplate;n.set({content:'\n',isColorInherited:!1}),n.extendTemplate({attributes:{style:{width:"53px",height:"10px"}}}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-powered-by"],"aria-hidden":!0},children:[{tag:"a",attributes:{href:"https://ckeditor.com/?utm_source=ckeditor&utm_medium=referral&utm_campaign=701Dn000000hVgmIAE_powered_by_ckeditor_logo",target:"_blank",tabindex:"-1"},children:[...e?[{tag:"span",attributes:{class:["ck","ck-powered-by__label"]},children:[e]}]:[],n],on:{dragstart:i.to((t=>t.preventDefault()))}}]})}}function Nb(t,e,n){return(i,o)=>{const r=new Li(t);if(r.width{for(const t of Object.values(Wb))this.announce("",t)}))}announce(t,e=Wb.POLITE){const n=this.editor;if(!n.ui.view)return;this.view||(this.view=new $b(n.locale),n.ui.view.body.add(this.view));const{politeness:i,isUnsafeHTML:o}="string"==typeof e?{politeness:e}:e;let r=this.view.regionViews.find((t=>t.politeness===i));r||(r=new Gb(n,i),this.view.regionViews.add(r)),r.announce({announcement:t,isUnsafeHTML:o})}}class $b extends Jm{constructor(t){super(t),this.regionViews=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-aria-live-announcer"]},children:this.regionViews})}}class Gb extends Jm{constructor(t,e){super(t.locale),this.setTemplate({tag:"div",attributes:{role:"region","aria-live":e,"aria-relevant":"additions"},children:[{tag:"ul",attributes:{class:["ck","ck-aria-live-region-list"]}}]}),t.on("destroy",(()=>{null!==this._pruneAnnouncementsInterval&&(clearInterval(this._pruneAnnouncementsInterval),this._pruneAnnouncementsInterval=null)})),this.politeness=e,this._domConverter=t.data.htmlProcessor.domConverter,this._pruneAnnouncementsInterval=setInterval((()=>{this.element&&this._listElement.firstChild&&this._listElement.firstChild.remove()}),5e3)}announce({announcement:t,isUnsafeHTML:e}){if(!t.trim().length)return;const n=document.createElement("li");e?this._domConverter.setContentOf(n,t):n.innerText=t,this._listElement.appendChild(n)}get _listElement(){return this.element.querySelector("ul")}}var Kb=Object.defineProperty,Jb=Object.getOwnPropertySymbols,Zb=Object.prototype.hasOwnProperty,Yb=Object.prototype.propertyIsEnumerable,Qb=(t,e,n)=>e in t?Kb(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class Xb extends(W()){constructor(t){super(),this.isReady=!1,this._editableElementsMap=new Map,this._focusableToolbarDefinitions=[];const e=t.editing.view;this.editor=t,this.componentFactory=new zf(t),this.focusTracker=new Go,this.tooltipManager=new xb(t),this.poweredBy=new zb(t),this.ariaLiveAnnouncer=new Ub(t),this.set("viewportOffset",this._readViewportOffsetFromConfig()),this.once("ready",(()=>{this.isReady=!0})),this.listenTo(e.document,"layoutChanged",this.update.bind(this)),this.listenTo(e,"scrollToTheSelection",this._handleScrollToTheSelection.bind(this)),this._initFocusTracking()}get element(){return null}update(){this.fire("update")}destroy(){this.stopListening(),this.focusTracker.destroy(),this.tooltipManager.destroy(this.editor),this.poweredBy.destroy();for(const t of this._editableElementsMap.values())t.ckeditorInstance=null,this.editor.keystrokes.stopListening(t);this._editableElementsMap=new Map,this._focusableToolbarDefinitions=[]}setEditableElement(t,e){this._editableElementsMap.set(t,e),e.ckeditorInstance||(e.ckeditorInstance=this.editor),this.focusTracker.add(e);const n=()=>{this.editor.editing.view.getDomRoot(t)||this.editor.keystrokes.listenTo(e)};this.isReady?n():this.once("ready",n)}removeEditableElement(t){const e=this._editableElementsMap.get(t);e&&(this._editableElementsMap.delete(t),this.editor.keystrokes.stopListening(e),this.focusTracker.remove(e),e.ckeditorInstance=null)}getEditableElement(t="main"){return this._editableElementsMap.get(t)}getEditableElementsNames(){return this._editableElementsMap.keys()}addToolbar(t,e={}){t.isRendered?(this.focusTracker.add(t.element),this.editor.keystrokes.listenTo(t.element)):t.once("render",(()=>{this.focusTracker.add(t.element),this.editor.keystrokes.listenTo(t.element)})),this._focusableToolbarDefinitions.push({toolbarView:t,options:e})}get _editableElements(){return console.warn("editor-ui-deprecated-editable-elements: The EditorUI#_editableElements property has been deprecated and will be removed in the near future.",{editorUI:this}),this._editableElementsMap}_readViewportOffsetFromConfig(){const t=this.editor,e=t.config.get("ui.viewportOffset");if(e)return e;const n=t.config.get("toolbar.viewportTopOffset");return n?(console.warn("editor-ui-deprecated-viewport-offset-config: The `toolbar.vieportTopOffset` configuration option is deprecated. It will be removed from future CKEditor versions. Use `ui.viewportOffset.top` instead."),{top:n}):{top:0}}_initFocusTracking(){const t=this.editor,e=t.editing.view;let n,i;t.keystrokes.set("Alt+F10",((t,o)=>{const r=this.focusTracker.focusedElement;Array.from(this._editableElementsMap.values()).includes(r)&&!Array.from(e.domRoots.values()).includes(r)&&(n=r);const s=this._getCurrentFocusedToolbarDefinition();s&&i||(i=this._getFocusableCandidateToolbarDefinitions());for(let t=0;t{const o=this._getCurrentFocusedToolbarDefinition();o&&(n?(n.focus(),n=null):t.editing.view.focus(),o.options.afterBlur&&o.options.afterBlur(),i())}))}_getFocusableCandidateToolbarDefinitions(){const t=[];for(const e of this._focusableToolbarDefinitions){const{toolbarView:n,options:i}=e;(Ki(n.element)||i.beforeFocus)&&t.push(e)}return t.sort(((t,e)=>tk(t)-tk(e))),t}_getCurrentFocusedToolbarDefinition(){for(const t of this._focusableToolbarDefinitions)if(t.toolbarView.element&&t.toolbarView.element.contains(this.focusTracker.focusedElement))return t;return null}_focusFocusableCandidateToolbar(t){const{toolbarView:e,options:{beforeFocus:n}}=t;return n&&n(),!!Ki(e.element)&&(e.focus(),!0)}_handleScrollToTheSelection(t,e){const n=((t,e)=>{for(var n in e||(e={}))Zb.call(e,n)&&Qb(t,n,e[n]);if(Jb)for(var n of Jb(e))Yb.call(e,n)&&Qb(t,n,e[n]);return t})({top:0,bottom:0,left:0,right:0},this.viewportOffset);e.viewportOffset.top+=n.top,e.viewportOffset.bottom+=n.bottom,e.viewportOffset.left+=n.left,e.viewportOffset.right+=n.right}}function tk(t){const{toolbarView:e,options:n}=t;let i=10;return Ki(e.element)&&i--,n.isContextual&&i--,i}var ek=n(1185),nk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(ek.A,nk);ek.A.locals;class ik extends Jm{constructor(t){super(t),this.body=new rg(t)}render(){super.render(),this.body.attachToDom()}destroy(){return this.body.detachFromDom(),super.destroy()}}class ok extends Jm{constructor(t,e,n){super(t),this.name=null,this.setTemplate({tag:"div",attributes:{class:["ck","ck-content","ck-editor__editable","ck-rounded-corners"],lang:t.contentLanguage,dir:t.contentLanguageDirection}}),this.set("isFocused",!1),this._editableElement=n,this._hasExternalElement=!!this._editableElement,this._editingView=e}render(){super.render(),this._hasExternalElement?this.template.apply(this.element=this._editableElement):this._editableElement=this.element,this.on("change:isFocused",(()=>this._updateIsFocusedClasses())),this._updateIsFocusedClasses()}destroy(){this._hasExternalElement&&this.template.revert(this._editableElement),super.destroy()}get hasExternalElement(){return this._hasExternalElement}_updateIsFocusedClasses(){const t=this._editingView;function e(e){t.change((n=>{const i=t.document.getRoot(e.name);n.addClass(e.isFocused?"ck-focused":"ck-blurred",i),n.removeClass(e.isFocused?"ck-blurred":"ck-focused",i)}))}t.isRenderingInProgress?function n(i){t.once("change:isRenderingInProgress",((t,o,r)=>{r?n(i):e(i)}))}(this):e(this)}}class rk extends ok{constructor(t,e,n,i={}){super(t,e,n);const o=t.t;this.extendTemplate({attributes:{role:"textbox",class:"ck-editor__editable_inline"}}),this._generateLabel=i.label||(()=>o("Editor editing area: %0",this.name))}render(){super.render();const t=this._editingView;t.change((e=>{const n=t.document.getRoot(this.name);e.setAttribute("aria-label",this._generateLabel(this),n)}))}}class sk extends hr{static get pluginName(){return"Notification"}init(){this.on("show:warning",((t,e)=>{window.alert(e.message)}),{priority:"lowest"})}showSuccess(t,e={}){this._showNotification({message:t,type:"success",namespace:e.namespace,title:e.title})}showInfo(t,e={}){this._showNotification({message:t,type:"info",namespace:e.namespace,title:e.title})}showWarning(t,e={}){this._showNotification({message:t,type:"warning",namespace:e.namespace,title:e.title})}_showNotification(t){const e=t.namespace?`show:${t.type}:${t.namespace}`:`show:${t.type}`;this.fire(e,{message:t.message,type:t.type,title:t.title||""})}}class ak extends(W()){constructor(t,e){super(),e&&Ba(this,e),t&&this.set(t)}}var ck=n(991),lk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(ck.A,lk);ck.A.locals;var dk=n(5380),hk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(dk.A,hk);dk.A.locals;const uk=Wi("px");class mk extends er{constructor(t){super(t),this._viewToStack=new Map,this._idToStack=new Map,this._view=null,this._rotatorView=null,this._fakePanelsView=null,this.positionLimiter=()=>{const t=this.editor.editing.view,e=t.document.selection.editableElement;return e?t.domConverter.mapViewToDom(e.root):null},this.set("visibleView",null),this.set("_numberOfStacks",0),this.set("_singleViewMode",!1)}static get pluginName(){return"ContextualBalloon"}destroy(){super.destroy(),this._view&&this._view.destroy(),this._rotatorView&&this._rotatorView.destroy(),this._fakePanelsView&&this._fakePanelsView.destroy()}get view(){return this._view||this._createPanelView(),this._view}hasView(t){return Array.from(this._viewToStack.keys()).includes(t)}add(t){if(this._view||this._createPanelView(),this.hasView(t.view))throw new w("contextualballoon-add-view-exist",[this,t]);const e=t.stackId||"main";if(!this._idToStack.has(e))return this._idToStack.set(e,new Map([[t.view,t]])),this._viewToStack.set(t.view,this._idToStack.get(e)),this._numberOfStacks=this._idToStack.size,void(this._visibleStack&&!t.singleViewMode||this.showStack(e));const n=this._idToStack.get(e);t.singleViewMode&&this.showStack(e),n.set(t.view,t),this._viewToStack.set(t.view,n),n===this._visibleStack&&this._showView(t)}remove(t){if(!this.hasView(t))throw new w("contextualballoon-remove-view-not-exist",[this,t]);const e=this._viewToStack.get(t);this._singleViewMode&&this.visibleView===t&&(this._singleViewMode=!1),this.visibleView===t&&(1===e.size?this._idToStack.size>1?this._showNextStack():(this.view.hide(),this.visibleView=null,this._rotatorView.hideView()):this._showView(Array.from(e.values())[e.size-2])),1===e.size?(this._idToStack.delete(this._getStackId(e)),this._numberOfStacks=this._idToStack.size):e.delete(t),this._viewToStack.delete(t)}updatePosition(t){t&&(this._visibleStack.get(this.visibleView).position=t),this.view.pin(this._getBalloonPosition()),this._fakePanelsView.updatePosition()}showStack(t){this.visibleStack=t;const e=this._idToStack.get(t);if(!e)throw new w("contextualballoon-showstack-stack-not-exist",this);this._visibleStack!==e&&this._showView(Array.from(e.values()).pop())}_createPanelView(){this._view=new kb(this.editor.locale),this.editor.ui.view.body.add(this._view),this.editor.ui.focusTracker.add(this._view.element),this._rotatorView=this._createRotatorView(),this._fakePanelsView=this._createFakePanelsView()}get _visibleStack(){return this._viewToStack.get(this.visibleView)}_getStackId(t){return Array.from(this._idToStack.entries()).find((e=>e[1]===t))[0]}_showNextStack(){const t=Array.from(this._idToStack.values());let e=t.indexOf(this._visibleStack)+1;t[e]||(e=0),this.showStack(this._getStackId(t[e]))}_showPrevStack(){const t=Array.from(this._idToStack.values());let e=t.indexOf(this._visibleStack)-1;t[e]||(e=t.length-1),this.showStack(this._getStackId(t[e]))}_createRotatorView(){const t=new gk(this.editor.locale),e=this.editor.locale.t;return this.view.content.add(t),t.bind("isNavigationVisible").to(this,"_numberOfStacks",this,"_singleViewMode",((t,e)=>!e&&t>1)),t.on("change:isNavigationVisible",(()=>this.updatePosition()),{priority:"low"}),t.bind("counter").to(this,"visibleView",this,"_numberOfStacks",((t,n)=>{if(n<2)return"";const i=Array.from(this._idToStack.values()).indexOf(this._visibleStack)+1;return e("%0 of %1",[i,n])})),t.buttonNextView.on("execute",(()=>{t.focusTracker.isFocused&&this.editor.editing.view.focus(),this._showNextStack()})),t.buttonPrevView.on("execute",(()=>{t.focusTracker.isFocused&&this.editor.editing.view.focus(),this._showPrevStack()})),t}_createFakePanelsView(){const t=new pk(this.editor.locale,this.view);return t.bind("numberOfPanels").to(this,"_numberOfStacks",this,"_singleViewMode",((t,e)=>!e&&t>=2?Math.min(t-1,2):0)),t.listenTo(this.view,"change:top",(()=>t.updatePosition())),t.listenTo(this.view,"change:left",(()=>t.updatePosition())),this.editor.ui.view.body.add(t),t}_showView({view:t,balloonClassName:e="",withArrow:n=!0,singleViewMode:i=!1}){this.view.class=e,this.view.withArrow=n,this._rotatorView.showView(t),this.visibleView=t,this.view.pin(this._getBalloonPosition()),this._fakePanelsView.updatePosition(),i&&(this._singleViewMode=!0)}_getBalloonPosition(){let t=Array.from(this._visibleStack.values()).pop().position;return t&&(t.limiter||(t=Object.assign({},t,{limiter:this.positionLimiter})),t=Object.assign({},t,{viewportOffsetConfig:this.editor.ui.viewportOffset})),t}}class gk extends Jm{constructor(t){super(t);const e=t.t,n=this.bindTemplate;this.set("isNavigationVisible",!0),this.focusTracker=new Go,this.buttonPrevView=this._createButtonView(e("Previous"),ym.previousArrow),this.buttonNextView=this._createButtonView(e("Next"),ym.nextArrow),this.content=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-balloon-rotator"],"z-index":"-1"},children:[{tag:"div",attributes:{class:["ck-balloon-rotator__navigation",n.to("isNavigationVisible",(t=>t?"":"ck-hidden"))]},children:[this.buttonPrevView,{tag:"span",attributes:{class:["ck-balloon-rotator__counter"]},children:[{text:n.to("counter")}]},this.buttonNextView]},{tag:"div",attributes:{class:"ck-balloon-rotator__content"},children:this.content}]})}render(){super.render(),this.focusTracker.add(this.element)}destroy(){super.destroy(),this.focusTracker.destroy()}showView(t){this.hideView(),this.content.add(t)}hideView(){this.content.clear()}_createButtonView(t,e){const n=new mg(this.locale);return n.set({label:t,icon:e,tooltip:!0}),n}}class pk extends Jm{constructor(t,e){super(t);const n=this.bindTemplate;this.set("top",0),this.set("left",0),this.set("height",0),this.set("width",0),this.set("numberOfPanels",0),this.content=this.createCollection(),this._balloonPanelView=e,this.setTemplate({tag:"div",attributes:{class:["ck-fake-panel",n.to("numberOfPanels",(t=>t?"":"ck-hidden"))],style:{top:n.to("top",uk),left:n.to("left",uk),width:n.to("width",uk),height:n.to("height",uk)}},children:this.content}),this.on("change:numberOfPanels",((t,e,n,i)=>{n>i?this._addPanels(n-i):this._removePanels(i-n),this.updatePosition()}))}_addPanels(t){for(;t--;){const t=new Jm;t.setTemplate({tag:"div"}),this.content.add(t),this.registerChild(t)}}_removePanels(t){for(;t--;){const t=this.content.last;this.content.remove(t),this.deregisterChild(t),t.destroy()}}updatePosition(){if(this.numberOfPanels){const{top:t,left:e}=this._balloonPanelView,{width:n,height:i}=new Li(this._balloonPanelView.element);Object.assign(this,{top:t,left:e,width:n,height:i})}}}var fk=n(8298),bk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(fk.A,bk);fk.A.locals,Wi("px");class kk extends zg{constructor(t,e){const n=t.t,i=Object.assign({},{showResetButton:!0,showIcon:!0,creator:zp},e);super(t,i.creator),this.label=e.label,this._viewConfig=i,this._viewConfig.showIcon&&(this.iconView=new lg,this.iconView.content=ym.loupe,this.fieldWrapperChildren.add(this.iconView,0),this.extendTemplate({attributes:{class:"ck-search__query_with-icon"}})),this._viewConfig.showResetButton&&(this.resetButtonView=new mg(t),this.resetButtonView.set({label:n("Clear"),icon:ym.cancel,class:"ck-search__reset",isVisible:!1,tooltip:!0}),this.resetButtonView.on("execute",(()=>{this.reset(),this.focus(),this.fire("reset")})),this.resetButtonView.bind("isVisible").to(this.fieldView,"isEmpty",(t=>!t)),this.fieldWrapperChildren.add(this.resetButtonView),this.extendTemplate({attributes:{class:"ck-search__query_with-reset"}}))}reset(){this.fieldView.reset(),this._viewConfig.showResetButton&&(this.resetButtonView.isVisible=!1)}}class wk extends Jm{constructor(){super();const t=this.bindTemplate;this.set({isVisible:!1,primaryText:"",secondaryText:""}),this.setTemplate({tag:"div",attributes:{class:["ck","ck-search__info",t.if("isVisible","ck-hidden",(t=>!t))],tabindex:-1},children:[{tag:"span",children:[{text:[t.to("primaryText")]}]},{tag:"span",children:[{text:[t.to("secondaryText")]}]}]})}focus(){this.element.focus()}}class _k extends Jm{constructor(t){super(t),this.children=this.createCollection(),this.focusTracker=new Go,this.setTemplate({tag:"div",attributes:{class:["ck","ck-search__results"],tabindex:-1},children:this.children}),this._focusCycler=new Xg({focusables:this.children,focusTracker:this.focusTracker})}render(){super.render();for(const t of this.children)this.focusTracker.add(t.element)}focus(){this._focusCycler.focusFirst()}focusFirst(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}}var Ak=/[\\^$.*+?()[\]{}|]/g,Ck=RegExp(Ak.source);const vk=function(t){return(t=Jr(t))&&Ck.test(t)?t.replace(Ak,"\\$&"):t};var yk=n(8107),xk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(yk.A,xk);yk.A.locals;var Ek=Object.defineProperty,Dk=Object.getOwnPropertySymbols,Bk=Object.prototype.hasOwnProperty,Sk=Object.prototype.propertyIsEnumerable,Tk=(t,e,n)=>e in t?Ek(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class Ik extends Jm{constructor(t,e){super(t),this._config=e,this.filteredView=e.filteredView,this.queryView=this._createSearchTextQueryView(),this.focusTracker=new Go,this.keystrokes=new Ko,this.resultsView=new _k(t),this.children=this.createCollection(),this.focusableChildren=this.createCollection([this.queryView,this.resultsView]),this.set("isEnabled",!0),this.set("resultsCount",0),this.set("totalItemsCount",0),e.infoView&&e.infoView.instance?this.infoView=e.infoView.instance:(this.infoView=new wk,this._enableDefaultInfoViewBehavior(),this.on("render",(()=>{this.search("")}))),this.resultsView.children.addMany([this.infoView,this.filteredView]),this.focusCycler=new Xg({focusables:this.focusableChildren,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.on("search",((t,{resultsCount:e,totalItemsCount:n})=>{this.resultsCount=e,this.totalItemsCount=n})),this.setTemplate({tag:"div",attributes:{class:["ck","ck-search",e.class||null],tabindex:"-1"},children:this.children})}render(){super.render(),this.children.addMany([this.queryView,this.resultsView]);const t=t=>t.stopPropagation();for(const t of this.focusableChildren)this.focusTracker.add(t.element);this.keystrokes.listenTo(this.element),this.keystrokes.set("arrowright",t),this.keystrokes.set("arrowleft",t),this.keystrokes.set("arrowup",t),this.keystrokes.set("arrowdown",t)}focus(){this.queryView.focus()}reset(){this.queryView.reset(),this.search("")}search(t){const e=t?new RegExp(vk(t),"ig"):null,n=this.filteredView.filter(e);this.fire("search",((t,e)=>{for(var n in e||(e={}))Bk.call(e,n)&&Tk(t,n,e[n]);if(Dk)for(var n of Dk(e))Sk.call(e,n)&&Tk(t,n,e[n]);return t})({query:t},n))}_createSearchTextQueryView(){const t=new kk(this.locale,this._config.queryView);return this.listenTo(t.fieldView,"input",(()=>{this.search(t.fieldView.element.value)})),t.on("reset",(()=>this.reset())),t.bind("isEnabled").to(this),t}_enableDefaultInfoViewBehavior(){const t=this.locale.t,e=this.infoView;function n(t,{query:e,resultsCount:n,totalItemsCount:i}){return"function"==typeof t?t(e,n,i):t}this.on("search",((i,o)=>{if(o.resultsCount)e.set({isVisible:!1});else{const i=this._config.infoView&&this._config.infoView.text;let r,s;o.totalItemsCount?i&&i.notFound?(r=i.notFound.primary,s=i.notFound.secondary):(r=t("No results found"),s=""):i&&i.noSearchableItems?(r=i.noSearchableItems.primary,s=i.noSearchableItems.secondary):(r=t("No searchable items"),s=""),e.set({primaryText:n(r,o),secondaryText:n(s,o),isVisible:!0})}}))}}var Pk=n(5727),Rk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Pk.A,Rk);Pk.A.locals;const Vk=class extends Ik{constructor(t,n){super(t,n),this._config=n;const i=Wi("px");this.extendTemplate({attributes:{class:["ck-autocomplete"]}});const o=this.resultsView.bindTemplate;this.resultsView.set("isVisible",!1),this.resultsView.set("_position","s"),this.resultsView.set("_width",0),this.resultsView.extendTemplate({attributes:{class:[o.if("isVisible","ck-hidden",(t=>!t)),o.to("_position",(t=>`ck-search__results_${t}`))],style:{width:o.to("_width",i)}}}),this.focusTracker.on("change:isFocused",((t,e,i)=>{this._updateResultsVisibility(),i?this.resultsView.element.scrollTop=0:n.resetOnBlur&&this.queryView.reset()})),this.on("search",(()=>{this._updateResultsVisibility(),this._updateResultsViewWidthAndPosition()})),this.keystrokes.set("esc",((t,e)=>{this.resultsView.isVisible&&(this.queryView.focus(),this.resultsView.isVisible=!1,e())})),this.listenTo(e.document,"scroll",(()=>{this._updateResultsViewWidthAndPosition()})),this.on("change:isEnabled",(()=>{this._updateResultsVisibility()})),this.filteredView.on("execute",((t,{value:e})=>{this.focus(),this.reset(),this.queryView.fieldView.value=this.queryView.fieldView.element.value=e,this.resultsView.isVisible=!1})),this.resultsView.on("change:isVisible",(()=>{this._updateResultsViewWidthAndPosition()}))}_updateResultsViewWidthAndPosition(){if(!this.resultsView.isVisible)return;this.resultsView._width=new Li(this.queryView.fieldView.element).width;const t=Vk._getOptimalPosition({element:this.resultsView.element,target:this.queryView.element,fitInViewport:!0,positions:Vk.defaultResultsPositions});this.resultsView._position=t?t.name:"s"}_updateResultsVisibility(){const t=void 0===this._config.queryMinChars?0:this._config.queryMinChars,e=this.queryView.fieldView.element.value.length;this.resultsView.isVisible=this.focusTracker.isFocused&&this.isEnabled&&e>=t}};let Fk=Vk;Fk.defaultResultsPositions=[t=>({top:t.bottom,left:t.left,name:"s"}),(t,e)=>({top:t.top-e.height,left:t.left,name:"n"})],Fk._getOptimalPosition=Zi;Lk={"&":"&","<":"<",">":">",'"':""","'":"'"};var Lk;var Ok=/[&<>"']/g;RegExp(Ok.source);var zk=n(9529),Mk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(zk.A,Mk);zk.A.locals;var Nk=n(109),Hk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Nk.A,Hk);Nk.A.locals;const jk=Wi("px");class qk extends er{constructor(t){super(t),this._resizeObserver=null,this._balloonConfig=dp(t.config.get("balloonToolbar")),this.toolbarView=this._createToolbarView(),this.focusTracker=new Go,t.ui.once("ready",(()=>{this.focusTracker.add(t.ui.getEditableElement()),this.focusTracker.add(this.toolbarView.element)})),t.ui.addToolbar(this.toolbarView,{beforeFocus:()=>this.show(!0),afterBlur:()=>this.hide(),isContextual:!0}),this._balloon=t.plugins.get(mk),this._fireSelectionChangeDebounced=Wa((()=>this.fire("_selectionChangeDebounced")),200),this.decorate("show")}static get pluginName(){return"BalloonToolbar"}static get requires(){return[mk]}init(){const t=this.editor,e=t.model.document.selection;this.listenTo(this.focusTracker,"change:isFocused",((t,e,n)=>{const i=this._balloon.visibleView===this.toolbarView;!n&&i?this.hide():n&&this.show()})),this.listenTo(e,"change:range",((t,n)=>{(n.directChange||e.isCollapsed)&&this.hide(),this._fireSelectionChangeDebounced()})),this.listenTo(this,"_selectionChangeDebounced",(()=>{this.editor.editing.view.document.isFocused&&this.show()})),this._balloonConfig.shouldNotGroupWhenFull||this.listenTo(t,"ready",(()=>{const e=t.ui.view.editable.element;this._resizeObserver=new ji(e,(t=>{this.toolbarView.maxWidth=jk(.9*t.contentRect.width)}))})),this.listenTo(this.toolbarView,"groupedItemsUpdate",(()=>{this._updatePosition()})),t.ui.once("ready",(()=>{this.toolbarView.fillFromConfig(this._balloonConfig,this.editor.ui.componentFactory)}))}_createToolbarView(){const t=this.editor.locale.t,e=!this._balloonConfig.shouldNotGroupWhenFull,n=new gp(this.editor.locale,{shouldGroupWhenFull:e,isFloating:!0});return n.ariaLabel=t("Editor contextual toolbar"),n.render(),n}show(t=!1){const e=this.editor,n=e.model.document.selection,i=e.model.schema;this._balloon.hasView(this.toolbarView)||n.isCollapsed&&!t||function(t,e){if(1===t.rangeCount)return!1;return[...t.getRanges()].every((t=>{const n=t.getContainedElement();return n&&e.isSelectable(n)}))}(n,i)||Array.from(this.toolbarView.items).every((t=>void 0!==t.isEnabled&&!t.isEnabled))||(this.listenTo(this.editor.ui,"update",(()=>{this._updatePosition()})),this._balloon.add({view:this.toolbarView,position:this._getBalloonPositionData(),balloonClassName:"ck-toolbar-container"}))}hide(){this._balloon.hasView(this.toolbarView)&&(this.stopListening(this.editor.ui,"update"),this._balloon.remove(this.toolbarView))}_getBalloonPositionData(){const t=this.editor.editing.view,e=t.document,n=e.selection,i=e.selection.isBackward;return{target:()=>{const e=i?n.getFirstRange():n.getLastRange(),o=Li.getDomRangeRects(t.domConverter.viewRangeToDom(e));return i?o[0]:(o.length>1&&0===o[o.length-1].width&&o.pop(),o[o.length-1])},positions:this._getBalloonPositions(i)}}_updatePosition(){this._balloon.updatePosition(this._getBalloonPositionData())}destroy(){super.destroy(),this.stopListening(),this._fireSelectionChangeDebounced.cancel(),this.toolbarView.destroy(),this.focusTracker.destroy(),this._resizeObserver&&this._resizeObserver.destroy()}_getBalloonPositions(t){const n=s.isSafari&&s.isiOS?_b({heightOffset:Math.max(kb.arrowHeightOffset,Math.round(20/e.window.visualViewport.scale))}):kb.defaultPositions;return t?[n.northWestArrowSouth,n.northWestArrowSouthWest,n.northWestArrowSouthEast,n.northWestArrowSouthMiddleEast,n.northWestArrowSouthMiddleWest,n.southWestArrowNorth,n.southWestArrowNorthWest,n.southWestArrowNorthEast,n.southWestArrowNorthMiddleWest,n.southWestArrowNorthMiddleEast]:[n.southEastArrowNorth,n.southEastArrowNorthEast,n.southEastArrowNorthWest,n.southEastArrowNorthMiddleEast,n.southEastArrowNorthMiddleWest,n.northEastArrowSouth,n.northEastArrowSouthEast,n.northEastArrowSouthWest,n.northEastArrowSouthMiddleEast,n.northEastArrowSouthMiddleWest]}}var Wk=n(2710),Uk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Wk.A,Uk);Wk.A.locals;const $k=Wi("px");class Gk extends mg{constructor(t){super(t);const e=this.bindTemplate;this.isVisible=!1,this.isToggleable=!0,this.set("top",0),this.set("left",0),this.extendTemplate({attributes:{class:"ck-block-toolbar-button",style:{top:e.to("top",(t=>$k(t))),left:e.to("left",(t=>$k(t)))}}})}}const Kk=Wi("px");var Jk=n(3344),Zk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Jk.A,Zk);Jk.A.locals;class Yk extends mg{constructor(t){super(t);const e=this.bindTemplate;this.set({withText:!0,role:"menuitem"}),this.arrowView=this._createArrowView(),this.extendTemplate({attributes:{class:["ck-menu-bar__menu__button"],"aria-haspopup":!0,"aria-expanded":this.bindTemplate.to("isOn",(t=>String(t))),"data-cke-tooltip-disabled":e.to("isOn")},on:{mouseenter:e.to("mouseenter")}})}render(){super.render(),this.children.add(this.arrowView)}_createArrowView(){const t=new lg;return t.content=wg,t.extendTemplate({attributes:{class:"ck-menu-bar__menu__button__arrow"}}),t}}var Qk=n(9481),Xk={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Qk.A,Xk);Qk.A.locals;class tw extends kp{constructor(t,e){super(t);const n=this.bindTemplate;this.extendTemplate({attributes:{class:["ck-menu-bar__menu__item"]},on:{mouseenter:n.to("mouseenter")}}),this.delegate("mouseenter").to(e)}}Object.defineProperty,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;const ew={openAndFocusPanelOnArrowDownKey(t){t.keystrokes.set("arrowdown",((e,n)=>{t.focusTracker.focusedElement===t.buttonView.element&&(t.isOpen||(t.isOpen=!0),t.panelView.focus(),n())}))},openOnArrowRightKey(t){const e="rtl"===t.locale.uiLanguageDirection?"arrowleft":"arrowright";t.keystrokes.set(e,((e,n)=>{t.focusTracker.focusedElement===t.buttonView.element&&t.isEnabled&&(t.isOpen||(t.isOpen=!0),t.panelView.focus(),n())}))},openOnButtonClick(t){t.buttonView.on("execute",(()=>{t.isOpen=!0,t.panelView.focus()}))},toggleOnButtonClick(t){t.buttonView.on("execute",(()=>{t.isOpen=!t.isOpen,t.isOpen&&t.panelView.focus()}))},closeOnArrowLeftKey(t){const e="rtl"===t.locale.uiLanguageDirection?"arrowright":"arrowleft";t.keystrokes.set(e,((e,n)=>{t.isOpen&&(t.isOpen=!1,t.focus(),n())}))},closeOnEscKey(t){t.keystrokes.set("esc",((e,n)=>{t.isOpen&&(t.isOpen=!1,t.focus(),n())}))},closeOnParentClose(t){t.parentMenuView.on("change:isOpen",((e,n,i)=>{i||e.source!==t.parentMenuView||(t.isOpen=!1)}))}},nw={southEast:t=>({top:t.bottom,left:t.left,name:"se"}),southWest:(t,e)=>({top:t.bottom,left:t.left-e.width+t.width,name:"sw"}),northEast:(t,e)=>({top:t.top-e.height,left:t.left,name:"ne"}),northWest:(t,e)=>({top:t.top-e.height,left:t.left-e.width+t.width,name:"nw"}),eastSouth:t=>({top:t.top,left:t.right-5,name:"es"}),eastNorth:(t,e)=>({top:t.top-e.height,left:t.right-5,name:"en"}),westSouth:(t,e)=>({top:t.top,left:t.left-e.width+5,name:"ws"}),westNorth:(t,e)=>({top:t.top-e.height,left:t.left-e.width+5,name:"wn"})};var iw=n(9108),ow={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(iw.A,ow);iw.A.locals;class rw extends Jm{constructor(t){super(t);const e=this.bindTemplate;this.set("isVisible",!1),this.set("position","se"),this.children=this.createCollection(),this.setTemplate({tag:"div",attributes:{class:["ck","ck-reset","ck-menu-bar__menu__panel",e.to("position",(t=>`ck-menu-bar__menu__panel_position_${t}`)),e.if("isVisible","ck-hidden",(t=>!t))],tabindex:"-1"},children:this.children,on:{selectstart:e.to((t=>{"input"!==t.target.tagName.toLocaleLowerCase()&&t.preventDefault()}))}})}focus(t=1){this.children.length&&(1===t?this.children.first.focus():this.children.last.focus())}}var sw=n(4),aw={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(sw.A,aw);sw.A.locals;const cw=class extends Jm{constructor(t){super(t);const e=this.bindTemplate;this.buttonView=new Yk(t),this.buttonView.delegate("mouseenter").to(this),this.buttonView.bind("isOn","isEnabled").to(this,"isOpen","isEnabled"),this.panelView=new rw(t),this.panelView.bind("isVisible").to(this,"isOpen"),this.keystrokes=new Ko,this.focusTracker=new Go,this.set("isOpen",!1),this.set("isEnabled",!0),this.set("panelPosition","w"),this.set("class",void 0),this.set("parentMenuView",null),this.setTemplate({tag:"div",attributes:{class:["ck","ck-menu-bar__menu",e.to("class"),e.if("isEnabled","ck-disabled",(t=>!t)),e.if("parentMenuView","ck-menu-bar__menu_top-level",(t=>!t))]},children:[this.buttonView,this.panelView]})}render(){super.render(),this.focusTracker.add(this.buttonView.element),this.focusTracker.add(this.panelView.element),this.keystrokes.listenTo(this.element),ew.closeOnEscKey(this),this._repositionPanelOnOpen()}_attachBehaviors(){this.parentMenuView?(ew.openOnButtonClick(this),ew.openOnArrowRightKey(this),ew.closeOnArrowLeftKey(this),ew.closeOnParentClose(this)):(this._propagateArrowKeystrokeEvents(),ew.openAndFocusPanelOnArrowDownKey(this),ew.toggleOnButtonClick(this))}_propagateArrowKeystrokeEvents(){this.keystrokes.set("arrowright",((t,e)=>{this.fire("arrowright"),e()})),this.keystrokes.set("arrowleft",((t,e)=>{this.fire("arrowleft"),e()}))}_repositionPanelOnOpen(){this.on("change:isOpen",((t,e,n)=>{if(!n)return;const i=cw._getOptimalPosition({element:this.panelView.element,target:this.buttonView.element,fitInViewport:!0,positions:this._panelPositions});this.panelView.position=i?i.name:this._panelPositions[0].name}))}focus(){this.buttonView.focus()}get _panelPositions(){const{southEast:t,southWest:e,northEast:n,northWest:i,westSouth:o,eastSouth:r,westNorth:s,eastNorth:a}=nw;return"ltr"===this.locale.uiLanguageDirection?this.parentMenuView?[r,a,o,s]:[t,e,n,i]:this.parentMenuView?[o,s,r,a]:[e,t,i,n]}};let lw=cw;lw._getOptimalPosition=Zi;class dw extends vp{constructor(t){super(t),this.role="menu"}}var hw=n(977),uw={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(hw.A,uw);hw.A.locals;class mw extends mg{constructor(t){super(t),this.set({withText:!0,withKeystroke:!0,tooltip:!1,role:"menuitem"}),this.extendTemplate({attributes:{class:["ck-menu-bar__menu__item__button"]}})}}class gw extends bg{constructor(t){super(t),this.set({withText:!0,withKeystroke:!0,tooltip:!1,role:"menuitem"}),this.extendTemplate({attributes:{class:["ck-menu-bar__menu__item__button"]}})}}var pw=n(497),fw={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(pw.A,fw);pw.A.locals;class bw{constructor(t){if(this.crashes=[],this.state="initializing",this._now=Date.now,this.crashes=[],this._crashNumberLimit="number"==typeof t.crashNumberLimit?t.crashNumberLimit:3,this._minimumNonErrorTimePeriod="number"==typeof t.minimumNonErrorTimePeriod?t.minimumNonErrorTimePeriod:5e3,this._boundErrorHandler=t=>{const e="error"in t?t.error:t.reason;e instanceof Error&&this._handleError(e,t)},this._listeners={},!this._restart)throw new Error("The Watchdog class was split into the abstract `Watchdog` class and the `EditorWatchdog` class. Please, use `EditorWatchdog` if you have used the `Watchdog` class previously.")}destroy(){this._stopErrorHandling(),this._listeners={}}on(t,e){this._listeners[t]||(this._listeners[t]=[]),this._listeners[t].push(e)}off(t,e){this._listeners[t]=this._listeners[t].filter((t=>t!==e))}_fire(t,...e){const n=this._listeners[t]||[];for(const t of n)t.apply(this,[null,...e])}_startErrorHandling(){window.addEventListener("error",this._boundErrorHandler),window.addEventListener("unhandledrejection",this._boundErrorHandler)}_stopErrorHandling(){window.removeEventListener("error",this._boundErrorHandler),window.removeEventListener("unhandledrejection",this._boundErrorHandler)}_handleError(t,e){if(this._shouldReactToError(t)){this.crashes.push({message:t.message,stack:t.stack,filename:e instanceof ErrorEvent?e.filename:void 0,lineno:e instanceof ErrorEvent?e.lineno:void 0,colno:e instanceof ErrorEvent?e.colno:void 0,date:this._now()});const n=this._shouldRestart();this.state="crashed",this._fire("stateChange"),this._fire("error",{error:t,causesRestart:n}),n?this._restart():(this.state="crashedPermanently",this._fire("stateChange"))}}_shouldReactToError(t){return t.is&&t.is("CKEditorError")&&void 0!==t.context&&null!==t.context&&"ready"===this.state&&this._isErrorComingFromThisItem(t)}_shouldRestart(){if(this.crashes.length<=this._crashNumberLimit)return!0;return(this.crashes[this.crashes.length-1].date-this.crashes[this.crashes.length-1-this._crashNumberLimit].date)/this._crashNumberLimit>this._minimumNonErrorTimePeriod}}function kw(t,e=new Set){const n=[t],i=new Set;let o=0;for(;n.length>o;){const t=n[o++];if(!i.has(t)&&ww(t)&&!e.has(t))if(i.add(t),Symbol.iterator in t)try{for(const e of t)n.push(e)}catch(t){}else for(const e in t)"defaultValue"!==e&&n.push(t[e])}return i}function ww(t){const e=Object.prototype.toString.call(t),n=typeof t;return!("number"===n||"boolean"===n||"string"===n||"symbol"===n||"function"===n||"[object Date]"===e||"[object RegExp]"===e||"[object Module]"===e||null==t||t._watchdogExcluded||t instanceof EventTarget||t instanceof Event)}function _w(t,e,n=new Set){if(t===e&&("object"==typeof(i=t)&&null!==i))return!0;var i;const o=kw(t,n),r=kw(e,n);for(const t of o)if(r.has(t))return!0;return!1}var Aw=Object.defineProperty,Cw=Object.defineProperties,vw=Object.getOwnPropertyDescriptors,yw=Object.getOwnPropertySymbols,xw=Object.prototype.hasOwnProperty,Ew=Object.prototype.propertyIsEnumerable,Dw=(t,e,n)=>e in t?Aw(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Bw=(t,e)=>{for(var n in e||(e={}))xw.call(e,n)&&Dw(t,n,e[n]);if(yw)for(var n of yw(e))Ew.call(e,n)&&Dw(t,n,e[n]);return t};class Sw extends bw{constructor(t,e={}){super(e),this._editor=null,this._lifecyclePromise=null,this._initUsingData=!0,this._editables={},this._throttledSave=Bb(this._save.bind(this),"number"==typeof e.saveInterval?e.saveInterval:5e3),t&&(this._creator=(e,n)=>t.create(e,n)),this._destructor=t=>t.destroy()}get editor(){return this._editor}get _item(){return this._editor}setCreator(t){this._creator=t}setDestructor(t){this._destructor=t}_restart(){return Promise.resolve().then((()=>(this.state="initializing",this._fire("stateChange"),this._destroy()))).catch((t=>{console.error("An error happened during the editor destroying.",t)})).then((()=>{const t={},e=[],n=this._config.rootsAttributes||{},i={};for(const[o,r]of Object.entries(this._data.roots))r.isLoaded?(t[o]="",i[o]=n[o]||{}):e.push(o);const o=(r=Bw({},this._config),s={extraPlugins:this._config.extraPlugins||[],lazyRoots:e,rootsAttributes:i,_watchdogInitialData:this._data},Cw(r,vw(s)));var r,s;return delete o.initialData,o.extraPlugins.push(Tw),this._initUsingData?this.create(t,o,o.context):Ai(this._elementOrData)?this.create(this._elementOrData,o,o.context):this.create(this._editables,o,o.context)})).then((()=>{this._fire("restart")}))}create(t=this._elementOrData,e=this._config,n){return this._lifecyclePromise=Promise.resolve(this._lifecyclePromise).then((()=>(super._startErrorHandling(),this._elementOrData=t,this._initUsingData="string"==typeof t||Object.keys(t).length>0&&"string"==typeof Object.values(t)[0],this._config=this._cloneEditorConfiguration(e)||{},this._config.context=n,this._creator(t,this._config)))).then((t=>{this._editor=t,t.model.document.on("change:data",this._throttledSave),this._lastDocumentVersion=t.model.document.version,this._data=this._getData(),this._initUsingData||(this._editables=this._getEditables()),this.state="ready",this._fire("stateChange")})).finally((()=>{this._lifecyclePromise=null})),this._lifecyclePromise}destroy(){return this._lifecyclePromise=Promise.resolve(this._lifecyclePromise).then((()=>(this.state="destroyed",this._fire("stateChange"),super.destroy(),this._destroy()))).finally((()=>{this._lifecyclePromise=null})),this._lifecyclePromise}_destroy(){return Promise.resolve().then((()=>{this._stopErrorHandling(),this._throttledSave.cancel();const t=this._editor;return this._editor=null,t.model.document.off("change:data",this._throttledSave),this._destructor(t)}))}_save(){const t=this._editor.model.document.version;try{this._data=this._getData(),this._initUsingData||(this._editables=this._getEditables()),this._lastDocumentVersion=t}catch(t){console.error(t,"An error happened during restoring editor data. Editor will be restored from the previously saved data.")}}_setExcludedProperties(t){this._excludedProps=t}_getData(){const t=this._editor,e=t.model.document.roots.filter((t=>t.isAttached()&&"$graveyard"!=t.rootName)),{plugins:n}=t,i=n.has("CommentsRepository")&&n.get("CommentsRepository"),o=n.has("TrackChanges")&&n.get("TrackChanges"),r={roots:{},markers:{},commentThreads:JSON.stringify([]),suggestions:JSON.stringify([])};e.forEach((t=>{r.roots[t.rootName]={content:JSON.stringify(Array.from(t.getChildren())),attributes:JSON.stringify(Array.from(t.getAttributes())),isLoaded:t._isLoaded}}));for(const e of t.model.markers)e._affectsData&&(r.markers[e.name]={rangeJSON:e.getRange().toJSON(),usingOperation:e._managedUsingOperations,affectsData:e._affectsData});return i&&(r.commentThreads=JSON.stringify(i.getCommentThreads({toJSON:!0,skipNotAttached:!0}))),o&&(r.suggestions=JSON.stringify(o.getSuggestions({toJSON:!0,skipNotAttached:!0}))),r}_getEditables(){const t={};for(const e of this.editor.model.document.getRootNames()){const n=this.editor.ui.getEditableElement(e);n&&(t[e]=n)}return t}_isErrorComingFromThisItem(t){return _w(this._editor,t.context,this._excludedProps)}_cloneEditorConfiguration(t){return _i(t,((t,e)=>Ai(t)||"context"===e?t:void 0))}}class Tw{constructor(t){this.editor=t,this._data=t.config.get("_watchdogInitialData")}init(){this.editor.data.on("init",(t=>{t.stop(),this.editor.model.enqueueChange({isUndoable:!1},(t=>{this._restoreCollaborationData(),this._restoreEditorData(t)})),this.editor.data.fire("ready")}),{priority:999})}_createNode(t,e){if("name"in e){const n=t.createElement(e.name,e.attributes);if(e.children)for(const i of e.children)n._appendChild(this._createNode(t,i));return n}return t.createText(e.data,e.attributes)}_restoreEditorData(t){const e=this.editor;Object.entries(this._data.roots).forEach((([n,{content:i,attributes:o}])=>{const r=JSON.parse(i),s=JSON.parse(o),a=e.model.document.getRoot(n);for(const[e,n]of s)t.setAttribute(e,n,a);for(const e of r){const n=this._createNode(t,e);t.insert(n,a,"end")}})),Object.entries(this._data.markers).forEach((([n,i])=>{const{document:o}=e.model,r=i,{rangeJSON:{start:s,end:a}}=r,c=((t,e)=>{var n={};for(var i in t)xw.call(t,i)&&e.indexOf(i)<0&&(n[i]=t[i]);if(null!=t&&yw)for(var i of yw(t))e.indexOf(i)<0&&Ew.call(t,i)&&(n[i]=t[i]);return n})(r,["rangeJSON"]),l=o.getRoot(s.root),d=t.createPositionFromPath(l,s.path,s.stickiness),h=t.createPositionFromPath(l,a.path,a.stickiness),u=t.createRange(d,h);t.addMarker(n,Bw({range:u},c))}))}_restoreCollaborationData(){const t=JSON.parse(this._data.commentThreads),e=JSON.parse(this._data.suggestions);t.forEach((t=>{const e=this.editor.config.get("collaboration.channelId"),n=this.editor.plugins.get("CommentsRepository");if(n.hasCommentThread(t.threadId)){n.getCommentThread(t.threadId).remove()}n.addCommentThread(Bw({channelId:e},t))})),e.forEach((t=>{const e=this.editor.plugins.get("TrackChangesEditing");if(e.hasSuggestion(t.id)){e.getSuggestion(t.id).attributes=t.attributes}else e.addSuggestionData(t)}))}}const Iw=Symbol("MainQueueId");class Pw{constructor(){this._onEmptyCallbacks=[],this._queues=new Map,this._activeActions=0}onEmpty(t){this._onEmptyCallbacks.push(t)}enqueue(t,e){const n=t===Iw;this._activeActions++,this._queues.get(t)||this._queues.set(t,Promise.resolve());const i=(n?Promise.all(this._queues.values()):Promise.all([this._queues.get(Iw),this._queues.get(t)])).then(e),o=i.catch((()=>{}));return this._queues.set(t,o),i.finally((()=>{this._activeActions--,this._queues.get(t)===o&&0===this._activeActions&&this._onEmptyCallbacks.forEach((t=>t()))}))}}function Rw(t){return Array.isArray(t)?t:[t]}class Vw extends Xb{constructor(t,e){super(t),this.view=e}get element(){return this.view.editable.element}init(){const t=this.editor,e=this.view,n=t.editing.view,i=e.editable,o=n.document.getRoot();i.name=o.rootName,e.render();const r=i.element;this.setEditableElement(i.name,r),i.bind("isFocused").to(this.focusTracker),n.attachDomRoot(r),this._initPlaceholder(),this.fire("ready")}destroy(){super.destroy();const t=this.view;this.editor.editing.view.detachDomRoot(t.editable.name),t.destroy()}_initPlaceholder(){const t=this.editor,e=t.editing.view,n=e.document.getRoot(),i=t.config.get("placeholder");if(i){const t="string"==typeof i?i:i[n.rootName];t&&(n.placeholder=t)}wr({view:e,element:n,isDirectHost:!1,keepOnFocus:!0})}}class Fw extends ik{constructor(t,e,n){super(t);const i=t.t;this.editable=new rk(t,e,n,{label:t=>i("Rich Text Editor. Editing area: %0",t.name)})}render(){super.render(),this.registerChild(this.editable)}}class Lw extends(Cm(Am)){constructor(t,e={}){if(!Ow(t)&&void 0!==e.initialData)throw new w("editor-create-initial-data",null);super(e),void 0===this.config.get("initialData")&&this.config.set("initialData",function(t){return Ow(t)?(e=t,e instanceof HTMLTextAreaElement?e.value:e.innerHTML):t;var e}(t)),Ow(t)&&(this.sourceElement=t,function(t,e){if(e.ckeditorInstance)throw new w("editor-source-element-already-used",t);e.ckeditorInstance=t,t.once("destroy",(()=>{delete e.ckeditorInstance}))}(this,t));const n=this.config.get("plugins");n.push(qk),this.config.set("plugins",n),this.config.define("balloonToolbar",this.config.get("toolbar")),this.model.document.createRoot();const i=new Fw(this.locale,this.editing.view,this.sourceElement);this.ui=new Vw(this,i),function(t){if(!Mt(t.updateSourceElement))throw new w("attachtoform-missing-elementapi-interface",t);const e=t.sourceElement;if(function(t){return!!t&&"textarea"===t.tagName.toLowerCase()}(e)&&e.form){let n;const i=e.form,o=()=>t.updateSourceElement();Mt(i.submit)&&(n=i.submit,i.submit=()=>{o(),n.apply(i)}),i.addEventListener("submit",o),t.on("destroy",(()=>{i.removeEventListener("submit",o),n&&(i.submit=n)}))}}(this)}destroy(){const t=this.getData();return this.ui.destroy(),super.destroy().then((()=>{this.sourceElement&&this.updateSourceElement(t)}))}static create(t,e={}){return new Promise((n=>{if(Ow(t)&&"TEXTAREA"===t.tagName)throw new w("editor-wrong-element",null);const i=new this(t,e);n(i.initPlugins().then((()=>i.ui.init())).then((()=>i.data.init(i.config.get("initialData")))).then((()=>i.fire("ready"))).then((()=>i)))}))}}function Ow(t){return Ai(t)}Lw.Context=dr,Lw.EditorWatchdog=Sw,Lw.ContextWatchdog=class extends bw{constructor(t,e={}){super(e),this._watchdogs=new Map,this._context=null,this._contextProps=new Set,this._actionQueues=new Pw,this._watchdogConfig=e,this._creator=e=>t.create(e),this._destructor=t=>t.destroy(),this._actionQueues.onEmpty((()=>{"initializing"===this.state&&(this.state="ready",this._fire("stateChange"))}))}setCreator(t){this._creator=t}setDestructor(t){this._destructor=t}get context(){return this._context}create(t={}){return this._actionQueues.enqueue(Iw,(()=>(this._contextConfig=t,this._create())))}getItem(t){return this._getWatchdog(t)._item}getItemState(t){return this._getWatchdog(t).state}add(t){const e=Rw(t);return Promise.all(e.map((t=>this._actionQueues.enqueue(t.id,(()=>{if("destroyed"===this.state)throw new Error("Cannot add items to destroyed watchdog.");if(!this._context)throw new Error("Context was not created yet. You should call the `ContextWatchdog#create()` method first.");let e;if(this._watchdogs.has(t.id))throw new Error(`Item with the given id is already added: '${t.id}'.`);if("editor"===t.type)return e=new Sw(null,this._watchdogConfig),e.setCreator(t.creator),e._setExcludedProperties(this._contextProps),t.destructor&&e.setDestructor(t.destructor),this._watchdogs.set(t.id,e),e.on("error",((n,{error:i,causesRestart:o})=>{this._fire("itemError",{itemId:t.id,error:i}),o&&this._actionQueues.enqueue(t.id,(()=>new Promise((n=>{const i=()=>{e.off("restart",i),this._fire("itemRestart",{itemId:t.id}),n()};e.on("restart",i)}))))})),e.create(t.sourceElementOrData,t.config,this._context);throw new Error(`Not supported item type: '${t.type}'.`)})))))}remove(t){const e=Rw(t);return Promise.all(e.map((t=>this._actionQueues.enqueue(t,(()=>{const e=this._getWatchdog(t);return this._watchdogs.delete(t),e.destroy()})))))}destroy(){return this._actionQueues.enqueue(Iw,(()=>(this.state="destroyed",this._fire("stateChange"),super.destroy(),this._destroy())))}_restart(){return this._actionQueues.enqueue(Iw,(()=>(this.state="initializing",this._fire("stateChange"),this._destroy().catch((t=>{console.error("An error happened during destroying the context or items.",t)})).then((()=>this._create())).then((()=>this._fire("restart"))))))}_create(){return Promise.resolve().then((()=>(this._startErrorHandling(),this._creator(this._contextConfig)))).then((t=>(this._context=t,this._contextProps=kw(this._context),Promise.all(Array.from(this._watchdogs.values()).map((t=>(t._setExcludedProperties(this._contextProps),t.create(void 0,void 0,this._context))))))))}_destroy(){return Promise.resolve().then((()=>{this._stopErrorHandling();const t=this._context;return this._context=null,this._contextProps=new Set,Promise.all(Array.from(this._watchdogs.values()).map((t=>t.destroy()))).then((()=>this._destructor(t)))}))}_getWatchdog(t){const e=this._watchdogs.get(t);if(!e)throw new Error(`Item with the given id was not registered: ${t}.`);return e}_isErrorComingFromThisItem(t){for(const e of this._watchdogs.values())if(e._isErrorComingFromThisItem(t))return!1;return _w(this._context,t.context)}};var zw=n(2722),Mw={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(zw.A,Mw);zw.A.locals;var Nw=n(9627),Hw={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(Nw.A,Hw);Nw.A.locals;class jw extends Jm{constructor(t){super(t);const e=t.t;this.children=this.createCollection(),this.set("matchCount",0),this.set("highlightOffset",0),this.set("isDirty",!1),this.set("_areCommandsEnabled",{}),this.set("_resultsCounterText",""),this.set("_matchCase",!1),this.set("_wholeWordsOnly",!1),this.bind("_searchResultsFound").to(this,"matchCount",this,"isDirty",((t,e)=>t>0&&!e)),this._findInputView=this._createInputField(e("Find in text…")),this._findPrevButtonView=this._createButton({label:e("Previous result"),class:"ck-button-prev",icon:ym.previousArrow,keystroke:"Shift+F3",tooltip:!0}),this._findNextButtonView=this._createButton({label:e("Next result"),class:"ck-button-next",icon:ym.previousArrow,keystroke:"F3",tooltip:!0}),this._replaceInputView=this._createInputField(e("Replace with…"),"ck-labeled-field-replace"),this._inputsDivView=this._createInputsDiv(),this._matchCaseSwitchView=this._createMatchCaseSwitch(),this._wholeWordsOnlySwitchView=this._createWholeWordsOnlySwitch(),this._advancedOptionsCollapsibleView=this._createAdvancedOptionsCollapsible(),this._replaceAllButtonView=this._createButton({label:e("Replace all"),class:"ck-button-replaceall",withText:!0}),this._replaceButtonView=this._createButton({label:e("Replace"),class:"ck-button-replace",withText:!0}),this._findButtonView=this._createButton({label:e("Find"),class:"ck-button-find ck-button-action",withText:!0}),this._actionButtonsDivView=this._createActionButtonsDiv(),this._focusTracker=new Go,this._keystrokes=new Ko,this._focusables=new xm,this.focusCycler=new Xg({focusables:this._focusables,focusTracker:this._focusTracker,keystrokeHandler:this._keystrokes,actions:{focusPrevious:"shift + tab",focusNext:"tab"}}),this.children.addMany([this._inputsDivView,this._advancedOptionsCollapsibleView,this._actionButtonsDivView]),this.setTemplate({tag:"form",attributes:{class:["ck","ck-find-and-replace-form"],tabindex:"-1"},children:this.children})}render(){super.render(),Qm({view:this}),this._initFocusCycling(),this._initKeystrokeHandling()}destroy(){super.destroy(),this._focusTracker.destroy(),this._keystrokes.destroy()}focus(t){-1===t?this.focusCycler.focusLast():this.focusCycler.focusFirst()}reset(){this._findInputView.errorText=null,this.isDirty=!0}get _textToFind(){return this._findInputView.fieldView.element.value}get _textToReplace(){return this._replaceInputView.fieldView.element.value}_createInputsDiv(){const t=this.locale,e=t.t,n=new Jm(t);return this._findInputView.fieldView.on("input",(()=>{this.isDirty=!0})),this._findPrevButtonView.delegate("execute").to(this,"findPrevious"),this._findNextButtonView.delegate("execute").to(this,"findNext"),this._findPrevButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",(({findPrevious:t})=>t)),this._findNextButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",(({findNext:t})=>t)),this._injectFindResultsCounter(),this._replaceInputView.bind("isEnabled").to(this,"_areCommandsEnabled",this,"_searchResultsFound",(({replace:t},e)=>t&&e)),this._replaceInputView.bind("infoText").to(this._replaceInputView,"isEnabled",this._replaceInputView,"isFocused",((t,n)=>t||!n?"":e("Tip: Find some text first in order to replace it."))),n.setTemplate({tag:"div",attributes:{class:["ck","ck-find-and-replace-form__inputs"]},children:[this._findInputView,this._findPrevButtonView,this._findNextButtonView,this._replaceInputView]}),n}_onFindButtonExecute(){if(this._textToFind)this.isDirty=!1,this.fire("findNext",{searchText:this._textToFind,matchCase:this._matchCase,wholeWords:this._wholeWordsOnly});else{const t=this.t;this._findInputView.errorText=t("Text to find must not be empty.")}}_injectFindResultsCounter(){const t=this.locale,e=t.t,n=this.bindTemplate,i=new Jm(this.locale);this.bind("_resultsCounterText").to(this,"highlightOffset",this,"matchCount",((t,n)=>e("%0 of %1",[t,n]))),i.setTemplate({tag:"span",attributes:{class:["ck","ck-results-counter",n.if("isDirty","ck-hidden")]},children:[{text:n.to("_resultsCounterText")}]});const o=()=>{const e=this._findInputView.fieldView.element;if(!e||!Ki(e))return;const n=new Li(i.element).width,o="ltr"===t.uiLanguageDirection?"paddingRight":"paddingLeft";e.style[o]=n?`calc( 2 * var(--ck-spacing-standard) + ${n}px )`:""};this.on("change:_resultsCounterText",o,{priority:"low"}),this.on("change:isDirty",o,{priority:"low"}),this._findInputView.template.children[0].children.push(i)}_createAdvancedOptionsCollapsible(){const t=this.locale.t,e=new Cg(this.locale,[this._matchCaseSwitchView,this._wholeWordsOnlySwitchView]);return e.set({label:t("Advanced options"),isCollapsed:!0}),e}_createActionButtonsDiv(){const t=new Jm(this.locale);return this._replaceButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",this,"_searchResultsFound",(({replace:t},e)=>t&&e)),this._replaceAllButtonView.bind("isEnabled").to(this,"_areCommandsEnabled",this,"_searchResultsFound",(({replaceAll:t},e)=>t&&e)),this._replaceButtonView.on("execute",(()=>{this.fire("replace",{searchText:this._textToFind,replaceText:this._textToReplace})})),this._replaceAllButtonView.on("execute",(()=>{this.fire("replaceAll",{searchText:this._textToFind,replaceText:this._textToReplace}),this.focus()})),this._findButtonView.on("execute",this._onFindButtonExecute.bind(this)),t.setTemplate({tag:"div",attributes:{class:["ck","ck-find-and-replace-form__actions"]},children:[this._replaceAllButtonView,this._replaceButtonView,this._findButtonView]}),t}_createMatchCaseSwitch(){const t=this.locale.t,e=new fg(this.locale);return e.set({label:t("Match case"),withText:!0}),e.bind("isOn").to(this,"_matchCase"),e.on("execute",(()=>{this._matchCase=!this._matchCase,this.isDirty=!0})),e}_createWholeWordsOnlySwitch(){const t=this.locale.t,e=new fg(this.locale);return e.set({label:t("Whole words only"),withText:!0}),e.bind("isOn").to(this,"_wholeWordsOnly"),e.on("execute",(()=>{this._wholeWordsOnly=!this._wholeWordsOnly,this.isDirty=!0})),e}_initFocusCycling(){[this._findInputView,this._findPrevButtonView,this._findNextButtonView,this._replaceInputView,this._advancedOptionsCollapsibleView.buttonView,this._matchCaseSwitchView,this._wholeWordsOnlySwitchView,this._replaceAllButtonView,this._replaceButtonView,this._findButtonView].forEach((t=>{this._focusables.add(t),this._focusTracker.add(t.element)}))}_initKeystrokeHandling(){const t=t=>t.stopPropagation(),e=t=>{t.stopPropagation(),t.preventDefault()};this._keystrokes.listenTo(this.element),this._keystrokes.set("f3",(t=>{e(t),this._findNextButtonView.fire("execute")})),this._keystrokes.set("shift+f3",(t=>{e(t),this._findPrevButtonView.fire("execute")})),this._keystrokes.set("enter",(t=>{const n=t.target;n===this._findInputView.fieldView.element?(this._areCommandsEnabled.findNext?this._findNextButtonView.fire("execute"):this._findButtonView.fire("execute"),e(t)):n!==this._replaceInputView.fieldView.element||this.isDirty||(this._replaceButtonView.fire("execute"),e(t))})),this._keystrokes.set("shift+enter",(t=>{t.target===this._findInputView.fieldView.element&&(this._areCommandsEnabled.findPrevious?this._findPrevButtonView.fire("execute"):this._findButtonView.fire("execute"),e(t))})),this._keystrokes.set("arrowright",t),this._keystrokes.set("arrowleft",t),this._keystrokes.set("arrowup",t),this._keystrokes.set("arrowdown",t)}_createButton(t){const e=new mg(this.locale);return e.set(t),e}_createInputField(t,e){const n=new zg(this.locale,zp);return n.label=t,n.class=e,n}}const qw='';class Ww extends er{constructor(t){super(t),t.config.define("findAndReplace.uiType","dialog"),this.formView=null}static get requires(){return[rb]}static get pluginName(){return"FindAndReplaceUI"}init(){const t=this.editor,e="dropdown"===t.config.get("findAndReplace.uiType"),n=t.commands.get("find"),i=this.editor.t;t.ui.componentFactory.add("findAndReplace",(()=>{let i;return e?(i=this._createDropdown(),i.bind("isEnabled").to(n)):i=this._createDialogButtonForToolbar(),t.keystrokes.set("Ctrl+F",((e,o)=>{if(n.isEnabled){if(i instanceof Yg){const t=i.buttonView;t.isOn||t.fire("execute")}else i.isOn?t.plugins.get("Dialog").view.focus():i.fire("execute");o()}})),i})),e||t.ui.componentFactory.add("menuBar:findAndReplace",(()=>this._createDialogButtonForMenuBar())),t.accessibility.addKeystrokeInfos({keystrokes:[{label:i("Find in the document"),keystroke:"CTRL+F"}]})}_createDropdown(){const t=this.editor,e=t.locale.t,n=Ip(t.locale);return n.once("change:isOpen",(()=>{this.formView=this._createFormView(),this.formView.children.add(new jf(t.locale,{label:e("Find and replace")}),0),n.panelView.children.add(this.formView)})),n.on("change:isOpen",((t,e,n)=>{n?this._setupFormView():this.fire("searchReseted")}),{priority:"low"}),n.buttonView.set({icon:qw,label:e("Find and replace"),keystroke:"CTRL+F",tooltip:!0}),n}_createDialogButtonForToolbar(){const t=this.editor,e=this._createButton(mg),n=t.plugins.get("Dialog"),i=t.locale.t;return e.set({icon:qw,label:i("Find and replace"),tooltip:!0}),e.bind("isOn").to(n,"id",(t=>"findAndReplace"===t)),e.on("execute",(()=>{e.isOn?n.hide():this._showDialog()})),e}_createDialogButtonForMenuBar(){const t=this._createButton(mw),e=this.editor.plugins.get("Dialog");return t.on("execute",(()=>{"findAndReplace"!==e.id?this._showDialog():e.hide()})),t}_createButton(t){const e=this.editor,n=e.commands.get("find"),i=new t(e.locale),o=e.locale.t;return i.bind("isEnabled").to(n),i.set({icon:qw,label:o("Find and replace"),keystroke:"CTRL+F"}),i}_showDialog(){const t=this.editor,e=t.plugins.get("Dialog"),n=t.locale.t;this.formView||(this.formView=this._createFormView()),e.show({id:"findAndReplace",title:n("Find and replace"),content:this.formView,position:Yf,onShow:()=>{this._setupFormView()},onHide:()=>{this.fire("searchReseted")}})}_createFormView(){const t=this.editor,e=new(Ym(jw))(t.locale),n=t.commands,i=this.editor.plugins.get("FindAndReplaceEditing").state;e.bind("highlightOffset").to(i,"highlightedOffset"),e.listenTo(i.results,"change",(()=>{e.matchCount=i.results.length}));const o=n.get("findNext"),r=n.get("findPrevious"),s=n.get("replace"),a=n.get("replaceAll");return e.bind("_areCommandsEnabled").to(o,"isEnabled",r,"isEnabled",s,"isEnabled",a,"isEnabled",((t,e,n,i)=>({findNext:t,findPrevious:e,replace:n,replaceAll:i}))),e.delegate("findNext","findPrevious","replace","replaceAll").to(this),e.on("change:isDirty",((t,e,n)=>{n&&this.fire("searchReseted")})),e}_setupFormView(){this.formView.disableCssTransitions(),this.formView.reset(),this.formView._findInputView.fieldView.select(),this.formView.enableCssTransitions()}}class Uw extends ir{constructor(t,e){super(t),this.isEnabled=!0,this.affectsData=!1,this._state=e}execute(t,{matchCase:e,wholeWords:n}={}){const{editor:i}=this,{model:o}=i,r=i.plugins.get("FindAndReplaceUtils");let s;"string"==typeof t?(s=r.findByTextCallback(t,{matchCase:e,wholeWords:n}),this._state.searchText=t):s=t;const a=o.document.getRootNames().reduce(((t,e)=>r.updateFindResultFromRange(o.createRangeIn(o.document.getRoot(e)),o,s,t)),null);return this._state.clear(o),this._state.results.addMany(a),this._state.highlightedResult=a.get(0),"string"==typeof t&&(this._state.searchText=t),s&&(this._state.lastSearchCallback=s),this._state.matchCase=!!e,this._state.matchWholeWords=!!n,{results:a,findCallback:s}}}class $w extends ir{constructor(t,e){super(t),this.isEnabled=!0,this._state=e,this._isEnabledBasedOnSelection=!1}_replace(t,e){const{model:n}=this.editor,i=e.marker.getRange();n.canEditAt(i)&&n.change((o=>{if("$graveyard"===i.root.rootName)return void this._state.results.remove(e);let r={};for(const t of i.getItems())if(t.is("$text")||t.is("$textProxy")){r=t.getAttributes();break}n.insertContent(o.createText(t,r),i),this._state.results.has(e)&&this._state.results.remove(e)}))}}class Gw extends $w{execute(t,e){this._replace(t,e)}}class Kw extends $w{execute(t,e){const{editor:n}=this,{model:i}=n,o=n.plugins.get("FindAndReplaceUtils"),r=e instanceof Uo?e:i.document.getRootNames().reduce(((t,n)=>o.updateFindResultFromRange(i.createRangeIn(i.document.getRoot(n)),i,o.findByTextCallback(e,this._state),t)),null);r.length&&i.change((()=>{[...r].forEach((e=>{this._replace(t,e)}))}))}}class Jw extends ir{constructor(t,e){super(t),this.affectsData=!1,this._state=e,this.isEnabled=!1,this.listenTo(this._state.results,"change",(()=>{this.isEnabled=this._state.results.length>1}))}refresh(){this.isEnabled=this._state.results.length>1}execute(){const t=this._state.results,e=t.getIndex(this._state.highlightedResult),n=e+1>=t.length?0:e+1;this._state.highlightedResult=this._state.results.get(n)}}class Zw extends Jw{execute(){const t=this._state.results.getIndex(this._state.highlightedResult),e=t-1<0?this._state.results.length-1:t-1;this._state.highlightedResult=this._state.results.get(e)}}class Yw extends(W()){constructor(t){super(),this.set("results",new Uo),this.set("highlightedResult",null),this.set("highlightedOffset",0),this.set("searchText",""),this.set("replaceText",""),this.set("lastSearchCallback",null),this.set("matchCase",!1),this.set("matchWholeWords",!1),this.results.on("change",((e,{removed:n,index:i})=>{if(Array.from(n).length){let e=!1;if(t.change((i=>{for(const o of n)this.highlightedResult===o&&(e=!0),t.markers.has(o.marker.name)&&i.removeMarker(o.marker)})),e){const t=i>=this.results.length?0:i;this.highlightedResult=this.results.get(t)}}})),this.on("change:highlightedResult",(()=>{this.refreshHighlightOffset()}))}clear(t){this.searchText="",t.change((e=>{if(this.highlightedResult){const n=this.highlightedResult.marker.name.split(":")[1],i=t.markers.get(`findResultHighlighted:${n}`);i&&e.removeMarker(i)}[...this.results].forEach((({marker:t})=>{e.removeMarker(t)}))})),this.results.clear()}refreshHighlightOffset(){const{highlightedResult:t,results:e}=this,n={before:-1,same:0,after:1,different:1};this.highlightedOffset=t?Array.from(e).sort(((t,e)=>n[t.marker.getStart().compareWith(e.marker.getStart())])).indexOf(t)+1:0}}class Qw extends er{static get pluginName(){return"FindAndReplaceUtils"}updateFindResultFromRange(t,e,n,i){const o=i||new Uo;return e.change((i=>{[...t].forEach((({type:t,item:r})=>{if("elementStart"===t&&e.schema.checkChild(r,"$text")){const t=n({item:r,text:this.rangeToText(e.createRangeIn(r))});if(!t)return;t.forEach((t=>{const e=`findResult:${p()}`,n=i.addMarker(e,{usingOperation:!1,affectsData:!1,range:i.createRange(i.createPositionAt(r,t.start),i.createPositionAt(r,t.end))}),s=function(t,e){const n=t.find((({marker:t})=>e.getStart().isBefore(t.getStart())));return n?t.getIndex(n):t.length}(o,n);(t=>o.find((e=>{const{marker:n}=e,i=n.getRange(),o=t.getRange();return i.isEqual(o)})))(n)||o.add({id:e,label:t.label,marker:n},s)}))}}))})),o}rangeToText(t){return Array.from(t.getItems()).reduce(((t,e)=>e.is("$text")||e.is("$textProxy")?t+e.data:`${t}\n`),"")}findByTextCallback(t,e){let n="gu";e.matchCase||(n+="i");let i=`(${vk(t)})`;if(e.wholeWords){const e="[^a-zA-ZÀ-ɏḀ-ỿ]";new RegExp("^"+e).test(t)||(i=`(^|${e}|_)${i}`),new RegExp(e+"$").test(t)||(i=`${i}(?=_|${e}|$)`)}const o=new RegExp(i,n);return function({text:t}){return[...t.matchAll(o)].map(Xw)}}}function Xw(t){const e=t.length-1;let n=t.index;return 3===t.length&&(n+=t[1].length),{label:t[e],start:n,end:n+t[e].length}}var t_=n(4341),e_={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(t_.A,e_);t_.A.locals;class n_ extends er{constructor(){super(...arguments),this._onDocumentChange=()=>{const t=new Set,e=new Set,n=this.editor.model,{results:i}=this.state,o=n.document.differ.getChanges(),r=n.document.differ.getChangedMarkers();o.forEach((i=>{i.position&&("$text"===i.name||i.position.nodeAfter&&n.schema.isInline(i.position.nodeAfter)?(t.add(i.position.parent),[...n.markers.getMarkersAtPosition(i.position)].forEach((t=>{e.add(t.name)}))):"insert"===i.type&&i.position.nodeAfter&&t.add(i.position.nodeAfter))})),r.forEach((({name:t,data:{newRange:n}})=>{n&&"$graveyard"===n.start.root.rootName&&e.add(t)})),t.forEach((t=>{[...n.markers.getMarkersIntersectingRange(n.createRangeIn(t))].forEach((t=>e.add(t.name)))})),e.forEach((t=>{i.has(t)&&(i.get(t)===this.state.highlightedResult&&(this.state.highlightedResult=null),i.remove(t))}));const s=[],a=this.editor.plugins.get("FindAndReplaceUtils");t.forEach((t=>{const e=a.updateFindResultFromRange(n.createRangeOn(t),n,this.state.lastSearchCallback,i);s.push(...e)})),r.forEach((t=>{if(t.data.newRange){const e=a.updateFindResultFromRange(t.data.newRange,n,this.state.lastSearchCallback,i);s.push(...e)}})),!this.state.highlightedResult&&s.length?this.state.highlightedResult=s[0]:this.state.refreshHighlightOffset()}}static get requires(){return[Qw]}static get pluginName(){return"FindAndReplaceEditing"}init(){this.state=new Yw(this.editor.model),this.set("_isSearchActive",!1),this._defineConverters(),this._defineCommands(),this.listenTo(this.state,"change:highlightedResult",((t,e,n,i)=>{const{model:o}=this.editor;o.change((t=>{if(i){const e=i.marker.name.split(":")[1],n=o.markers.get(`findResultHighlighted:${e}`);n&&t.removeMarker(n)}if(n){const e=n.marker.name.split(":")[1];t.addMarker(`findResultHighlighted:${e}`,{usingOperation:!1,affectsData:!1,range:n.marker.getRange()})}}))}));const t=Wa(((t,e,n)=>{if(n){const t=this.editor.editing.view.domConverter,e=this.editor.editing.mapper.toViewRange(n.marker.getRange());to({target:t.viewRangeToDom(e),viewportOffset:40})}}).bind(this),32);this.listenTo(this.state,"change:highlightedResult",t,{priority:"low"}),this.listenTo(this.editor,"destroy",t.cancel),this.on("change:_isSearchActive",((t,e,n)=>{n?this.listenTo(this.editor.model.document,"change:data",this._onDocumentChange):this.stopListening(this.editor.model.document,"change:data",this._onDocumentChange)}))}find(t,e){return this._isSearchActive=!0,this.editor.execute("find",t,e),this.state.results}stop(){this.state.clear(this.editor.model),this._isSearchActive=!1}_defineCommands(){this.editor.commands.add("find",new Uw(this.editor,this.state)),this.editor.commands.add("findNext",new Jw(this.editor,this.state)),this.editor.commands.add("findPrevious",new Zw(this.editor,this.state)),this.editor.commands.add("replace",new Gw(this.editor,this.state)),this.editor.commands.add("replaceAll",new Kw(this.editor,this.state))}_defineConverters(){const{editor:t}=this;t.conversion.for("editingDowncast").markerToHighlight({model:"findResult",view:({markerName:t})=>{const[,e]=t.split(":");return{name:"span",classes:["ck-find-result"],attributes:{"data-find-result":e}}}}),t.conversion.for("editingDowncast").markerToHighlight({model:"findResultHighlighted",view:({markerName:t})=>{const[,e]=t.split(":");return{name:"span",classes:["ck-find-result_selected"],attributes:{"data-find-result":e}}}})}}class i_ extends(W()){constructor(){super();const t=new window.FileReader;this._reader=t,this._data=void 0,this.set("loaded",0),t.onprogress=t=>{this.loaded=t.loaded}}get error(){return this._reader.error}get data(){return this._data}read(t){const e=this._reader;return this.total=t.size,new Promise(((n,i)=>{e.onload=()=>{const t=e.result;this._data=t,n(t)},e.onerror=()=>{i("error")},e.onabort=()=>{i("aborted")},this._reader.readAsDataURL(t)}))}abort(){this._reader.abort()}}class o_ extends er{constructor(){super(...arguments),this.loaders=new Uo,this._loadersMap=new Map,this._pendingAction=null}static get pluginName(){return"FileRepository"}static get requires(){return[vm]}init(){this.loaders.on("change",(()=>this._updatePendingAction())),this.set("uploaded",0),this.set("uploadTotal",null),this.bind("uploadedPercent").to(this,"uploaded",this,"uploadTotal",((t,e)=>e?t/e*100:0))}getLoader(t){return this._loadersMap.get(t)||null}createLoader(t){if(!this.createUploadAdapter)return _("filerepository-no-upload-adapter"),null;const e=new r_(Promise.resolve(t),this.createUploadAdapter);return this.loaders.add(e),this._loadersMap.set(t,e),t instanceof Promise&&e.file.then((t=>{this._loadersMap.set(t,e)})).catch((()=>{})),e.on("change:uploaded",(()=>{let t=0;for(const e of this.loaders)t+=e.uploaded;this.uploaded=t})),e.on("change:uploadTotal",(()=>{let t=0;for(const e of this.loaders)e.uploadTotal&&(t+=e.uploadTotal);this.uploadTotal=t})),e}destroyLoader(t){const e=t instanceof r_?t:this.getLoader(t);e._destroy(),this.loaders.remove(e),this._loadersMap.forEach(((t,n)=>{t===e&&this._loadersMap.delete(n)}))}_updatePendingAction(){const t=this.editor.plugins.get(vm);if(this.loaders.length){if(!this._pendingAction){const e=this.editor.t,n=t=>`${e("Upload in progress")} ${parseInt(t)}%.`;this._pendingAction=t.add(n(this.uploadedPercent)),this._pendingAction.bind("message").to(this,"uploadedPercent",n)}}else t.remove(this._pendingAction),this._pendingAction=null}}class r_ extends(W()){constructor(t,e){super(),this.id=p(),this._filePromiseWrapper=this._createFilePromiseWrapper(t),this._adapter=e(this),this._reader=new i_,this.set("status","idle"),this.set("uploaded",0),this.set("uploadTotal",null),this.bind("uploadedPercent").to(this,"uploaded",this,"uploadTotal",((t,e)=>e?t/e*100:0)),this.set("uploadResponse",null)}get file(){return this._filePromiseWrapper?this._filePromiseWrapper.promise.then((t=>this._filePromiseWrapper?t:null)):Promise.resolve(null)}get data(){return this._reader.data}read(){if("idle"!=this.status)throw new w("filerepository-read-wrong-status",this);return this.status="reading",this.file.then((t=>this._reader.read(t))).then((t=>{if("reading"!==this.status)throw this.status;return this.status="idle",t})).catch((t=>{if("aborted"===t)throw this.status="aborted","aborted";throw this.status="error",this._reader.error?this._reader.error:t}))}upload(){if("idle"!=this.status)throw new w("filerepository-upload-wrong-status",this);return this.status="uploading",this.file.then((()=>this._adapter.upload())).then((t=>(this.uploadResponse=t,this.status="idle",t))).catch((t=>{if("aborted"===this.status)throw"aborted";throw this.status="error",t}))}abort(){const t=this.status;this.status="aborted",this._filePromiseWrapper.isFulfilled?"reading"==t?this._reader.abort():"uploading"==t&&this._adapter.abort&&this._adapter.abort():(this._filePromiseWrapper.promise.catch((()=>{})),this._filePromiseWrapper.rejecter("aborted")),this._destroy()}_destroy(){this._filePromiseWrapper=void 0,this._reader=void 0,this._adapter=void 0,this.uploadResponse=void 0}_createFilePromiseWrapper(t){const e={};return e.promise=new Promise(((n,i)=>{e.rejecter=i,e.isFulfilled=!1,t.then((t=>{e.isFulfilled=!0,n(t)})).catch((t=>{e.isFulfilled=!0,i(t)}))})),e}}Object.defineProperty,Object.defineProperties,Object.getOwnPropertyDescriptors,Object.getOwnPropertySymbols,Object.prototype.hasOwnProperty,Object.prototype.propertyIsEnumerable;const s_="ckCsrfToken",a_="abcdefghijklmnopqrstuvwxyz0123456789";function c_(){let t=function(t){t=t.toLowerCase();const e=document.cookie.split(";");for(const n of e){const e=n.split("=");if(decodeURIComponent(e[0].trim().toLowerCase())===t)return decodeURIComponent(e[1])}return null}(s_);var e,n;return t&&40==t.length||(t=function(t){let e="";const n=new Uint8Array(t);window.crypto.getRandomValues(n);for(let t=0;t.5?i.toUpperCase():i}return e}(40),e=s_,n=t,document.cookie=encodeURIComponent(e)+"="+encodeURIComponent(n)+";path=/"),t}class l_{constructor(t,e,n){this.loader=t,this.url=e,this.t=n}upload(){return this.loader.file.then((t=>new Promise(((e,n)=>{this._initRequest(),this._initListeners(e,n,t),this._sendRequest(t)}))))}abort(){this.xhr&&this.xhr.abort()}_initRequest(){const t=this.xhr=new XMLHttpRequest;t.open("POST",this.url,!0),t.responseType="json"}_initListeners(t,e,n){const i=this.xhr,o=this.loader,r=(0,this.t)("Cannot upload file:")+` ${n.name}.`;i.addEventListener("error",(()=>e(r))),i.addEventListener("abort",(()=>e())),i.addEventListener("load",(()=>{const n=i.response;if(!n||!n.uploaded)return e(n&&n.error&&n.error.message?n.error.message:r);t({default:n.url})})),i.upload&&i.upload.addEventListener("progress",(t=>{t.lengthComputable&&(o.uploadTotal=t.total,o.uploaded=t.loaded)}))}_sendRequest(t){const e=new FormData;e.append("upload",t),e.append("ckCsrfToken",c_()),this.xhr.send(e)}}class d_{constructor(t,e=20){this._batch=null,this.model=t,this._size=0,this.limit=e,this._isLocked=!1,this._changeCallback=(t,e)=>{e.isLocal&&e.isUndoable&&e!==this._batch&&this._reset(!0)},this._selectionChangeCallback=()=>{this._reset()},this.model.document.on("change",this._changeCallback),this.model.document.selection.on("change:range",this._selectionChangeCallback),this.model.document.selection.on("change:attribute",this._selectionChangeCallback)}get batch(){return this._batch||(this._batch=this.model.createBatch({isTyping:!0})),this._batch}get size(){return this._size}input(t){this._size+=t,this._size>=this.limit&&this._reset(!0)}get isLocked(){return this._isLocked}lock(){this._isLocked=!0}unlock(){this._isLocked=!1}destroy(){this.model.document.off("change",this._changeCallback),this.model.document.selection.off("change:range",this._selectionChangeCallback),this.model.document.selection.off("change:attribute",this._selectionChangeCallback)}_reset(t=!1){this.isLocked&&!t||(this._batch=null,this._size=0)}}class h_ extends ir{constructor(t,e){super(t),this._buffer=new d_(t.model,e),this._isEnabledBasedOnSelection=!1}get buffer(){return this._buffer}destroy(){super.destroy(),this._buffer.destroy()}execute(t={}){const e=this.editor.model,n=e.document,i=t.text||"",o=i.length;let r=n.selection;if(t.selection?r=t.selection:t.range&&(r=e.createSelection(t.range)),!e.canEditAt(r))return;const s=t.resultRange;e.enqueueChange(this._buffer.batch,(t=>{this._buffer.lock();const a=Array.from(n.selection.getAttributes());e.deleteContent(r),i&&e.insertContent(t.createText(i,a),r),s?t.setSelection(s):r.is("documentSelection")||t.setSelection(r),this._buffer.unlock(),this._buffer.input(o)}))}}const u_=["insertText","insertReplacementText"];class m_ extends Da{constructor(t){super(t),this.focusObserver=t.getObserver(pc),s.isAndroid&&u_.push("insertCompositionText");const e=t.document;e.on("beforeinput",((n,i)=>{if(!this.isEnabled)return;const{data:o,targetRanges:r,inputType:s,domEvent:a}=i;if(!u_.includes(s))return;this.focusObserver.flush();const c=new m(e,"insertText");e.fire(c,new Sa(t,a,{text:o,selection:t.createSelection(r)})),c.stop.called&&n.stop()})),e.on("compositionend",((n,{data:i,domEvent:o})=>{this.isEnabled&&!s.isAndroid&&i&&e.fire("insertText",new Sa(t,o,{text:i,selection:e.selection}))}),{priority:"lowest"})}observe(){}stopObserving(){}}class g_ extends er{static get pluginName(){return"Input"}init(){const t=this.editor,e=t.model,n=t.editing.view,i=e.document.selection;n.addObserver(m_);const o=new h_(t,t.config.get("typing.undoStep")||20);t.commands.add("insertText",o),t.commands.add("input",o),this.listenTo(n.document,"insertText",((i,o)=>{n.document.isComposing||o.preventDefault();const{text:r,selection:a,resultRange:c}=o,l=Array.from(a.getRanges()).map((e=>t.editing.mapper.toModelRange(e)));let d=r;if(s.isAndroid){const t=Array.from(l[0].getItems()).reduce(((t,e)=>t+(e.is("$textProxy")?e.data:"")),"");t&&(t.length<=d.length?d.startsWith(t)&&(d=d.substring(t.length),l[0].start=l[0].start.getShiftedBy(t.length)):t.startsWith(d)&&(l[0].start=l[0].start.getShiftedBy(d.length),d=""))}const h={text:d,selection:e.createSelection(l)};c&&(h.resultRange=t.editing.mapper.toModelRange(c)),t.execute("insertText",h),n.scrollToTheSelection()})),s.isAndroid?this.listenTo(n.document,"keydown",((t,r)=>{!i.isCollapsed&&229==r.keyCode&&n.document.isComposing&&p_(e,o)})):this.listenTo(n.document,"compositionstart",(()=>{i.isCollapsed||p_(e,o)}))}}function p_(t,e){if(!e.isEnabled)return;const n=e.buffer;n.lock(),t.enqueueChange(n.batch,(()=>{t.deleteContent(t.document.selection)})),n.unlock()}class f_ extends ir{constructor(t,e){super(t),this.direction=e,this._buffer=new d_(t.model,t.config.get("typing.undoStep")),this._isEnabledBasedOnSelection=!1}get buffer(){return this._buffer}execute(t={}){const e=this.editor.model,n=e.document;e.enqueueChange(this._buffer.batch,(i=>{this._buffer.lock();const o=i.createSelection(t.selection||n.selection);if(!e.canEditAt(o))return;const r=t.sequence||1,s=o.isCollapsed;if(o.isCollapsed&&e.modifySelection(o,{direction:this.direction,unit:t.unit,treatEmojiAsSingleUnit:!0}),this._shouldEntireContentBeReplacedWithParagraph(r))return void this._replaceEntireContentWithParagraph(i);if(this._shouldReplaceFirstBlockWithParagraph(o,r))return void this.editor.execute("paragraph",{selection:o});if(o.isCollapsed)return;let a=0;o.getFirstRange().getMinimalFlatRanges().forEach((t=>{a+=Y(t.getWalker({singleCharacters:!0,ignoreElementEnd:!0,shallow:!0}))})),e.deleteContent(o,{doNotResetEntireContent:s,direction:this.direction}),this._buffer.input(a),i.setSelection(o),this._buffer.unlock()}))}_shouldEntireContentBeReplacedWithParagraph(t){if(t>1)return!1;const e=this.editor.model,n=e.document.selection,i=e.schema.getLimitElement(n);if(!(n.isCollapsed&&n.containsEntireContent(i)))return!1;if(!e.schema.checkChild(i,"paragraph"))return!1;const o=i.getChild(0);return!o||!o.is("element","paragraph")}_replaceEntireContentWithParagraph(t){const e=this.editor.model,n=e.document.selection,i=e.schema.getLimitElement(n),o=t.createElement("paragraph");t.remove(t.createRangeIn(i)),t.insert(o,i),t.setSelection(o,0)}_shouldReplaceFirstBlockWithParagraph(t,e){const n=this.editor.model;if(e>1||"backward"!=this.direction)return!1;if(!t.isCollapsed)return!1;const i=t.getFirstPosition(),o=n.schema.getLimitElement(i),r=o.getChild(0);return i.parent==r&&(!!t.containsEntireContent(r)&&(!!n.schema.checkChild(o,"paragraph")&&"paragraph"!=r.name))}}const b_="word",k_="selection",w_="backward",__="forward",A_={deleteContent:{unit:k_,direction:w_},deleteContentBackward:{unit:"codePoint",direction:w_},deleteWordBackward:{unit:b_,direction:w_},deleteHardLineBackward:{unit:k_,direction:w_},deleteSoftLineBackward:{unit:k_,direction:w_},deleteContentForward:{unit:"character",direction:__},deleteWordForward:{unit:b_,direction:__},deleteHardLineForward:{unit:k_,direction:__},deleteSoftLineForward:{unit:k_,direction:__}};class C_ extends Da{constructor(t){super(t);const e=t.document;let n=0;e.on("keydown",(()=>{n++})),e.on("keyup",(()=>{n=0})),e.on("beforeinput",((i,o)=>{if(!this.isEnabled)return;const{targetRanges:r,domEvent:a,inputType:c}=o,l=A_[c];if(!l)return;const d={direction:l.direction,unit:l.unit,sequence:n};d.unit==k_&&(d.selectionToRemove=t.createSelection(r[0])),"deleteContentBackward"===c&&(s.isAndroid&&(d.sequence=1),function(t){if(1!=t.length||t[0].isCollapsed)return!1;const e=t[0].getWalker({direction:"backward",singleCharacters:!0,ignoreElementEnd:!0});let n=0;for(const{nextPosition:t,item:i}of e){if(t.parent.is("$text")){const e=t.parent.data,i=t.offset;if(Yo(e,i)||Qo(e,i)||tr(e,i))continue;n++}else(i.is("containerElement")||i.is("emptyElement"))&&n++;if(n>1)return!0}return!1}(r)&&(d.unit=k_,d.selectionToRemove=t.createSelection(r)));const h=new ys(e,"delete",r[0]);e.fire(h,new Sa(t,a,d)),h.stop.called&&i.stop()})),s.isBlink&&function(t){const e=t.view,n=e.document;let i=null,o=!1;function r(t){return t==go.backspace||t==go.delete}function s(t){return t==go.backspace?w_:__}n.on("keydown",((t,{keyCode:e})=>{i=e,o=!1})),n.on("keyup",((a,{keyCode:c,domEvent:l})=>{const d=n.selection,h=t.isEnabled&&c==i&&r(c)&&!d.isCollapsed&&!o;if(i=null,h){const t=d.getFirstRange(),i=new ys(n,"delete",t),o={unit:k_,direction:s(c),selectionToRemove:d};n.fire(i,new Sa(e,l,o))}})),n.on("beforeinput",((t,{inputType:e})=>{const n=A_[e];r(i)&&n&&n.direction==s(i)&&(o=!0)}),{priority:"high"}),n.on("beforeinput",((t,{inputType:e,data:n})=>{i==go.delete&&"insertText"==e&&""==n&&t.stop()}),{priority:"high"})}(this)}observe(){}stopObserving(){}}class v_ extends er{static get pluginName(){return"Delete"}init(){const t=this.editor,e=t.editing.view,n=e.document,i=t.model.document;e.addObserver(C_),this._undoOnBackspace=!1;const o=new f_(t,"forward");t.commands.add("deleteForward",o),t.commands.add("forwardDelete",o),t.commands.add("delete",new f_(t,"backward")),this.listenTo(n,"delete",((i,o)=>{n.isComposing||o.preventDefault();const{direction:r,sequence:s,selectionToRemove:a,unit:c}=o,l="forward"===r?"deleteForward":"delete",d={sequence:s};if("selection"==c){const e=Array.from(a.getRanges()).map((e=>t.editing.mapper.toModelRange(e)));d.selection=t.model.createSelection(e)}else d.unit=c;t.execute(l,d),e.scrollToTheSelection()}),{priority:"low"}),this.editor.plugins.has("UndoEditing")&&(this.listenTo(n,"delete",((e,n)=>{this._undoOnBackspace&&"backward"==n.direction&&1==n.sequence&&"codePoint"==n.unit&&(this._undoOnBackspace=!1,t.execute("undo"),n.preventDefault(),e.stop())}),{context:"$capture"}),this.listenTo(i,"change",(()=>{this._undoOnBackspace=!1})))}requestUndoOnBackspace(){this.editor.plugins.has("UndoEditing")&&(this._undoOnBackspace=!0)}}class y_ extends er{static get requires(){return[g_,v_]}static get pluginName(){return"Typing"}}function x_(t,e){let n=t.start;return{text:Array.from(t.getWalker({ignoreElementEnd:!1})).reduce(((t,{item:i})=>i.is("$text")||i.is("$textProxy")?t+i.data:(n=e.createPositionAfter(i),"")),""),range:e.createRange(n,t.end)}}class E_ extends(W()){constructor(t,e){super(),this.model=t,this.testCallback=e,this._hasMatch=!1,this.set("isEnabled",!0),this.on("change:isEnabled",(()=>{this.isEnabled?this._startListening():(this.stopListening(t.document.selection),this.stopListening(t.document))})),this._startListening()}get hasMatch(){return this._hasMatch}_startListening(){const t=this.model.document;this.listenTo(t.selection,"change:range",((e,{directChange:n})=>{n&&(t.selection.isCollapsed?this._evaluateTextBeforeSelection("selection"):this.hasMatch&&(this.fire("unmatched"),this._hasMatch=!1))})),this.listenTo(t,"change:data",((t,e)=>{!e.isUndo&&e.isLocal&&this._evaluateTextBeforeSelection("data",{batch:e})}))}_evaluateTextBeforeSelection(t,e={}){const n=this.model,i=n.document.selection,o=n.createRange(n.createPositionAt(i.focus.parent,0),i.focus),{text:r,range:s}=x_(o,n),a=this.testCallback(r);if(!a&&this.hasMatch&&this.fire("unmatched"),this._hasMatch=!!a,a){const n=Object.assign(e,{text:r,range:s});"object"==typeof a&&Object.assign(n,a),this.fire(`matched:${t}`,n)}}}class D_ extends er{constructor(t){super(t),this._isNextGravityRestorationSkipped=!1,this.attributes=new Set,this._overrideUid=null}static get pluginName(){return"TwoStepCaretMovement"}init(){const t=this.editor,e=t.model,n=t.editing.view,i=t.locale,o=e.document.selection;this.listenTo(n.document,"arrowKey",((t,e)=>{if(!o.isCollapsed)return;if(e.shiftKey||e.altKey||e.ctrlKey)return;const n=e.keyCode==go.arrowright,r=e.keyCode==go.arrowleft;if(!n&&!r)return;const s=i.contentLanguageDirection;let a=!1;a="ltr"===s&&n||"rtl"===s&&r?this._handleForwardMovement(e):this._handleBackwardMovement(e),!0===a&&t.stop()}),{context:"$text",priority:"highest"}),this.listenTo(o,"change:range",((t,e)=>{this._isNextGravityRestorationSkipped?this._isNextGravityRestorationSkipped=!1:this._isGravityOverridden&&(!e.directChange&&R_(o.getFirstPosition(),this.attributes)||this._restoreGravity())})),this._enableClickingAfterNode(),this._enableInsertContentSelectionAttributesFixer(),this._handleDeleteContentAfterNode()}registerAttribute(t){this.attributes.add(t)}_handleForwardMovement(t){const e=this.attributes,n=this.editor.model,i=n.document.selection,o=i.getFirstPosition();return!this._isGravityOverridden&&((!o.isAtStart||!B_(i,e))&&(!!R_(o,e)&&(I_(t),B_(i,e)&&R_(o,e,!0)?T_(n,e):this._overrideGravity(),!0)))}_handleBackwardMovement(t){const e=this.attributes,n=this.editor.model,i=n.document.selection,o=i.getFirstPosition();return this._isGravityOverridden?(I_(t),this._restoreGravity(),R_(o,e,!0)?T_(n,e):S_(n,e,o),!0):o.isAtStart?!!B_(i,e)&&(I_(t),S_(n,e,o),!0):!B_(i,e)&&R_(o,e,!0)?(I_(t),S_(n,e,o),!0):!!P_(o,e)&&(o.isAtEnd&&!B_(i,e)&&R_(o,e)?(I_(t),S_(n,e,o),!0):(this._isNextGravityRestorationSkipped=!0,this._overrideGravity(),!1))}_enableClickingAfterNode(){const t=this.editor,e=t.model,n=e.document.selection,i=t.editing.view.document;t.editing.view.addObserver(_u);let o=!1;this.listenTo(i,"mousedown",(()=>{o=!0})),this.listenTo(i,"selectionChange",(()=>{const t=this.attributes;if(!o)return;if(o=!1,!n.isCollapsed)return;if(!B_(n,t))return;const i=n.getFirstPosition();R_(i,t)&&(i.isAtStart||R_(i,t,!0)?T_(e,t):this._isGravityOverridden||this._overrideGravity())}))}_enableInsertContentSelectionAttributesFixer(){const t=this.editor.model,e=t.document.selection,n=this.attributes;this.listenTo(t,"insertContent",(()=>{const i=e.getFirstPosition();B_(e,n)&&R_(i,n)&&T_(t,n)}),{priority:"low"})}_handleDeleteContentAfterNode(){const t=this.editor,e=t.model,n=e.document.selection,i=t.editing.view;let o=!1,r=!1;this.listenTo(i.document,"delete",((t,e)=>{o="backward"===e.direction}),{priority:"high"}),this.listenTo(e,"deleteContent",(()=>{if(!o)return;const t=n.getFirstPosition();r=B_(n,this.attributes)&&!P_(t,this.attributes)}),{priority:"high"}),this.listenTo(e,"deleteContent",(()=>{o&&(o=!1,r||t.model.enqueueChange((()=>{const t=n.getFirstPosition();B_(n,this.attributes)&&R_(t,this.attributes)&&(t.isAtStart||R_(t,this.attributes,!0)?T_(e,this.attributes):this._isGravityOverridden||this._overrideGravity())})))}),{priority:"low"})}get _isGravityOverridden(){return!!this._overrideUid}_overrideGravity(){this._overrideUid=this.editor.model.change((t=>t.overrideSelectionGravity()))}_restoreGravity(){this.editor.model.change((t=>{t.restoreSelectionGravity(this._overrideUid),this._overrideUid=null}))}}function B_(t,e){for(const n of e)if(t.hasAttribute(n))return!0;return!1}function S_(t,e,n){const i=n.nodeBefore;t.change((n=>{if(i){const e=[],o=t.schema.isObject(i)&&t.schema.isInline(i);for(const[n,r]of i.getAttributes())!t.schema.checkAttribute("$text",n)||o&&!1===t.schema.getAttributeProperties(n).copyFromObject||e.push([n,r]);n.setSelectionAttribute(e)}else n.removeSelectionAttribute(e)}))}function T_(t,e){t.change((t=>{t.removeSelectionAttribute(e)}))}function I_(t){t.preventDefault()}function P_(t,e){return R_(t.getShiftedBy(-1),e)}function R_(t,e,n=!1){const{nodeBefore:i,nodeAfter:o}=t;for(const t of e){const e=i?i.getAttribute(t):void 0,r=o?o.getAttribute(t):void 0;if((!n||void 0!==e&&void 0!==r)&&r!==e)return!0}return!1}const V_={copyright:{from:"(c)",to:"©"},registeredTrademark:{from:"(r)",to:"®"},trademark:{from:"(tm)",to:"™"},oneHalf:{from:/(^|[^/a-z0-9])(1\/2)([^/a-z0-9])$/i,to:[null,"½",null]},oneThird:{from:/(^|[^/a-z0-9])(1\/3)([^/a-z0-9])$/i,to:[null,"⅓",null]},twoThirds:{from:/(^|[^/a-z0-9])(2\/3)([^/a-z0-9])$/i,to:[null,"⅔",null]},oneForth:{from:/(^|[^/a-z0-9])(1\/4)([^/a-z0-9])$/i,to:[null,"¼",null]},threeQuarters:{from:/(^|[^/a-z0-9])(3\/4)([^/a-z0-9])$/i,to:[null,"¾",null]},lessThanOrEqual:{from:"<=",to:"≤"},greaterThanOrEqual:{from:">=",to:"≥"},notEqual:{from:"!=",to:"≠"},arrowLeft:{from:"<-",to:"←"},arrowRight:{from:"->",to:"→"},horizontalEllipsis:{from:"...",to:"…"},enDash:{from:/(^| )(--)( )$/,to:[null,"–",null]},emDash:{from:/(^| )(---)( )$/,to:[null,"—",null]},quotesPrimary:{from:N_('"'),to:[null,"“",null,"”"]},quotesSecondary:{from:N_("'"),to:[null,"‘",null,"’"]},quotesPrimaryEnGb:{from:N_("'"),to:[null,"‘",null,"’"]},quotesSecondaryEnGb:{from:N_('"'),to:[null,"“",null,"”"]},quotesPrimaryPl:{from:N_('"'),to:[null,"„",null,"”"]},quotesSecondaryPl:{from:N_("'"),to:[null,"‚",null,"’"]}},F_={symbols:["copyright","registeredTrademark","trademark"],mathematical:["oneHalf","oneThird","twoThirds","oneForth","threeQuarters","lessThanOrEqual","greaterThanOrEqual","notEqual","arrowLeft","arrowRight"],typography:["horizontalEllipsis","enDash","emDash"],quotes:["quotesPrimary","quotesSecondary"]},L_=["symbols","mathematical","typography","quotes"];function O_(t){return"string"==typeof t?new RegExp(`(${vk(t)})$`):t}function z_(t){return"string"==typeof t?()=>[t]:t instanceof Array?()=>t:t}function M_(t){return(t.textNode?t.textNode:t.nodeAfter).getAttributes()}function N_(t){return new RegExp(`(^|\\s)(${t})([^${t}]*)(${t})$`)}function H_(t,e,n,i){return i.createRange(j_(t,e,n,!0,i),j_(t,e,n,!1,i))}function j_(t,e,n,i,o){let r=t.textNode||(i?t.nodeBefore:t.nodeAfter),s=null;for(;r&&r.getAttribute(e)==n;)s=r,r=i?r.previousSibling:r.nextSibling;return s?o.createPositionAt(s,i?"before":"after"):t}function q_(t,e,n,i){const o=t.editing.view,r=new Set;o.document.registerPostFixer((o=>{const s=t.model.document.selection;let a=!1;if(s.hasAttribute(e)){const c=H_(s.getFirstPosition(),e,s.getAttribute(e),t.model),l=t.editing.mapper.toViewRange(c);for(const t of l.getItems())t.is("element",n)&&!t.hasClass(i)&&(o.addClass(i,t),r.add(t),a=!0)}return a})),t.conversion.for("editingDowncast").add((t=>{function e(){o.change((t=>{for(const e of r.values())t.removeClass(i,e),r.delete(e)}))}t.on("insert",e,{priority:"highest"}),t.on("remove",e,{priority:"highest"}),t.on("attribute",e,{priority:"highest"}),t.on("selection",e,{priority:"highest"})}))}function W_(t,e,n,i){let o,r=null;"function"==typeof i?o=i:(r=t.commands.get(i),o=()=>{t.execute(i)}),t.model.document.on("change:data",((s,a)=>{if(r&&!r.isEnabled||!e.isEnabled)return;const c=$o(t.model.document.selection.getRanges());if(!c.isCollapsed)return;if(a.isUndo||!a.isLocal)return;const l=Array.from(t.model.document.differ.getChanges()),d=l[0];if(1!=l.length||"insert"!==d.type||"$text"!=d.name||1!=d.length)return;const h=d.position.parent;if(h.is("element","codeBlock"))return;if(h.is("element","listItem")&&"function"!=typeof i&&!["numberedList","bulletedList","todoList"].includes(i))return;if(r&&!0===r.value)return;const u=h.getChild(0),m=t.model.createRangeOn(u);if(!m.containsRange(c)&&!c.end.isEqual(m.end))return;const g=n.exec(u.data.substr(0,c.end.offset));g&&t.model.enqueueChange((e=>{const n=e.createPositionAt(h,0),i=e.createPositionAt(h,g[0].length),r=new cl(n,i);if(!1!==o({match:g})){e.remove(r);const n=t.model.document.selection.getFirstRange(),i=e.createRangeIn(h);!h.isEmpty||i.isEqual(n)||i.containsRange(n,!0)||e.remove(h)}r.detach(),t.model.enqueueChange((()=>{t.plugins.get("Delete").requestUndoOnBackspace()}))}))}))}function U_(t,e,n,i){let o,r;n instanceof RegExp?o=n:r=n,r=r||(t=>{let e;const n=[],i=[];for(;null!==(e=o.exec(t))&&!(e&&e.length<4);){let{index:t,1:o,2:r,3:s}=e;const a=o+r+s;t+=e[0].length-a.length;const c=[t,t+o.length],l=[t+o.length+r.length,t+o.length+r.length+s.length];n.push(c),n.push(l),i.push([t+o.length,t+o.length+r.length])}return{remove:n,format:i}}),t.model.document.on("change:data",((n,o)=>{if(o.isUndo||!o.isLocal||!e.isEnabled)return;const s=t.model,a=s.document.selection;if(!a.isCollapsed)return;const c=Array.from(s.document.differ.getChanges()),l=c[0];if(1!=c.length||"insert"!==l.type||"$text"!=l.name||1!=l.length)return;const d=a.focus,h=d.parent,{text:u,range:m}=function(t,e){let n=t.start;const i=Array.from(t.getItems()).reduce(((t,i)=>!i.is("$text")&&!i.is("$textProxy")||i.getAttribute("code")?(n=e.createPositionAfter(i),""):t+i.data),"");return{text:i,range:e.createRange(n,t.end)}}(s.createRange(s.createPositionAt(h,0),d),s),g=r(u),p=$_(m.start,g.format,s),f=$_(m.start,g.remove,s);p.length&&f.length&&s.enqueueChange((e=>{if(!1!==i(e,p)){for(const t of f.reverse())e.remove(t);s.enqueueChange((()=>{t.plugins.get("Delete").requestUndoOnBackspace()}))}}))}))}function $_(t,e,n){return e.filter((t=>void 0!==t[0]&&void 0!==t[1])).map((e=>n.createRange(t.getShiftedBy(e[0]),t.getShiftedBy(e[1]))))}function G_(t,e){return(n,i)=>{if(!t.commands.get(e).isEnabled)return!1;const o=t.model.schema.getValidRanges(i,e);for(const t of o)n.setAttribute(e,!0,t);n.removeSelectionAttribute(e)}}class K_ extends ir{constructor(t,e){super(t),this.attributeKey=e}refresh(){const t=this.editor.model,e=t.document;this.value=this._getValueFromFirstAllowedNode(),this.isEnabled=t.schema.checkAttributeInSelection(e.selection,this.attributeKey)}execute(t={}){const e=this.editor.model,n=e.document.selection,i=void 0===t.forceValue?!this.value:t.forceValue;e.change((t=>{if(n.isCollapsed)i?t.setSelectionAttribute(this.attributeKey,!0):t.removeSelectionAttribute(this.attributeKey);else{const o=e.schema.getValidRanges(n.getRanges(),this.attributeKey);for(const e of o)i?t.setAttribute(this.attributeKey,i,e):t.removeAttribute(this.attributeKey,e)}}))}_getValueFromFirstAllowedNode(){const t=this.editor.model,e=t.schema,n=t.document.selection;if(n.isCollapsed)return n.hasAttribute(this.attributeKey);for(const t of n.getRanges())for(const n of t.getItems())if(e.checkAttribute(n,this.attributeKey))return n.hasAttribute(this.attributeKey);return!1}}const J_="bold";class Z_ extends er{static get pluginName(){return"BoldEditing"}init(){const t=this.editor,e=this.editor.t;t.model.schema.extend("$text",{allowAttributes:J_}),t.model.schema.setAttributeProperties(J_,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:J_,view:"strong",upcastAlso:["b",t=>{const e=t.getStyle("font-weight");return e&&("bold"==e||Number(e)>=600)?{name:!0,styles:["font-weight"]}:null}]}),t.commands.add(J_,new K_(t,J_)),t.keystrokes.set("CTRL+B",J_),t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Bold text"),keystroke:"CTRL+B"}]})}}function Y_({editor:t,commandName:e,plugin:n,icon:i,label:o,keystroke:r}){return s=>{const a=t.commands.get(e),c=new s(t.locale);return c.set({label:o,icon:i,keystroke:r,isToggleable:!0}),c.bind("isEnabled").to(a,"isEnabled"),n.listenTo(c,"execute",(()=>{t.execute(e),t.editing.view.focus()})),c}}const Q_="bold";class X_ extends er{static get pluginName(){return"BoldUI"}init(){const t=this.editor,e=t.locale.t,n=t.commands.get(Q_),i=Y_({editor:t,commandName:Q_,plugin:this,icon:ym.bold,label:e("Bold"),keystroke:"CTRL+B"});t.ui.componentFactory.add(Q_,(()=>{const t=i(mg);return t.set({tooltip:!0}),t.bind("isOn").to(n,"value"),t})),t.ui.componentFactory.add("menuBar:"+Q_,(()=>i(mw)))}}const tA="code";class eA extends er{static get pluginName(){return"CodeEditing"}static get requires(){return[D_]}init(){const t=this.editor,e=this.editor.t;t.model.schema.extend("$text",{allowAttributes:tA}),t.model.schema.setAttributeProperties(tA,{isFormatting:!0,copyOnEnter:!1}),t.conversion.attributeToElement({model:tA,view:"code",upcastAlso:{styles:{"word-wrap":"break-word"}}}),t.commands.add(tA,new K_(t,tA)),t.plugins.get(D_).registerAttribute(tA),q_(t,tA,"code","ck-code_selected"),t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Move out of an inline code style"),keystroke:[["arrowleft","arrowleft"],["arrowright","arrowright"]]}]})}}var nA=n(4199),iA={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(nA.A,iA);nA.A.locals;const oA="code";class rA extends er{static get pluginName(){return"CodeUI"}init(){const t=this.editor,e=t.locale.t,n=Y_({editor:t,commandName:oA,plugin:this,icon:'',label:e("Code")});t.ui.componentFactory.add(oA,(()=>{const e=n(mg),i=t.commands.get(oA);return e.set({tooltip:!0}),e.bind("isOn").to(i,"value"),e})),t.ui.componentFactory.add("menuBar:"+oA,(()=>n(mw)))}}const sA="italic";class aA extends er{static get pluginName(){return"ItalicEditing"}init(){const t=this.editor,e=this.editor.t;t.model.schema.extend("$text",{allowAttributes:sA}),t.model.schema.setAttributeProperties(sA,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:sA,view:"i",upcastAlso:["em",{styles:{"font-style":"italic"}}]}),t.commands.add(sA,new K_(t,sA)),t.keystrokes.set("CTRL+I",sA),t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Italic text"),keystroke:"CTRL+I"}]})}}const cA="italic";class lA extends er{static get pluginName(){return"ItalicUI"}init(){const t=this.editor,e=t.commands.get(cA),n=t.locale.t,i=Y_({editor:t,commandName:cA,plugin:this,icon:'',keystroke:"CTRL+I",label:n("Italic")});t.ui.componentFactory.add(cA,(()=>{const t=i(mg);return t.set({tooltip:!0}),t.bind("isOn").to(e,"value"),t})),t.ui.componentFactory.add("menuBar:"+cA,(()=>i(mw)))}}const dA="strikethrough";class hA extends er{static get pluginName(){return"StrikethroughEditing"}init(){const t=this.editor,e=this.editor.t;t.model.schema.extend("$text",{allowAttributes:dA}),t.model.schema.setAttributeProperties(dA,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:dA,view:"s",upcastAlso:["del","strike",{styles:{"text-decoration":"line-through"}}]}),t.commands.add(dA,new K_(t,dA)),t.keystrokes.set("CTRL+SHIFT+X","strikethrough"),t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Strikethrough text"),keystroke:"CTRL+SHIFT+X"}]})}}const uA="strikethrough";class mA extends er{static get pluginName(){return"StrikethroughUI"}init(){const t=this.editor,e=t.locale.t,n=Y_({editor:t,commandName:uA,plugin:this,icon:'',keystroke:"CTRL+SHIFT+X",label:e("Strikethrough")});t.ui.componentFactory.add(uA,(()=>{const e=n(mg),i=t.commands.get(uA);return e.set({tooltip:!0}),e.bind("isOn").to(i,"value"),e})),t.ui.componentFactory.add("menuBar:"+uA,(()=>n(mw)))}}const gA="subscript";class pA extends er{static get pluginName(){return"SubscriptEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:gA}),t.model.schema.setAttributeProperties(gA,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:gA,view:"sub",upcastAlso:[{styles:{"vertical-align":"sub"}}]}),t.commands.add(gA,new K_(t,gA))}}const fA="subscript";class bA extends er{static get pluginName(){return"SubscriptUI"}init(){const t=this.editor,e=t.locale.t,n=Y_({editor:t,commandName:fA,plugin:this,icon:'',label:e("Subscript")});t.ui.componentFactory.add(fA,(()=>{const e=n(mg),i=t.commands.get(fA);return e.set({tooltip:!0}),e.bind("isOn").to(i,"value"),e})),t.ui.componentFactory.add("menuBar:"+fA,(()=>n(mw)))}}const kA="superscript";class wA extends er{static get pluginName(){return"SuperscriptEditing"}init(){const t=this.editor;t.model.schema.extend("$text",{allowAttributes:kA}),t.model.schema.setAttributeProperties(kA,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:kA,view:"sup",upcastAlso:[{styles:{"vertical-align":"super"}}]}),t.commands.add(kA,new K_(t,kA))}}const _A="superscript";class AA extends er{static get pluginName(){return"SuperscriptUI"}init(){const t=this.editor,e=t.locale.t,n=Y_({editor:t,commandName:_A,plugin:this,icon:'',label:e("Superscript")});t.ui.componentFactory.add(_A,(()=>{const e=n(mg),i=t.commands.get(_A);return e.set({tooltip:!0}),e.bind("isOn").to(i,"value"),e})),t.ui.componentFactory.add("menuBar:"+_A,(()=>n(mw)))}}const CA="underline";class vA extends er{static get pluginName(){return"UnderlineEditing"}init(){const t=this.editor,e=this.editor.t;t.model.schema.extend("$text",{allowAttributes:CA}),t.model.schema.setAttributeProperties(CA,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:CA,view:"u",upcastAlso:{styles:{"text-decoration":"underline"}}}),t.commands.add(CA,new K_(t,CA)),t.keystrokes.set("CTRL+U","underline"),t.accessibility.addKeystrokeInfos({keystrokes:[{label:e("Underline text"),keystroke:"CTRL+U"}]})}}const yA="underline";class xA extends er{static get pluginName(){return"UnderlineUI"}init(){const t=this.editor,e=t.commands.get(yA),n=t.locale.t,i=Y_({editor:t,commandName:yA,plugin:this,icon:'',label:n("Underline"),keystroke:"CTRL+U"});t.ui.componentFactory.add(yA,(()=>{const t=i(mg);return t.set({tooltip:!0}),t.bind("isOn").to(e,"value"),t})),t.ui.componentFactory.add("menuBar:"+yA,(()=>i(mw)))}}function*EA(t,e){for(const n of e)n&&t.getAttributeProperties(n[0]).copyOnEnter&&(yield n)}class DA extends ir{execute(){this.editor.model.change((t=>{this.enterBlock(t),this.fire("afterExecute",{writer:t})}))}enterBlock(t){const e=this.editor.model,n=e.document.selection,i=e.schema,o=n.isCollapsed,r=n.getFirstRange(),s=r.start.parent,a=r.end.parent;if(i.isLimit(s)||i.isLimit(a))return o||s!=a||e.deleteContent(n),!1;if(o){const e=EA(t.model.schema,n.getAttributes());return BA(t,r.start),t.setSelectionAttribute(e),!0}{const i=!(r.start.isAtStart&&r.end.isAtEnd),o=s==a;if(e.deleteContent(n,{leaveUnmerged:i}),i){if(o)return BA(t,n.focus),!0;t.setSelection(a,0)}}return!1}}function BA(t,e){t.split(e),t.setSelection(e.parent.nextSibling,0)}const SA={insertParagraph:{isSoft:!1},insertLineBreak:{isSoft:!0}};class TA extends Da{constructor(t){super(t);const e=this.document;let n=!1;e.on("keydown",((t,e)=>{n=e.shiftKey})),e.on("beforeinput",((i,o)=>{if(!this.isEnabled)return;let r=o.inputType;s.isSafari&&n&&"insertParagraph"==r&&(r="insertLineBreak");const a=o.domEvent,c=SA[r];if(!c)return;const l=new ys(e,"enter",o.targetRanges[0]);e.fire(l,new Sa(t,a,{isSoft:c.isSoft})),l.stop.called&&i.stop()}))}observe(){}stopObserving(){}}class IA extends er{static get pluginName(){return"Enter"}init(){const t=this.editor,e=t.editing.view,n=e.document,i=this.editor.t;e.addObserver(TA),t.commands.add("enter",new DA(t)),this.listenTo(n,"enter",((i,o)=>{n.isComposing||o.preventDefault(),o.isSoft||(t.execute("enter"),e.scrollToTheSelection())}),{priority:"low"}),t.accessibility.addKeystrokeInfos({keystrokes:[{label:i("Insert a hard break (a new paragraph)"),keystroke:"Enter"}]})}}class PA extends ir{execute(){const t=this.editor.model,e=t.document;t.change((n=>{!function(t,e,n){const i=n.isCollapsed,o=n.getFirstRange(),r=o.start.parent,s=o.end.parent,a=r==s;if(i){const i=EA(t.schema,n.getAttributes());RA(t,e,o.end),e.removeSelectionAttribute(n.getAttributeKeys()),e.setSelectionAttribute(i)}else{const i=!(o.start.isAtStart&&o.end.isAtEnd);t.deleteContent(n,{leaveUnmerged:i}),a?RA(t,e,n.focus):i&&e.setSelection(s,0)}}(t,n,e.selection),this.fire("afterExecute",{writer:n})}))}refresh(){const t=this.editor.model,e=t.document;this.isEnabled=function(t,e){if(e.rangeCount>1)return!1;const n=e.anchor;if(!n||!t.checkChild(n,"softBreak"))return!1;const i=e.getFirstRange(),o=i.start.parent,r=i.end.parent;if((VA(o,t)||VA(r,t))&&o!==r)return!1;return!0}(t.schema,e.selection)}}function RA(t,e,n){const i=e.createElement("softBreak");t.insertContent(i,n),e.setSelection(i,"after")}function VA(t,e){return!t.is("rootElement")&&(e.isLimit(t)||VA(t.parent,e))}class FA extends er{static get pluginName(){return"ShiftEnter"}init(){const t=this.editor,e=t.model.schema,n=t.conversion,i=t.editing.view,o=i.document,r=this.editor.t;e.register("softBreak",{allowWhere:"$text",isInline:!0}),n.for("upcast").elementToElement({model:"softBreak",view:"br"}),n.for("downcast").elementToElement({model:"softBreak",view:(t,{writer:e})=>e.createEmptyElement("br")}),i.addObserver(TA),t.commands.add("shiftEnter",new PA(t)),this.listenTo(o,"enter",((e,n)=>{o.isComposing||n.preventDefault(),n.isSoft&&(t.execute("shiftEnter"),i.scrollToTheSelection())}),{priority:"low"}),t.accessibility.addKeystrokeInfos({keystrokes:[{label:r("Insert a soft break (a <br> element)"),keystroke:"Shift+Enter"}]})}}class LA extends ir{refresh(){this.value=this._getValue(),this.isEnabled=this._checkEnabled()}execute(t={}){const e=this.editor.model,n=e.schema,i=e.document.selection,o=Array.from(i.getSelectedBlocks()),r=void 0===t.forceValue?!this.value:t.forceValue;e.change((t=>{if(r){const e=o.filter((t=>OA(t)||MA(n,t)));this._applyQuote(t,e)}else this._removeQuote(t,o.filter(OA))}))}_getValue(){const t=$o(this.editor.model.document.selection.getSelectedBlocks());return!(!t||!OA(t))}_checkEnabled(){if(this.value)return!0;const t=this.editor.model.document.selection,e=this.editor.model.schema,n=$o(t.getSelectedBlocks());return!!n&&MA(e,n)}_removeQuote(t,e){zA(t,e).reverse().forEach((e=>{if(e.start.isAtStart&&e.end.isAtEnd)return void t.unwrap(e.start.parent);if(e.start.isAtStart){const n=t.createPositionBefore(e.start.parent);return void t.move(e,n)}e.end.isAtEnd||t.split(e.end);const n=t.createPositionAfter(e.end.parent);t.move(e,n)}))}_applyQuote(t,e){const n=[];zA(t,e).reverse().forEach((e=>{let i=OA(e.start);i||(i=t.createElement("blockQuote"),t.wrap(e,i)),n.push(i)})),n.reverse().reduce(((e,n)=>e.nextSibling==n?(t.merge(t.createPositionAfter(e)),e):n))}}function OA(t){return"blockQuote"==t.parent.name?t.parent:null}function zA(t,e){let n,i=0;const o=[];for(;i{const i=t.model.document.differ.getChanges();for(const t of i)if("insert"==t.type){const i=t.position.nodeAfter;if(!i)continue;if(i.is("element","blockQuote")&&i.isEmpty)return n.remove(i),!0;if(i.is("element","blockQuote")&&!e.checkChild(t.position,i))return n.unwrap(i),!0;if(i.is("element")){const t=n.createRangeIn(i);for(const i of t.getItems())if(i.is("element","blockQuote")&&!e.checkChild(n.createPositionBefore(i),i))return n.unwrap(i),!0}}else if("remove"==t.type){const e=t.position.parent;if(e.is("element","blockQuote")&&e.isEmpty)return n.remove(e),!0}return!1}));const n=this.editor.editing.view.document,i=t.model.document.selection,o=t.commands.get("blockQuote");this.listenTo(n,"enter",((e,n)=>{if(!i.isCollapsed||!o.value)return;i.getLastPosition().parent.isEmpty&&(t.execute("blockQuote"),t.editing.view.scrollToTheSelection(),n.preventDefault(),e.stop())}),{context:"blockquote"}),this.listenTo(n,"delete",((e,n)=>{if("backward"!=n.direction||!i.isCollapsed||!o.value)return;const r=i.getLastPosition().parent;r.isEmpty&&!r.previousSibling&&(t.execute("blockQuote"),t.editing.view.scrollToTheSelection(),n.preventDefault(),e.stop())}),{context:"blockquote"})}}var HA=n(8708),jA={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(HA.A,jA);HA.A.locals;class qA extends er{static get pluginName(){return"BlockQuoteUI"}init(){const t=this.editor,e=t.commands.get("blockQuote");t.ui.componentFactory.add("blockQuote",(()=>{const t=this._createButton(mg);return t.set({tooltip:!0}),t.bind("isOn").to(e,"value"),t})),t.ui.componentFactory.add("menuBar:blockQuote",(()=>this._createButton(mw)))}_createButton(t){const e=this.editor,n=e.locale,i=e.commands.get("blockQuote"),o=new t(e.locale),r=n.t;return o.set({label:r("Block quote"),icon:ym.quote,isToggleable:!0}),o.bind("isEnabled").to(i,"isEnabled"),this.listenTo(o,"execute",(()=>{e.execute("blockQuote"),e.editing.view.focus()})),o}}class WA extends ir{constructor(t){super(t),this._isEnabledBasedOnSelection=!1}refresh(){const t=this.editor.model,e=$o(t.document.selection.getSelectedBlocks());this.value=!!e&&e.is("element","paragraph"),this.isEnabled=!!e&&UA(e,t.schema)}execute(t={}){const e=this.editor.model,n=e.document,i=t.selection||n.selection;e.canEditAt(i)&&e.change((t=>{const n=i.getSelectedBlocks();for(const i of n)!i.is("element","paragraph")&&UA(i,e.schema)&&t.rename(i,"paragraph")}))}}function UA(t,e){return e.checkChild(t.parent,"paragraph")&&!e.isObject(t)}class $A extends ir{constructor(t){super(t),this._isEnabledBasedOnSelection=!1}execute(t){const e=this.editor.model,n=t.attributes;let i=t.position;e.canEditAt(i)&&e.change((t=>{if(i=this._findPositionToInsertParagraph(i,t),!i)return;const o=t.createElement("paragraph");n&&e.schema.setAllowedAttributes(o,n,t),e.insertContent(o,i),t.setSelection(o,"in")}))}_findPositionToInsertParagraph(t,e){const n=this.editor.model;if(n.schema.checkChild(t,"paragraph"))return t;const i=n.schema.findAllowedParent(t,"paragraph");if(!i)return null;const o=t.parent,r=n.schema.checkChild(o,"$text");return o.isEmpty||r&&t.isAtEnd?n.createPositionAfter(o):!o.isEmpty&&r&&t.isAtStart?n.createPositionBefore(o):e.split(t,i).position}}const GA=class extends er{static get pluginName(){return"Paragraph"}init(){const t=this.editor,e=t.model;t.commands.add("paragraph",new WA(t)),t.commands.add("insertParagraph",new $A(t)),e.schema.register("paragraph",{inheritAllFrom:"$block"}),t.conversion.elementToElement({model:"paragraph",view:"p"}),t.conversion.for("upcast").elementToElement({model:(t,{writer:e})=>GA.paragraphLikeElements.has(t.name)?t.isEmpty?null:e.createElement("paragraph"):null,view:/.+/,converterPriority:"low"})}};let KA=GA;KA.paragraphLikeElements=new Set(["blockquote","dd","div","dt","h1","h2","h3","h4","h5","h6","li","p","td","th"]);const JA=ym.paragraph;class ZA extends ir{constructor(t,e){super(t),this.modelElements=e}refresh(){const t=$o(this.editor.model.document.selection.getSelectedBlocks());this.value=!!t&&this.modelElements.includes(t.name)&&t.name,this.isEnabled=!!t&&this.modelElements.some((e=>YA(t,e,this.editor.model.schema)))}execute(t){const e=this.editor.model,n=e.document,i=t.value;e.change((t=>{const o=Array.from(n.selection.getSelectedBlocks()).filter((t=>YA(t,i,e.schema)));for(const e of o)e.is("element",i)||t.rename(e,i)}))}}function YA(t,e,n){return n.checkChild(t.parent,e)&&!n.isObject(t)}const QA="paragraph";class XA extends er{static get pluginName(){return"HeadingEditing"}constructor(t){super(t),t.config.define("heading",{options:[{model:"paragraph",title:"Paragraph",class:"ck-heading_paragraph"},{model:"heading1",view:"h2",title:"Heading 1",class:"ck-heading_heading1"},{model:"heading2",view:"h3",title:"Heading 2",class:"ck-heading_heading2"},{model:"heading3",view:"h4",title:"Heading 3",class:"ck-heading_heading3"}]})}static get requires(){return[KA]}init(){const t=this.editor,e=t.config.get("heading.options"),n=[];for(const i of e)"paragraph"!==i.model&&(t.model.schema.register(i.model,{inheritAllFrom:"$block"}),t.conversion.elementToElement(i),n.push(i.model));this._addDefaultH1Conversion(t),t.commands.add("heading",new ZA(t,n))}afterInit(){const t=this.editor,e=t.commands.get("enter"),n=t.config.get("heading.options");e&&this.listenTo(e,"afterExecute",((e,i)=>{const o=t.model.document.selection.getFirstPosition().parent;n.some((t=>o.is("element",t.model)))&&!o.is("element",QA)&&0===o.childCount&&i.writer.rename(o,QA)}))}_addDefaultH1Conversion(t){t.conversion.for("upcast").elementToElement({model:"heading1",view:"h1",converterPriority:f.low+1})}}function tC(t){const e=t.t,n={Paragraph:e("Paragraph"),"Heading 1":e("Heading 1"),"Heading 2":e("Heading 2"),"Heading 3":e("Heading 3"),"Heading 4":e("Heading 4"),"Heading 5":e("Heading 5"),"Heading 6":e("Heading 6")};return t.config.get("heading.options").map((t=>{const e=n[t.title];return e&&e!=t.title&&(t.title=e),t}))}var eC=n(6269),nC={injectType:"singletonStyleTag",attributes:{"data-cke":!0},insert:"head",singleton:!0};gr()(eC.A,nC);eC.A.locals;class iC extends er{static get pluginName(){return"HeadingUI"}init(){const t=this.editor,e=t.t,n=tC(t),i=e("Choose heading"),o=e("Heading");t.ui.componentFactory.add("heading",(e=>{const r={},s=new Uo,a=t.commands.get("heading"),c=t.commands.get("paragraph"),l=[a];for(const t of n){const e={type:"button",model:new ak({label:t.title,class:t.class,role:"menuitemradio",withText:!0})};"paragraph"===t.model?(e.model.bind("isOn").to(c,"value"),e.model.set("commandName","paragraph"),l.push(c)):(e.model.bind("isOn").to(a,"value",(e=>e===t.model)),e.model.set({commandName:"heading",commandValue:t.model})),s.add(e),r[t.model]=t.title}const d=Ip(e);return Vp(d,s,{ariaLabel:o,role:"menu"}),d.buttonView.set({ariaLabel:o,ariaLabelledBy:void 0,isOn:!1,withText:!0,tooltip:o}),d.extendTemplate({attributes:{class:["ck-heading-dropdown"]}}),d.bind("isEnabled").toMany(l,"isEnabled",((...t)=>t.some((t=>t)))),d.buttonView.bind("label").to(a,"value",c,"value",((t,e)=>{const n=e?"paragraph":t;return"boolean"==typeof n?i:r[n]?r[n]:i})),d.buttonView.bind("ariaLabel").to(a,"value",c,"value",((t,e)=>{const n=e?"paragraph":t;return"boolean"==typeof n?o:r[n]?`${r[n]}, ${o}`:o})),this.listenTo(d,"execute",(e=>{const{commandName:n,commandValue:i}=e.source;t.execute(n,i?{value:i}:void 0),t.editing.view.focus()})),d})),t.ui.componentFactory.add("menuBar:heading",(i=>{const o=new lw(i),r=t.commands.get("heading"),s=t.commands.get("paragraph"),a=[r],c=new dw(i);o.set({class:"ck-heading-dropdown"}),c.set({ariaLabel:e("Heading"),role:"menu"}),o.buttonView.set({label:e("Heading")}),o.panelView.children.add(c);for(const e of n){const n=new tw(i,o),l=new mw(i);n.children.add(l),c.items.add(n),l.set({label:e.title,role:"menuitemradio",class:e.class}),l.bind("ariaChecked").to(l,"isOn"),l.delegate("execute").to(o),l.on("execute",(()=>{const n="paragraph"===e.model?"paragraph":"heading";t.execute(n,{value:e.model}),t.editing.view.focus()})),"paragraph"===e.model?(l.bind("isOn").to(s,"value"),a.push(s)):l.bind("isOn").to(r,"value",(t=>t===e.model))}return o.bind("isEnabled").toMany(a,"isEnabled",((...t)=>t.some((t=>t)))),o}))}}const oC={heading1:ym.heading1,heading2:ym.heading2,heading3:ym.heading3,heading4:ym.heading4,heading5:ym.heading5,heading6:ym.heading6};class rC extends Ta{constructor(t){super(t),this.domEventType=["paste","copy","cut","drop","dragover","dragstart","dragend","dragenter","dragleave"];const e=this.document;function n(t){return(n,i)=>{i.preventDefault();const o=i.dropRange?[i.dropRange]:null,r=new m(e,t);e.fire(r,{dataTransfer:i.dataTransfer,method:n.name,targetRanges:o,target:i.target,domEvent:i.domEvent}),r.stop.called&&i.stopPropagation()}}this.listenTo(e,"paste",n("clipboardInput"),{priority:"low"}),this.listenTo(e,"drop",n("clipboardInput"),{priority:"low"}),this.listenTo(e,"dragover",n("dragging"),{priority:"low"})}onDomEvent(t){const e="clipboardData"in t?t.clipboardData:t.dataTransfer,n="drop"==t.type||"paste"==t.type,i={dataTransfer:new kc(e,{cacheFiles:n})};"drop"!=t.type&&"dragover"!=t.type||(i.dropRange=function(t,e){const n=e.target.ownerDocument,i=e.clientX,o=e.clientY;let r;n.caretRangeFromPoint&&n.caretRangeFromPoint(i,o)?r=n.caretRangeFromPoint(i,o):e.rangeParent&&(r=n.createRange(),r.setStart(e.rangeParent,e.rangeOffset),r.collapse(!0));if(r)return t.domConverter.domRangeToView(r);return null}(this.view,t)),this.fire(t.type,t,i)}}const sC=["figcaption","li"],aC=["ol","ul"];function cC(t){if(t.is("$text")||t.is("$textProxy"))return t.data;if(t.is("element","img")&&t.hasAttribute("alt"))return t.getAttribute("alt");if(t.is("element","br"))return"\n";let e="",n=null;for(const i of t.getChildren())e+=lC(i,n)+cC(i),n=i;return e}function lC(t,e){return e?t.is("element","li")&&!t.isEmpty&&t.getChild(0).is("containerElement")||aC.includes(t.name)&&aC.includes(e.name)?"\n\n":t.is("containerElement")||e.is("containerElement")?sC.includes(t.name)||sC.includes(e.name)?"\n":"\n\n":"":""}const dC=function(t,e){return t&&Co(t,e,an)};const hC=function(t,e,n,i){var o=n.length,r=o,s=!i;if(null==t)return!r;for(t=Object(t);o--;){var a=n[o];if(s&&a[2]?a[1]!==t[a[0]]:!(a[0]in t))return!1}for(;++oe in t?xC(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;class PC extends er{constructor(){super(...arguments),this._markersToCopy=new Map}static get pluginName(){return"ClipboardMarkersUtils"}_registerMarkerToCopy(t,e){this._markersToCopy.set(t,e)}_copySelectedFragmentWithMarkers(t,e,n=t=>t.model.getSelectedContent(t.model.document.selection)){return this.editor.model.change((i=>{const o=i.model.document.selection;i.setSelection(e);const r=this._insertFakeMarkersIntoSelection(i,i.model.document.selection,t),s=n(i),a=this._removeFakeMarkersInsideElement(i,s);for(const[t,e]of Object.entries(r)){a[t]||(a[t]=i.createRangeIn(s));for(const t of e)i.remove(t)}s.markers.clear();for(const[t,e]of Object.entries(a))s.markers.set(t,e);return i.setSelection(o),s}))}_pasteMarkersIntoTransformedElement(t,e){const n=this._getPasteMarkersFromRangeMap(t);return this.editor.model.change((t=>{const i=this._insertFakeMarkersElements(t,n),o=e(t),r=this._removeFakeMarkersInsideElement(t,o);for(const e of Object.values(i).flat())t.remove(e);for(const[e,n]of Object.entries(r))t.model.markers.has(e)||t.addMarker(e,{usingOperation:!0,affectsData:!0,range:n});return o}))}_pasteFragmentWithMarkers(t){const e=this._getPasteMarkersFromRangeMap(t.markers);t.markers.clear();for(const n of e)t.markers.set(n.name,n.range);return this.editor.model.insertContent(t)}_forceMarkersCopy(t,e,n={allowedActions:"all",copyPartiallySelected:!0,duplicateOnPaste:!0}){const i=this._markersToCopy.get(t);this._markersToCopy.set(t,n),e(),i?this._markersToCopy.set(t,i):this._markersToCopy.delete(t)}_isMarkerCopyable(t,e){const n=this._getMarkerClipboardConfig(t);if(!n)return!1;if(!e)return!0;const{allowedActions:i}=n;return"all"===i||i.includes(e)}_hasMarkerConfiguration(t){return!!this._getMarkerClipboardConfig(t)}_getMarkerClipboardConfig(t){const[e]=t.split(":");return this._markersToCopy.get(e)||null}_insertFakeMarkersIntoSelection(t,e,n){const i=this._getCopyableMarkersFromSelection(t,e,n);return this._insertFakeMarkersElements(t,i)}_getCopyableMarkersFromSelection(t,e,n){const i=Array.from(e.getRanges()),o=new Set(i.flatMap((e=>Array.from(t.model.markers.getMarkersIntersectingRange(e)))));return Array.from(o).filter((t=>{if(!this._isMarkerCopyable(t.name,n))return!1;const{copyPartiallySelected:e}=this._getMarkerClipboardConfig(t.name);if(!e){const e=t.getRange();return i.some((t=>t.containsRange(e,!0)))}return!0})).map((t=>({name:"dragstart"===n?this._getUniqueMarkerName(t.name):t.name,range:t.getRange()})))}_getPasteMarkersFromRangeMap(t,e=null){const{model:n}=this.editor;return(t instanceof Map?Array.from(t.entries()):Object.entries(t)).flatMap((([t,i])=>{if(!this._hasMarkerConfiguration(t))return[{name:t,range:i}];if(this._isMarkerCopyable(t,e)){const e=this._getMarkerClipboardConfig(t),o=n.markers.has(t)&&"$graveyard"===n.markers.get(t).getRange().root.rootName;return(e.duplicateOnPaste||o)&&(t=this._getUniqueMarkerName(t)),[{name:t,range:i}]}return[]}))}_insertFakeMarkersElements(t,e){const n={},i=e.flatMap((t=>{const{start:e,end:n}=t.range;return[{position:e,marker:t,type:"start"},{position:n,marker:t,type:"end"}]})).sort((({position:t},{position:e})=>t.isBefore(e)?1:-1));for(const{position:e,marker:o,type:r}of i){const i=t.createElement("$marker",{"data-name":o.name,"data-type":r});n[o.name]||(n[o.name]=[]),n[o.name].push(i),t.insert(i,e)}return n}_removeFakeMarkersInsideElement(t,e){const n=this._getAllFakeMarkersFromElement(t,e).reduce(((e,n)=>{const i=n.markerElement&&t.createPositionBefore(n.markerElement);let o=e[n.name],r=!1;if(o&&o.start&&o.end){this._getMarkerClipboardConfig(n.name).duplicateOnPaste?e[this._getUniqueMarkerName(n.name)]=e[n.name]:r=!0,o=null}var s,a;return r||(e[n.name]=(s=((t,e)=>{for(var n in e||(e={}))SC.call(e,n)&&IC(t,n,e[n]);if(BC)for(var n of BC(e))TC.call(e,n)&&IC(t,n,e[n]);return t})({},o),a={[n.type]:i},EC(s,DC(a)))),n.markerElement&&t.remove(n.markerElement),e}),{});return yC(n,(n=>new Mc(n.start||t.createPositionFromPath(e,[0]),n.end||t.createPositionAt(e,"end"))))}_getAllFakeMarkersFromElement(t,e){const n=Array.from(t.createRangeIn(e)).flatMap((({item:t})=>{if(!t.is("element","$marker"))return[];const e=t.getAttribute("data-name"),n=t.getAttribute("data-type");return[{markerElement:t,name:e,type:n}]})),i=[],o=[];for(const t of n){if("end"===t.type){n.some((e=>e.name===t.name&&"start"===e.type))||i.push({markerElement:null,name:t.name,type:"start"})}if("start"===t.type){n.some((e=>e.name===t.name&&"end"===e.type))||o.unshift({markerElement:null,name:t.name,type:"end"})}}return[...i,...n,...o]}_getUniqueMarkerName(t){const e=t.split(":"),n=p().substring(1,6);return 3===e.length?`${e.slice(0,2).join(":")}:${n}`:`${e.join(":")}:${n}`}}class RC extends er{static get pluginName(){return"ClipboardPipeline"}static get requires(){return[PC]}init(){this.editor.editing.view.addObserver(rC),this._setupPasteDrop(),this._setupCopyCut()}_fireOutputTransformationEvent(t,e,n){const i=this.editor.plugins.get("ClipboardMarkersUtils");this.editor.model.enqueueChange({isUndoable:"cut"===n},(()=>{const o=i._copySelectedFragmentWithMarkers(n,e);this.fire("outputTransformation",{dataTransfer:t,content:o,method:n})}))}_setupPasteDrop(){const t=this.editor,e=t.model,n=t.editing.view,i=n.document,o=this.editor.plugins.get("ClipboardMarkersUtils");this.listenTo(i,"clipboardInput",((e,n)=>{"paste"!=n.method||t.model.canEditAt(t.model.document.selection)||e.stop()}),{priority:"highest"}),this.listenTo(i,"clipboardInput",((t,e)=>{const i=e.dataTransfer;let o;if(e.content)o=e.content;else{let t="";i.getData("text/html")?t=function(t){return t.replace(/(\s+)<\/span>/g,((t,e)=>1==e.length?" ":e)).replace(//g,"")}(i.getData("text/html")):i.getData("text/plain")&&(((r=(r=i.getData("text/plain")).replace(/&/g,"&").replace(//g,">").replace(/\r?\n\r?\n/g,"

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

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

${r}

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

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

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

${r}

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

abc

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

abc

-->

abc

\n\t\t\t//

abc

-->

abc

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

abc

-->

abc

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

abcxyz

-->

abcxyz

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

abcxyz

-->

abcxyz

\n\t\t\t//

abcxyz

-->

abcxyz

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

abc

-->

abc

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

foobar{}

\n\t\t//

foobar[]

\n\t\t//

foobar[]

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

foo{}bar

\n\t\t\t//

foo[]bar

\n\t\t\t//

foo{}bar

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

foob{}ar

\n\t\t\t//

foob[]ar

\n\t\t\t//

foob[]ar

\n\t\t\t//

foob[]ar

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

foo[]

->

foo{}

\n *

[]foo

->

{}foo

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

foo{}bar

->

foo[]bar

\n *

{}foobar

->

[]foobar

\n *

foobar{}

->

foobar[]

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

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

` there will be `


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

FooBarBazBax

\n\t * Expected DOM:\t

Bar123Baz456

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

foo
[]

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